From 1fc11eeecd8927e407311c6f9e035cf3e5f8f9df Mon Sep 17 00:00:00 2001 From: Stephen Skeirik Date: Fri, 1 Nov 2024 12:45:02 -0400 Subject: [PATCH 01/15] remove imported kani code --- src/kani_lib/LICENSE-MIT | 23 -- src/kani_lib/kani_collector.rs | 593 --------------------------------- src/kani_lib/mod.rs | 7 - src/lib.rs | 1 - src/main.rs | 1 - src/printer.rs | 20 +- 6 files changed, 1 insertion(+), 644 deletions(-) delete mode 100644 src/kani_lib/LICENSE-MIT delete mode 100644 src/kani_lib/kani_collector.rs delete mode 100644 src/kani_lib/mod.rs diff --git a/src/kani_lib/LICENSE-MIT b/src/kani_lib/LICENSE-MIT deleted file mode 100644 index 31aa793..0000000 --- a/src/kani_lib/LICENSE-MIT +++ /dev/null @@ -1,23 +0,0 @@ -Permission is hereby granted, free of charge, to any -person obtaining a copy of this software and associated -documentation files (the "Software"), to deal in the -Software without restriction, including without -limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of -the Software, and to permit persons to whom the Software -is furnished to do so, subject to the following -conditions: - -The above copyright notice and this permission notice -shall be included in all copies or substantial portions -of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF -ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED -TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A -PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT -SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY -CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION -OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR -IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. diff --git a/src/kani_lib/kani_collector.rs b/src/kani_lib/kani_collector.rs deleted file mode 100644 index 0675235..0000000 --- a/src/kani_lib/kani_collector.rs +++ /dev/null @@ -1,593 +0,0 @@ -use std::iter::Iterator; -use std::vec::Vec; -extern crate rustc_data_structures; -extern crate rustc_hir; -extern crate rustc_middle; -extern crate rustc_monomorphize; -extern crate rustc_span; -extern crate rustc_smir; -extern crate stable_mir; -// use rustc_hir::{def::DefKind, definitions::DefPath}; -use tracing::{debug, debug_span, trace}; -use rustc_data_structures::fx::FxHashSet; -use rustc_data_structures::fingerprint::Fingerprint; -use rustc_data_structures::stable_hasher::{HashStable, StableHasher}; -use rustc_hir::lang_items::LangItem; -use rustc_middle::traits::{ImplSource, ImplSourceUserDefinedData}; -use rustc_middle::ty::adjustment::CustomCoerceUnsized; -use rustc_middle::ty::{TyCtxt, Ty, ParamEnv, VtblEntry, TraitRef}; -use rustc_smir::rustc_internal; -use stable_mir::{CrateItem,CrateDef,ItemKind,mir::{Body,ConstOperand},mir::mono::{Instance, InstanceKind, MonoItem, StaticDef}}; -use stable_mir::mir::{visit::Location, MirVisitor, Rvalue, CastKind, PointerCoercion, Terminator, TerminatorKind}; -use stable_mir::ty::{RigidTy, ClosureKind, ConstantKind, Allocation, Ty as TyStable, TyKind as TyKindStable}; -use stable_mir::mir::alloc::{AllocId, GlobalAlloc}; -use stable_mir::Symbol; - -pub fn collect_all_mono_items(tcx: TyCtxt, initial_mono_items: &[MonoItem]) -> Vec { - let mut collector = MonoItemsCollector::new(tcx); - for item in initial_mono_items { - collector.collect(item.clone()); - } - - tcx.dcx().abort_if_errors(); - // Sort the result so code generation follows deterministic order. - // This helps us to debug the code, but it also provides the user a good experience since the - // order of the errors and warnings is stable. - let mut sorted_items: Vec<_> = collector.collected.into_iter().collect(); - sorted_items.sort_by_cached_key(|item| to_fingerprint(tcx, item)); - sorted_items -} - -struct MonoItemsCollector<'tcx> { - /// The compiler context. - tcx: TyCtxt<'tcx>, - /// Set of collected items used to avoid entering recursion loops. - collected: FxHashSet, - /// Items enqueued for visiting. - queue: Vec, -} - -impl<'tcx> MonoItemsCollector<'tcx> { - pub fn new(tcx: TyCtxt<'tcx>) -> Self { - MonoItemsCollector { - tcx, - collected: FxHashSet::default(), - queue: vec![], - } - } - - pub fn collect(&mut self, root: MonoItem) { - self.queue.push(root); - self.reachable_items(); - } - - fn reachable_items(&mut self) { - while let Some(to_visit) = self.queue.pop() { - if !self.collected.contains(&to_visit) { - self.collected.insert(to_visit.clone()); - let next_items = match &to_visit { - MonoItem::Fn(instance) => self.visit_fn(*instance), - MonoItem::Static(static_def) => self.visit_static(*static_def), - MonoItem::GlobalAsm(_) => { - vec![] - }, - }; - - self.queue - .extend(next_items.into_iter().filter(|item| !self.collected.contains(item))); - } - } - } - - fn visit_fn(&mut self, instance: Instance) -> Vec { - let _guard = debug_span!("visit_fn", function=?instance).entered(); - if let Some(body) = instance.body() { - let mut collector = MonoItemsFnCollector { tcx: self.tcx, collected: FxHashSet::default(), body: &body }; - collector.visit_body(&body); - collector.collected.into_iter().collect() - } else { - // println!("{instance:#?}"); - vec![] - } - } - - /// Visit a static object and collect drop / initialization functions. - fn visit_static(&mut self, def: StaticDef) -> Vec { - let _guard = debug_span!("visit_static", ?def).entered(); - let mut next_items = vec![]; - - // Collect drop function. - let static_ty = def.ty(); - let instance = Instance::resolve_drop_in_place(static_ty); - next_items.push(instance.into()); - - // Collect initialization. - let alloc = def.eval_initializer().unwrap(); - for (_, prov) in alloc.provenance.ptrs { - next_items.extend(collect_alloc_items(prov.0).into_iter()); - } - - next_items - } - - // /// Visit global assembly and collect its item. - // fn visit_asm(&mut self, item: &MonoItem) { - // debug!(?item, "visit_asm"); - // } -} - -struct MonoItemsFnCollector<'a, 'tcx> { - tcx: TyCtxt<'tcx>, - collected: FxHashSet, - body: &'a Body, -} - -impl<'a, 'tcx> MonoItemsFnCollector<'a, 'tcx> { - /// Collect the implementation of all trait methods and its supertrait methods for the given - /// concrete type. - fn collect_vtable_methods(&mut self, concrete_ty: TyStable, trait_ty: TyStable) { - trace!(?concrete_ty, ?trait_ty, "collect_vtable_methods"); - let concrete_kind = concrete_ty.kind(); - let trait_kind = trait_ty.kind(); - - assert!(!concrete_kind.is_trait(), "expected a concrete type, but found `{concrete_ty:?}`"); - assert!(trait_kind.is_trait(), "expected a trait `{trait_ty:?}`"); - if let Some(principal) = trait_kind.trait_principal() { - // A trait object type can have multiple trait bounds but up to one non-auto-trait - // bound. This non-auto-trait, named principal, is the only one that can have methods. - // https://doc.rust-lang.org/reference/special-types-and-traits.html#auto-traits - let poly_trait_ref = principal.with_self_ty(concrete_ty); - - // Walk all methods of the trait, including those of its supertraits - let entries = - self.tcx.vtable_entries(rustc_internal::internal(self.tcx, &poly_trait_ref)); - let methods = entries.iter().filter_map(|entry| match entry { - VtblEntry::MetadataAlign - | VtblEntry::MetadataDropInPlace - | VtblEntry::MetadataSize - | VtblEntry::Vacant => None, - VtblEntry::TraitVPtr(_) => { - // all super trait items already covered, so skip them. - None - } - VtblEntry::Method(instance) => { - let instance = rustc_internal::stable(instance); - should_codegen_locally(&instance).then_some(MonoItem::Fn(instance)) - } - }); - trace!(methods=?methods.clone().collect::>(), "collect_vtable_methods"); - self.collected.extend(methods); - } - - // Add the destructor for the concrete type. - let instance = Instance::resolve_drop_in_place(concrete_ty); - self.collect_instance(instance, false); - } - - /// Collect an instance depending on how it is used (invoked directly or via fn_ptr). - fn collect_instance(&mut self, instance: Instance, is_direct_call: bool) { - let should_collect = match instance.kind { - InstanceKind::Virtual { .. } | InstanceKind::Intrinsic => { // TODO: Outdated - // Instance definition has no body. - assert!(is_direct_call, "Expected direct call {instance:?}"); - false - } - InstanceKind::Shim | InstanceKind::Item => true, - }; - if should_collect && should_codegen_locally(&instance) { - trace!(?instance, "collect_instance"); - self.collected.insert(instance.into()); - } - } - - /// Collect constant values represented by static variables. - fn collect_allocation(&mut self, alloc: &Allocation) { - debug!(?alloc, "collect_allocation"); - for (_, id) in &alloc.provenance.ptrs { - self.collected.extend(collect_alloc_items(id.0).into_iter()) - } - } -} - -/// Visit every instruction in a function and collect the following: -/// 1. Every function / method / closures that may be directly invoked. -/// 2. Every function / method / closures that may have their address taken. -/// 3. Every method that compose the impl of a trait for a given type when there's a conversion -/// from the type to the trait. -/// - I.e.: If we visit the following code: -/// ``` -/// let var = MyType::new(); -/// let ptr : &dyn MyTrait = &var; -/// ``` -/// We collect the entire implementation of `MyTrait` for `MyType`. -/// 4. Every Static variable that is referenced in the function or constant used in the function. -/// 5. Drop glue. -/// 6. Static Initialization -/// -/// Remark: This code has been mostly taken from `rustc_monomorphize::collector::MirNeighborCollector`. -impl<'a, 'tcx> MirVisitor for MonoItemsFnCollector<'a, 'tcx> { - /// Collect the following: - /// - Trait implementations when casting from concrete to dyn Trait. - /// - Functions / Closures that have their address taken. - /// - Thread Local. - fn visit_rvalue(&mut self, rvalue: &Rvalue, location: Location) { - trace!(rvalue=?*rvalue, "visit_rvalue"); - - match *rvalue { - Rvalue::Cast( - CastKind::PointerCoercion(PointerCoercion::Unsize), - ref operand, - target, - ) => { - // Check if the conversion include casting a concrete type to a trait type. - // If so, collect items from the impl `Trait for Concrete {}`. - let target_ty = target; - let source_ty = operand.ty(self.body.locals()).unwrap(); - let (src_ty, dst_ty) = extract_unsize_coercion(self.tcx, source_ty, target_ty); - if !src_ty.kind().is_trait() && dst_ty.kind().is_trait() { - debug!(?src_ty, ?dst_ty, "collect_vtable_methods"); - self.collect_vtable_methods(src_ty, dst_ty); - } - } - Rvalue::Cast( - CastKind::PointerCoercion(PointerCoercion::ReifyFnPointer), - ref operand, - _, - ) => { - let fn_kind = operand.ty(self.body.locals()).unwrap().kind(); - if let RigidTy::FnDef(fn_def, args) = fn_kind.rigid().unwrap() { - let instance = Instance::resolve_for_fn_ptr(*fn_def, args).unwrap(); - self.collect_instance(instance, false); - } else { - unreachable!("Expected FnDef type, but got: {:?}", fn_kind); - } - } - Rvalue::Cast( - CastKind::PointerCoercion(PointerCoercion::ClosureFnPointer(_)), - ref operand, - _, - ) => { - let source_ty = operand.ty(self.body.locals()).unwrap(); - match source_ty.kind().rigid().unwrap() { - RigidTy::Closure(def_id, args) => { - let instance = - Instance::resolve_closure(*def_id, args, ClosureKind::FnOnce) - .expect("failed to normalize and resolve closure during codegen"); - self.collect_instance(instance, false); - } - _ => unreachable!("Unexpected type: {:?}", source_ty), - } - } - Rvalue::ThreadLocalRef(item) => { - trace!(?item, "visit_rvalue thread_local"); - self.collected.insert(MonoItem::Static(StaticDef::try_from(item).unwrap())); - } - _ => { /* not interesting */ } - } - - self.super_rvalue(rvalue, location); - } - - /// Collect constants that are represented as static variables. - fn visit_const_operand(&mut self, constant: &ConstOperand, location: Location) { - debug!(?constant, ?location, literal=?constant.const_, "visit_constant"); - let allocation = match constant.const_.kind() { - ConstantKind::Allocated(allocation) => allocation, - ConstantKind::Unevaluated(_) => { - unreachable!("Instance with polymorphic constant: `{constant:?}`") - } - ConstantKind::Param(_) => unreachable!("Unexpected parameter constant: {constant:?}"), - ConstantKind::ZeroSized => { - // Nothing to do here. - return; - } - ConstantKind::Ty(_) => { - // Nothing to do here. - return; - } - }; - self.collect_allocation(&allocation); - } - - /// Collect function calls. - fn visit_terminator(&mut self, terminator: &Terminator, location: Location) { - trace!(?terminator, ?location, "visit_terminator"); - - match terminator.kind { - TerminatorKind::Call { ref func, .. } => { - let fn_ty = func.ty(self.body.locals()).unwrap(); - if let TyKindStable::RigidTy(RigidTy::FnDef(fn_def, args)) = fn_ty.kind() { - let instance = Instance::resolve(fn_def, &args).unwrap(); - self.collect_instance(instance, true); - } else { - assert!( - matches!(fn_ty.kind().rigid(), Some(RigidTy::FnPtr(..))), - "Unexpected type: {fn_ty:?}" - ); - } - } - TerminatorKind::Drop { ref place, .. } => { - let place_ty = place.ty(self.body.locals()).unwrap(); - let instance = Instance::resolve_drop_in_place(place_ty); - self.collect_instance(instance, true); - } - TerminatorKind::InlineAsm { .. } => { - // We don't support inline assembly. This shall be replaced by an unsupported - // construct during codegen. - } - TerminatorKind::Abort { .. } | TerminatorKind::Assert { .. } => { - // We generate code for this without invoking any lang item. - } - TerminatorKind::Goto { .. } - | TerminatorKind::SwitchInt { .. } - | TerminatorKind::Resume - | TerminatorKind::Return - | TerminatorKind::Unreachable => {} - } - - self.super_terminator(terminator, location); - } -} - -#[derive(Debug)] -pub struct CoercionBase<'tcx> { - pub src_ty: Ty<'tcx>, - pub dst_ty: Ty<'tcx>, -} - -fn extract_unsize_coercion(tcx: TyCtxt, orig_ty: TyStable, dst_trait: TyStable) -> (TyStable, TyStable) { - let CoercionBase { src_ty, dst_ty } = extract_unsize_casting( - tcx, - rustc_internal::internal(tcx, orig_ty), - rustc_internal::internal(tcx, dst_trait), - ); - (rustc_internal::stable(src_ty), rustc_internal::stable(dst_ty)) -} - -/// Return whether we should include the item into codegen. -fn should_codegen_locally(instance: &Instance) -> bool { - !instance.is_foreign_item() -} - -/// Convert a `MonoItem` into a stable `Fingerprint` which can be used as a stable hash across -/// compilation sessions. This allow us to provide a stable deterministic order to codegen. -fn to_fingerprint(tcx: TyCtxt, item: &MonoItem) -> Fingerprint { - tcx.with_stable_hashing_context(|mut hcx| { - let mut hasher = StableHasher::new(); - rustc_internal::internal(tcx, item).hash_stable(&mut hcx, &mut hasher); - hasher.finish() - }) -} - -fn collect_alloc_items(alloc_id: AllocId) -> Vec { - trace!(?alloc_id, "collect_alloc_items"); - let mut items = vec![]; - match GlobalAlloc::from(alloc_id) { - GlobalAlloc::Static(def) => { - // This differ from rustc's collector since rustc does not include static from - // upstream crates. - let instance = Instance::try_from(CrateItem::from(def)).unwrap(); - should_codegen_locally(&instance).then(|| items.push(MonoItem::from(def))); - } - GlobalAlloc::Function(instance) => { - should_codegen_locally(&instance).then(|| items.push(MonoItem::from(instance))); - } - GlobalAlloc::Memory(alloc) => { - items.extend( - alloc.provenance.ptrs.iter().flat_map(|(_, prov)| collect_alloc_items(prov.0)), - ); - } - vtable_alloc @ GlobalAlloc::VTable(..) => { - let vtable_id = vtable_alloc.vtable_allocation().unwrap(); - items = collect_alloc_items(vtable_id); - } - }; - items -} - -/// Collect all (top-level) items in the crate that matches the given predicate. -/// An item can only be a root if they are a non-generic function. -pub fn filter_crate_items(tcx: TyCtxt, predicate: F) -> Vec -where - F: Fn(TyCtxt, Instance) -> bool, -{ - let crate_items = stable_mir::all_local_items(); - // Filter regular items. - crate_items - .iter() - .filter_map(|item| { - // Only collect monomorphic items. - // TODO: Remove the def_kind check once https://github.com/rust-lang/rust/pull/119135 has been released. - let def_id = rustc_internal::internal(tcx, item.def_id()); - (matches!(tcx.def_kind(def_id), rustc_hir::def::DefKind::Ctor(..)) - || matches!(item.kind(), ItemKind::Fn)) - .then(|| { - Instance::try_from(*item) - .ok() - .and_then(|instance| predicate(tcx, instance).then_some(instance)) - }) - .flatten() - }) - .collect::>() -} - -pub fn extract_unsize_casting<'tcx>( - tcx: TyCtxt<'tcx>, - src_ty: Ty<'tcx>, - dst_ty: Ty<'tcx>, -) -> CoercionBase<'tcx> { - trace!(?src_ty, ?dst_ty, "extract_unsize_casting"); - // Iterate over the pointer structure to find the builtin pointer that will store the metadata. - let coerce_info = CoerceUnsizedIterator::new( - tcx, - rustc_internal::stable(src_ty), - rustc_internal::stable(dst_ty), - ) - .last() - .unwrap(); - // Extract the pointee type that is being coerced. - let src_pointee_ty = extract_pointee(tcx, coerce_info.src_ty).expect(&format!( - "Expected source to be a pointer. Found {:?} instead", - coerce_info.src_ty - )); - let dst_pointee_ty = extract_pointee(tcx, coerce_info.dst_ty).expect(&format!( - "Expected destination to be a pointer. Found {:?} instead", - coerce_info.dst_ty - )); - // Find the tail of the coercion that determines the type of metadata to be stored. - let (src_base_ty, dst_base_ty) = tcx.struct_lockstep_tails_erasing_lifetimes( - src_pointee_ty, - dst_pointee_ty, - ParamEnv::reveal_all(), - ); - trace!(?src_base_ty, ?dst_base_ty, "extract_unsize_casting result"); - assert!( - dst_base_ty.is_trait() || dst_base_ty.is_slice(), - "Expected trait or slice as destination of unsized cast, but found {dst_base_ty:?}" - ); - CoercionBase { src_ty: src_base_ty, dst_ty: dst_base_ty } -} - -/// This structure represents the base of a coercion. -/// -/// This base is used to determine the information that will be stored in the metadata. -/// E.g.: In order to convert an `Rc` into an `Rc`, we need to generate a -/// vtable that represents the `impl Debug for String`. So this type will carry the `String` type -/// as the `src_ty` and the `dyn Debug` trait as `dst_ty`. - -/// Iterates over the coercion path of a structure that implements `CoerceUnsized` trait. -/// The `CoerceUnsized` trait indicates that this is a pointer or a wrapper for one, where -/// unsizing can be performed on the pointee. More details: -/// -/// -/// Given an unsized coercion between `impl CoerceUnsized` to `impl CoerceUnsized` where -/// `T` is sized and `U` is unsized, this iterator will walk over the fields that lead to a -/// pointer to `T`, which shall be converted from a thin pointer to a fat pointer. -/// -/// Each iteration will also include an optional name of the field that differs from the current -/// pair of types. -/// -/// The first element of the iteration will always be the starting types. -/// The last element of the iteration will always be pointers to `T` and `U`. -/// After unsized element has been found, the iterator will return `None`. -pub struct CoerceUnsizedIterator<'tcx> { - tcx: TyCtxt<'tcx>, - src_ty: Option, - dst_ty: Option, -} - -/// Represent the information about a coercion. -#[derive(Debug, Clone, PartialEq)] -pub struct CoerceUnsizedInfo { - /// The name of the field from the current types that differs between each other. - pub field: Option, - /// The type being coerced. - pub src_ty: TyStable, - /// The type that is the result of the coercion. - pub dst_ty: TyStable, -} - -impl<'tcx> CoerceUnsizedIterator<'tcx> { - pub fn new( - tcx: TyCtxt<'tcx>, - src_ty: TyStable, - dst_ty: TyStable, - ) -> CoerceUnsizedIterator<'tcx> { - CoerceUnsizedIterator { tcx, src_ty: Some(src_ty), dst_ty: Some(dst_ty) } - } -} - -/// Iterate over the coercion path. At each iteration, it returns the name of the field that must -/// be coerced, as well as the current source and the destination. -/// E.g.: The first iteration of casting `NonNull` -> `NonNull<&dyn Debug>` will return -/// ```rust,ignore -/// CoerceUnsizedInfo { -/// field: Some("ptr"), -/// src_ty, // NonNull -/// dst_ty // NonNull<&dyn Debug> -/// } -/// ``` -/// while the last iteration will return: -/// ```rust,ignore -/// CoerceUnsizedInfo { -/// field: None, -/// src_ty: Ty, // *const String -/// dst_ty: Ty, // *const &dyn Debug -/// } -/// ``` -impl<'tcx> Iterator for CoerceUnsizedIterator<'tcx> { - type Item = CoerceUnsizedInfo; - - fn next(&mut self) -> Option { - if self.src_ty.is_none() { - assert_eq!(self.dst_ty, None, "Expected no dst type."); - return None; - } - - // Extract the pointee types from pointers (including smart pointers) that form the base of - // the conversion. - let src_ty = self.src_ty.take().unwrap(); - let dst_ty = self.dst_ty.take().unwrap(); - let field = match (src_ty.kind(), dst_ty.kind()) { - ( - TyKindStable::RigidTy(RigidTy::Adt(src_def, ref src_args)), - TyKindStable::RigidTy(RigidTy::Adt(dst_def, ref dst_args)), - ) => { - // Handle smart pointers by using CustomCoerceUnsized to find the field being - // coerced. - assert_eq!(src_def, dst_def); - let src_fields = &src_def.variants_iter().next().unwrap().fields(); - let dst_fields = &dst_def.variants_iter().next().unwrap().fields(); - assert_eq!(src_fields.len(), dst_fields.len()); - - let CustomCoerceUnsized::Struct(coerce_index) = custom_coerce_unsize_info( - self.tcx, - rustc_internal::internal(self.tcx, src_ty), - rustc_internal::internal(self.tcx, dst_ty), - ); - let coerce_index = coerce_index.as_usize(); - assert!(coerce_index < src_fields.len()); - - self.src_ty = Some(src_fields[coerce_index].ty_with_args(&src_args)); - self.dst_ty = Some(dst_fields[coerce_index].ty_with_args(&dst_args)); - Some(src_fields[coerce_index].name.clone()) - } - _ => { - // Base case is always a pointer (Box, raw_pointer or reference). - assert!( - extract_pointee(self.tcx, src_ty).is_some(), - "Expected a pointer, but found {src_ty:?}" - ); - None - } - }; - Some(CoerceUnsizedInfo { field, src_ty, dst_ty }) - } -} - -/// Get information about an unsized coercion. -/// This code was extracted from `rustc_monomorphize` crate. -/// -fn custom_coerce_unsize_info<'tcx>( - tcx: TyCtxt<'tcx>, - source_ty: Ty<'tcx>, - target_ty: Ty<'tcx>, -) -> CustomCoerceUnsized { - let def_id = tcx.require_lang_item(LangItem::CoerceUnsized, None); - - let trait_ref = TraitRef::new(tcx, def_id, tcx.mk_args_trait(source_ty, [target_ty.into()])); - - match tcx.codegen_select_candidate((ParamEnv::reveal_all(), trait_ref)) { - Ok(ImplSource::UserDefined(ImplSourceUserDefinedData { impl_def_id, .. })) => { - tcx.coerce_unsized_info(impl_def_id).unwrap().custom_kind.unwrap() - } - impl_source => { - unreachable!("invalid `CoerceUnsized` impl_source: {:?}", impl_source); - } - } -} - -/// Extract pointee type from builtin pointer types. -fn extract_pointee(tcx: TyCtxt<'_>, typ: TyStable) -> Option> { - rustc_internal::internal(tcx, typ).builtin_deref(true) -} diff --git a/src/kani_lib/mod.rs b/src/kani_lib/mod.rs deleted file mode 100644 index e22c8f1..0000000 --- a/src/kani_lib/mod.rs +++ /dev/null @@ -1,7 +0,0 @@ -// This module wraps code derived from the kani project -// -// https://github.com/model-checking/kani -// -// Code used under license; see license file in the module directory. - -pub mod kani_collector; diff --git a/src/lib.rs b/src/lib.rs index b6696bc..f17c342 100644 --- a/src/lib.rs +++ b/src/lib.rs @@ -1,6 +1,5 @@ #![feature(rustc_private)] pub mod driver; pub mod printer; -pub mod kani_lib; pub use driver::stable_mir_driver; pub use printer::*; diff --git a/src/main.rs b/src/main.rs index 1fb986d..d1c9700 100644 --- a/src/main.rs +++ b/src/main.rs @@ -2,7 +2,6 @@ use std::env; pub mod driver; pub mod printer; -pub mod kani_lib; use driver::stable_mir_driver; use printer::emit_smir; diff --git a/src/printer.rs b/src/printer.rs index 45a72c8..ea506ec 100644 --- a/src/printer.rs +++ b/src/printer.rs @@ -17,7 +17,6 @@ use rustc_span::{def_id::{DefId, LOCAL_CRATE}, symbol}; // DUMMY_SP, symbol::sym use rustc_smir::rustc_internal; use stable_mir::{CrateItem,CrateDef,ItemKind,mir::{Body,LocalDecl,Terminator,TerminatorKind,Rvalue,visit::MirVisitor},ty::{Allocation,ForeignItemKind},mir::mono::{MonoItem,Instance,InstanceKind},visited_tys,visited_alloc_ids}; // Symbol use serde::{Serialize, Serializer}; -use crate::kani_lib::kani_collector::{filter_crate_items, collect_all_mono_items}; // Structs for serializing extra details about mono items // ====================================================== @@ -517,19 +516,6 @@ fn collect_unevaluated_constant_items(tcx: TyCtxt<'_>, items: HashMap, opts: String) -> Vec { - let collect_all = opts == "ALL"; - let main_instance = stable_mir::entry_fn().map(|main_fn| Instance::try_from(main_fn).ok()).flatten(); - let initial_mono_items: Vec = filter_crate_items(tcx, |_, instance| { - let def_id = rustc_internal::internal(tcx, instance.def.def_id()); - Some(instance) == main_instance || (collect_all && tcx.is_reachable_non_generic(def_id)) - }) - .into_iter() - .map(MonoItem::Fn) - .collect(); - collect_all_mono_items(tcx, &initial_mono_items) -} - fn mono_collect(tcx: TyCtxt<'_>) -> Vec { let units = tcx.collect_and_partition_mono_items(()).1; units.iter().flat_map(|unit| { @@ -539,11 +525,7 @@ fn mono_collect(tcx: TyCtxt<'_>) -> Vec { fn collect_items(tcx: TyCtxt<'_>) -> HashMap { // get initial set of mono_items - let items = if let Ok(opts) = std::env::var("USE_KANI_PORT") { - kani_collect(tcx, opts) - } else { - mono_collect(tcx) - }; + let items = mono_collect(tcx); items.iter().map(|item| { let name = mono_item_name(tcx, item); ( name.clone(), mk_item(tcx, item.clone(), name) ) From 8dabbed438e402e71d34f2d5177bf61c5c20de43 Mon Sep 17 00:00:00 2001 From: Stephen Skeirik Date: Fri, 1 Nov 2024 14:50:19 -0400 Subject: [PATCH 02/15] do not depend on forked rust --- Makefile | 4 +- src/printer.rs | 192 +++++++++++++++++++++++++++++++++++++++++++------ 2 files changed, 174 insertions(+), 22 deletions(-) diff --git a/Makefile b/Makefile index 53903ca..b687de3 100644 --- a/Makefile +++ b/Makefile @@ -17,8 +17,8 @@ RUST_DEP_DIR=${RUST_BUILD_DIR}/stage1-rustc/${RUST_ARCH}/release/deps TARGET_DEP_DIR=${CURDIR}/target/${TARGET}/deps TEMP_DIR=${RUST_DIR}/temp RUST_REPO=https://github.com/runtimeverification/rust -RUST_BRANCH=smir_serde_derive_intern_scripts -TOOLCHAIN_NAME=smir_serde_derive_intern_scripts +RUST_BRANCH=master +TOOLCHAIN_NAME=smir_pretty RELEASE_FLAG= ifeq (${TARGET}, release) RELEASE_FLAG=--release diff --git a/src/printer.rs b/src/printer.rs index ea506ec..808780f 100644 --- a/src/printer.rs +++ b/src/printer.rs @@ -15,7 +15,7 @@ use rustc_middle::ty::{TyCtxt, Ty, TyKind, EarlyBinder, FnSig, GenericArgs, Type use rustc_session::config::{OutFileName, OutputType}; use rustc_span::{def_id::{DefId, LOCAL_CRATE}, symbol}; // DUMMY_SP, symbol::sym::test; use rustc_smir::rustc_internal; -use stable_mir::{CrateItem,CrateDef,ItemKind,mir::{Body,LocalDecl,Terminator,TerminatorKind,Rvalue,visit::MirVisitor},ty::{Allocation,ForeignItemKind},mir::mono::{MonoItem,Instance,InstanceKind},visited_tys,visited_alloc_ids}; // Symbol +use stable_mir::{CrateItem,CrateDef,ItemKind,mir::{Body,LocalDecl,Terminator,TerminatorKind,Rvalue,visit::MirVisitor},ty::{Allocation,ForeignItemKind},mir::mono::{MonoItem,Instance,InstanceKind}}; // Symbol use serde::{Serialize, Serializer}; // Structs for serializing extra details about mono items @@ -194,6 +194,12 @@ fn fn_inst_for_ty(ty: stable_mir::ty::Ty, direct_call: bool) -> Option }).flatten() } +fn def_id_to_inst(tcx: TyCtxt<'_>, id: stable_mir::DefId) -> Instance { + let internal_id = rustc_internal::internal(tcx,id); + let internal_inst = rustc_middle::ty::Instance::mono(tcx, internal_id); + rustc_internal::stable(internal_inst) +} + fn take_any(map: &mut HashMap) -> Option<(K,V)> { let key = map.keys().next()?.clone(); map.remove(&key).map(|val| (key,val)) @@ -353,14 +359,28 @@ impl Serialize for ItemSource { } } +#[derive(Serialize)] +enum AllocInfo { + Function(stable_mir::mir::mono::Instance), + VTable(stable_mir::ty::Ty, Option>), + Static(stable_mir::mir::mono::StaticDef), + Memory(stable_mir::ty::TyKind, stable_mir::ty::Allocation), +} type LinkMap<'tcx> = HashMap, (ItemSource, FnSymType)>; +type AllocMap = HashMap; +type TyMap = HashMap)>; -struct LinkNameCollector<'tcx, 'local> { +struct InternedValueCollector<'tcx, 'local> { tcx: TyCtxt<'tcx>, - link_map: &'local mut LinkMap<'tcx>, + sym: String, locals: &'local [LocalDecl], + link_map: &'local mut LinkMap<'tcx>, + visited_allocs: &'local mut AllocMap, + visited_tys: &'local mut TyMap, } +type InternedValues<'tcx> = (LinkMap<'tcx>, AllocMap, TyMap); + fn update_link_map<'tcx>(link_map: &mut LinkMap<'tcx>, fn_sym: Option>, source: ItemSource) { if fn_sym.is_none() { return } let (ty, kind, name) = fn_sym.unwrap(); @@ -382,7 +402,100 @@ fn update_link_map<'tcx>(link_map: &mut LinkMap<'tcx>, fn_sym: Option { +fn get_prov_type(maybe_kind: Option) -> Option { + use stable_mir::ty::RigidTy; + // check for pointers + let kind = if let Some(kind) = maybe_kind { kind } else { return None }; + if let Some(ty) = kind.builtin_deref(true) { + return ty.ty.kind().into(); + } + match kind.rigid().expect("Non-rigid-ty allocation found!") { + RigidTy::Array(ty, _) | RigidTy::Slice(ty) => ty.kind().into(), + RigidTy::FnPtr(_) => None, + _ => todo!(), + } +} + +fn collect_alloc(val_collector: &mut InternedValueCollector, kind: Option, val: stable_mir::mir::alloc::AllocId) { + use stable_mir::mir::alloc::GlobalAlloc; + let entry = val_collector.visited_allocs.entry(val); + if matches!(entry, std::collections::hash_map::Entry::Occupied(_)) { return; } + let global_alloc = GlobalAlloc::from(val); + match global_alloc { + GlobalAlloc::Memory(ref alloc) => { + let pointed_kind = get_prov_type(kind); + println!("DEBUG: called collect_alloc: {:?}:{:?}:{:?}", val, pointed_kind, global_alloc); + entry.or_insert(AllocInfo::Memory(pointed_kind.clone().unwrap(), alloc.clone())); + alloc.provenance.ptrs.iter().for_each(|(_, prov)| { + collect_alloc(val_collector, pointed_kind.clone(), prov.0); + }); + } + GlobalAlloc::Static(def) => { + assert!(kind.clone().unwrap().builtin_deref(true).is_some(), "Allocated pointer is not a built-in pointer type: {:?}", kind); + entry.or_insert(AllocInfo::Static(def)); + }, + GlobalAlloc::VTable(ty, traitref) => { + assert!(kind.clone().unwrap().builtin_deref(true).is_some(), "Allocated pointer is not a built-in pointer type: {:?}", kind); + entry.or_insert(AllocInfo::VTable(ty, traitref)); + }, + GlobalAlloc::Function(inst) => { + assert!(kind.unwrap().is_fn_ptr()); + entry.or_insert(AllocInfo::Function(inst)); + }, + }; +} + +fn collect_vec_tys(collector: &mut InternedValueCollector, tys: Vec) { + tys.into_iter().for_each(|ty| collect_ty(collector, ty)); +} + +fn collect_arg_tys(collector: &mut InternedValueCollector, args: &stable_mir::ty::GenericArgs) { + use stable_mir::ty::{GenericArgKind::*, TyConst, TyConstKind::*}; + for arg in args.0.iter() { + match arg { + Type(ty) => collect_ty(collector, *ty), + Const(ty_const) => match ty_const.kind() { + Value(ty, _) | ZSTValue(ty) => collect_ty(collector, *ty), + _ => {} + }, + _ => {} + } + } +} + +fn collect_ty(val_collector: &mut InternedValueCollector, val: stable_mir::ty::Ty) { + use stable_mir::ty::{GenericArgKind::*, RigidTy::*, TyConst, TyConstKind::*, TyKind::RigidTy}; + if val_collector.visited_tys.insert(hash(val), (val.kind(), val.layout().map(|l| l.shape()).ok())).is_some() { + match val.kind() { + RigidTy(Array(ty, _) | Pat(ty, _) | Slice(ty) | RawPtr(ty, _) | Ref(_, ty, _)) => { + collect_ty(val_collector, ty) + } + RigidTy(Tuple(tys)) => collect_vec_tys(val_collector, tys), + RigidTy(Adt(def, ref args)) => { + for variant in def.variants_iter() { + for field in variant.fields() { + collect_ty(val_collector, field.ty()); + } + } + collect_arg_tys(val_collector, args); + } + // FIXME: Would be good to grab the coroutine signature + RigidTy(Coroutine(_, ref args, _) | CoroutineWitness(_, ref args)) => collect_arg_tys(val_collector, args), + ref kind @ RigidTy(FnDef(_, ref args) | Closure(_, ref args)) => { + collect_vec_tys(val_collector, kind.fn_sig().unwrap().value.inputs_and_output); + collect_arg_tys(val_collector, args); + } + RigidTy(Foreign(def)) => match def.kind() { + ForeignItemKind::Fn(def) => collect_vec_tys(val_collector, def.fn_sig().value.inputs_and_output), + ForeignItemKind::Type(ty) => collect_ty(val_collector, ty), + ForeignItemKind::Static(def) => collect_ty(val_collector, def.ty()), + } + _ => {} + } + } +} + +impl MirVisitor for InternedValueCollector<'_, '_> { fn visit_terminator(&mut self, term: &Terminator, loc: stable_mir::mir::visit::Location) { use TerminatorKind::*; use stable_mir::mir::{Operand::Constant, ConstOperand}; @@ -415,14 +528,37 @@ impl MirVisitor for LinkNameCollector<'_, '_> { }; self.super_rvalue(rval, loc); } + + fn visit_mir_const(&mut self, constant: &stable_mir::ty::MirConst, loc: stable_mir::mir::visit::Location) { + use stable_mir::ty::{ConstantKind, TyConst, TyConstKind}; + match constant.kind() { + ConstantKind::Allocated(alloc) => { + println!("visited_mir_const::Allocated({:?}) as {:?}", alloc, constant.ty().kind()); + alloc.provenance.ptrs.iter().for_each(|(_offset, prov)| collect_alloc(self, Some(constant.ty().kind()), prov.0)); + }, + ConstantKind::Ty(ty_const) => { + if let TyConstKind::Value(..) = ty_const.kind() { + panic!("TyConstKind::Value"); + } + }, + ConstantKind::Unevaluated(_) | ConstantKind::Param(_) | ConstantKind::ZeroSized => {} + } + self.super_mir_const(constant, loc); + } + + fn visit_ty(&mut self, ty: &stable_mir::ty::Ty, _location: stable_mir::mir::visit::Location) { + collect_ty(self, *ty); + } } -fn collect_fn_calls<'tcx,'local>(tcx: TyCtxt<'tcx>, items: Vec<&'local MonoItem>) -> Vec<(LinkMapKey<'tcx>, (ItemSource, FnSymType))> { - let mut hash_map = HashMap::new(); +fn collect_interned_values<'tcx,'local>(tcx: TyCtxt<'tcx>, items: Vec<&'local MonoItem>) -> InternedValues<'tcx> { + let mut calls_map = HashMap::new(); + let mut visited_tys = HashMap::new(); + let mut visited_allocs = HashMap::new(); if link_items_enabled() { for item in items.iter() { if let MonoItem::Fn ( inst ) = item { - update_link_map(&mut hash_map, fn_inst_sym(tcx, None, Some(inst)), ItemSource(ITEM)) + update_link_map(&mut calls_map, fn_inst_sym(tcx, None, Some(inst)), ItemSource(ITEM)) } } } @@ -430,22 +566,36 @@ fn collect_fn_calls<'tcx,'local>(tcx: TyCtxt<'tcx>, items: Vec<&'local MonoItem> match &item { MonoItem::Fn( inst ) => { for body in get_bodies(tcx, inst).into_iter() { - LinkNameCollector { + InternedValueCollector { tcx, - link_map: &mut hash_map, - locals: body.locals() + sym: inst.mangled_name(), + locals: body.locals(), + link_map: &mut calls_map, + visited_tys: &mut visited_tys, + visited_allocs: &mut visited_allocs, }.visit_body(&body) } } - MonoItem::Static { .. } => {} - MonoItem::GlobalAsm { .. } => {} + MonoItem::Static(def) => { + let inst = def_id_to_inst(tcx, def.def_id()); + for body in get_bodies(tcx, &inst).into_iter() { + InternedValueCollector { + tcx, + sym: inst.mangled_name(), + locals: &[], + link_map: &mut calls_map, + visited_tys: &mut visited_tys, + visited_allocs: &mut visited_allocs, + }.visit_body(&body) + } + } + MonoItem::GlobalAsm(_) => {} } } - let calls: Vec<_> = hash_map.into_iter().collect(); - // calls.sort_by(|fst,snd| rustc_internal::internal(tcx, fst.0.def_id()).cmp(rustc_internal::internal(tcx, snd.0.def_id()))); - calls + (calls_map, visited_allocs, visited_tys) } + // Collection Transitive Closure // ============================= @@ -539,21 +689,23 @@ fn emit_smir_internal(tcx: TyCtxt<'_>, writer: &mut dyn io::Write) { let local_crate = stable_mir::local_crate(); let items = collect_items(tcx); let (unevaluated_consts, items) = collect_unevaluated_constant_items(tcx, items); - let called_functions = collect_fn_calls(tcx, items.iter().map(|i| &i.mono_item).collect::>()); + let (calls_map, visited_allocs, visited_tys) = collect_interned_values(tcx, items.iter().map(|i| &i.mono_item).collect::>()); + let called_functions = calls_map.iter().map(|(k,(_,name))| (k,name)).collect::>(); let crate_id = tcx.stable_crate_id(LOCAL_CRATE).as_u64(); let json_items = serde_json::to_value(&items).expect("serde_json mono items to value failed"); write!(writer, "{{\"name\": {}, \"crate_id\": {}, \"allocs\": {}, \"functions\": {}, \"uneval_consts\": {}, \"items\": {}", serde_json::to_string(&local_crate.name).expect("serde_json string to json failed"), serde_json::to_string(&crate_id).expect("serde_json number to json failed"), - serde_json::to_string(&visited_alloc_ids()).expect("serde_json global allocs to json failed"), - serde_json::to_string(&called_functions.iter().map(|(k,(_,name))| (k,name)).collect::>()).expect("serde_json functions to json failed"), + serde_json::to_string(&visited_allocs).expect("serde_json global allocs to json failed"), + serde_json::to_string(&called_functions).expect("serde_json functions to json failed"), serde_json::to_string(&unevaluated_consts).expect("serde_json unevaluated consts to json failed"), serde_json::to_string(&json_items).expect("serde_json mono items to json failed"), ).expect("Failed to write JSON to file"); if debug_enabled() { + let fn_sources = calls_map.iter().map(|(k,(source,_))| (k,source)).collect::>(); write!(writer, ",\"fn_sources\": {}, \"types\": {}, \"foreign_modules\": {}}}", - serde_json::to_string(&called_functions.iter().map(|(k,(source,_))| (k,source)).collect::>()).expect("serde_json functions failed"), - serde_json::to_string(&visited_tys()).expect("serde_json tys failed"), + serde_json::to_string(&fn_sources).expect("serde_json functions failed"), + serde_json::to_string(&visited_tys).expect("serde_json tys failed"), serde_json::to_string(&get_foreign_module_details()).expect("foreign_module serialization failed"), ).expect("Failed to write JSON to file"); } else { From ea1b659290a44d7193d7350a06923f981e15f0d2 Mon Sep 17 00:00:00 2001 From: Stephen Skeirik Date: Fri, 1 Nov 2024 16:41:57 -0400 Subject: [PATCH 03/15] add minor improvements --- src/printer.rs | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/src/printer.rs b/src/printer.rs index 808780f..b7a52fd 100644 --- a/src/printer.rs +++ b/src/printer.rs @@ -21,7 +21,7 @@ use serde::{Serialize, Serializer}; // Structs for serializing extra details about mono items // ====================================================== -#[derive(Serialize)] +#[derive(Serialize, Clone)] struct BodyDetails { pp: String, } @@ -32,7 +32,7 @@ fn get_body_details(body: &Body) -> BodyDetails { BodyDetails { pp: str::from_utf8(&v).unwrap().into() } } -#[derive(Serialize)] +#[derive(Serialize, Clone)] struct GenericData(Vec<(String,String)>); // Alternatively, GenericData<'a>(Vec<(&'a Generics,GenericPredicates<'a>)>); fn generic_data(tcx: TyCtxt<'_>, id: DefId) -> GenericData { @@ -49,7 +49,7 @@ fn generic_data(tcx: TyCtxt<'_>, id: DefId) -> GenericData { return GenericData(v); } -#[derive(Serialize)] +#[derive(Serialize, Clone)] struct ItemDetails { // these fields only defined for fn items fn_instance_kind: Option, @@ -215,7 +215,7 @@ fn hash(obj: T) -> u64 { // Structs for serializing critical details about mono items // ========================================================= -#[derive(Serialize)] +#[derive(Serialize, Clone)] enum MonoItemKind { MonoItemFn { name: String, @@ -231,7 +231,7 @@ enum MonoItemKind { asm: String, }, } -#[derive(Serialize)] +#[derive(Serialize, Clone)] struct Item { #[serde(skip)] mono_item: MonoItem, @@ -360,7 +360,7 @@ impl Serialize for ItemSource { } #[derive(Serialize)] -enum AllocInfo { +pub enum AllocInfo { Function(stable_mir::mir::mono::Instance), VTable(stable_mir::ty::Ty, Option>), Static(stable_mir::mir::mono::StaticDef), @@ -424,7 +424,7 @@ fn collect_alloc(val_collector: &mut InternedValueCollector, kind: Option { let pointed_kind = get_prov_type(kind); - println!("DEBUG: called collect_alloc: {:?}:{:?}:{:?}", val, pointed_kind, global_alloc); + if debug_enabled() { println!("DEBUG: called collect_alloc: {:?}:{:?}:{:?}", val, pointed_kind, global_alloc); } entry.or_insert(AllocInfo::Memory(pointed_kind.clone().unwrap(), alloc.clone())); alloc.provenance.ptrs.iter().for_each(|(_, prov)| { collect_alloc(val_collector, pointed_kind.clone(), prov.0); @@ -533,7 +533,7 @@ impl MirVisitor for InternedValueCollector<'_, '_> { use stable_mir::ty::{ConstantKind, TyConst, TyConstKind}; match constant.kind() { ConstantKind::Allocated(alloc) => { - println!("visited_mir_const::Allocated({:?}) as {:?}", alloc, constant.ty().kind()); + if debug_enabled() { println!("visited_mir_const::Allocated({:?}) as {:?}", alloc, constant.ty().kind()); } alloc.provenance.ptrs.iter().for_each(|(_offset, prov)| collect_alloc(self, Some(constant.ty().kind()), prov.0)); }, ConstantKind::Ty(ty_const) => { From e75f804cf5a64ca1368d15e18fde94c9e16d9f4f Mon Sep 17 00:00:00 2001 From: Stephen Skeirik Date: Fri, 1 Nov 2024 16:43:18 -0400 Subject: [PATCH 04/15] add extra static item hack --- src/printer.rs | 16 +++++++++++++++- 1 file changed, 15 insertions(+), 1 deletion(-) diff --git a/src/printer.rs b/src/printer.rs index b7a52fd..bd32929 100644 --- a/src/printer.rs +++ b/src/printer.rs @@ -688,8 +688,22 @@ fn collect_items(tcx: TyCtxt<'_>) -> HashMap { fn emit_smir_internal(tcx: TyCtxt<'_>, writer: &mut dyn io::Write) { let local_crate = stable_mir::local_crate(); let items = collect_items(tcx); - let (unevaluated_consts, items) = collect_unevaluated_constant_items(tcx, items); + let items_clone = items.clone(); + let (unevaluated_consts, mut items) = collect_unevaluated_constant_items(tcx, items); let (calls_map, visited_allocs, visited_tys) = collect_interned_values(tcx, items.iter().map(|i| &i.mono_item).collect::>()); + + // FIXME: We dump extra static items here --- this should be handled better + for (_, alloc) in visited_allocs.iter() { + if let AllocInfo::Static(def) = alloc { + let mono_item = stable_mir::mir::mono::MonoItem::Fn(stable_mir::mir::mono::Instance::from(*def)); + let item_name = &mono_item_name(tcx, &mono_item); + if !items_clone.contains_key(item_name) { + println!("Items missing static with id {:?} and name {:?}", def, item_name); + items.push(mk_item(tcx, mono_item, item_name.clone())); + } + } + } + let called_functions = calls_map.iter().map(|(k,(_,name))| (k,name)).collect::>(); let crate_id = tcx.stable_crate_id(LOCAL_CRATE).as_u64(); let json_items = serde_json::to_value(&items).expect("serde_json mono items to value failed"); From 60b9c4e82cf37da1532c9388ebbbb8cdd79be28e Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Mon, 13 Jan 2025 15:41:56 +1100 Subject: [PATCH 05/15] add default: build to Makefile --- Makefile | 2 ++ 1 file changed, 2 insertions(+) diff --git a/Makefile b/Makefile index 4e16495..78786e8 100644 --- a/Makefile +++ b/Makefile @@ -24,6 +24,8 @@ ifeq (${TARGET}, release) RELEASE_FLAG=--release endif +default: build + build_all: rust_build rust_set_toolchain build setup: rust_clone From 081d77145302616e8873a192cb47a2c24583650a Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Mon, 13 Jan 2025 17:10:12 +1100 Subject: [PATCH 06/15] WIP comment out 2nd arg to Memory constructor (makes json format different) --- src/printer.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/printer.rs b/src/printer.rs index bd32929..2047136 100644 --- a/src/printer.rs +++ b/src/printer.rs @@ -364,7 +364,7 @@ pub enum AllocInfo { Function(stable_mir::mir::mono::Instance), VTable(stable_mir::ty::Ty, Option>), Static(stable_mir::mir::mono::StaticDef), - Memory(stable_mir::ty::TyKind, stable_mir::ty::Allocation), + Memory(/* stable_mir::ty::TyKind, */ stable_mir::ty::Allocation), } type LinkMap<'tcx> = HashMap, (ItemSource, FnSymType)>; type AllocMap = HashMap; @@ -425,7 +425,7 @@ fn collect_alloc(val_collector: &mut InternedValueCollector, kind: Option { let pointed_kind = get_prov_type(kind); if debug_enabled() { println!("DEBUG: called collect_alloc: {:?}:{:?}:{:?}", val, pointed_kind, global_alloc); } - entry.or_insert(AllocInfo::Memory(pointed_kind.clone().unwrap(), alloc.clone())); + entry.or_insert(AllocInfo::Memory(alloc.clone())); // pointed_kind.clone().unwrap(), alloc.clone())); alloc.provenance.ptrs.iter().for_each(|(_, prov)| { collect_alloc(val_collector, pointed_kind.clone(), prov.0); }); @@ -705,12 +705,13 @@ fn emit_smir_internal(tcx: TyCtxt<'_>, writer: &mut dyn io::Write) { } let called_functions = calls_map.iter().map(|(k,(_,name))| (k,name)).collect::>(); + let allocs = visited_allocs.iter().collect::>(); let crate_id = tcx.stable_crate_id(LOCAL_CRATE).as_u64(); let json_items = serde_json::to_value(&items).expect("serde_json mono items to value failed"); write!(writer, "{{\"name\": {}, \"crate_id\": {}, \"allocs\": {}, \"functions\": {}, \"uneval_consts\": {}, \"items\": {}", serde_json::to_string(&local_crate.name).expect("serde_json string to json failed"), serde_json::to_string(&crate_id).expect("serde_json number to json failed"), - serde_json::to_string(&visited_allocs).expect("serde_json global allocs to json failed"), + serde_json::to_string(&allocs).expect("serde_json global allocs to json failed"), serde_json::to_string(&called_functions).expect("serde_json functions to json failed"), serde_json::to_string(&unevaluated_consts).expect("serde_json unevaluated consts to json failed"), serde_json::to_string(&json_items).expect("serde_json mono items to json failed"), From 8bc2dd479a27ca65fc5cd828a74724a33fc9d3c7 Mon Sep 17 00:00:00 2001 From: dkcumming Date: Tue, 14 Jan 2025 15:17:39 +1000 Subject: [PATCH 07/15] Fixed issues for latest Rust. Needs review! --- src/driver.rs | 12 +++--------- src/printer.rs | 22 ++++++++++++---------- 2 files changed, 15 insertions(+), 19 deletions(-) diff --git a/src/driver.rs b/src/driver.rs index 6486b8c..7406e10 100644 --- a/src/driver.rs +++ b/src/driver.rs @@ -24,7 +24,7 @@ extern crate rustc_smir; extern crate rustc_session; use rustc_middle::ty::TyCtxt; use rustc_driver::Compilation; -use rustc_interface::{interface::Compiler, Queries}; +use rustc_interface::interface::Compiler; use rustc_smir::rustc_internal; struct StableMirCallbacks { @@ -35,16 +35,10 @@ impl rustc_driver::Callbacks for StableMirCallbacks { fn after_analysis<'tcx>( &mut self, _compiler: &Compiler, - queries: &'tcx Queries<'tcx>, + tcx: TyCtxt<'tcx>, ) -> Compilation { - let _q = queries - .global_ctxt() - .unwrap() - .get_mut() - .enter(|tcx| { - let _ = rustc_internal::run(tcx, || (self.callback_fn)(tcx)); - }); + let _ = rustc_internal::run(tcx, || (self.callback_fn)(tcx)); Compilation::Continue } diff --git a/src/printer.rs b/src/printer.rs index 2047136..b4bf470 100644 --- a/src/printer.rs +++ b/src/printer.rs @@ -11,7 +11,7 @@ extern crate stable_mir; extern crate serde; extern crate serde_json; use rustc_middle as middle; -use rustc_middle::ty::{TyCtxt, Ty, TyKind, EarlyBinder, FnSig, GenericArgs, TypeFoldable, ParamEnv}; //, Binder, Generics, GenericPredicates +use rustc_middle::ty::{TyCtxt, Ty, TyKind, EarlyBinder, FnSig, GenericArgs, TypeFoldable, TypingEnv}; //, Binder, Generics, GenericPredicates use rustc_session::config::{OutFileName, OutputType}; use rustc_span::{def_id::{DefId, LOCAL_CRATE}, symbol}; // DUMMY_SP, symbol::sym::test; use rustc_smir::rustc_internal; @@ -67,7 +67,8 @@ fn default_unwrap_early_binder<'tcx, T>(tcx: TyCtxt<'tcx>, id: DefId, v: EarlyBi where T: TypeFoldable> { let v_copy = v.clone(); - match tcx.try_instantiate_and_normalize_erasing_regions(GenericArgs::identity_for_item(tcx, id), tcx.param_env(id), v) { + let body = tcx.optimized_mir(id); + match tcx.try_instantiate_and_normalize_erasing_regions(GenericArgs::identity_for_item(tcx, id), body.typing_env(tcx), v) { Ok(res) => return res, Err(err) => { println!("{:?}", err); v_copy.skip_binder() } } @@ -80,7 +81,8 @@ fn print_type<'tcx>(tcx: TyCtxt<'tcx>, id: DefId, ty: EarlyBinder<'tcx, Ty<'tcx> // since FnDef doesn't contain signature, lookup actual function type // via getting fn signature with parameters and resolving those parameters let sig0 = tcx.fn_sig(fun_id); - let sig1 = match tcx.try_instantiate_and_normalize_erasing_regions(args, tcx.param_env(fun_id), sig0) { + let body = tcx.optimized_mir(id); + let sig1 = match tcx.try_instantiate_and_normalize_erasing_regions(args, body.typing_env(tcx), sig0) { Ok(res) => res, Err(err) => { println!("{:?}", err); sig0.skip_binder() } }; @@ -372,7 +374,7 @@ type TyMap = HashMap { tcx: TyCtxt<'tcx>, - sym: String, + _sym: String, locals: &'local [LocalDecl], link_map: &'local mut LinkMap<'tcx>, visited_allocs: &'local mut AllocMap, @@ -450,7 +452,7 @@ fn collect_vec_tys(collector: &mut InternedValueCollector, tys: Vec collect_ty(collector, *ty), @@ -464,7 +466,7 @@ fn collect_arg_tys(collector: &mut InternedValueCollector, args: &stable_mir::ty } fn collect_ty(val_collector: &mut InternedValueCollector, val: stable_mir::ty::Ty) { - use stable_mir::ty::{GenericArgKind::*, RigidTy::*, TyConst, TyConstKind::*, TyKind::RigidTy}; + use stable_mir::ty::{RigidTy::*, TyKind::RigidTy}; // GenericArgKind::*, TyConst, TyConstKind::* if val_collector.visited_tys.insert(hash(val), (val.kind(), val.layout().map(|l| l.shape()).ok())).is_some() { match val.kind() { RigidTy(Array(ty, _) | Pat(ty, _) | Slice(ty) | RawPtr(ty, _) | Ref(_, ty, _)) => { @@ -530,7 +532,7 @@ impl MirVisitor for InternedValueCollector<'_, '_> { } fn visit_mir_const(&mut self, constant: &stable_mir::ty::MirConst, loc: stable_mir::mir::visit::Location) { - use stable_mir::ty::{ConstantKind, TyConst, TyConstKind}; + use stable_mir::ty::{ConstantKind, TyConstKind}; // TyConst match constant.kind() { ConstantKind::Allocated(alloc) => { if debug_enabled() { println!("visited_mir_const::Allocated({:?}) as {:?}", alloc, constant.ty().kind()); } @@ -568,7 +570,7 @@ fn collect_interned_values<'tcx,'local>(tcx: TyCtxt<'tcx>, items: Vec<&'local Mo for body in get_bodies(tcx, inst).into_iter() { InternedValueCollector { tcx, - sym: inst.mangled_name(), + _sym: inst.mangled_name(), locals: body.locals(), link_map: &mut calls_map, visited_tys: &mut visited_tys, @@ -581,7 +583,7 @@ fn collect_interned_values<'tcx,'local>(tcx: TyCtxt<'tcx>, items: Vec<&'local Mo for body in get_bodies(tcx, &inst).into_iter() { InternedValueCollector { tcx, - sym: inst.mangled_name(), + _sym: inst.mangled_name(), locals: &[], link_map: &mut calls_map, visited_tys: &mut visited_tys, @@ -612,7 +614,7 @@ impl MirVisitor for UnevaluatedConstCollector<'_,'_> { if let stable_mir::ty::ConstantKind::Unevaluated(uconst) = constant.kind() { let internal_def = rustc_internal::internal(self.tcx, uconst.def.def_id()); let internal_args = rustc_internal::internal(self.tcx, uconst.args.clone()); - let maybe_inst = rustc_middle::ty::Instance::try_resolve(self.tcx, ParamEnv::reveal_all(), internal_def, internal_args); + let maybe_inst = rustc_middle::ty::Instance::try_resolve(self.tcx, TypingEnv::post_analysis(self.tcx, internal_def), internal_def, internal_args); let inst = maybe_inst.ok().flatten().expect(format!("Failed to resolve mono item for {:?}", uconst).as_str()); let internal_mono_item = rustc_middle::mir::mono::MonoItem::Fn(inst); let item_name = mono_item_name_int(self.tcx, &internal_mono_item); From ff29db3a715380fee5ee28d592fe692df3fba3d8 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Jan 2025 16:28:56 +1100 Subject: [PATCH 08/15] Depend on latest commit in beta as of today, in rust-lang/rust --- Makefile | 11 ++++++++--- 1 file changed, 8 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 78786e8..8101511 100644 --- a/Makefile +++ b/Makefile @@ -16,8 +16,13 @@ RUST_LIB_DIR=${RUST_INSTALL_DIR}/lib RUST_DEP_DIR=${RUST_BUILD_DIR}/stage1-rustc/${RUST_ARCH}/release/deps TARGET_DEP_DIR=${CURDIR}/target/${TARGET}/deps TEMP_DIR=${RUST_DIR}/temp -RUST_REPO=https://github.com/runtimeverification/rust -RUST_BRANCH=master +############################################# +# depend on the rust compiler +RUST_REPO=https://github.com/rust-lang/rust +# tip of the `beta` branch on 2025-01-14 +RUST_BRANCH=beta +RUST_COMMIT=fe9b975 +############################################# TOOLCHAIN_NAME=smir_pretty RELEASE_FLAG= ifeq (${TARGET}, release) @@ -31,7 +36,7 @@ build_all: rust_build rust_set_toolchain build setup: rust_clone update: ${RUST_SRC} - cd "${RUST_SRC}"; git fetch origin; git reset --hard origin/${RUST_BRANCH} + cd "${RUST_SRC}"; git fetch origin; git checkout ${RUST_COMMIT} build: cargo build ${RELEASE_FLAG} From 385acbdefcc6d5846718ed08db38b9957011c199 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Tue, 14 Jan 2025 16:37:35 +1100 Subject: [PATCH 09/15] check out correct commit from beta branch in setup --- Makefile | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Makefile b/Makefile index 8101511..eb361c2 100644 --- a/Makefile +++ b/Makefile @@ -60,7 +60,9 @@ prebuild_clean: ${RUST_SRC} # NOTE: a deeper clone depth is needed for the build process rust_clone: - git clone --depth 70 --single-branch --branch "${RUST_BRANCH}" "${RUST_REPO}" "${RUST_SRC}" + git clone --depth 70 --single-branch --branch "${RUST_BRANCH}" "${RUST_REPO}" "${RUST_SRC}" && \ + cd "${RUST_SRC}" && \ + git checkout ${RUST_COMMIT} # rust_build for linking against custom rustc is involved From 147863885e7a76e22bf411021776b5fb31da92b1 Mon Sep 17 00:00:00 2001 From: Daniel Cumming <124537596+dkcumming@users.noreply.github.com> Date: Wed, 15 Jan 2025 14:49:56 +1000 Subject: [PATCH 10/15] Filter and normalise json output for golden test runs (#24) This PR adds functionality to filter and normalise the json output when comparing output to the golden tests. Some cases when we want to normalise output: 1. `"NormalSym"` mangled function names will have a hash following `17h` that will [change when the compiler version changes](https://github.com/rust-lang/rust/blob/2ae9916816a448fcaab3b2da461de754eda0055a/compiler/rustc_symbol_mangling/src/lib.rs#L69-L76). ``` < "NormalSym": "_ZN3std2rt19lang_start_internal17h3166ab4c34d1da61E" --- > "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" ^----can ignore---^ ``` 2. `"symbol_name"` mangled function names will have a hash following `17h` that will [change when the compiler version changes](https://github.com/rust-lang/rust/blob/2ae9916816a448fcaab3b2da461de754eda0055a/compiler/rustc_symbol_mangling/src/lib.rs#L69-L76). ``` < "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h40ba616aaa505a69E" --- > "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hd98db8d17b807164E" ``` --- .../failing/array.smir.json.expected | 40 ++--- .../failing/box.smir.json.expected | 92 +++++------ .../failing/defined-trait.smir.json.expected | 144 +++++++++--------- .../derive-copy-struct.smir.json.expected | 48 +++--- .../failing/generic.smir.json.expected | 64 ++++---- .../failing/panic_example.smir.json.expected | 100 ++++++------ .../std-string-empty.smir.json.expected | 88 +++++------ .../failing/std-to-string.smir.json.expected | 140 ++++++++--------- .../failing/str-empty.smir.json.expected | 46 +++--- .../failing/str-trivial.smir.json.expected | 46 +++--- tests/integration/normalise-filter.jq | 5 + .../programs/assert_eq.smir.json.expected | 50 +++--- .../programs/binop.smir.json.expected | 36 ++--- .../programs/char-trivial.smir.json.expected | 32 ++-- .../programs/closure-args.smir.json.expected | 36 ++--- .../closure-no-args.smir.json.expected | 36 ++--- .../const-arithm-simple.smir.json.expected | 36 ++--- .../programs/div.smir.json.expected | 32 ++-- .../double-ref-deref.smir.json.expected | 32 ++-- .../programs/enum.smir.json.expected | 30 ++-- .../programs/fibonacci.smir.json.expected | 36 ++--- .../programs/float.smir.json.expected | 32 ++-- .../programs/modulo.smir.json.expected | 32 ++-- .../mutual_recursion.smir.json.expected | 40 ++--- .../option-construction.smir.json.expected | 36 ++--- .../primitive-type-bounds.smir.json.expected | 32 ++-- .../recursion-simple-match.smir.json.expected | 36 ++--- .../recursion-simple.smir.json.expected | 36 ++--- .../programs/ref-deref.smir.json.expected | 32 ++-- .../programs/shl_min.smir.json.expected | 32 ++-- .../programs/slice.smir.json.expected | 60 ++++---- .../strange-ref-deref.smir.json.expected | 32 ++-- .../programs/struct.smir.json.expected | 32 ++-- .../programs/sum-to-n.smir.json.expected | 40 ++--- .../programs/tuple-eq.smir.json.expected | 40 ++--- .../programs/tuples-simple.smir.json.expected | 32 ++-- 36 files changed, 859 insertions(+), 854 deletions(-) diff --git a/tests/integration/failing/array.smir.json.expected b/tests/integration/failing/array.smir.json.expected index f7e9fe5..405f857 100644 --- a/tests/integration/failing/array.smir.json.expected +++ b/tests/integration/failing/array.smir.json.expected @@ -84,25 +84,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h38463d653158c251E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h3e77209299d57694E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hedc2c4b05a98cdccE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -114,19 +114,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hfa5d167701988535E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h0a316578559eb371E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17hc18feedbfd2ac264E" + "NormalSym": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h" } ], [ @@ -138,13 +138,13 @@ [ 29, { - "NormalSym": "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2eq17h1a7481030a69db91E" + "NormalSym": "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2eq17h" } ], [ 30, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -525,7 +525,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h83d84ef21d66e568E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -888,7 +888,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h0a316578559eb371E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1069,7 +1069,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h38463d653158c251E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1156,7 +1156,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17hf394d43ed8e21e13E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1223,7 +1223,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hedc2c4b05a98cdccE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1382,7 +1382,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hfa5d167701988535E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1421,7 +1421,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h06536692c0aeb15dE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1537,7 +1537,7 @@ "name": "std::array::equality::::eq" } }, - "symbol_name": "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2eq17h1a7481030a69db91E" + "symbol_name": "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2eq17h" }, { "details": null, @@ -1633,7 +1633,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h3e77209299d57694E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -2207,7 +2207,7 @@ "name": "main" } }, - "symbol_name": "_ZN5array4main17h093d1173588c7d34E" + "symbol_name": "_ZN5array4main17h" }, { "details": null, @@ -2365,7 +2365,7 @@ "name": ">::spec_eq" } }, - "symbol_name": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17hc18feedbfd2ac264E" + "symbol_name": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h" } ] } diff --git a/tests/integration/failing/box.smir.json.expected b/tests/integration/failing/box.smir.json.expected index f16c814..81b7952 100644 --- a/tests/integration/failing/box.smir.json.expected +++ b/tests/integration/failing/box.smir.json.expected @@ -580,25 +580,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h9eaaee507c2d21d0E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h92da431bec4d0519E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h8e7729f80a58ac71E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -610,19 +610,19 @@ [ 23, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hb15b29e3a14a6765E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 25, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hde9006a0949bffcfE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 29, { - "NormalSym": "_ZN4core9panicking14panic_nounwind17hee6445121510e179E" + "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ @@ -634,37 +634,37 @@ [ 32, { - "NormalSym": "_ZN4core9panicking9panic_fmt17h8510a50a874ddcc2E" + "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ 45, { - "NormalSym": "_ZN72_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h326b1277d709d8a8E" + "NormalSym": "_ZN72_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ 50, { - "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h878684328797f391E" + "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ 53, { - "NormalSym": "_ZN5alloc5alloc18handle_alloc_error17h367988acd01d106aE" + "NormalSym": "_ZN5alloc5alloc18handle_alloc_error17h" } ], [ 60, { - "NormalSym": "__rust_alloc" + "NormalSym": "" } ], [ 63, { - "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17hd083d5824be049beE" + "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" } ], [ @@ -676,37 +676,37 @@ [ 66, { - "NormalSym": "__rust_alloc_zeroed" + "NormalSym": "__" } ], [ 67, { - "NormalSym": "_ZN5alloc5alloc5alloc17h0f1941cd38b492e0E" + "NormalSym": "_ZN5alloc5alloc5alloc17h" } ], [ 68, { - "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h577e370d545c7763E" + "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" } ], [ 76, { - "NormalSym": "_ZN5alloc5alloc15exchange_malloc17h5e6611a095512e8fE" + "NormalSym": "_ZN5alloc5alloc15exchange_malloc17h" } ], [ 78, { - "NormalSym": "__rust_dealloc" + "NormalSym": "" } ], [ 79, { - "NormalSym": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17hb8ea1a8a8ce8e611E" + "NormalSym": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17h" } ], [ @@ -718,7 +718,7 @@ [ 83, { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h31446c1bb7428470E" + "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" } ], [ @@ -730,25 +730,25 @@ [ 87, { - "NormalSym": "_ZN5alloc5boxed12Box$LT$T$GT$3new17hb7b054b22201ca41E" + "NormalSym": "_ZN5alloc5boxed12Box$LT$T$GT$3new17h" } ], [ 88, { - "NormalSym": "_ZN71_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17he8355580e493ee18E" + "NormalSym": "_ZN71_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h" } ], [ 89, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ 90, { - "NormalSym": "_ZN4core3ptr49drop_in_place$LT$alloc..boxed..Box$LT$i32$GT$$GT$17hba8e3b90af82b457E" + "NormalSym": "_ZN4core3ptr49drop_in_place$LT$alloc..boxed..Box$LT$i32$GT$$GT$17h" } ], [ @@ -2454,7 +2454,7 @@ "name": "main" } }, - "symbol_name": "_ZN3box4main17ha8a3550617341dbeE" + "symbol_name": "_ZN3box4main17h" }, { "details": null, @@ -2826,7 +2826,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hfde27f23de2c91dcE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -3189,7 +3189,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hde9006a0949bffcfE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -3370,7 +3370,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h9eaaee507c2d21d0E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -3381,7 +3381,7 @@ "name": "std::intrinsics::size_of_val::" } }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17h7b6b24fed39c5d75E" + "symbol_name": "_ZN4core10intrinsics11size_of_val17h" }, { "details": null, @@ -3392,7 +3392,7 @@ "name": "std::intrinsics::min_align_of_val::" } }, - "symbol_name": "_ZN4core10intrinsics16min_align_of_val17h490053aac5bf90ebE" + "symbol_name": "_ZN4core10intrinsics16min_align_of_val17h" }, { "details": null, @@ -3572,7 +3572,7 @@ "name": "std::cmp::impls::::eq" } }, - "symbol_name": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17hb8ea1a8a8ce8e611E" + "symbol_name": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17h" }, { "details": null, @@ -3659,7 +3659,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17hb9952c72c6f60b94E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -3726,7 +3726,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h8e7729f80a58ac71E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -3885,7 +3885,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hb15b29e3a14a6765E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -4993,7 +4993,7 @@ "name": "std::ptr::read_volatile::precondition_check" } }, - "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17hd083d5824be049beE" + "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h" }, { "details": null, @@ -5252,7 +5252,7 @@ "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr49drop_in_place$LT$alloc..boxed..Box$LT$i32$GT$$GT$17hba8e3b90af82b457E" + "symbol_name": "_ZN4core3ptr49drop_in_place$LT$alloc..boxed..Box$LT$i32$GT$$GT$17h" }, { "details": null, @@ -5291,7 +5291,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h7f9f1789552be433E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -5596,7 +5596,7 @@ "name": "std::ptr::NonNull::::new_unchecked::precondition_check" } }, - "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h577e370d545c7763E" + "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" }, { "details": null, @@ -5692,7 +5692,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h92da431bec4d0519E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -6536,7 +6536,7 @@ "name": "alloc::alloc::exchange_malloc" } }, - "symbol_name": "_ZN5alloc5alloc15exchange_malloc17h5e6611a095512e8fE" + "symbol_name": "_ZN5alloc5alloc15exchange_malloc17h" }, { "details": null, @@ -7490,7 +7490,7 @@ "name": "std::alloc::alloc" } }, - "symbol_name": "_ZN5alloc5alloc5alloc17h0f1941cd38b492e0E" + "symbol_name": "_ZN5alloc5alloc5alloc17h" }, { "details": null, @@ -11516,7 +11516,7 @@ "name": "std::alloc::Global::alloc_impl" } }, - "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h878684328797f391E" + "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h" }, { "details": null, @@ -11774,7 +11774,7 @@ "name": "std::boxed::Box::::new" } }, - "symbol_name": "_ZN5alloc5boxed12Box$LT$T$GT$3new17hb7b054b22201ca41E" + "symbol_name": "_ZN5alloc5boxed12Box$LT$T$GT$3new17h" }, { "details": null, @@ -12684,7 +12684,7 @@ "name": "::deallocate" } }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h31446c1bb7428470E" + "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" }, { "details": null, @@ -13024,7 +13024,7 @@ "name": " as std::cmp::PartialEq>::eq" } }, - "symbol_name": "_ZN71_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17he8355580e493ee18E" + "symbol_name": "_ZN71_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h" }, { "details": null, @@ -14077,7 +14077,7 @@ "name": " as std::ops::Drop>::drop" } }, - "symbol_name": "_ZN72_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h326b1277d709d8a8E" + "symbol_name": "_ZN72_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ] } diff --git a/tests/integration/failing/defined-trait.smir.json.expected b/tests/integration/failing/defined-trait.smir.json.expected index 1e7bc4a..dbc3d60 100644 --- a/tests/integration/failing/defined-trait.smir.json.expected +++ b/tests/integration/failing/defined-trait.smir.json.expected @@ -1189,25 +1189,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hdaaf8f66ba8b07fbE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17he94a22af18302461E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h451c6b04f22095abE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -1219,19 +1219,19 @@ [ 21, { - "NormalSym": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h51bfddf7efe491c8E" + "NormalSym": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" } ], [ 30, { - "NormalSym": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h3c699aa3dd217762E" + "NormalSym": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" } ], [ 31, { - "NormalSym": "_ZN4core9panicking14panic_nounwind17hee6445121510e179E" + "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ @@ -1243,37 +1243,37 @@ [ 33, { - "NormalSym": "_ZN4core9panicking9panic_fmt17h8510a50a874ddcc2E" + "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ 46, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h396ce4bb5a422dd5E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 48, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hbbfbaaa71345ed22E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 51, { - "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h1a5ac00d73e54207E" + "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ 55, { - "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h1e2744d4a270a4c6E" + "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ 61, { - "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h7a642e4a80f62f08E" + "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" } ], [ @@ -1285,31 +1285,31 @@ [ 67, { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17hd069999b4f72609fE" + "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" } ], [ 69, { - "NormalSym": "_ZN5alloc7raw_vec12handle_error17h9fbab9c4138a4cf5E" + "NormalSym": "_ZN5alloc7raw_vec12handle_error17h" } ], [ 73, { - "NormalSym": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17ha5b10a238ec55413E" + "NormalSym": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" } ], [ 78, { - "NormalSym": "__rust_alloc" + "NormalSym": "" } ], [ 79, { - "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h479600701b538eb1E" + "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" } ], [ @@ -1321,49 +1321,49 @@ [ 82, { - "NormalSym": "__rust_alloc_zeroed" + "NormalSym": "__" } ], [ 83, { - "NormalSym": "_ZN5alloc5alloc5alloc17h037977fef949d14aE" + "NormalSym": "_ZN5alloc5alloc5alloc17h" } ], [ 84, { - "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h55a6e5449fb88ebeE" + "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" } ], [ 98, { - "NormalSym": "_ZN4core5alloc6layout6Layout5array5inner17hc1fa8f6ec04d0a03E" + "NormalSym": "_ZN4core5alloc6layout6Layout5array5inner17h" } ], [ 99, { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h30a56ef2f8488920E" + "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" } ], [ 100, { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17hbc10084ba40edd1aE" + "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" } ], [ 102, { - "NormalSym": "__rust_dealloc" + "NormalSym": "" } ], [ 103, { - "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h387bc55e46abbdf8E" + "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ @@ -1387,67 +1387,67 @@ [ 107, { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h51fad278440e28deE" + "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" } ], [ 108, { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17hb55a7883c826734eE" + "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" } ], [ 109, { - "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h00a00eefcbeb22d7E" + "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" } ], [ 110, { - "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17heed7f68f230f2160E" + "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ 116, { - "NormalSym": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h4c6bc8cbeb8258f7E" + "NormalSym": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" } ], [ 118, { - "NormalSym": "_ZN67_$LT$defined_trait..Container$u20$as$u20$defined_trait..Summary$GT$9summarise17h1a2582435aa6d75bE" + "NormalSym": "_ZN67_$LT$defined_trait..Container$u20$as$u20$defined_trait..Summary$GT$9summarise17h" } ], [ 119, { - "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17hd089208062269690E" + "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ], [ 120, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ 122, { - "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h850550b9d403c3e1E" + "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" } ], [ 123, { - "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h62be22db9faf5d6aE" + "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" } ], [ 124, { - "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h5bb83139422cc7e6E" + "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" } ], [ @@ -2028,7 +2028,7 @@ "name": "main" } }, - "symbol_name": "_ZN13defined_trait4main17h45997b5a56c4893fE" + "symbol_name": "_ZN13defined_trait4main17h" }, { "details": null, @@ -2400,7 +2400,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h5da45d1d6655e04bE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -2763,7 +2763,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hbbfbaaa71345ed22E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -2944,7 +2944,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hdaaf8f66ba8b07fbE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -3296,7 +3296,7 @@ "name": "::to_string" } }, - "symbol_name": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h4c6bc8cbeb8258f7E" + "symbol_name": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" }, { "details": null, @@ -3307,7 +3307,7 @@ "name": "std::intrinsics::size_of_val::<[u8]>" } }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17hf90fa9d6ad23cd78E" + "symbol_name": "_ZN4core10intrinsics11size_of_val17h" }, { "details": null, @@ -5648,7 +5648,7 @@ "name": "std::intrinsics::copy_nonoverlapping::precondition_check" } }, - "symbol_name": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17ha5b10a238ec55413E" + "symbol_name": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" }, { "details": null, @@ -5723,7 +5723,7 @@ "name": "std::intrinsics::unlikely" } }, - "symbol_name": "_ZN4core10intrinsics8unlikely17h1b9c4265ec30503dE" + "symbol_name": "_ZN4core10intrinsics8unlikely17h" }, { "details": null, @@ -6159,7 +6159,7 @@ "name": "core::num::::unchecked_mul::precondition_check" } }, - "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h7a642e4a80f62f08E" + "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" }, { "details": null, @@ -6246,7 +6246,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h63a9763250dd8e8bE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -6405,7 +6405,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h396ce4bb5a422dd5E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -6472,7 +6472,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h451c6b04f22095abE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -7580,7 +7580,7 @@ "name": "std::ptr::read_volatile::precondition_check" } }, - "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h479600701b538eb1E" + "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h" }, { "details": null, @@ -7643,7 +7643,7 @@ "name": "std::ptr::drop_in_place::" } }, - "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h850550b9d403c3e1E" + "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" }, { "details": null, @@ -7814,7 +7814,7 @@ "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h62be22db9faf5d6aE" + "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" }, { "details": null, @@ -7928,7 +7928,7 @@ "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h5bb83139422cc7e6E" + "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" }, { "details": null, @@ -7967,7 +7967,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17hea919438ab54ed8eE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -8272,7 +8272,7 @@ "name": "std::ptr::NonNull::::new_unchecked::precondition_check" } }, - "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h55a6e5449fb88ebeE" + "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" }, { "details": null, @@ -9856,7 +9856,7 @@ "name": "std::alloc::Layout::array::inner" } }, - "symbol_name": "_ZN4core5alloc6layout6Layout5array5inner17hc1fa8f6ec04d0a03E" + "symbol_name": "_ZN4core5alloc6layout6Layout5array5inner17h" }, { "details": null, @@ -11503,7 +11503,7 @@ "name": "std::slice::from_raw_parts::precondition_check" } }, - "symbol_name": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h00a00eefcbeb22d7E" + "symbol_name": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" }, { "details": null, @@ -12805,7 +12805,7 @@ "name": "core::ub_checks::is_nonoverlapping::runtime" } }, - "symbol_name": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h3c699aa3dd217762E" + "symbol_name": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" }, { "details": null, @@ -14350,7 +14350,7 @@ "name": "::to_vec::" } }, - "symbol_name": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h51bfddf7efe491c8E" + "symbol_name": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" }, { "details": null, @@ -14446,7 +14446,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17he94a22af18302461E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -15400,7 +15400,7 @@ "name": "std::alloc::alloc" } }, - "symbol_name": "_ZN5alloc5alloc5alloc17h037977fef949d14aE" + "symbol_name": "_ZN5alloc5alloc5alloc17h" }, { "details": null, @@ -19426,7 +19426,7 @@ "name": "std::alloc::Global::alloc_impl" } }, - "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h387bc55e46abbdf8E" + "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h" }, { "details": null, @@ -20657,7 +20657,7 @@ "name": "alloc::raw_vec::RawVec::::current_memory" } }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h51fad278440e28deE" + "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" }, { "details": null, @@ -23329,7 +23329,7 @@ "name": "alloc::raw_vec::RawVec::::try_allocate_in" } }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17hd069999b4f72609fE" + "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" }, { "details": null, @@ -24239,7 +24239,7 @@ "name": "::deallocate" } }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17hb55a7883c826734eE" + "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" }, { "details": null, @@ -24377,7 +24377,7 @@ "name": "::allocate_zeroed" } }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h30a56ef2f8488920E" + "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" }, { "details": null, @@ -24515,7 +24515,7 @@ "name": "::allocate" } }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17hbc10084ba40edd1aE" + "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" }, { "details": null, @@ -24666,7 +24666,7 @@ "name": "::summarise" } }, - "symbol_name": "_ZN67_$LT$defined_trait..Container$u20$as$u20$defined_trait..Summary$GT$9summarise17h1a2582435aa6d75bE" + "symbol_name": "_ZN67_$LT$defined_trait..Container$u20$as$u20$defined_trait..Summary$GT$9summarise17h" }, { "details": null, @@ -25201,7 +25201,7 @@ "name": " as std::ops::Drop>::drop" } }, - "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h1a5ac00d73e54207E" + "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" }, { "details": null, @@ -25888,7 +25888,7 @@ "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" } }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17heed7f68f230f2160E" + "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" }, { "details": null, @@ -26316,7 +26316,7 @@ "name": " as std::ops::Drop>::drop" } }, - "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h1e2744d4a270a4c6E" + "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" }, { "details": null, @@ -27726,7 +27726,7 @@ "name": ">::eq" } }, - "symbol_name": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17hd089208062269690E" + "symbol_name": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ] } diff --git a/tests/integration/failing/derive-copy-struct.smir.json.expected b/tests/integration/failing/derive-copy-struct.smir.json.expected index 88b6034..893bf93 100644 --- a/tests/integration/failing/derive-copy-struct.smir.json.expected +++ b/tests/integration/failing/derive-copy-struct.smir.json.expected @@ -55,25 +55,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h16e5330c2a1dc1adE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h8bc2e7fd57893035E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hb7db3fe2604a1199E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -85,43 +85,43 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h849aaec59c3c4beaE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h57bb57d23469420bE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hc73b0fddf9c6e89dE" + "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" } ], [ 29, { - "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17hd1f3f35f6b6a4554E" + "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ], [ 33, { - "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h4dbf9d27bc3deff5E" + "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" } ], [ 35, { - "NormalSym": "_ZN18derive_copy_struct20take_first_container17h5e6aa0bbd5320b00E" + "NormalSym": "_ZN18derive_copy_struct20take_first_container17h" } ], [ 36, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -350,7 +350,7 @@ "name": "take_first_container" } }, - "symbol_name": "_ZN18derive_copy_struct20take_first_container17h5e6aa0bbd5320b00E" + "symbol_name": "_ZN18derive_copy_struct20take_first_container17h" }, { "details": null, @@ -847,7 +847,7 @@ "name": "main" } }, - "symbol_name": "_ZN18derive_copy_struct4main17h7f2b938122f7e822E" + "symbol_name": "_ZN18derive_copy_struct4main17h" }, { "details": null, @@ -1219,7 +1219,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h10e45513cdd171a5E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1582,7 +1582,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h57bb57d23469420bE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1763,7 +1763,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h16e5330c2a1dc1adE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1850,7 +1850,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h95668bf36d616210E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -2009,7 +2009,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h849aaec59c3c4beaE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2076,7 +2076,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hb7db3fe2604a1199E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2115,7 +2115,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17hb8ac2c34a09be70eE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2262,7 +2262,7 @@ "name": "std::array:: for [Container; 2]>::index" } }, - "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h4dbf9d27bc3deff5E" + "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" }, { "details": null, @@ -2378,7 +2378,7 @@ "name": "core::slice::index:: for [Container]>::index" } }, - "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hc73b0fddf9c6e89dE" + "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" }, { "details": null, @@ -2474,7 +2474,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h8bc2e7fd57893035E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -2574,7 +2574,7 @@ "name": ">::index" } }, - "symbol_name": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17hd1f3f35f6b6a4554E" + "symbol_name": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ] } diff --git a/tests/integration/failing/generic.smir.json.expected b/tests/integration/failing/generic.smir.json.expected index e7192f5..7319815 100644 --- a/tests/integration/failing/generic.smir.json.expected +++ b/tests/integration/failing/generic.smir.json.expected @@ -109,25 +109,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hea2d76cc64f5da0bE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h3294533c6832f1ebE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h9c63d3cb820058e9E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -139,67 +139,67 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h69bc9c68da00ee1dE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h61748e495429d1d3E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hf106b89777207b2bE" + "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" } ], [ 29, { - "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h1189d49f8f7ab385E" + "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" } ], [ 32, { - "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17hc84cc97dcb68f0ccE" + "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ], [ 33, { - "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17hb38d4c098f158998E" + "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ], [ 38, { - "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17hc486aadb73e3df07E" + "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" } ], [ 40, { - "NormalSym": "_ZN7generic11index_slice17hb47d8d47e6482c76E" + "NormalSym": "_ZN7generic11index_slice17h" } ], [ 41, { - "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17he454f169d3435272E" + "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" } ], [ 42, { - "NormalSym": "_ZN7generic11index_slice17h40d46dc9ff7722aeE" + "NormalSym": "_ZN7generic11index_slice17h" } ], [ 43, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -580,7 +580,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hbb296b96ad86ac07E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -943,7 +943,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h61748e495429d1d3E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1124,7 +1124,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hea2d76cc64f5da0bE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1211,7 +1211,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h2a5244da1ffe2c6aE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1370,7 +1370,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h69bc9c68da00ee1dE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1437,7 +1437,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h9c63d3cb820058e9E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1476,7 +1476,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h8e456511e5036082E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1623,7 +1623,7 @@ "name": "std::array:: for [i32; 5]>::index" } }, - "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17hc486aadb73e3df07E" + "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" }, { "details": null, @@ -1770,7 +1770,7 @@ "name": "std::array:: for [char; 5]>::index" } }, - "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17he454f169d3435272E" + "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" }, { "details": null, @@ -1886,7 +1886,7 @@ "name": "core::slice::index:: for [char]>::index" } }, - "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h1189d49f8f7ab385E" + "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" }, { "details": null, @@ -2002,7 +2002,7 @@ "name": "core::slice::index:: for [i32]>::index" } }, - "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hf106b89777207b2bE" + "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" }, { "details": null, @@ -2098,7 +2098,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h3294533c6832f1ebE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -2295,7 +2295,7 @@ "name": "index_slice::" } }, - "symbol_name": "_ZN7generic11index_slice17h40d46dc9ff7722aeE" + "symbol_name": "_ZN7generic11index_slice17h" }, { "details": null, @@ -2492,7 +2492,7 @@ "name": "index_slice::" } }, - "symbol_name": "_ZN7generic11index_slice17hb47d8d47e6482c76E" + "symbol_name": "_ZN7generic11index_slice17h" }, { "details": null, @@ -3441,7 +3441,7 @@ "name": "main" } }, - "symbol_name": "_ZN7generic4main17h7a9d065ae1987732E" + "symbol_name": "_ZN7generic4main17h" }, { "details": null, @@ -3541,7 +3541,7 @@ "name": ">::index" } }, - "symbol_name": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17hb38d4c098f158998E" + "symbol_name": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" }, { "details": null, @@ -3641,7 +3641,7 @@ "name": ">::index" } }, - "symbol_name": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17hc84cc97dcb68f0ccE" + "symbol_name": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ] } diff --git a/tests/integration/failing/panic_example.smir.json.expected b/tests/integration/failing/panic_example.smir.json.expected index 56b3b47..a167752 100644 --- a/tests/integration/failing/panic_example.smir.json.expected +++ b/tests/integration/failing/panic_example.smir.json.expected @@ -497,25 +497,25 @@ [ 7, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 20, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h163f76a593f9a61dE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 21, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h6e8cf99dfda5fdefE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 25, { - "NormalSym": "_ZN3std9panicking11begin_panic28_$u7b$$u7b$closure$u7d$$u7d$17h1ebb1eaab9f30b5aE" + "NormalSym": "_ZN3std9panicking11begin_panic28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ @@ -527,7 +527,7 @@ [ 29, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h11ec6afa27e3d406E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -539,31 +539,31 @@ [ 31, { - "NormalSym": "_ZN3std3sys9backtrace26__rust_end_short_backtrace17h4bae7cc86322177bE" + "NormalSym": "_ZN3std3sys9backtrace26__rust_end_short_backtrace17h" } ], [ 36, { - "NormalSym": "_ZN3std9panicking20rust_panic_with_hook17he6fc28793b894d73E" + "NormalSym": "_ZN3std9panicking20rust_panic_with_hook17h" } ], [ 42, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h86e2963be1a2fd6aE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 44, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hc407815e8e27866fE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 48, { - "NormalSym": "_ZN4core9panicking14panic_nounwind17hee6445121510e179E" + "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ @@ -575,31 +575,31 @@ [ 50, { - "NormalSym": "_ZN4core9panicking9panic_fmt17h8510a50a874ddcc2E" + "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ 63, { - "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17hfeb4b7829cd89493E" + "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ 66, { - "NormalSym": "_ZN5alloc5alloc18handle_alloc_error17h367988acd01d106aE" + "NormalSym": "_ZN5alloc5alloc18handle_alloc_error17h" } ], [ 73, { - "NormalSym": "__rust_alloc" + "NormalSym": "" } ], [ 75, { - "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17hc773488a477a662fE" + "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" } ], [ @@ -611,55 +611,55 @@ [ 78, { - "NormalSym": "__rust_alloc_zeroed" + "NormalSym": "__" } ], [ 79, { - "NormalSym": "_ZN5alloc5alloc5alloc17h214157fcd92df279E" + "NormalSym": "_ZN5alloc5alloc5alloc17h" } ], [ 80, { - "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h180abd43edd08785E" + "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" } ], [ 88, { - "NormalSym": "_ZN5alloc5alloc15exchange_malloc17h5443007c4b77064aE" + "NormalSym": "_ZN5alloc5alloc15exchange_malloc17h" } ], [ 93, { - "NormalSym": "_ZN3std7process5abort17h4d7b628a2864edb7E" + "NormalSym": "_ZN3std7process5abort17h" } ], [ 94, { - "NormalSym": "_ZN3std9panicking14payload_as_str17h5ede2995a2a0c693E" + "NormalSym": "_ZN3std9panicking14payload_as_str17h" } ], [ 96, { - "NormalSym": "_ZN4core3fmt9Formatter9write_str17hd334b351ded225feE" + "NormalSym": "_ZN4core3fmt9Formatter9write_str17h" } ], [ 101, { - "NormalSym": "_ZN5alloc5boxed12Box$LT$T$GT$3new17hfb7bad2afdef8431E" + "NormalSym": "_ZN5alloc5boxed12Box$LT$T$GT$3new17h" } ], [ 112, { - "NormalSym": "_ZN3std9panicking11begin_panic17h046658c3c0b9185bE" + "NormalSym": "_ZN3std9panicking11begin_panic17h" } ], [ @@ -783,7 +783,7 @@ "name": "main" } }, - "symbol_name": "_ZN13panic_example4main17h1a3a8ec0839c9696E" + "symbol_name": "_ZN13panic_example4main17h" }, { "details": null, @@ -1153,7 +1153,7 @@ "name": "<&str as std::any::Any>::type_id" } }, - "symbol_name": "_ZN36_$LT$T$u20$as$u20$core..any..Any$GT$7type_id17h5fbaa8559e09a241E" + "symbol_name": "_ZN36_$LT$T$u20$as$u20$core..any..Any$GT$7type_id17h" }, { "details": null, @@ -1525,7 +1525,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hd4017724170dc624E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1888,7 +1888,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hc407815e8e27866fE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -2069,7 +2069,7 @@ "name": "std::sys::backtrace::__rust_end_short_backtrace::<{closure@std::rt::begin_panic<&str>::{closure#0}}, !>" } }, - "symbol_name": "_ZN3std3sys9backtrace26__rust_end_short_backtrace17h4bae7cc86322177bE" + "symbol_name": "_ZN3std3sys9backtrace26__rust_end_short_backtrace17h" }, { "details": null, @@ -2250,7 +2250,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h163f76a593f9a61dE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -2448,7 +2448,7 @@ "name": "std::rt::begin_panic::<&str>" } }, - "symbol_name": "_ZN3std9panicking11begin_panic17h046658c3c0b9185bE" + "symbol_name": "_ZN3std9panicking11begin_panic17h" }, { "details": null, @@ -2890,7 +2890,7 @@ "name": "std::rt::begin_panic::<&str>::{closure#0}" } }, - "symbol_name": "_ZN3std9panicking11begin_panic28_$u7b$$u7b$closure$u7d$$u7d$17h1ebb1eaab9f30b5aE" + "symbol_name": "_ZN3std9panicking11begin_panic28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -2901,7 +2901,7 @@ "name": "std::intrinsics::type_id::<&str>" } }, - "symbol_name": "_ZN4core10intrinsics7type_id17h948ad9d7a3771dcdE" + "symbol_name": "_ZN4core10intrinsics7type_id17h" }, { "details": null, @@ -2988,7 +2988,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h0b6b3134fd4818cdE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -3055,7 +3055,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h11ec6afa27e3d406E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -3214,7 +3214,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h86e2963be1a2fd6aE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -4322,7 +4322,7 @@ "name": "std::ptr::read_volatile::precondition_check" } }, - "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17hc773488a477a662fE" + "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h" }, { "details": null, @@ -4361,7 +4361,7 @@ "name": "std::ptr::drop_in_place::<&str>" } }, - "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$str$GT$17h77c483de56b3845cE" + "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$str$GT$17h" }, { "details": null, @@ -4400,7 +4400,7 @@ "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr72drop_in_place$LT$std..panicking..begin_panic..Payload$LT$$RF$str$GT$$GT$17h1b47a62f19fbd5f1E" + "symbol_name": "_ZN4core3ptr72drop_in_place$LT$std..panicking..begin_panic..Payload$LT$$RF$str$GT$$GT$17h" }, { "details": null, @@ -4439,7 +4439,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h21a5cf619fdd0e23E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -4744,7 +4744,7 @@ "name": "std::ptr::NonNull::::new_unchecked::precondition_check" } }, - "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h180abd43edd08785E" + "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" }, { "details": null, @@ -4850,7 +4850,7 @@ "name": " as core::panic::PanicPayload>::as_str" } }, - "symbol_name": "_ZN4core5panic12PanicPayload6as_str17h34f70170a81b2c4bE" + "symbol_name": "_ZN4core5panic12PanicPayload6as_str17h" }, { "details": null, @@ -4946,7 +4946,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h6e8cf99dfda5fdefE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -5790,7 +5790,7 @@ "name": "alloc::alloc::exchange_malloc" } }, - "symbol_name": "_ZN5alloc5alloc15exchange_malloc17h5443007c4b77064aE" + "symbol_name": "_ZN5alloc5alloc15exchange_malloc17h" }, { "details": null, @@ -6744,7 +6744,7 @@ "name": "std::alloc::alloc" } }, - "symbol_name": "_ZN5alloc5alloc5alloc17h214157fcd92df279E" + "symbol_name": "_ZN5alloc5alloc5alloc17h" }, { "details": null, @@ -10770,7 +10770,7 @@ "name": "std::alloc::Global::alloc_impl" } }, - "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17hfeb4b7829cd89493E" + "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h" }, { "details": null, @@ -11028,7 +11028,7 @@ "name": "std::boxed::Box::<&str>::new" } }, - "symbol_name": "_ZN5alloc5boxed12Box$LT$T$GT$3new17hfb7bad2afdef8431E" + "symbol_name": "_ZN5alloc5boxed12Box$LT$T$GT$3new17h" }, { "details": null, @@ -11458,7 +11458,7 @@ "name": " as std::fmt::Display>::fmt" } }, - "symbol_name": "_ZN84_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..fmt..Display$GT$3fmt17h2995801f2bca7f36E" + "symbol_name": "_ZN84_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..fmt..Display$GT$3fmt17h" }, { "details": null, @@ -11768,7 +11768,7 @@ "name": " as core::panic::PanicPayload>::get" } }, - "symbol_name": "_ZN91_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..panic..PanicPayload$GT$3get17h7e5b46332dff10e9E" + "symbol_name": "_ZN91_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..panic..PanicPayload$GT$3get17h" }, { "details": null, @@ -12772,7 +12772,7 @@ "name": " as core::panic::PanicPayload>::take_box" } }, - "symbol_name": "_ZN91_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..panic..PanicPayload$GT$8take_box17h38a7afb365d90d28E" + "symbol_name": "_ZN91_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..panic..PanicPayload$GT$8take_box17h" } ] } diff --git a/tests/integration/failing/std-string-empty.smir.json.expected b/tests/integration/failing/std-string-empty.smir.json.expected index 6fee598..2c8d4fd 100644 --- a/tests/integration/failing/std-string-empty.smir.json.expected +++ b/tests/integration/failing/std-string-empty.smir.json.expected @@ -559,25 +559,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h8a4d857081dbfaf6E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hbf94cbfcda9701e6E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17heba02fa12c9fe2d9E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -589,31 +589,31 @@ [ 23, { - "NormalSym": "_ZN4core9panicking14panic_nounwind17hee6445121510e179E" + "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ 28, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17he70aeb4246727f24E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 30, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h1929e2e8e9434881E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 34, { - "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17ha7e6a1ccddf30af0E" + "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ 38, { - "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17hdec771535c18b312E" + "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ @@ -625,19 +625,19 @@ [ 44, { - "NormalSym": "_ZN4core9panicking9panic_fmt17h8510a50a874ddcc2E" + "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ 57, { - "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17hbe9fc50f0b01d61dE" + "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" } ], [ 65, { - "NormalSym": "__rust_dealloc" + "NormalSym": "" } ], [ @@ -661,55 +661,55 @@ [ 77, { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h36f247bc9566572eE" + "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" } ], [ 78, { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h04db9e7ed4d0984aE" + "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" } ], [ 79, { - "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17hd731fe266d532e13E" + "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" } ], [ 80, { - "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h48a560245506d1e3E" + "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ 86, { - "NormalSym": "_ZN5alloc6string6String3new17h10f73349ad3baa53E" + "NormalSym": "_ZN5alloc6string6String3new17h" } ], [ 87, { - "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h563fb1f7b684b2a7E" + "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ], [ 88, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ 89, { - "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17ha4e7fc423a077132E" + "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" } ], [ 90, { - "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h63cbb232c447c463E" + "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" } ], [ @@ -721,7 +721,7 @@ [ 92, { - "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h0beb4ebee2e07298E" + "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" } ] ], @@ -1184,7 +1184,7 @@ "name": "main" } }, - "symbol_name": "_ZN16std_string_empty4main17hd07ef96c1ecf9236E" + "symbol_name": "_ZN16std_string_empty4main17h" }, { "details": null, @@ -1556,7 +1556,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h9123a60f5321d3daE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1919,7 +1919,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h1929e2e8e9434881E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -2100,7 +2100,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h8a4d857081dbfaf6E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -2111,7 +2111,7 @@ "name": "std::intrinsics::size_of_val::<[u8]>" } }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17hb66943408c33bf76E" + "symbol_name": "_ZN4core10intrinsics11size_of_val17h" }, { "details": null, @@ -2547,7 +2547,7 @@ "name": "core::num::::unchecked_mul::precondition_check" } }, - "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17hbe9fc50f0b01d61dE" + "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" }, { "details": null, @@ -2634,7 +2634,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17ha8ba36b85ae7fbb9E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -2793,7 +2793,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17he70aeb4246727f24E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2860,7 +2860,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17heba02fa12c9fe2d9E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2923,7 +2923,7 @@ "name": "std::ptr::drop_in_place::" } }, - "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17ha4e7fc423a077132E" + "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" }, { "details": null, @@ -3094,7 +3094,7 @@ "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h63cbb232c447c463E" + "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" }, { "details": null, @@ -3208,7 +3208,7 @@ "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h0beb4ebee2e07298E" + "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" }, { "details": null, @@ -3247,7 +3247,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17hd3783a560cffe87eE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -4894,7 +4894,7 @@ "name": "std::slice::from_raw_parts::precondition_check" } }, - "symbol_name": "_ZN4core5slice3raw14from_raw_parts18precondition_check17hd731fe266d532e13E" + "symbol_name": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" }, { "details": null, @@ -4990,7 +4990,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hbf94cbfcda9701e6E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -5173,7 +5173,7 @@ "name": "std::string::String::new" } }, - "symbol_name": "_ZN5alloc6string6String3new17h10f73349ad3baa53E" + "symbol_name": "_ZN5alloc6string6String3new17h" }, { "details": null, @@ -6404,7 +6404,7 @@ "name": "alloc::raw_vec::RawVec::::current_memory" } }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h36f247bc9566572eE" + "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" }, { "details": null, @@ -7314,7 +7314,7 @@ "name": "::deallocate" } }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h04db9e7ed4d0984aE" + "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" }, { "details": null, @@ -7849,7 +7849,7 @@ "name": " as std::ops::Drop>::drop" } }, - "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17ha7e6a1ccddf30af0E" + "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" }, { "details": null, @@ -8536,7 +8536,7 @@ "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" } }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h48a560245506d1e3E" + "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" }, { "details": null, @@ -8964,7 +8964,7 @@ "name": " as std::ops::Drop>::drop" } }, - "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17hdec771535c18b312E" + "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" }, { "details": null, @@ -10374,7 +10374,7 @@ "name": ">::eq" } }, - "symbol_name": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h563fb1f7b684b2a7E" + "symbol_name": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ] } diff --git a/tests/integration/failing/std-to-string.smir.json.expected b/tests/integration/failing/std-to-string.smir.json.expected index 460c943..eebdf33 100644 --- a/tests/integration/failing/std-to-string.smir.json.expected +++ b/tests/integration/failing/std-to-string.smir.json.expected @@ -1083,25 +1083,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h90dbb03933786387E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h02d1417dff5cd826E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h5b4cd0dacfd81eb4E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -1113,19 +1113,19 @@ [ 21, { - "NormalSym": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h33b8a6e5a0a7dfc4E" + "NormalSym": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" } ], [ 30, { - "NormalSym": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h6c25e126a2602078E" + "NormalSym": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" } ], [ 31, { - "NormalSym": "_ZN4core9panicking14panic_nounwind17hee6445121510e179E" + "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ @@ -1137,37 +1137,37 @@ [ 33, { - "NormalSym": "_ZN4core9panicking9panic_fmt17h8510a50a874ddcc2E" + "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ 46, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17ha82058174da31196E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 48, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h16fd98eaacdce366E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 51, { - "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17ha2b06c17550c4594E" + "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ 55, { - "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h9f21d22221a217aaE" + "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ 61, { - "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h147a48bdfc9cebaeE" + "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" } ], [ @@ -1179,31 +1179,31 @@ [ 67, { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17hde8132f4f12532dbE" + "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" } ], [ 69, { - "NormalSym": "_ZN5alloc7raw_vec12handle_error17h9fbab9c4138a4cf5E" + "NormalSym": "_ZN5alloc7raw_vec12handle_error17h" } ], [ 73, { - "NormalSym": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h9f024a4c9fa2be1dE" + "NormalSym": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" } ], [ 78, { - "NormalSym": "__rust_alloc" + "NormalSym": "" } ], [ 79, { - "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h728cba60bee17784E" + "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" } ], [ @@ -1215,49 +1215,49 @@ [ 82, { - "NormalSym": "__rust_alloc_zeroed" + "NormalSym": "__" } ], [ 83, { - "NormalSym": "_ZN5alloc5alloc5alloc17h0dca39f7982a9f7aE" + "NormalSym": "_ZN5alloc5alloc5alloc17h" } ], [ 84, { - "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17hee0e8c7ad69a05ffE" + "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" } ], [ 98, { - "NormalSym": "_ZN4core5alloc6layout6Layout5array5inner17h94147f78f9e43dd8E" + "NormalSym": "_ZN4core5alloc6layout6Layout5array5inner17h" } ], [ 99, { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17hd1378b6fec98ecddE" + "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" } ], [ 100, { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17hc5b4e4962fb0f40dE" + "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" } ], [ 102, { - "NormalSym": "__rust_dealloc" + "NormalSym": "" } ], [ 103, { - "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h3e8e7b3e0f598119E" + "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ @@ -1281,49 +1281,49 @@ [ 107, { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17hba8a41dea17e13ccE" + "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" } ], [ 108, { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h92716973ef61186eE" + "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" } ], [ 109, { - "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17hf3a78f9699bce1d6E" + "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" } ], [ 110, { - "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h812ed04340e8bc65E" + "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ 116, { - "NormalSym": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h34ab2d3d44afb0cfE" + "NormalSym": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" } ], [ 117, { - "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h9c119bf760646bc2E" + "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ], [ 118, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ 119, { - "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h471900168bc51ec1E" + "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" } ], [ @@ -1335,13 +1335,13 @@ [ 121, { - "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h9c3d7457c17d0509E" + "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" } ], [ 123, { - "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h5579b46778b517b5E" + "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" } ], [ @@ -1878,7 +1878,7 @@ "name": "main" } }, - "symbol_name": "_ZN13std_to_string4main17hbc4dd8701049b509E" + "symbol_name": "_ZN13std_to_string4main17h" }, { "details": null, @@ -2250,7 +2250,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h5ce59742aa8ff7b2E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -2613,7 +2613,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h16fd98eaacdce366E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -2794,7 +2794,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h90dbb03933786387E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -3146,7 +3146,7 @@ "name": "::to_string" } }, - "symbol_name": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h34ab2d3d44afb0cfE" + "symbol_name": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" }, { "details": null, @@ -3157,7 +3157,7 @@ "name": "std::intrinsics::size_of_val::<[u8]>" } }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17hfbc7cf1f1af1c1e6E" + "symbol_name": "_ZN4core10intrinsics11size_of_val17h" }, { "details": null, @@ -5498,7 +5498,7 @@ "name": "std::intrinsics::copy_nonoverlapping::precondition_check" } }, - "symbol_name": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h9f024a4c9fa2be1dE" + "symbol_name": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" }, { "details": null, @@ -5573,7 +5573,7 @@ "name": "std::intrinsics::unlikely" } }, - "symbol_name": "_ZN4core10intrinsics8unlikely17h1ce0cbb60d79001aE" + "symbol_name": "_ZN4core10intrinsics8unlikely17h" }, { "details": null, @@ -6009,7 +6009,7 @@ "name": "core::num::::unchecked_mul::precondition_check" } }, - "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h147a48bdfc9cebaeE" + "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" }, { "details": null, @@ -6096,7 +6096,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h2bff7de0843201b5E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -6163,7 +6163,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h5b4cd0dacfd81eb4E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -6322,7 +6322,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17ha82058174da31196E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -7430,7 +7430,7 @@ "name": "std::ptr::read_volatile::precondition_check" } }, - "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h728cba60bee17784E" + "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h" }, { "details": null, @@ -7493,7 +7493,7 @@ "name": "std::ptr::drop_in_place::" } }, - "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h5579b46778b517b5E" + "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" }, { "details": null, @@ -7664,7 +7664,7 @@ "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h9c3d7457c17d0509E" + "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" }, { "details": null, @@ -7778,7 +7778,7 @@ "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h471900168bc51ec1E" + "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" }, { "details": null, @@ -7817,7 +7817,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17hd383971480c11f2aE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -8122,7 +8122,7 @@ "name": "std::ptr::NonNull::::new_unchecked::precondition_check" } }, - "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17hee0e8c7ad69a05ffE" + "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" }, { "details": null, @@ -9706,7 +9706,7 @@ "name": "std::alloc::Layout::array::inner" } }, - "symbol_name": "_ZN4core5alloc6layout6Layout5array5inner17h94147f78f9e43dd8E" + "symbol_name": "_ZN4core5alloc6layout6Layout5array5inner17h" }, { "details": null, @@ -11353,7 +11353,7 @@ "name": "std::slice::from_raw_parts::precondition_check" } }, - "symbol_name": "_ZN4core5slice3raw14from_raw_parts18precondition_check17hf3a78f9699bce1d6E" + "symbol_name": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" }, { "details": null, @@ -12655,7 +12655,7 @@ "name": "core::ub_checks::is_nonoverlapping::runtime" } }, - "symbol_name": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h6c25e126a2602078E" + "symbol_name": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" }, { "details": null, @@ -14200,7 +14200,7 @@ "name": "::to_vec::" } }, - "symbol_name": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h33b8a6e5a0a7dfc4E" + "symbol_name": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" }, { "details": null, @@ -14296,7 +14296,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h02d1417dff5cd826E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -15250,7 +15250,7 @@ "name": "std::alloc::alloc" } }, - "symbol_name": "_ZN5alloc5alloc5alloc17h0dca39f7982a9f7aE" + "symbol_name": "_ZN5alloc5alloc5alloc17h" }, { "details": null, @@ -19276,7 +19276,7 @@ "name": "std::alloc::Global::alloc_impl" } }, - "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h3e8e7b3e0f598119E" + "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h" }, { "details": null, @@ -20507,7 +20507,7 @@ "name": "alloc::raw_vec::RawVec::::current_memory" } }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17hba8a41dea17e13ccE" + "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" }, { "details": null, @@ -23179,7 +23179,7 @@ "name": "alloc::raw_vec::RawVec::::try_allocate_in" } }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17hde8132f4f12532dbE" + "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" }, { "details": null, @@ -24089,7 +24089,7 @@ "name": "::deallocate" } }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h92716973ef61186eE" + "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" }, { "details": null, @@ -24227,7 +24227,7 @@ "name": "::allocate_zeroed" } }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17hd1378b6fec98ecddE" + "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" }, { "details": null, @@ -24365,7 +24365,7 @@ "name": "::allocate" } }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17hc5b4e4962fb0f40dE" + "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" }, { "details": null, @@ -24900,7 +24900,7 @@ "name": " as std::ops::Drop>::drop" } }, - "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17ha2b06c17550c4594E" + "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" }, { "details": null, @@ -25587,7 +25587,7 @@ "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" } }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h812ed04340e8bc65E" + "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" }, { "details": null, @@ -26015,7 +26015,7 @@ "name": " as std::ops::Drop>::drop" } }, - "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h9f21d22221a217aaE" + "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" }, { "details": null, @@ -27425,7 +27425,7 @@ "name": ">::eq" } }, - "symbol_name": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h9c119bf760646bc2E" + "symbol_name": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ] } diff --git a/tests/integration/failing/str-empty.smir.json.expected b/tests/integration/failing/str-empty.smir.json.expected index bcf70bb..f52ac01 100644 --- a/tests/integration/failing/str-empty.smir.json.expected +++ b/tests/integration/failing/str-empty.smir.json.expected @@ -118,25 +118,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h544ca298fd981893E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h4e60a16e561622f8E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h2df40009830159bbE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -148,25 +148,25 @@ [ 21, { - "NormalSym": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h7ebea87933a96534E" + "NormalSym": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h" } ], [ 25, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h69cf50aaff9f5c63E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 27, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h8a7a569958061d49E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 29, { - "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h29105622a154f963E" + "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ @@ -184,13 +184,13 @@ [ 37, { - "NormalSym": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17he0d203be58d060afE" + "NormalSym": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h" } ], [ 38, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -571,7 +571,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h5d645f8826581ab5E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -934,7 +934,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h8a7a569958061d49E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1115,7 +1115,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h544ca298fd981893E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1126,7 +1126,7 @@ "name": "std::intrinsics::size_of_val::<[u8]>" } }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17h0266a439570c5ebeE" + "symbol_name": "_ZN4core10intrinsics11size_of_val17h" }, { "details": null, @@ -1295,7 +1295,7 @@ "name": "std::cmp::impls::::eq" } }, - "symbol_name": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17he0d203be58d060afE" + "symbol_name": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h" }, { "details": null, @@ -1382,7 +1382,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h182d0d446cc06b0eE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1449,7 +1449,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h2df40009830159bbE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1608,7 +1608,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h69cf50aaff9f5c63E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1647,7 +1647,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h8b98d3f8513266f6E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1991,7 +1991,7 @@ "name": "core::str::traits::::eq" } }, - "symbol_name": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h7ebea87933a96534E" + "symbol_name": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h" }, { "details": null, @@ -2087,7 +2087,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h4e60a16e561622f8E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -2774,7 +2774,7 @@ "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" } }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h29105622a154f963E" + "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" }, { "details": null, @@ -3218,7 +3218,7 @@ "name": "main" } }, - "symbol_name": "_ZN9str_empty4main17hf8e3421947f62c31E" + "symbol_name": "_ZN9str_empty4main17h" } ] } diff --git a/tests/integration/failing/str-trivial.smir.json.expected b/tests/integration/failing/str-trivial.smir.json.expected index 2110277..8b2631a 100644 --- a/tests/integration/failing/str-trivial.smir.json.expected +++ b/tests/integration/failing/str-trivial.smir.json.expected @@ -125,25 +125,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17heb0630f5a0cd5086E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h2d18d5a9e8fb95abE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hca1f8df10907907fE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -155,25 +155,25 @@ [ 21, { - "NormalSym": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17hc7a6bff4c06f14a6E" + "NormalSym": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h" } ], [ 25, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h17ebc11c61414b3aE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 27, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h8cce9b152dc9cb99E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 29, { - "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h5e8e428385f25c8bE" + "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ @@ -191,13 +191,13 @@ [ 37, { - "NormalSym": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h6c4717c569400301E" + "NormalSym": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h" } ], [ 38, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -650,7 +650,7 @@ "name": "main" } }, - "symbol_name": "_ZN11str_trivial4main17hd1f2bc6fabc04c2dE" + "symbol_name": "_ZN11str_trivial4main17h" }, { "details": null, @@ -1022,7 +1022,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h28916d16c5f1dccaE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1385,7 +1385,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h8cce9b152dc9cb99E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1566,7 +1566,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17heb0630f5a0cd5086E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1577,7 +1577,7 @@ "name": "std::intrinsics::size_of_val::<[u8]>" } }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17hcf585b6f6289e086E" + "symbol_name": "_ZN4core10intrinsics11size_of_val17h" }, { "details": null, @@ -1746,7 +1746,7 @@ "name": "std::cmp::impls::::eq" } }, - "symbol_name": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h6c4717c569400301E" + "symbol_name": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h" }, { "details": null, @@ -1833,7 +1833,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h21fff4c9e2eedc00E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1992,7 +1992,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h17ebc11c61414b3aE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2059,7 +2059,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hca1f8df10907907fE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2098,7 +2098,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h9a2a29885f89000bE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2442,7 +2442,7 @@ "name": "core::str::traits::::eq" } }, - "symbol_name": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17hc7a6bff4c06f14a6E" + "symbol_name": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h" }, { "details": null, @@ -2538,7 +2538,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h2d18d5a9e8fb95abE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -3225,7 +3225,7 @@ "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" } }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h5e8e428385f25c8bE" + "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ] } diff --git a/tests/integration/normalise-filter.jq b/tests/integration/normalise-filter.jq index 23c7e97..5b63a49 100644 --- a/tests/integration/normalise-filter.jq +++ b/tests/integration/normalise-filter.jq @@ -1,3 +1,8 @@ +# Remove the hashes at the end of mangled names +.functions = ( [ .functions[] | if .[1].NormalSym then .[1].NormalSym = .[1].NormalSym[:-17] else . end ] ) + | .items = ( [ .items[] | if .symbol_name then .symbol_name = .symbol_name[:-17] else . end ] ) + | +# Apply the normalisation filter { allocs: ( [ .allocs[] ] # sort allocs by their ID diff --git a/tests/integration/programs/assert_eq.smir.json.expected b/tests/integration/programs/assert_eq.smir.json.expected index 797bfaf..6e0f6db 100644 --- a/tests/integration/programs/assert_eq.smir.json.expected +++ b/tests/integration/programs/assert_eq.smir.json.expected @@ -4,25 +4,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he770fc9c7f092400E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hb06ebd36cf1fd65bE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h50b93c5bd94e40a8E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -34,49 +34,49 @@ [ 21, { - "NormalSym": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h57285fb3ede9d01cE" + "NormalSym": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h" } ], [ 27, { - "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h4a52d95dc4574769E" + "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h" } ], [ 28, { - "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17hb461f3a25df6a443E" + "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h" } ], [ 29, { - "NormalSym": "_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i32$GT$3fmt17h2f0986d8bc27bf03E" + "NormalSym": "_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i32$GT$3fmt17h" } ], [ 30, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hd98db8d17b807164E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 32, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17he87762546545c380E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 35, { - "NormalSym": "_ZN4core9panicking19assert_failed_inner17hae701ec8e1e0c738E" + "NormalSym": "_ZN4core9panicking19assert_failed_inner17h" } ], [ 41, { - "NormalSym": "_ZN4core9panicking13assert_failed17ha615b8109eb1d24eE" + "NormalSym": "_ZN4core9panicking13assert_failed17h" } ], [ @@ -457,7 +457,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hb9da34cecb7084feE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -820,7 +820,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17he87762546545c380E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1001,7 +1001,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he770fc9c7f092400E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1144,7 +1144,7 @@ "name": "<&i32 as std::fmt::Debug>::fmt" } }, - "symbol_name": "_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h83cea7bad7f3b5edE" + "symbol_name": "_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h" }, { "details": null, @@ -1666,7 +1666,7 @@ "name": "core::fmt::num::::fmt" } }, - "symbol_name": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h57285fb3ede9d01cE" + "symbol_name": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h" }, { "details": null, @@ -1753,7 +1753,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h4862a9441681ed9cE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1820,7 +1820,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h50b93c5bd94e40a8E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1979,7 +1979,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hd98db8d17b807164E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2018,7 +2018,7 @@ "name": "std::ptr::drop_in_place::<&i32>" } }, - "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$i32$GT$17h9641d331670bb7b5E" + "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$i32$GT$17h" }, { "details": null, @@ -2057,7 +2057,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h4c42ad109c7592a3E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2371,7 +2371,7 @@ "name": "core::panicking::assert_failed::" } }, - "symbol_name": "_ZN4core9panicking13assert_failed17ha615b8109eb1d24eE" + "symbol_name": "_ZN4core9panicking13assert_failed17h" }, { "details": null, @@ -2467,7 +2467,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hb06ebd36cf1fd65bE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -3191,7 +3191,7 @@ "name": "main" } }, - "symbol_name": "_ZN9assert_eq4main17hfc966d14489c115fE" + "symbol_name": "_ZN9assert_eq4main17h" } ] } diff --git a/tests/integration/programs/binop.smir.json.expected b/tests/integration/programs/binop.smir.json.expected index 24f52d9..0578aac 100644 --- a/tests/integration/programs/binop.smir.json.expected +++ b/tests/integration/programs/binop.smir.json.expected @@ -1134,25 +1134,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he90aea535f4496f4E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h08eb118021a1dc92E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h58504e9a040c9e4dE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -1164,25 +1164,25 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17ha3ed128d842dfdf1E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h51ad69fdc370efa6E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 26, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ 31, { - "NormalSym": "_ZN5binop10test_binop17hbeddbf9d499fdbe1E" + "NormalSym": "_ZN5binop10test_binop17h" } ], [ @@ -1563,7 +1563,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h3ba479a87575e77fE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1926,7 +1926,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h51ad69fdc370efa6E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -2107,7 +2107,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he90aea535f4496f4E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -2194,7 +2194,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h667ae919e9ab5bfcE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -2261,7 +2261,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h58504e9a040c9e4dE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2420,7 +2420,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17ha3ed128d842dfdf1E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2459,7 +2459,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h458be6f014adabb4E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2555,7 +2555,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h08eb118021a1dc92E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -9540,7 +9540,7 @@ "name": "test_binop" } }, - "symbol_name": "_ZN5binop10test_binop17hbeddbf9d499fdbe1E" + "symbol_name": "_ZN5binop10test_binop17h" }, { "details": null, @@ -9776,7 +9776,7 @@ "name": "main" } }, - "symbol_name": "_ZN5binop4main17h1be5589900968ba9E" + "symbol_name": "_ZN5binop4main17h" } ] } diff --git a/tests/integration/programs/char-trivial.smir.json.expected b/tests/integration/programs/char-trivial.smir.json.expected index a00d517..99f842f 100644 --- a/tests/integration/programs/char-trivial.smir.json.expected +++ b/tests/integration/programs/char-trivial.smir.json.expected @@ -45,25 +45,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17ha21018ad4175866eE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hc064bca5f164541bE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h2404160337e74b25E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -75,19 +75,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h732125ae762d93e6E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hc79ad2be06c8228fE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 26, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -310,7 +310,7 @@ "name": "main" } }, - "symbol_name": "_ZN12char_trivial4main17hdcdcf88dcae9eb46E" + "symbol_name": "_ZN12char_trivial4main17h" }, { "details": null, @@ -682,7 +682,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h96c2a96fcceb735fE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1045,7 +1045,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hc79ad2be06c8228fE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1226,7 +1226,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17ha21018ad4175866eE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1313,7 +1313,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17haf18f95177fe722cE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1380,7 +1380,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h2404160337e74b25E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1539,7 +1539,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h732125ae762d93e6E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1578,7 +1578,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17he0a0cc927472deb2E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1674,7 +1674,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hc064bca5f164541bE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/closure-args.smir.json.expected b/tests/integration/programs/closure-args.smir.json.expected index 40a9634..ae85db5 100644 --- a/tests/integration/programs/closure-args.smir.json.expected +++ b/tests/integration/programs/closure-args.smir.json.expected @@ -54,25 +54,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h0ea9521db3c84ccdE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hbf176849a7ced595E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hc3597144c5271f28E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -84,25 +84,25 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h0009d64ea9f5d8a8E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hef0fcd067a31abd9E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN12closure_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h4010b117563766bdE" + "NormalSym": "_ZN12closure_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 26, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -420,7 +420,7 @@ "name": "main" } }, - "symbol_name": "_ZN12closure_args4main17h2ed782b20238718aE" + "symbol_name": "_ZN12closure_args4main17h" }, { "details": null, @@ -604,7 +604,7 @@ "name": "main::{closure#0}" } }, - "symbol_name": "_ZN12closure_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h4010b117563766bdE" + "symbol_name": "_ZN12closure_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -976,7 +976,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hec1fa9e4031ba742E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1339,7 +1339,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hef0fcd067a31abd9E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1520,7 +1520,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h0ea9521db3c84ccdE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1607,7 +1607,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17hb6b071620dc68fc1E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1766,7 +1766,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h0009d64ea9f5d8a8E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1833,7 +1833,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hc3597144c5271f28E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1872,7 +1872,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17he3553ba4ad776982E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1968,7 +1968,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hbf176849a7ced595E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/closure-no-args.smir.json.expected b/tests/integration/programs/closure-no-args.smir.json.expected index 55221cd..b8729ad 100644 --- a/tests/integration/programs/closure-no-args.smir.json.expected +++ b/tests/integration/programs/closure-no-args.smir.json.expected @@ -48,25 +48,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17had87c6a7afa42371E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17haad8effff40ac51aE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h90d0d34e02ff3222E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -78,25 +78,25 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hdb736a5cb8fd8fdeE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h73fc191ccceb2237E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN15closure_no_args4main28_$u7b$$u7b$closure$u7d$$u7d$17hbfe1dbd09ae23abeE" + "NormalSym": "_ZN15closure_no_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 26, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -346,7 +346,7 @@ "name": "main" } }, - "symbol_name": "_ZN15closure_no_args4main17hed04138a1eb95e9bE" + "symbol_name": "_ZN15closure_no_args4main17h" }, { "details": null, @@ -424,7 +424,7 @@ "name": "main::{closure#0}" } }, - "symbol_name": "_ZN15closure_no_args4main28_$u7b$$u7b$closure$u7d$$u7d$17hbfe1dbd09ae23abeE" + "symbol_name": "_ZN15closure_no_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -796,7 +796,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h69da4329aa000dccE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1159,7 +1159,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h73fc191ccceb2237E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1340,7 +1340,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17had87c6a7afa42371E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1427,7 +1427,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h3933dcebc964f0b2E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1494,7 +1494,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h90d0d34e02ff3222E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1653,7 +1653,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hdb736a5cb8fd8fdeE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1692,7 +1692,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h6a2a266b602ceb47E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1788,7 +1788,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17haad8effff40ac51aE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/const-arithm-simple.smir.json.expected b/tests/integration/programs/const-arithm-simple.smir.json.expected index 42c6b3b..2198947 100644 --- a/tests/integration/programs/const-arithm-simple.smir.json.expected +++ b/tests/integration/programs/const-arithm-simple.smir.json.expected @@ -38,25 +38,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hc220dca5a4a9c4e1E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hec1278d0bf08a55dE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h62435ed81bec6ce7E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -68,25 +68,25 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hdf7b2551e2c886aeE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h5e3c15d89ae15f10E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN19const_arithm_simple4test17h318cf5494f7e845bE" + "NormalSym": "_ZN19const_arithm_simple4test17h" } ], [ 28, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -463,7 +463,7 @@ "name": "main" } }, - "symbol_name": "_ZN19const_arithm_simple4main17h7887b9190a80d762E" + "symbol_name": "_ZN19const_arithm_simple4main17h" }, { "details": null, @@ -567,7 +567,7 @@ "name": "test" } }, - "symbol_name": "_ZN19const_arithm_simple4test17h318cf5494f7e845bE" + "symbol_name": "_ZN19const_arithm_simple4test17h" }, { "details": null, @@ -939,7 +939,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hf4b87f91a0e3d576E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1302,7 +1302,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h5e3c15d89ae15f10E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1483,7 +1483,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hc220dca5a4a9c4e1E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1570,7 +1570,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17ha9f8925cafcca3adE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1637,7 +1637,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h62435ed81bec6ce7E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1796,7 +1796,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hdf7b2551e2c886aeE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1835,7 +1835,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17hde010ffffdc10138E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1931,7 +1931,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hec1278d0bf08a55dE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/div.smir.json.expected b/tests/integration/programs/div.smir.json.expected index 8e0d0c1..3ad61cc 100644 --- a/tests/integration/programs/div.smir.json.expected +++ b/tests/integration/programs/div.smir.json.expected @@ -51,25 +51,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h64d1191ef34b9bc1E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h7ed9fb0895a27f30E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hea7b7593e501aefeE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -81,19 +81,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hfade6072976a28f6E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h2993c2a6790fca01E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -677,7 +677,7 @@ "name": "main" } }, - "symbol_name": "_ZN3div4main17h71fa6a28c244cb1fE" + "symbol_name": "_ZN3div4main17h" }, { "details": null, @@ -1049,7 +1049,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hcf20de394f35ad5dE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1412,7 +1412,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h2993c2a6790fca01E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1593,7 +1593,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h64d1191ef34b9bc1E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1680,7 +1680,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17he954194b4fcd00bfE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1747,7 +1747,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hea7b7593e501aefeE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1906,7 +1906,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hfade6072976a28f6E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1945,7 +1945,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h863a7b851113b2ceE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2041,7 +2041,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h7ed9fb0895a27f30E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/double-ref-deref.smir.json.expected b/tests/integration/programs/double-ref-deref.smir.json.expected index 7d19cc6..f05ac0e 100644 --- a/tests/integration/programs/double-ref-deref.smir.json.expected +++ b/tests/integration/programs/double-ref-deref.smir.json.expected @@ -46,25 +46,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hf9d0cc1c3b14cd54E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h984a68eef244fa6eE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h537e81d3d052cbb1E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -76,19 +76,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hc6f736f3375605e4E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h4832dffd1cd541dcE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -428,7 +428,7 @@ "name": "main" } }, - "symbol_name": "_ZN16double_ref_deref4main17h91fba97ff36c5fccE" + "symbol_name": "_ZN16double_ref_deref4main17h" }, { "details": null, @@ -800,7 +800,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h7879595fd7fe0ffbE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1163,7 +1163,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h4832dffd1cd541dcE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1344,7 +1344,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hf9d0cc1c3b14cd54E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1431,7 +1431,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h4d5385b298460ae7E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1498,7 +1498,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h537e81d3d052cbb1E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1657,7 +1657,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hc6f736f3375605e4E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1696,7 +1696,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h6899baa79b5d50c3E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1792,7 +1792,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h984a68eef244fa6eE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/enum.smir.json.expected b/tests/integration/programs/enum.smir.json.expected index c3163ed..a13dfed 100644 --- a/tests/integration/programs/enum.smir.json.expected +++ b/tests/integration/programs/enum.smir.json.expected @@ -4,25 +4,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he982f1804e60d9caE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h8d0dab3da83a2eb4E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17had7be3e3af3ffd6aE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -34,13 +34,13 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h65f703896e5e55f2E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h1cb035a01127d8feE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ @@ -421,7 +421,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17ha39a2a569a41c338E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -784,7 +784,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h1cb035a01127d8feE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -965,7 +965,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he982f1804e60d9caE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1052,7 +1052,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h0a5309ab9e4a463dE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1211,7 +1211,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h65f703896e5e55f2E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1278,7 +1278,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17had7be3e3af3ffd6aE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1317,7 +1317,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h8b89655b9ba64c0bE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1398,7 +1398,7 @@ "name": "main" } }, - "symbol_name": "_ZN4enum4main17h578c4aafc4e87126E" + "symbol_name": "_ZN4enum4main17h" }, { "details": null, @@ -1494,7 +1494,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h8d0dab3da83a2eb4E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/fibonacci.smir.json.expected b/tests/integration/programs/fibonacci.smir.json.expected index da7e5b8..9bcc8c1 100644 --- a/tests/integration/programs/fibonacci.smir.json.expected +++ b/tests/integration/programs/fibonacci.smir.json.expected @@ -45,25 +45,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h9592af04f080b6ddE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hdd617c230efb569eE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h3c3b44f3e5bc617eE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -75,25 +75,25 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h3510792785d7cbb1E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17he1dd627769ba43a1E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN9fibonacci9fibonacci17haf9f059a822166cdE" + "NormalSym": "_ZN9fibonacci9fibonacci17h" } ], [ 29, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -474,7 +474,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17ha7f92b0685306b3cE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -837,7 +837,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17he1dd627769ba43a1E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1018,7 +1018,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h9592af04f080b6ddE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1105,7 +1105,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h723634910b4137c7E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1264,7 +1264,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h3510792785d7cbb1E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1331,7 +1331,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h3c3b44f3e5bc617eE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1370,7 +1370,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h49212ee6f8ae9726E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1466,7 +1466,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hdd617c230efb569eE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -1676,7 +1676,7 @@ "name": "main" } }, - "symbol_name": "_ZN9fibonacci4main17h84048a605568c1d4E" + "symbol_name": "_ZN9fibonacci4main17h" }, { "details": null, @@ -2349,7 +2349,7 @@ "name": "fibonacci" } }, - "symbol_name": "_ZN9fibonacci9fibonacci17haf9f059a822166cdE" + "symbol_name": "_ZN9fibonacci9fibonacci17h" } ] } diff --git a/tests/integration/programs/float.smir.json.expected b/tests/integration/programs/float.smir.json.expected index da5414b..778917c 100644 --- a/tests/integration/programs/float.smir.json.expected +++ b/tests/integration/programs/float.smir.json.expected @@ -93,25 +93,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hec1eb5b3a95108a0E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h13440d706a00baf7E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h24da6f29609285ddE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -123,19 +123,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17he234f85ee35f62efE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h4a15e8b61fa38dcdE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -516,7 +516,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17he1d7ccefaa6dc143E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -879,7 +879,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h4a15e8b61fa38dcdE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1060,7 +1060,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hec1eb5b3a95108a0E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1147,7 +1147,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h207239d44f06c48eE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1214,7 +1214,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h24da6f29609285ddE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1373,7 +1373,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17he234f85ee35f62efE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1412,7 +1412,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17ha117c841898d56b9E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1508,7 +1508,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h13440d706a00baf7E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -2245,7 +2245,7 @@ "name": "main" } }, - "symbol_name": "_ZN5float4main17hba1d3d01398882abE" + "symbol_name": "_ZN5float4main17h" } ] } diff --git a/tests/integration/programs/modulo.smir.json.expected b/tests/integration/programs/modulo.smir.json.expected index 7d300dd..c3c5441 100644 --- a/tests/integration/programs/modulo.smir.json.expected +++ b/tests/integration/programs/modulo.smir.json.expected @@ -49,25 +49,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h14e5f2504d96a2dfE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hab1f24d8faaecb52E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h979188c36192a753E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -79,19 +79,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17he4c05346bd0dcef9E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h8ff1e9a30552c38eE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -472,7 +472,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h63a8340ba339b238E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -835,7 +835,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h8ff1e9a30552c38eE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1016,7 +1016,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h14e5f2504d96a2dfE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1103,7 +1103,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17hee1b6f635523a8d7E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1170,7 +1170,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h979188c36192a753E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1329,7 +1329,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17he4c05346bd0dcef9E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1368,7 +1368,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h08d58f5924f7e805E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1464,7 +1464,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hab1f24d8faaecb52E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -2039,7 +2039,7 @@ "name": "main" } }, - "symbol_name": "_ZN6modulo4main17h4106dafab6d6f113E" + "symbol_name": "_ZN6modulo4main17h" } ] } diff --git a/tests/integration/programs/mutual_recursion.smir.json.expected b/tests/integration/programs/mutual_recursion.smir.json.expected index 29c46dc..d142f6b 100644 --- a/tests/integration/programs/mutual_recursion.smir.json.expected +++ b/tests/integration/programs/mutual_recursion.smir.json.expected @@ -48,25 +48,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hcd52964f2ca312ddE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h53659d65e7692e7aE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hb5b0fba1c2de5389E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -78,31 +78,31 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h5c122f1a07159b22E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hdccbb66fb8dca376E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN16mutual_recursion6is_odd17h9569a7b059bb3702E" + "NormalSym": "_ZN16mutual_recursion6is_odd17h" } ], [ 29, { - "NormalSym": "_ZN16mutual_recursion7is_even17h4e35e0a16b0f3490E" + "NormalSym": "_ZN16mutual_recursion7is_even17h" } ], [ 30, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -321,7 +321,7 @@ "name": "main" } }, - "symbol_name": "_ZN16mutual_recursion4main17h38e5604d644a3007E" + "symbol_name": "_ZN16mutual_recursion4main17h" }, { "details": null, @@ -630,7 +630,7 @@ "name": "is_odd" } }, - "symbol_name": "_ZN16mutual_recursion6is_odd17h9569a7b059bb3702E" + "symbol_name": "_ZN16mutual_recursion6is_odd17h" }, { "details": null, @@ -939,7 +939,7 @@ "name": "is_even" } }, - "symbol_name": "_ZN16mutual_recursion7is_even17h4e35e0a16b0f3490E" + "symbol_name": "_ZN16mutual_recursion7is_even17h" }, { "details": null, @@ -1311,7 +1311,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h1e192d77d7da5a04E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1674,7 +1674,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hdccbb66fb8dca376E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1855,7 +1855,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hcd52964f2ca312ddE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1942,7 +1942,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17hbb5da079540ef856E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -2101,7 +2101,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h5c122f1a07159b22E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2168,7 +2168,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hb5b0fba1c2de5389E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2207,7 +2207,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h9d4256942c1a76d1E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2303,7 +2303,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h53659d65e7692e7aE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/option-construction.smir.json.expected b/tests/integration/programs/option-construction.smir.json.expected index cc900e0..25a95ae 100644 --- a/tests/integration/programs/option-construction.smir.json.expected +++ b/tests/integration/programs/option-construction.smir.json.expected @@ -4,25 +4,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h925669b3e5c1558cE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h655b9b1e12bd730dE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h3f1b6c09e806e312E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -34,25 +34,25 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h55e32bb642146e02E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h3c05dfd176f9f27fE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core6option13unwrap_failed17h6055e3ba7a15ec00E" + "NormalSym": "_ZN4core6option13unwrap_failed17h" } ], [ 29, { - "NormalSym": "_ZN4core6option15Option$LT$T$GT$6unwrap17h1eccd13f6e05cb6fE" + "NormalSym": "_ZN4core6option15Option$LT$T$GT$6unwrap17h" } ], [ @@ -276,7 +276,7 @@ "name": "main" } }, - "symbol_name": "_ZN19option_construction4main17h8a12528da185363eE" + "symbol_name": "_ZN19option_construction4main17h" }, { "details": null, @@ -648,7 +648,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17he6c404e6b502f630E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1011,7 +1011,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h3c05dfd176f9f27fE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1192,7 +1192,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h925669b3e5c1558cE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1279,7 +1279,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17hcc1e21bb8a7447c4E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1346,7 +1346,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h3f1b6c09e806e312E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1505,7 +1505,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h55e32bb642146e02E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1544,7 +1544,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h322982812c073270E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1736,7 +1736,7 @@ "name": "std::option::Option::::unwrap" } }, - "symbol_name": "_ZN4core6option15Option$LT$T$GT$6unwrap17h1eccd13f6e05cb6fE" + "symbol_name": "_ZN4core6option15Option$LT$T$GT$6unwrap17h" }, { "details": null, @@ -1832,7 +1832,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h655b9b1e12bd730dE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/primitive-type-bounds.smir.json.expected b/tests/integration/programs/primitive-type-bounds.smir.json.expected index 2209f0a..275ad21 100644 --- a/tests/integration/programs/primitive-type-bounds.smir.json.expected +++ b/tests/integration/programs/primitive-type-bounds.smir.json.expected @@ -43,25 +43,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hef6c7380c3f06920E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hab588e4fe985e26cE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hc3299a837d16d788E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -73,19 +73,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17he67bf42a55cc3df7E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h35ee03377e0bbb80E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -540,7 +540,7 @@ "name": "main" } }, - "symbol_name": "_ZN21primitive_type_bounds4main17h5c3af069c6dca662E" + "symbol_name": "_ZN21primitive_type_bounds4main17h" }, { "details": null, @@ -912,7 +912,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hd0873d35280532adE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1275,7 +1275,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h35ee03377e0bbb80E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1456,7 +1456,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hef6c7380c3f06920E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1543,7 +1543,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h65e7b8ea1d58c373E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1610,7 +1610,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hc3299a837d16d788E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1769,7 +1769,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17he67bf42a55cc3df7E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1808,7 +1808,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17ha011e9e2b70943a3E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1904,7 +1904,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hab588e4fe985e26cE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/recursion-simple-match.smir.json.expected b/tests/integration/programs/recursion-simple-match.smir.json.expected index 2567052..cb4dda8 100644 --- a/tests/integration/programs/recursion-simple-match.smir.json.expected +++ b/tests/integration/programs/recursion-simple-match.smir.json.expected @@ -46,25 +46,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he5540e8be59dc4e9E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h1b26615e5477064aE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h96c25281eded21e5E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -76,25 +76,25 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h5271de7d02e9edcaE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hc3cc7da138ab0f4eE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN22recursion_simple_match12sum_to_n_rec17h758e42f7af76951cE" + "NormalSym": "_ZN22recursion_simple_match12sum_to_n_rec17h" } ], [ 29, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -535,7 +535,7 @@ "name": "sum_to_n_rec" } }, - "symbol_name": "_ZN22recursion_simple_match12sum_to_n_rec17h758e42f7af76951cE" + "symbol_name": "_ZN22recursion_simple_match12sum_to_n_rec17h" }, { "details": null, @@ -745,7 +745,7 @@ "name": "main" } }, - "symbol_name": "_ZN22recursion_simple_match4main17hcc84aa0b3c910002E" + "symbol_name": "_ZN22recursion_simple_match4main17h" }, { "details": null, @@ -1117,7 +1117,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h6027155185799025E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1480,7 +1480,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hc3cc7da138ab0f4eE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1661,7 +1661,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17he5540e8be59dc4e9E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1748,7 +1748,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h10fad7ae9de5e934E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1907,7 +1907,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h5271de7d02e9edcaE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1974,7 +1974,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h96c25281eded21e5E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2013,7 +2013,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17ha54d3e04cb1513d1E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2109,7 +2109,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h1b26615e5477064aE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/recursion-simple.smir.json.expected b/tests/integration/programs/recursion-simple.smir.json.expected index ed438f4..1aa246a 100644 --- a/tests/integration/programs/recursion-simple.smir.json.expected +++ b/tests/integration/programs/recursion-simple.smir.json.expected @@ -46,25 +46,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hc9ab170b11232827E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h655bbf5ad37d7866E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h47cc69539d774688E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -76,25 +76,25 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h2500d7ea93f58c70E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17he2c9997af6ea1a36E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN16recursion_simple12sum_to_n_rec17h3cbe6d03a5ef69a5E" + "NormalSym": "_ZN16recursion_simple12sum_to_n_rec17h" } ], [ 29, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -535,7 +535,7 @@ "name": "sum_to_n_rec" } }, - "symbol_name": "_ZN16recursion_simple12sum_to_n_rec17h3cbe6d03a5ef69a5E" + "symbol_name": "_ZN16recursion_simple12sum_to_n_rec17h" }, { "details": null, @@ -745,7 +745,7 @@ "name": "main" } }, - "symbol_name": "_ZN16recursion_simple4main17hea083389f2add465E" + "symbol_name": "_ZN16recursion_simple4main17h" }, { "details": null, @@ -1117,7 +1117,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h6f3b8935440502e9E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1480,7 +1480,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17he2c9997af6ea1a36E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1661,7 +1661,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hc9ab170b11232827E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1748,7 +1748,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17ha99303762f727ffbE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1907,7 +1907,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h2500d7ea93f58c70E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1974,7 +1974,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h47cc69539d774688E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2013,7 +2013,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h5cd86cd7d05abed4E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2109,7 +2109,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h655bbf5ad37d7866E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/ref-deref.smir.json.expected b/tests/integration/programs/ref-deref.smir.json.expected index 969a9c3..44c9640 100644 --- a/tests/integration/programs/ref-deref.smir.json.expected +++ b/tests/integration/programs/ref-deref.smir.json.expected @@ -44,25 +44,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h2209da0d85019512E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h4f9c77724b045647E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h29c17b0395cce9dfE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -74,19 +74,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h8b71e772c69320b4E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h24aba19602c3173dE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -467,7 +467,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hff3c45a4441fa21cE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -830,7 +830,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h24aba19602c3173dE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1011,7 +1011,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h2209da0d85019512E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1098,7 +1098,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h354c1eede3be2001E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1165,7 +1165,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h29c17b0395cce9dfE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1324,7 +1324,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h8b71e772c69320b4E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1363,7 +1363,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h81f3fb8d0c7e4abeE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1459,7 +1459,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h4f9c77724b045647E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -1738,7 +1738,7 @@ "name": "main" } }, - "symbol_name": "_ZN9ref_deref4main17hd5e9aa3e9b096520E" + "symbol_name": "_ZN9ref_deref4main17h" } ] } diff --git a/tests/integration/programs/shl_min.smir.json.expected b/tests/integration/programs/shl_min.smir.json.expected index 9c7a27e..484608d 100644 --- a/tests/integration/programs/shl_min.smir.json.expected +++ b/tests/integration/programs/shl_min.smir.json.expected @@ -316,25 +316,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h380b4a51a57f858cE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hc22d5c4d8d5eda4dE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h5565a84b2bcc8422E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -346,19 +346,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h97a7ff3f152f48d5E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h1d02efcb48d20e88E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -739,7 +739,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h2f8fa9f18a134a32E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1102,7 +1102,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h1d02efcb48d20e88E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1283,7 +1283,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h380b4a51a57f858cE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1370,7 +1370,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h10dddd6d4fdde398E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1437,7 +1437,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h5565a84b2bcc8422E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1596,7 +1596,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h97a7ff3f152f48d5E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1635,7 +1635,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h3bd2945761e325daE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1731,7 +1731,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hc22d5c4d8d5eda4dE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -3522,7 +3522,7 @@ "name": "main" } }, - "symbol_name": "_ZN7shl_min4main17ha09d7c732fcbfe55E" + "symbol_name": "_ZN7shl_min4main17h" } ] } diff --git a/tests/integration/programs/slice.smir.json.expected b/tests/integration/programs/slice.smir.json.expected index 5d18f8e..eacc2bf 100644 --- a/tests/integration/programs/slice.smir.json.expected +++ b/tests/integration/programs/slice.smir.json.expected @@ -70,37 +70,37 @@ [ 1, { - "NormalSym": "_ZN4core5slice5index24slice_end_index_len_fail17h137110c15301da79E" + "NormalSym": "_ZN4core5slice5index24slice_end_index_len_fail17h" } ], [ 4, { - "NormalSym": "_ZN4core5slice5index22slice_index_order_fail17hff5113e5cc04c9f9E" + "NormalSym": "_ZN4core5slice5index22slice_index_order_fail17h" } ], [ 11, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 24, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h3c2d0d2dccd344b9E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 25, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hbea5f2636f8c0c63E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 30, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h3eae969071474082E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -112,37 +112,37 @@ [ 32, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h311abd4b1c62697bE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 34, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hcc1384a9a6ecebd6E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 36, { - "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hf3bc4d3662561217E" + "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" } ], [ 38, { - "NormalSym": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17haaa877014424f7ceE" + "NormalSym": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h" } ], [ 43, { - "NormalSym": "_ZN4core5array8equality92_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u5d$$GT$2eq17h5f2ede35930746bbE" + "NormalSym": "_ZN4core5array8equality92_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u5d$$GT$2eq17h" } ], [ 45, { - "NormalSym": "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h5a835d09b00d32a5E" + "NormalSym": "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ], [ @@ -154,19 +154,19 @@ [ 47, { - "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h898083967c05e5c7E" + "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" } ], [ 48, { - "NormalSym": "_ZN4core5array8equality96_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$RF$$u5b$T$u5d$$GT$2eq17h20bda229d8d515edE" + "NormalSym": "_ZN4core5array8equality96_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$RF$$u5b$T$u5d$$GT$2eq17h" } ], [ 49, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -1058,7 +1058,7 @@ "name": " as std::slice::SliceIndex<[i32]>>::index" } }, - "symbol_name": "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h5a835d09b00d32a5E" + "symbol_name": "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" }, { "details": null, @@ -1430,7 +1430,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h77bea8e7c7fcc35bE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1793,7 +1793,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hcc1384a9a6ecebd6E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1974,7 +1974,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h3c2d0d2dccd344b9E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -2061,7 +2061,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17hb5e2594a7379e80eE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -2220,7 +2220,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h311abd4b1c62697bE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2287,7 +2287,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h3eae969071474082E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2326,7 +2326,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17hfc048dbcd70f305eE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2473,7 +2473,7 @@ "name": "std::array::> for [i32; 4]>::index" } }, - "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h898083967c05e5c7E" + "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" }, { "details": null, @@ -3168,7 +3168,7 @@ "name": "std::array::equality:: for [i32]>::eq" } }, - "symbol_name": "_ZN4core5array8equality92_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u5d$$GT$2eq17h5f2ede35930746bbE" + "symbol_name": "_ZN4core5array8equality92_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u5d$$GT$2eq17h" }, { "details": null, @@ -3311,7 +3311,7 @@ "name": "std::array::equality:: for &[i32]>::eq" } }, - "symbol_name": "_ZN4core5array8equality96_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$RF$$u5b$T$u5d$$GT$2eq17h20bda229d8d515edE" + "symbol_name": "_ZN4core5array8equality96_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$RF$$u5b$T$u5d$$GT$2eq17h" }, { "details": null, @@ -3427,7 +3427,7 @@ "name": "core::slice::index::> for [i32]>::index" } }, - "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hf3bc4d3662561217E" + "symbol_name": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" }, { "details": null, @@ -3523,7 +3523,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hbea5f2636f8c0c63E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -4254,7 +4254,7 @@ "name": "main" } }, - "symbol_name": "_ZN5slice4main17h982023fdd0e6b27fE" + "symbol_name": "_ZN5slice4main17h" }, { "details": null, @@ -4412,7 +4412,7 @@ "name": ">::spec_eq" } }, - "symbol_name": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17haaa877014424f7ceE" + "symbol_name": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h" } ] } diff --git a/tests/integration/programs/strange-ref-deref.smir.json.expected b/tests/integration/programs/strange-ref-deref.smir.json.expected index 176efaa..394ce0a 100644 --- a/tests/integration/programs/strange-ref-deref.smir.json.expected +++ b/tests/integration/programs/strange-ref-deref.smir.json.expected @@ -45,25 +45,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h4c6d892f65578af7E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h61ff3532f28130abE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h17e4c3cc9ad24e82E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -75,19 +75,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h491807954c4c1c5fE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h0564249960183bdaE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -431,7 +431,7 @@ "name": "main" } }, - "symbol_name": "_ZN17strange_ref_deref4main17ha5ed69bb326768b5E" + "symbol_name": "_ZN17strange_ref_deref4main17h" }, { "details": null, @@ -803,7 +803,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hc5c15f73999053e2E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1166,7 +1166,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h0564249960183bdaE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1347,7 +1347,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h4c6d892f65578af7E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1434,7 +1434,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h3055c96acf021728E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1501,7 +1501,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h17e4c3cc9ad24e82E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1660,7 +1660,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h491807954c4c1c5fE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1699,7 +1699,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h363eb22d98edc8abE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1795,7 +1795,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h61ff3532f28130abE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/programs/struct.smir.json.expected b/tests/integration/programs/struct.smir.json.expected index a86b779..0eeacdd 100644 --- a/tests/integration/programs/struct.smir.json.expected +++ b/tests/integration/programs/struct.smir.json.expected @@ -51,25 +51,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h0699d3b40d658af9E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h07b34746fe4a8e28E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hb0b46d751d94c51dE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -81,19 +81,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hc83a06bf843dd1dfE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h304cf6e5c6625a84E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -474,7 +474,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h6f5509323d95d619E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -837,7 +837,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h304cf6e5c6625a84E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1018,7 +1018,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h0699d3b40d658af9E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1105,7 +1105,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h28b985da3dd0601dE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1172,7 +1172,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hb0b46d751d94c51dE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1331,7 +1331,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hc83a06bf843dd1dfE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1370,7 +1370,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h3d358cb6450153bdE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1466,7 +1466,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h07b34746fe4a8e28E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -1940,7 +1940,7 @@ "name": "main" } }, - "symbol_name": "_ZN6struct4main17h5c592763fb9dc6c3E" + "symbol_name": "_ZN6struct4main17h" } ] } diff --git a/tests/integration/programs/sum-to-n.smir.json.expected b/tests/integration/programs/sum-to-n.smir.json.expected index 40fd144..3aa2d1b 100644 --- a/tests/integration/programs/sum-to-n.smir.json.expected +++ b/tests/integration/programs/sum-to-n.smir.json.expected @@ -43,25 +43,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hd35b85d5c0390cf1E" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hcb7fa696e1ada2eeE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h1c41a4289354ed9eE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -73,31 +73,31 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h91171ee1e758b4c8E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hbf65feaff4e3e97dE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 28, { - "NormalSym": "_ZN8sum_to_n8sum_to_n17h4938f719ae861d21E" + "NormalSym": "_ZN8sum_to_n8sum_to_n17h" } ], [ 29, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ 32, { - "NormalSym": "_ZN8sum_to_n13test_sum_to_n17h05511a3b7ab62339E" + "NormalSym": "_ZN8sum_to_n13test_sum_to_n17h" } ], [ @@ -478,7 +478,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17hbb5439d01d0d6fdfE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -841,7 +841,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17hbf65feaff4e3e97dE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1022,7 +1022,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17hd35b85d5c0390cf1E" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1109,7 +1109,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h70b1ea40c7b2e5b1E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1176,7 +1176,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h1c41a4289354ed9eE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1335,7 +1335,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h91171ee1e758b4c8E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1374,7 +1374,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17he09300336d269a83E" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1470,7 +1470,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17hcb7fa696e1ada2eeE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -1866,7 +1866,7 @@ "name": "test_sum_to_n" } }, - "symbol_name": "_ZN8sum_to_n13test_sum_to_n17h05511a3b7ab62339E" + "symbol_name": "_ZN8sum_to_n13test_sum_to_n17h" }, { "details": null, @@ -1933,7 +1933,7 @@ "name": "main" } }, - "symbol_name": "_ZN8sum_to_n4main17h035b1be00fe7d484E" + "symbol_name": "_ZN8sum_to_n4main17h" }, { "details": null, @@ -2539,7 +2539,7 @@ "name": "sum_to_n" } }, - "symbol_name": "_ZN8sum_to_n8sum_to_n17h4938f719ae861d21E" + "symbol_name": "_ZN8sum_to_n8sum_to_n17h" } ] } diff --git a/tests/integration/programs/tuple-eq.smir.json.expected b/tests/integration/programs/tuple-eq.smir.json.expected index 60fc5b0..00dc480 100644 --- a/tests/integration/programs/tuple-eq.smir.json.expected +++ b/tests/integration/programs/tuple-eq.smir.json.expected @@ -74,25 +74,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h333150e68339170dE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h802a391040998644E" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hc8fe996961b168afE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -104,31 +104,31 @@ [ 23, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h25f27f1fe7e893baE" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 25, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h79451430f217f4ecE" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 27, { - "NormalSym": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17ha183e644e33f34d8E" + "NormalSym": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17h" } ], [ 29, { - "NormalSym": "_ZN4core5tuple64_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$$LP$U$C$T$RP$$GT$2eq17h01cda7e1735747c8E" + "NormalSym": "_ZN4core5tuple64_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$$LP$U$C$T$RP$$GT$2eq17h" } ], [ 30, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -509,7 +509,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h4a8ff1f95d63fd82E" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -872,7 +872,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h79451430f217f4ecE" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1053,7 +1053,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h333150e68339170dE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1233,7 +1233,7 @@ "name": "std::cmp::impls::::eq" } }, - "symbol_name": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17ha183e644e33f34d8E" + "symbol_name": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17h" }, { "details": null, @@ -1320,7 +1320,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h485d9eaffc868729E" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1479,7 +1479,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h25f27f1fe7e893baE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1546,7 +1546,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hc8fe996961b168afE" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1585,7 +1585,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17ha00f3cf49702cdddE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2050,7 +2050,7 @@ "name": "core::tuple::::eq" } }, - "symbol_name": "_ZN4core5tuple64_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$$LP$U$C$T$RP$$GT$2eq17h01cda7e1735747c8E" + "symbol_name": "_ZN4core5tuple64_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$$LP$U$C$T$RP$$GT$2eq17h" }, { "details": null, @@ -2146,7 +2146,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h802a391040998644E" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -2616,7 +2616,7 @@ "name": "main" } }, - "symbol_name": "_ZN8tuple_eq4main17ha65f20838f174f24E" + "symbol_name": "_ZN8tuple_eq4main17h" } ] } diff --git a/tests/integration/programs/tuples-simple.smir.json.expected b/tests/integration/programs/tuples-simple.smir.json.expected index fa58c75..ca8895d 100644 --- a/tests/integration/programs/tuples-simple.smir.json.expected +++ b/tests/integration/programs/tuples-simple.smir.json.expected @@ -51,25 +51,25 @@ [ 0, { - "NormalSym": "_ZN3std2rt19lang_start_internal17h51b943990c0e2c96E" + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ 13, { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h00643f07709fa1eaE" + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ 14, { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h23382e62d2feae6bE" + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ 19, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h0d9b04fb7ab9c1b6E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ @@ -81,19 +81,19 @@ [ 21, { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17hafce5092b1d3d3a9E" + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ 23, { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h0a77e0c39c7e9e81E" + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ 25, { - "NormalSym": "_ZN4core9panicking5panic17h1b078f0122adb34fE" + "NormalSym": "_ZN4core9panicking5panic17h" } ], [ @@ -422,7 +422,7 @@ "name": "main" } }, - "symbol_name": "_ZN13tuples_simple4main17hf563d963407a8479E" + "symbol_name": "_ZN13tuples_simple4main17h" }, { "details": null, @@ -794,7 +794,7 @@ "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN3std2rt10lang_start17h08d5ed836490d97bE" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1157,7 +1157,7 @@ "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h0a77e0c39c7e9e81E" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1338,7 +1338,7 @@ "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h00643f07709fa1eaE" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1425,7 +1425,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17hf3797bbe895965bfE" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1492,7 +1492,7 @@ "name": ">::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h0d9b04fb7ab9c1b6E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1651,7 +1651,7 @@ "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17hafce5092b1d3d3a9E" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -1690,7 +1690,7 @@ "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h55cd7ab616222eddE" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -1786,7 +1786,7 @@ "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h23382e62d2feae6bE" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } From 7f9d3322cafa1cbf33701efcca6a00ac2922b813 Mon Sep 17 00:00:00 2001 From: dkcumming Date: Wed, 15 Jan 2025 15:33:38 +1000 Subject: [PATCH 11/15] Removing ids from functions and allocs --- tests/integration/normalise-filter.jq | 2 ++ 1 file changed, 2 insertions(+) diff --git a/tests/integration/normalise-filter.jq b/tests/integration/normalise-filter.jq index 5b63a49..fc04d8a 100644 --- a/tests/integration/normalise-filter.jq +++ b/tests/integration/normalise-filter.jq @@ -7,11 +7,13 @@ ( [ .allocs[] ] # sort allocs by their ID | sort_by(.[0]) + | map(del(.[0])) ), functions: ( [ .functions[] ] # sort functions by their ID (int, first in list) | sort_by(.[0]) + | map(del(.[0])) ), items: ( [ .items[] ] From e6d30864210987eb4f78f90724eca9fcabbccabb Mon Sep 17 00:00:00 2001 From: Daniel Cumming <124537596+dkcumming@users.noreply.github.com> Date: Wed, 15 Jan 2025 16:10:42 +1000 Subject: [PATCH 12/15] Changed the expected files to remove ids (#26) --- .../failing/array.smir.json.expected | 14 - .../failing/box.smir.json.expected | 44 - .../failing/defined-trait.smir.json.expected | 63 - .../derive-copy-struct.smir.json.expected | 14 - .../failing/generic.smir.json.expected | 19 - .../failing/panic_example.smir.json.expected | 43 - .../std-string-empty.smir.json.expected | 39 - .../failing/std-to-string.smir.json.expected | 62 - .../failing/str-empty.smir.json.expected | 19 - .../failing/str-trivial.smir.json.expected | 19 - .../programs/assert_eq.smir.json.expected | 1794 +++-------------- .../programs/binop.smir.json.expected | 1463 ++++++-------- .../programs/char-trivial.smir.json.expected | 343 ++-- .../programs/closure-args.smir.json.expected | 514 ++--- .../closure-no-args.smir.json.expected | 374 ++-- .../const-arithm-simple.smir.json.expected | 516 ++--- .../programs/div.smir.json.expected | 381 ++-- .../double-ref-deref.smir.json.expected | 483 ++--- .../programs/enum.smir.json.expected | 439 ++-- .../programs/fibonacci.smir.json.expected | 476 ++--- .../programs/float.smir.json.expected | 440 ++-- .../programs/modulo.smir.json.expected | 381 ++-- .../mutual_recursion.smir.json.expected | 579 +++--- .../option-construction.smir.json.expected | 385 ++-- .../primitive-type-bounds.smir.json.expected | 507 ++--- .../recursion-simple-match.smir.json.expected | 420 ++-- .../recursion-simple.smir.json.expected | 420 ++-- .../programs/ref-deref.smir.json.expected | 349 ++-- .../programs/shl_min.smir.json.expected | 581 +++--- .../programs/slice.smir.json.expected | 1121 +++++----- .../strange-ref-deref.smir.json.expected | 483 ++--- .../programs/struct.smir.json.expected | 391 ++-- .../programs/sum-to-n.smir.json.expected | 621 +++--- .../programs/tuple-eq.smir.json.expected | 644 +++--- .../programs/tuples-simple.smir.json.expected | 353 ++-- 35 files changed, 5470 insertions(+), 9324 deletions(-) diff --git a/tests/integration/failing/array.smir.json.expected b/tests/integration/failing/array.smir.json.expected index 405f857..0a4d0f3 100644 --- a/tests/integration/failing/array.smir.json.expected +++ b/tests/integration/failing/array.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 4, @@ -31,7 +30,6 @@ } ], [ - 1, { "Memory": { "align": 1, @@ -82,73 +80,61 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h" } ], [ - 28, { "IntrinsicSym": "raw_eq" } ], [ - 29, { "NormalSym": "_ZN4core5array8equality103_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$2eq17h" } ], [ - 30, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 34, { "NoOpSym": "" } diff --git a/tests/integration/failing/box.smir.json.expected b/tests/integration/failing/box.smir.json.expected index 81b7952..7e1d9d3 100644 --- a/tests/integration/failing/box.smir.json.expected +++ b/tests/integration/failing/box.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -125,7 +124,6 @@ } ], [ - 1, { "Memory": { "align": 8, @@ -160,7 +158,6 @@ } ], [ - 2, { "Memory": { "align": 8, @@ -173,7 +170,6 @@ } ], [ - 3, { "Memory": { "align": 8, @@ -208,7 +204,6 @@ } ], [ - 4, { "Memory": { "align": 1, @@ -315,7 +310,6 @@ } ], [ - 5, { "Memory": { "align": 1, @@ -328,7 +322,6 @@ } ], [ - 6, { "Memory": { "align": 1, @@ -341,13 +334,11 @@ } ], [ - 7, { "Static": 92 } ], [ - 8, { "Memory": { "align": 1, @@ -385,7 +376,6 @@ } ], [ - 9, { "Memory": { "align": 1, @@ -425,7 +415,6 @@ } ], [ - 10, { "Memory": { "align": 1, @@ -464,7 +453,6 @@ } ], [ - 16, { "Memory": { "align": 1, @@ -520,7 +508,6 @@ } ], [ - 17, { "Memory": { "align": 1, @@ -578,187 +565,156 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 23, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 25, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 29, { "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ - 31, { "IntrinsicSym": "ctpop" } ], [ - 32, { "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ - 45, { "NormalSym": "_ZN72_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ - 50, { "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ - 53, { "NormalSym": "_ZN5alloc5alloc18handle_alloc_error17h" } ], [ - 60, { "NormalSym": "" } ], [ - 63, { "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" } ], [ - 64, { "IntrinsicSym": "volatile_load" } ], [ - 66, { "NormalSym": "__" } ], [ - 67, { "NormalSym": "_ZN5alloc5alloc5alloc17h" } ], [ - 68, { "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" } ], [ - 76, { "NormalSym": "_ZN5alloc5alloc15exchange_malloc17h" } ], [ - 78, { "NormalSym": "" } ], [ - 79, { "NormalSym": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17h" } ], [ - 81, { "IntrinsicSym": "size_of_val" } ], [ - 83, { "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" } ], [ - 84, { "IntrinsicSym": "min_align_of_val" } ], [ - 87, { "NormalSym": "_ZN5alloc5boxed12Box$LT$T$GT$3new17h" } ], [ - 88, { "NormalSym": "_ZN71_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17h" } ], [ - 89, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 90, { "NormalSym": "_ZN4core3ptr49drop_in_place$LT$alloc..boxed..Box$LT$i32$GT$$GT$17h" } ], [ - 91, { "NoOpSym": "" } ], [ - 92, { "NoOpSym": "" } diff --git a/tests/integration/failing/defined-trait.smir.json.expected b/tests/integration/failing/defined-trait.smir.json.expected index dbc3d60..239c476 100644 --- a/tests/integration/failing/defined-trait.smir.json.expected +++ b/tests/integration/failing/defined-trait.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -181,7 +180,6 @@ } ], [ - 1, { "Memory": { "align": 8, @@ -216,7 +214,6 @@ } ], [ - 2, { "Memory": { "align": 8, @@ -229,7 +226,6 @@ } ], [ - 3, { "Memory": { "align": 8, @@ -264,7 +260,6 @@ } ], [ - 4, { "Memory": { "align": 1, @@ -347,7 +342,6 @@ } ], [ - 5, { "Memory": { "align": 1, @@ -471,7 +465,6 @@ } ], [ - 6, { "Memory": { "align": 1, @@ -578,7 +571,6 @@ } ], [ - 7, { "Memory": { "align": 1, @@ -754,7 +746,6 @@ } ], [ - 8, { "Memory": { "align": 1, @@ -829,13 +820,11 @@ } ], [ - 9, { "Static": 70 } ], [ - 10, { "Memory": { "align": 1, @@ -876,7 +865,6 @@ } ], [ - 11, { "Memory": { "align": 8, @@ -911,7 +899,6 @@ } ], [ - 12, { "Memory": { "align": 1, @@ -991,7 +978,6 @@ } ], [ - 13, { "Memory": { "align": 1, @@ -1032,7 +1018,6 @@ } ], [ - 23, { "Memory": { "align": 1, @@ -1088,7 +1073,6 @@ } ], [ - 24, { "Memory": { "align": 1, @@ -1144,7 +1128,6 @@ } ], [ - 25, { "Memory": { "align": 1, @@ -1187,277 +1170,231 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" } ], [ - 30, { "NormalSym": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" } ], [ - 31, { "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ - 32, { "IntrinsicSym": "ctpop" } ], [ - 33, { "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ - 46, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 48, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 51, { "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ - 55, { "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ - 61, { "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" } ], [ - 65, { "IntrinsicSym": "unlikely" } ], [ - 67, { "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" } ], [ - 69, { "NormalSym": "_ZN5alloc7raw_vec12handle_error17h" } ], [ - 73, { "NormalSym": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" } ], [ - 78, { "NormalSym": "" } ], [ - 79, { "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" } ], [ - 80, { "IntrinsicSym": "volatile_load" } ], [ - 82, { "NormalSym": "__" } ], [ - 83, { "NormalSym": "_ZN5alloc5alloc5alloc17h" } ], [ - 84, { "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" } ], [ - 98, { "NormalSym": "_ZN4core5alloc6layout6Layout5array5inner17h" } ], [ - 99, { "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" } ], [ - 100, { "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" } ], [ - 102, { "NormalSym": "" } ], [ - 103, { "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ - 104, { "NoOpSym": "" } ], [ - 105, { "IntrinsicSym": "size_of_val" } ], [ - 106, { "IntrinsicSym": "compare_bytes" } ], [ - 107, { "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" } ], [ - 108, { "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" } ], [ - 109, { "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" } ], [ - 110, { "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ - 116, { "NormalSym": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" } ], [ - 118, { "NormalSym": "_ZN67_$LT$defined_trait..Container$u20$as$u20$defined_trait..Summary$GT$9summarise17h" } ], [ - 119, { "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ], [ - 120, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 122, { "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" } ], [ - 123, { "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" } ], [ - 124, { "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" } ], [ - 125, { "NoOpSym": "" } ], [ - 126, { "NoOpSym": "" } diff --git a/tests/integration/failing/derive-copy-struct.smir.json.expected b/tests/integration/failing/derive-copy-struct.smir.json.expected index 893bf93..f1437af 100644 --- a/tests/integration/failing/derive-copy-struct.smir.json.expected +++ b/tests/integration/failing/derive-copy-struct.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -53,79 +52,66 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" } ], [ - 29, { "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ], [ - 33, { "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" } ], [ - 35, { "NormalSym": "_ZN18derive_copy_struct20take_first_container17h" } ], [ - 36, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 41, { "NoOpSym": "" } diff --git a/tests/integration/failing/generic.smir.json.expected b/tests/integration/failing/generic.smir.json.expected index 7319815..b294055 100644 --- a/tests/integration/failing/generic.smir.json.expected +++ b/tests/integration/failing/generic.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -52,7 +51,6 @@ } ], [ - 1, { "Memory": { "align": 1, @@ -107,103 +105,86 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" } ], [ - 29, { "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" } ], [ - 32, { "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ], [ - 33, { "NormalSym": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ], [ - 38, { "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" } ], [ - 40, { "NormalSym": "_ZN7generic11index_slice17h" } ], [ - 41, { "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" } ], [ - 42, { "NormalSym": "_ZN7generic11index_slice17h" } ], [ - 43, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 50, { "NoOpSym": "" } diff --git a/tests/integration/failing/panic_example.smir.json.expected b/tests/integration/failing/panic_example.smir.json.expected index a167752..b107652 100644 --- a/tests/integration/failing/panic_example.smir.json.expected +++ b/tests/integration/failing/panic_example.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -125,7 +124,6 @@ } ], [ - 1, { "Memory": { "align": 8, @@ -160,7 +158,6 @@ } ], [ - 2, { "Memory": { "align": 8, @@ -173,7 +170,6 @@ } ], [ - 3, { "Memory": { "align": 8, @@ -208,7 +204,6 @@ } ], [ - 4, { "Memory": { "align": 1, @@ -315,7 +310,6 @@ } ], [ - 5, { "Memory": { "align": 1, @@ -328,7 +322,6 @@ } ], [ - 6, { "Memory": { "align": 1, @@ -341,13 +334,11 @@ } ], [ - 7, { "Static": 115 } ], [ - 8, { "Memory": { "align": 1, @@ -375,7 +366,6 @@ } ], [ - 12, { "Memory": { "align": 1, @@ -431,7 +421,6 @@ } ], [ - 13, { "Memory": { "align": 1, @@ -489,193 +478,161 @@ ], "functions": [ [ - 0, { "IntrinsicSym": "type_id" } ], [ - 7, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 20, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 21, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 25, { "NormalSym": "_ZN3std9panicking11begin_panic28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 26, { "IntrinsicSym": "black_box" } ], [ - 29, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 30, { "IntrinsicSym": "caller_location" } ], [ - 31, { "NormalSym": "_ZN3std3sys9backtrace26__rust_end_short_backtrace17h" } ], [ - 36, { "NormalSym": "_ZN3std9panicking20rust_panic_with_hook17h" } ], [ - 42, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 44, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 48, { "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ - 49, { "IntrinsicSym": "ctpop" } ], [ - 50, { "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ - 63, { "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ - 66, { "NormalSym": "_ZN5alloc5alloc18handle_alloc_error17h" } ], [ - 73, { "NormalSym": "" } ], [ - 75, { "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" } ], [ - 76, { "IntrinsicSym": "volatile_load" } ], [ - 78, { "NormalSym": "__" } ], [ - 79, { "NormalSym": "_ZN5alloc5alloc5alloc17h" } ], [ - 80, { "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" } ], [ - 88, { "NormalSym": "_ZN5alloc5alloc15exchange_malloc17h" } ], [ - 93, { "NormalSym": "_ZN3std7process5abort17h" } ], [ - 94, { "NormalSym": "_ZN3std9panicking14payload_as_str17h" } ], [ - 96, { "NormalSym": "_ZN4core3fmt9Formatter9write_str17h" } ], [ - 101, { "NormalSym": "_ZN5alloc5boxed12Box$LT$T$GT$3new17h" } ], [ - 112, { "NormalSym": "_ZN3std9panicking11begin_panic17h" } ], [ - 113, { "NoOpSym": "" } ], [ - 114, { "NoOpSym": "" } ], [ - 115, { "NoOpSym": "" } diff --git a/tests/integration/failing/std-string-empty.smir.json.expected b/tests/integration/failing/std-string-empty.smir.json.expected index 2c8d4fd..37d1426 100644 --- a/tests/integration/failing/std-string-empty.smir.json.expected +++ b/tests/integration/failing/std-string-empty.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -84,7 +83,6 @@ } ], [ - 1, { "Memory": { "align": 1, @@ -260,7 +258,6 @@ } ], [ - 2, { "Memory": { "align": 8, @@ -295,7 +292,6 @@ } ], [ - 3, { "Memory": { "align": 8, @@ -308,7 +304,6 @@ } ], [ - 4, { "Memory": { "align": 8, @@ -343,7 +338,6 @@ } ], [ - 5, { "Memory": { "align": 8, @@ -378,7 +372,6 @@ } ], [ - 6, { "Memory": { "align": 1, @@ -417,7 +410,6 @@ } ], [ - 7, { "Memory": { "align": 1, @@ -430,7 +422,6 @@ } ], [ - 12, { "Memory": { "align": 1, @@ -443,7 +434,6 @@ } ], [ - 13, { "Memory": { "align": 1, @@ -499,7 +489,6 @@ } ], [ - 14, { "Memory": { "align": 1, @@ -557,169 +546,141 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 23, { "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ - 28, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 30, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 34, { "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ - 38, { "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ - 43, { "IntrinsicSym": "ctpop" } ], [ - 44, { "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ - 57, { "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" } ], [ - 65, { "NormalSym": "" } ], [ - 70, { "NoOpSym": "" } ], [ - 73, { "IntrinsicSym": "size_of_val" } ], [ - 74, { "IntrinsicSym": "compare_bytes" } ], [ - 77, { "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" } ], [ - 78, { "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" } ], [ - 79, { "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" } ], [ - 80, { "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ - 86, { "NormalSym": "_ZN5alloc6string6String3new17h" } ], [ - 87, { "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ], [ - 88, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 89, { "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" } ], [ - 90, { "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" } ], [ - 91, { "NoOpSym": "" } ], [ - 92, { "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" } diff --git a/tests/integration/failing/std-to-string.smir.json.expected b/tests/integration/failing/std-to-string.smir.json.expected index eebdf33..f7253a3 100644 --- a/tests/integration/failing/std-to-string.smir.json.expected +++ b/tests/integration/failing/std-to-string.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -181,7 +180,6 @@ } ], [ - 1, { "Memory": { "align": 8, @@ -216,7 +214,6 @@ } ], [ - 2, { "Memory": { "align": 8, @@ -229,7 +226,6 @@ } ], [ - 3, { "Memory": { "align": 8, @@ -264,7 +260,6 @@ } ], [ - 4, { "Memory": { "align": 1, @@ -347,7 +342,6 @@ } ], [ - 5, { "Memory": { "align": 1, @@ -471,7 +465,6 @@ } ], [ - 6, { "Memory": { "align": 1, @@ -578,7 +571,6 @@ } ], [ - 7, { "Memory": { "align": 1, @@ -754,7 +746,6 @@ } ], [ - 8, { "Memory": { "align": 1, @@ -829,13 +820,11 @@ } ], [ - 9, { "Static": 139 } ], [ - 10, { "Memory": { "align": 1, @@ -853,7 +842,6 @@ } ], [ - 11, { "Memory": { "align": 8, @@ -888,7 +876,6 @@ } ], [ - 12, { "Memory": { "align": 1, @@ -931,7 +918,6 @@ } ], [ - 13, { "Memory": { "align": 1, @@ -949,7 +935,6 @@ } ], [ - 23, { "Memory": { "align": 1, @@ -1005,7 +990,6 @@ } ], [ - 24, { "Memory": { "align": 1, @@ -1061,7 +1045,6 @@ } ], [ - 25, { "Memory": { "align": 1, @@ -1081,271 +1064,226 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" } ], [ - 30, { "NormalSym": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" } ], [ - 31, { "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ - 32, { "IntrinsicSym": "ctpop" } ], [ - 33, { "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ - 46, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 48, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 51, { "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ - 55, { "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" } ], [ - 61, { "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" } ], [ - 65, { "IntrinsicSym": "unlikely" } ], [ - 67, { "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" } ], [ - 69, { "NormalSym": "_ZN5alloc7raw_vec12handle_error17h" } ], [ - 73, { "NormalSym": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" } ], [ - 78, { "NormalSym": "" } ], [ - 79, { "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" } ], [ - 80, { "IntrinsicSym": "volatile_load" } ], [ - 82, { "NormalSym": "__" } ], [ - 83, { "NormalSym": "_ZN5alloc5alloc5alloc17h" } ], [ - 84, { "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" } ], [ - 98, { "NormalSym": "_ZN4core5alloc6layout6Layout5array5inner17h" } ], [ - 99, { "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" } ], [ - 100, { "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" } ], [ - 102, { "NormalSym": "" } ], [ - 103, { "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ - 104, { "NoOpSym": "" } ], [ - 105, { "IntrinsicSym": "size_of_val" } ], [ - 106, { "IntrinsicSym": "compare_bytes" } ], [ - 107, { "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" } ], [ - 108, { "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" } ], [ - 109, { "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" } ], [ - 110, { "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ - 116, { "NormalSym": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" } ], [ - 117, { "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" } ], [ - 118, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 119, { "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" } ], [ - 120, { "NoOpSym": "" } ], [ - 121, { "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" } ], [ - 123, { "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" } ], [ - 124, { "NoOpSym": "" } diff --git a/tests/integration/failing/str-empty.smir.json.expected b/tests/integration/failing/str-empty.smir.json.expected index f52ac01..ee57346 100644 --- a/tests/integration/failing/str-empty.smir.json.expected +++ b/tests/integration/failing/str-empty.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -14,7 +13,6 @@ } ], [ - 1, { "Memory": { "align": 8, @@ -49,7 +47,6 @@ } ], [ - 2, { "Memory": { "align": 1, @@ -88,7 +85,6 @@ } ], [ - 3, { "Memory": { "align": 1, @@ -101,7 +97,6 @@ } ], [ - 7, { "Memory": { "align": 1, @@ -116,85 +111,71 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h" } ], [ - 25, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 27, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 29, { "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ - 32, { "IntrinsicSym": "size_of_val" } ], [ - 33, { "IntrinsicSym": "compare_bytes" } ], [ - 37, { "NormalSym": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h" } ], [ - 38, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 42, { "NoOpSym": "" } diff --git a/tests/integration/failing/str-trivial.smir.json.expected b/tests/integration/failing/str-trivial.smir.json.expected index 8b2631a..58dd252 100644 --- a/tests/integration/failing/str-trivial.smir.json.expected +++ b/tests/integration/failing/str-trivial.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -16,7 +15,6 @@ } ], [ - 1, { "Memory": { "align": 8, @@ -51,7 +49,6 @@ } ], [ - 2, { "Memory": { "align": 1, @@ -91,7 +88,6 @@ } ], [ - 3, { "Memory": { "align": 1, @@ -106,7 +102,6 @@ } ], [ - 7, { "Memory": { "align": 1, @@ -123,85 +118,71 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h" } ], [ - 25, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 27, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 29, { "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], [ - 32, { "IntrinsicSym": "size_of_val" } ], [ - 33, { "IntrinsicSym": "compare_bytes" } ], [ - 37, { "NormalSym": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h" } ], [ - 38, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 41, { "NoOpSym": "" } diff --git a/tests/integration/programs/assert_eq.smir.json.expected b/tests/integration/programs/assert_eq.smir.json.expected index 6e0f6db..716eaef 100644 --- a/tests/integration/programs/assert_eq.smir.json.expected +++ b/tests/integration/programs/assert_eq.smir.json.expected @@ -2,85 +2,46 @@ "allocs": [], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, - { - "NormalSym": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h" - } - ], - [ - 27, - { - "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..LowerHex$u20$for$u20$i32$GT$3fmt17h" - } - ], - [ - 28, - { - "NormalSym": "_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$i32$GT$3fmt17h" - } - ], - [ - 29, - { - "NormalSym": "_ZN4core3fmt3num3imp52_$LT$impl$u20$core..fmt..Display$u20$for$u20$i32$GT$3fmt17h" - } - ], - [ - 30, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 32, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 35, - { - "NormalSym": "_ZN4core9panicking19assert_failed_inner17h" - } - ], - [ - 41, { "NormalSym": "_ZN4core9panicking13assert_failed17h" } ], [ - 45, { "NoOpSym": "" } @@ -109,12 +70,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -199,7 +154,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -210,12 +165,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -275,7 +224,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -304,51 +253,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -362,7 +311,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -372,7 +321,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -381,7 +330,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -396,7 +345,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -411,7 +360,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -426,7 +375,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -441,7 +390,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -473,19 +422,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -512,7 +461,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -537,7 +486,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -545,7 +494,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -554,7 +503,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -579,7 +528,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -587,7 +536,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -596,13 +545,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -611,42 +560,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -670,7 +583,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -684,7 +597,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -693,37 +606,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -733,27 +640,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -766,7 +668,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -789,7 +691,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -797,21 +699,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -849,7 +736,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -863,9 +750,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -873,7 +760,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -889,7 +776,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -903,9 +790,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -913,35 +800,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -950,7 +837,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -965,7 +852,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -980,7 +867,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -989,7 +876,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1012,37 +899,17 @@ "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref" - ] - } - } - } - ] - }, - "span": 45 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 3, - "projection": [] + "local": 1, + "projection": [ + "Deref" + ] } }, { @@ -1061,9 +928,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1071,80 +938,44 @@ "unwind": "Continue" } }, - "span": 44 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 46 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 47, - "ty": 22 + "span": 40, + "ty": 16 }, { "mutability": "Not", - "span": 48, - "ty": 23 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 49, - "ty": 24 - }, - { - "mutability": "Mut", - "span": 48, - "ty": 25 + "span": 40, + "ty": 1 } ], - "span": 50, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 49 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] + "span": 40, + "spread_arg": 2, + "var_debug_info": [] } ], "id": 3, - "name": "<&i32 as std::fmt::Debug>::fmt" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN42_$LT$$RF$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -1156,936 +987,11 @@ "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 52 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 53 - }, { "kind": { "Assign": [ { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - } - ] - } - } - } - ] - }, - "span": 53 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 7, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 16, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 26 - }, - "span": 32, - "user_ty": null - } - } - ] - } - ] - }, - "span": 52 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 54 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 51 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 51 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 8, - "kind": "ZeroSized", - "ty": 27 - }, - "span": 55, - "user_ty": null - } - }, - "target": 6, - "unwind": "Continue" - } - }, - "span": 56 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 51 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 58 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 59 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - } - ] - } - } - } - ] - }, - "span": 59 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 9, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 32, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 26 - }, - "span": 32, - "user_ty": null - } - } - ] - } - ] - }, - "span": 58 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 60 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 57 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 57 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 10, - "kind": "ZeroSized", - "ty": 28 - }, - "span": 61, - "user_ty": null - } - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 62 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 57 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 29 - }, - "span": 63, - "user_ty": null - } - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 64 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 65 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 66 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 67, - "ty": 22 - }, - { - "mutability": "Not", - "span": 68, - "ty": 25 - }, - { - "mutability": "Not", - "span": 69, - "ty": 24 - }, - { - "mutability": "Mut", - "span": 52, - "ty": 26 - }, - { - "mutability": "Mut", - "span": 53, - "ty": 26 - }, - { - "mutability": "Mut", - "span": 58, - "ty": 26 - }, - { - "mutability": "Mut", - "span": 59, - "ty": 26 - } - ], - "span": 72, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 68 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 69 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 70 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 71 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 4, - "name": "core::fmt::num::::fmt" - } - }, - "symbol_name": "_ZN4core3fmt3num50_$LT$impl$u20$core..fmt..Debug$u20$for$u20$i32$GT$3fmt17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 12, - "kind": "ZeroSized", - "ty": 30 - }, - "span": 73, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 73 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 73, - "ty": 16 - }, - { - "mutability": "Not", - "span": 73, - "ty": 31 - }, - { - "mutability": "Not", - "span": 73, - "ty": 1 - } - ], - "span": 73, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 73 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 73, - "ty": 1 - }, - { - "mutability": "Not", - "span": 73, - "ty": 7 - }, - { - "mutability": "Not", - "span": 73, - "ty": 1 - } - ], - "span": 73, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 5, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 73 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 13, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 73, - "user_ty": null - } - }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 73 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 73 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 73, - "ty": 16 - }, - { - "mutability": "Not", - "span": 73, - "ty": 12 - }, - { - "mutability": "Not", - "span": 73, - "ty": 1 - }, - { - "mutability": "Not", - "span": 73, - "ty": 33 - } - ], - "span": 73, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 74 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 74, - "ty": 1 - }, - { - "mutability": "Not", - "span": 74, - "ty": 34 - } - ], - "span": 74, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 6, - "name": "std::ptr::drop_in_place::<&i32>" - } - }, - "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$i32$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 74 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 74, - "ty": 1 - }, - { - "mutability": "Not", - "span": 74, - "ty": 31 - } - ], - "span": 74, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 6, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 77 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 77 - }, - { - "kind": { - "Assign": [ - { - "local": 6, + "local": 3, "projection": [] }, { @@ -2093,140 +999,35 @@ { "kind": "ReErased" }, - "Shared", - { - "local": 2, - "projection": [] - } - ] - } - ] - }, - "span": 77 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, { - "Move": { - "local": 6, - "projection": [] + "Mut": { + "kind": "Default" } }, - 36 - ] - } - ] - }, - "span": 77 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 78 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 79 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 79 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", { - "local": 3, + "local": 1, "projection": [] } ] } ] }, - "span": 79 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Move": { - "local": 8, - "projection": [] - } - }, - 36 - ] - } - ] - }, - "span": 79 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 80 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - }, + "span": 40 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { "Move": { - "local": 7, + "local": 3, "projection": [] } }, { "Move": { - "local": 4, + "local": 2, "projection": [] } } @@ -2238,140 +1039,208 @@ "func": { "Constant": { "const_": { - "id": 14, + "id": 7, "kind": "ZeroSized", - "ty": 35 + "ty": 22 }, - "span": 75, + "span": 40, "user_ty": null } }, - "target": null, + "target": 1, + "unwind": { + "Cleanup": 3 + } + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, "unwind": "Continue" } }, - "span": 76 + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Resume", + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 81, - "ty": 37 + "span": 40, + "ty": 16 }, { "mutability": "Not", - "span": 82, - "ty": 38 + "span": 40, + "ty": 12 }, { "mutability": "Not", - "span": 83, - "ty": 25 + "span": 40, + "ty": 1 }, { "mutability": "Not", - "span": 84, - "ty": 25 - }, + "span": 40, + "ty": 23 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ { - "mutability": "Not", - "span": 85, - "ty": 39 + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } }, { - "mutability": "Mut", - "span": 77, - "ty": 36 - }, + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ { "mutability": "Mut", - "span": 77, - "ty": 23 + "span": 40, + "ty": 1 }, { - "mutability": "Mut", - "span": 79, - "ty": 36 + "mutability": "Not", + "span": 40, + "ty": 7 }, { - "mutability": "Mut", - "span": 79, - "ty": 23 + "mutability": "Not", + "span": 40, + "ty": 1 } ], - "span": 86, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "kind", - "source_info": { - "scope": 0, - "span": 82 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 1, + "blocks": [ { - "argument_index": 2, - "composite": null, - "name": "left", - "source_info": { - "scope": 0, - "span": 83 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } + "statements": [], + "terminator": { + "kind": "Return", + "span": 41 } - }, + } + ], + "locals": [ { - "argument_index": 3, - "composite": null, - "name": "right", - "source_info": { - "scope": 0, - "span": 84 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } + "mutability": "Mut", + "span": 41, + "ty": 1 }, { - "argument_index": 4, - "composite": null, - "name": "args", - "source_info": { - "scope": 0, - "span": 85 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } + "mutability": "Not", + "span": 41, + "ty": 21 } - ] + ], + "span": 41, + "spread_arg": null, + "var_debug_info": [] } ], - "id": 7, - "name": "core::panicking::assert_failed::" + "id": 4, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN4core9panicking13assert_failed17h" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2394,7 +1263,7 @@ "Use": { "Constant": { "const_": { - "id": 15, + "id": 8, "kind": { "Allocated": { "align": 1, @@ -2409,61 +1278,40 @@ }, "ty": 17 }, - "span": 88, + "span": 43, "user_ty": null } } } ] }, - "span": 88 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 87 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 89, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 90, + "span": 45, "ty": 1 } ], - "span": 91, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 90 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], - "id": 8, + "id": 5, "name": "<() as std::process::Termination>::report" } }, @@ -2490,7 +1338,7 @@ "Use": { "Constant": { "const_": { - "id": 18, + "id": 11, "kind": { "Allocated": { "align": 4, @@ -2508,14 +1356,14 @@ }, "ty": 16 }, - "span": 95, + "span": 50, "user_ty": null } } } ] }, - "span": 95 + "span": 50 }, { "kind": { @@ -2530,7 +1378,7 @@ { "Constant": { "const_": { - "id": 16, + "id": 9, "kind": { "Allocated": { "align": 4, @@ -2548,14 +1396,14 @@ }, "ty": 16 }, - "span": 92, + "span": 47, "user_ty": null } }, { "Constant": { "const_": { - "id": 17, + "id": 10, "kind": { "Allocated": { "align": 4, @@ -2573,7 +1421,7 @@ }, "ty": 16 }, - "span": 93, + "span": 48, "user_ty": null } } @@ -2581,7 +1429,7 @@ } ] }, - "span": 94 + "span": 49 } ], "terminator": { @@ -2594,7 +1442,7 @@ { "Field": [ 1, - 40 + 24 ] } ] @@ -2607,7 +1455,7 @@ { "Constant": { "const_": { - "id": 16, + "id": 9, "kind": { "Allocated": { "align": 4, @@ -2625,14 +1473,14 @@ }, "ty": 16 }, - "span": 92, + "span": 47, "user_ty": null } }, { "Constant": { "const_": { - "id": 17, + "id": 10, "kind": { "Allocated": { "align": 4, @@ -2650,7 +1498,7 @@ }, "ty": 16 }, - "span": 93, + "span": 48, "user_ty": null } } @@ -2660,7 +1508,7 @@ "unwind": "Continue" } }, - "span": 94 + "span": 49 } }, { @@ -2689,7 +1537,7 @@ } ] }, - "span": 94 + "span": 49 }, { "kind": { @@ -2712,7 +1560,7 @@ } ] }, - "span": 97 + "span": 52 }, { "kind": { @@ -2735,7 +1583,7 @@ } ] }, - "span": 98 + "span": 53 }, { "kind": { @@ -2765,7 +1613,7 @@ } ] }, - "span": 99 + "span": 54 }, { "kind": { @@ -2791,7 +1639,7 @@ } ] }, - "span": 100 + "span": 55 }, { "kind": { @@ -2817,7 +1665,7 @@ } ] }, - "span": 101 + "span": 56 }, { "kind": { @@ -2838,7 +1686,7 @@ } ] }, - "span": 102 + "span": 57 }, { "kind": { @@ -2859,7 +1707,7 @@ } ] }, - "span": 103 + "span": 58 }, { "kind": { @@ -2887,7 +1735,7 @@ } ] }, - "span": 96 + "span": 51 } ], "terminator": { @@ -2910,14 +1758,14 @@ } } }, - "span": 96 + "span": 51 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 104 + "span": 59 } }, { @@ -2933,7 +1781,7 @@ "Aggregate": [ { "Adt": [ - 10, + 7, 0, [], null, @@ -2945,7 +1793,7 @@ } ] }, - "span": 107 + "span": 62 }, { "kind": { @@ -2958,11 +1806,11 @@ "Aggregate": [ { "Adt": [ - 11, + 8, 0, [ { - "Type": 42 + "Type": 27 } ], null, @@ -2974,7 +1822,7 @@ } ] }, - "span": 108 + "span": 63 } ], "terminator": { @@ -3013,11 +1861,11 @@ "func": { "Constant": { "const_": { - "id": 19, + "id": 12, "kind": "ZeroSized", - "ty": 41 + "ty": 26 }, - "span": 105, + "span": 60, "user_ty": null } }, @@ -3025,88 +1873,88 @@ "unwind": "Continue" } }, - "span": 106 + "span": 61 } } ], "locals": [ { "mutability": "Mut", - "span": 109, + "span": 64, "ty": 1 }, { "mutability": "Not", - "span": 110, + "span": 65, "ty": 16 }, { "mutability": "Not", - "span": 111, + "span": 66, "ty": 16 }, { "mutability": "Mut", - "span": 94, - "ty": 43 + "span": 49, + "ty": 28 }, { "mutability": "Mut", - "span": 99, - "ty": 44 + "span": 54, + "ty": 29 }, { "mutability": "Mut", - "span": 97, + "span": 52, "ty": 25 }, { "mutability": "Mut", - "span": 98, + "span": 53, "ty": 25 }, { "mutability": "Not", - "span": 100, + "span": 55, "ty": 25 }, { "mutability": "Not", - "span": 101, + "span": 56, "ty": 25 }, { "mutability": "Mut", - "span": 96, - "ty": 40 + "span": 51, + "ty": 24 }, { "mutability": "Mut", - "span": 102, + "span": 57, "ty": 16 }, { "mutability": "Mut", - "span": 103, + "span": 58, "ty": 16 }, { "mutability": "Not", - "span": 112, - "ty": 38 + "span": 67, + "ty": 30 }, { "mutability": "Not", - "span": 106, - "ty": 37 + "span": 61, + "ty": 31 }, { "mutability": "Mut", - "span": 108, - "ty": 39 + "span": 63, + "ty": 32 } ], - "span": 113, + "span": 68, "spread_arg": null, "var_debug_info": [ { @@ -3115,7 +1963,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 110 + "span": 65 }, "value": { "Place": { @@ -3130,7 +1978,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 111 + "span": 66 }, "value": { "Place": { @@ -3145,7 +1993,7 @@ "name": "left_val", "source_info": { "scope": 3, - "span": 100 + "span": 55 }, "value": { "Place": { @@ -3160,7 +2008,7 @@ "name": "right_val", "source_info": { "scope": 3, - "span": 101 + "span": 56 }, "value": { "Place": { @@ -3175,7 +2023,7 @@ "name": "kind", "source_info": { "scope": 4, - "span": 112 + "span": 67 }, "value": { "Place": { @@ -3187,7 +2035,7 @@ ] } ], - "id": 9, + "id": 6, "name": "main" } }, diff --git a/tests/integration/programs/binop.smir.json.expected b/tests/integration/programs/binop.smir.json.expected index 0578aac..05ded48 100644 --- a/tests/integration/programs/binop.smir.json.expected +++ b/tests/integration/programs/binop.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -44,7 +43,6 @@ } ], [ - 1, { "Memory": { "align": 1, @@ -87,7 +85,6 @@ } ], [ - 2, { "Memory": { "align": 1, @@ -133,7 +130,6 @@ } ], [ - 3, { "Memory": { "align": 1, @@ -176,7 +172,6 @@ } ], [ - 4, { "Memory": { "align": 1, @@ -220,7 +215,6 @@ } ], [ - 5, { "Memory": { "align": 1, @@ -266,7 +260,6 @@ } ], [ - 6, { "Memory": { "align": 1, @@ -310,7 +303,6 @@ } ], [ - 7, { "Memory": { "align": 1, @@ -356,7 +348,6 @@ } ], [ - 8, { "Memory": { "align": 1, @@ -402,7 +393,6 @@ } ], [ - 9, { "Memory": { "align": 1, @@ -448,7 +438,6 @@ } ], [ - 10, { "Memory": { "align": 1, @@ -490,7 +479,6 @@ } ], [ - 11, { "Memory": { "align": 1, @@ -532,7 +520,6 @@ } ], [ - 12, { "Memory": { "align": 1, @@ -574,7 +561,6 @@ } ], [ - 13, { "Memory": { "align": 1, @@ -616,7 +602,6 @@ } ], [ - 14, { "Memory": { "align": 1, @@ -658,7 +643,6 @@ } ], [ - 15, { "Memory": { "align": 1, @@ -700,7 +684,6 @@ } ], [ - 16, { "Memory": { "align": 1, @@ -743,7 +726,6 @@ } ], [ - 17, { "Memory": { "align": 1, @@ -786,7 +768,6 @@ } ], [ - 18, { "Memory": { "align": 1, @@ -829,7 +810,6 @@ } ], [ - 19, { "Memory": { "align": 1, @@ -872,7 +852,6 @@ } ], [ - 20, { "Memory": { "align": 1, @@ -913,7 +892,6 @@ } ], [ - 21, { "Memory": { "align": 1, @@ -955,7 +933,6 @@ } ], [ - 22, { "Memory": { "align": 1, @@ -1001,7 +978,6 @@ } ], [ - 23, { "Memory": { "align": 1, @@ -1042,7 +1018,6 @@ } ], [ - 24, { "Memory": { "align": 1, @@ -1084,7 +1059,6 @@ } ], [ - 25, { "Memory": { "align": 1, @@ -1132,61 +1106,51 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 26, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 31, { "NormalSym": "_ZN5binop10test_binop17h" } ], [ - 32, { "NoOpSym": "" } @@ -1215,12 +1179,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -1305,7 +1263,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -1316,12 +1274,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -1381,7 +1333,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -1410,51 +1362,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -1468,7 +1420,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -1478,7 +1430,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -1487,7 +1439,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1502,7 +1454,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -1517,7 +1469,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -1532,7 +1484,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -1547,7 +1499,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -1579,19 +1531,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1618,7 +1570,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1643,7 +1595,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1651,7 +1603,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1660,7 +1612,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1685,7 +1637,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1693,7 +1645,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1702,13 +1654,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1717,42 +1669,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1776,7 +1692,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1790,7 +1706,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1799,37 +1715,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1839,27 +1749,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1872,7 +1777,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1895,7 +1800,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1903,21 +1808,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1955,7 +1845,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1969,9 +1859,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1979,7 +1869,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1995,7 +1885,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2009,9 +1899,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -2019,35 +1909,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -2056,7 +1946,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -2071,7 +1961,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -2086,7 +1976,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -2095,7 +1985,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2147,9 +2037,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -2157,35 +2047,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -2196,73 +2086,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -2298,7 +2121,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -2327,9 +2150,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -2339,7 +2162,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -2355,14 +2178,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -2378,40 +2201,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -2422,6 +2245,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -2434,23 +2324,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -2497,58 +2387,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, @@ -2593,7 +2462,7 @@ } ] }, - "span": 50 + "span": 47 } ], "terminator": { @@ -2606,7 +2475,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -2634,7 +2503,7 @@ "unwind": "Continue" } }, - "span": 50 + "span": 47 } }, { @@ -2663,7 +2532,7 @@ } ] }, - "span": 50 + "span": 47 } ], "terminator": { @@ -2686,7 +2555,7 @@ } } }, - "span": 51 + "span": 48 } }, { @@ -2717,7 +2586,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -2730,7 +2599,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -2758,7 +2627,7 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { @@ -2803,9 +2672,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2819,9 +2688,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 53, + "span": 50, "user_ty": null } }, @@ -2829,7 +2698,7 @@ "unwind": "Continue" } }, - "span": 53 + "span": 50 } }, { @@ -2858,7 +2727,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -2881,7 +2750,7 @@ } } }, - "span": 54 + "span": 51 } }, { @@ -2912,7 +2781,7 @@ } ] }, - "span": 55 + "span": 52 } ], "terminator": { @@ -2925,7 +2794,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -2953,7 +2822,7 @@ "unwind": "Continue" } }, - "span": 55 + "span": 52 } }, { @@ -2998,9 +2867,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3014,9 +2883,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 56, + "span": 53, "user_ty": null } }, @@ -3024,7 +2893,7 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } }, { @@ -3053,7 +2922,7 @@ } ] }, - "span": 55 + "span": 52 }, { "kind": { @@ -3081,7 +2950,7 @@ } ] }, - "span": 57 + "span": 54 } ], "terminator": { @@ -3094,7 +2963,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -3122,7 +2991,7 @@ "unwind": "Continue" } }, - "span": 57 + "span": 54 } }, { @@ -3151,7 +3020,7 @@ } ] }, - "span": 57 + "span": 54 }, { "kind": { @@ -3179,7 +3048,7 @@ } ] }, - "span": 58 + "span": 55 } ], "terminator": { @@ -3202,7 +3071,7 @@ } } }, - "span": 58 + "span": 55 } }, { @@ -3233,7 +3102,7 @@ } ] }, - "span": 59 + "span": 56 } ], "terminator": { @@ -3246,7 +3115,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -3274,7 +3143,7 @@ "unwind": "Continue" } }, - "span": 59 + "span": 56 } }, { @@ -3319,9 +3188,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3335,9 +3204,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 60, + "span": 57, "user_ty": null } }, @@ -3345,7 +3214,7 @@ "unwind": "Continue" } }, - "span": 60 + "span": 57 } }, { @@ -3374,7 +3243,7 @@ } ] }, - "span": 59 + "span": 56 } ], "terminator": { @@ -3397,7 +3266,7 @@ } } }, - "span": 61 + "span": 58 } }, { @@ -3428,7 +3297,7 @@ } ] }, - "span": 62 + "span": 59 } ], "terminator": { @@ -3441,7 +3310,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -3469,7 +3338,7 @@ "unwind": "Continue" } }, - "span": 62 + "span": 59 } }, { @@ -3514,9 +3383,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3530,9 +3399,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 63, + "span": 60, "user_ty": null } }, @@ -3540,7 +3409,7 @@ "unwind": "Continue" } }, - "span": 63 + "span": 60 } }, { @@ -3569,7 +3438,7 @@ } ] }, - "span": 62 + "span": 59 } ], "terminator": { @@ -3592,7 +3461,7 @@ } } }, - "span": 64 + "span": 61 } }, { @@ -3623,7 +3492,7 @@ } ] }, - "span": 65 + "span": 62 } ], "terminator": { @@ -3636,7 +3505,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -3664,7 +3533,7 @@ "unwind": "Continue" } }, - "span": 65 + "span": 62 } }, { @@ -3709,9 +3578,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3725,9 +3594,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 66, + "span": 63, "user_ty": null } }, @@ -3735,7 +3604,7 @@ "unwind": "Continue" } }, - "span": 66 + "span": 63 } }, { @@ -3764,7 +3633,7 @@ } ] }, - "span": 65 + "span": 62 }, { "kind": { @@ -3792,7 +3661,7 @@ } ] }, - "span": 67 + "span": 64 } ], "terminator": { @@ -3805,7 +3674,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -3833,7 +3702,7 @@ "unwind": "Continue" } }, - "span": 67 + "span": 64 } }, { @@ -3862,7 +3731,7 @@ } ] }, - "span": 67 + "span": 64 }, { "kind": { @@ -3890,7 +3759,7 @@ } ] }, - "span": 68 + "span": 65 } ], "terminator": { @@ -3913,7 +3782,7 @@ } } }, - "span": 68 + "span": 65 } }, { @@ -3944,7 +3813,7 @@ } ] }, - "span": 69 + "span": 66 } ], "terminator": { @@ -3957,7 +3826,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -3985,7 +3854,7 @@ "unwind": "Continue" } }, - "span": 69 + "span": 66 } }, { @@ -4030,9 +3899,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -4046,9 +3915,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 70, + "span": 67, "user_ty": null } }, @@ -4056,7 +3925,7 @@ "unwind": "Continue" } }, - "span": 70 + "span": 67 } }, { @@ -4085,7 +3954,7 @@ } ] }, - "span": 69 + "span": 66 } ], "terminator": { @@ -4108,7 +3977,7 @@ } } }, - "span": 71 + "span": 68 } }, { @@ -4150,7 +4019,7 @@ }, "ty": 16 }, - "span": 72, + "span": 69, "user_ty": null } } @@ -4158,7 +4027,7 @@ } ] }, - "span": 72 + "span": 69 } ], "terminator": { @@ -4183,7 +4052,7 @@ "unwind": "Continue" } }, - "span": 72 + "span": 69 } }, { @@ -4228,9 +4097,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -4244,9 +4113,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 73, + "span": 70, "user_ty": null } }, @@ -4254,7 +4123,7 @@ "unwind": "Continue" } }, - "span": 73 + "span": 70 } }, { @@ -4279,7 +4148,7 @@ } ] }, - "span": 72 + "span": 69 }, { "kind": { @@ -4307,7 +4176,7 @@ } ] }, - "span": 74 + "span": 71 } ], "terminator": { @@ -4320,7 +4189,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -4348,7 +4217,7 @@ "unwind": "Continue" } }, - "span": 74 + "span": 71 } }, { @@ -4377,7 +4246,7 @@ } ] }, - "span": 74 + "span": 71 } ], "terminator": { @@ -4400,7 +4269,7 @@ } } }, - "span": 75 + "span": 72 } }, { @@ -4442,7 +4311,7 @@ }, "ty": 16 }, - "span": 76, + "span": 73, "user_ty": null } } @@ -4450,7 +4319,7 @@ } ] }, - "span": 76 + "span": 73 } ], "terminator": { @@ -4475,7 +4344,7 @@ "unwind": "Continue" } }, - "span": 76 + "span": 73 } }, { @@ -4520,9 +4389,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -4536,9 +4405,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 77, + "span": 74, "user_ty": null } }, @@ -4546,7 +4415,7 @@ "unwind": "Continue" } }, - "span": 77 + "span": 74 } }, { @@ -4571,7 +4440,7 @@ } ] }, - "span": 76 + "span": 73 }, { "kind": { @@ -4599,7 +4468,7 @@ } ] }, - "span": 78 + "span": 75 } ], "terminator": { @@ -4612,7 +4481,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -4640,7 +4509,7 @@ "unwind": "Continue" } }, - "span": 78 + "span": 75 } }, { @@ -4669,7 +4538,7 @@ } ] }, - "span": 78 + "span": 75 } ], "terminator": { @@ -4692,7 +4561,7 @@ } } }, - "span": 79 + "span": 76 } }, { @@ -4734,7 +4603,7 @@ }, "ty": 16 }, - "span": 80, + "span": 77, "user_ty": null } } @@ -4742,7 +4611,7 @@ } ] }, - "span": 80 + "span": 77 } ], "terminator": { @@ -4767,7 +4636,7 @@ "unwind": "Continue" } }, - "span": 80 + "span": 77 } }, { @@ -4812,9 +4681,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -4828,9 +4697,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 81, + "span": 78, "user_ty": null } }, @@ -4838,7 +4707,7 @@ "unwind": "Continue" } }, - "span": 81 + "span": 78 } }, { @@ -4863,7 +4732,7 @@ } ] }, - "span": 80 + "span": 77 }, { "kind": { @@ -4902,7 +4771,7 @@ }, "ty": 16 }, - "span": 82, + "span": 79, "user_ty": null } } @@ -4910,7 +4779,7 @@ } ] }, - "span": 82 + "span": 79 } ], "terminator": { @@ -4935,7 +4804,7 @@ "unwind": "Continue" } }, - "span": 82 + "span": 79 } }, { @@ -4960,7 +4829,7 @@ } ] }, - "span": 82 + "span": 79 }, { "kind": { @@ -4988,7 +4857,7 @@ } ] }, - "span": 83 + "span": 80 } ], "terminator": { @@ -5001,7 +4870,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -5029,7 +4898,7 @@ "unwind": "Continue" } }, - "span": 83 + "span": 80 } }, { @@ -5058,7 +4927,7 @@ } ] }, - "span": 83 + "span": 80 } ], "terminator": { @@ -5081,7 +4950,7 @@ } } }, - "span": 84 + "span": 81 } }, { @@ -5117,7 +4986,7 @@ }, "ty": 16 }, - "span": 86, + "span": 83, "user_ty": null } }, @@ -5142,7 +5011,7 @@ }, "ty": 16 }, - "span": 87, + "span": 84, "user_ty": null } } @@ -5150,7 +5019,7 @@ } ] }, - "span": 88 + "span": 85 } ], "terminator": { @@ -5173,7 +5042,7 @@ } } }, - "span": 85 + "span": 82 } }, { @@ -5218,9 +5087,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -5234,9 +5103,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 89, + "span": 86, "user_ty": null } }, @@ -5244,7 +5113,7 @@ "unwind": "Continue" } }, - "span": 89 + "span": 86 } }, { @@ -5280,7 +5149,7 @@ }, "ty": 16 }, - "span": 91, + "span": 88, "user_ty": null } }, @@ -5305,7 +5174,7 @@ }, "ty": 16 }, - "span": 92, + "span": 89, "user_ty": null } } @@ -5313,7 +5182,7 @@ } ] }, - "span": 93 + "span": 90 } ], "terminator": { @@ -5336,7 +5205,7 @@ } } }, - "span": 90 + "span": 87 } }, { @@ -5381,9 +5250,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -5397,9 +5266,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 94, + "span": 91, "user_ty": null } }, @@ -5407,7 +5276,7 @@ "unwind": "Continue" } }, - "span": 94 + "span": 91 } }, { @@ -5443,7 +5312,7 @@ }, "ty": 16 }, - "span": 96, + "span": 93, "user_ty": null } }, @@ -5468,7 +5337,7 @@ }, "ty": 16 }, - "span": 97, + "span": 94, "user_ty": null } } @@ -5476,7 +5345,7 @@ } ] }, - "span": 98 + "span": 95 } ], "terminator": { @@ -5499,7 +5368,7 @@ } } }, - "span": 95 + "span": 92 } }, { @@ -5544,9 +5413,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -5560,9 +5429,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 99, + "span": 96, "user_ty": null } }, @@ -5570,7 +5439,7 @@ "unwind": "Continue" } }, - "span": 99 + "span": 96 } }, { @@ -5606,7 +5475,7 @@ }, "ty": 16 }, - "span": 101, + "span": 98, "user_ty": null } }, @@ -5631,7 +5500,7 @@ }, "ty": 16 }, - "span": 102, + "span": 99, "user_ty": null } } @@ -5639,7 +5508,7 @@ } ] }, - "span": 103 + "span": 100 } ], "terminator": { @@ -5662,7 +5531,7 @@ } } }, - "span": 100 + "span": 97 } }, { @@ -5707,9 +5576,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -5723,9 +5592,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 104, + "span": 101, "user_ty": null } }, @@ -5733,7 +5602,7 @@ "unwind": "Continue" } }, - "span": 104 + "span": 101 } }, { @@ -5769,7 +5638,7 @@ }, "ty": 16 }, - "span": 106, + "span": 103, "user_ty": null } }, @@ -5794,7 +5663,7 @@ }, "ty": 16 }, - "span": 107, + "span": 104, "user_ty": null } } @@ -5802,7 +5671,7 @@ } ] }, - "span": 108 + "span": 105 } ], "terminator": { @@ -5825,7 +5694,7 @@ } } }, - "span": 105 + "span": 102 } }, { @@ -5870,9 +5739,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -5886,9 +5755,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 109, + "span": 106, "user_ty": null } }, @@ -5896,7 +5765,7 @@ "unwind": "Continue" } }, - "span": 109 + "span": 106 } }, { @@ -5932,7 +5801,7 @@ }, "ty": 16 }, - "span": 111, + "span": 108, "user_ty": null } }, @@ -5957,7 +5826,7 @@ }, "ty": 16 }, - "span": 112, + "span": 109, "user_ty": null } } @@ -5965,7 +5834,7 @@ } ] }, - "span": 113 + "span": 110 } ], "terminator": { @@ -5988,7 +5857,7 @@ } } }, - "span": 110 + "span": 107 } }, { @@ -6033,9 +5902,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -6049,9 +5918,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 114, + "span": 111, "user_ty": null } }, @@ -6059,7 +5928,7 @@ "unwind": "Continue" } }, - "span": 114 + "span": 111 } }, { @@ -6095,16 +5964,16 @@ }, "ty": 16 }, - "span": 116, + "span": 113, "user_ty": null } }, - 28 + 27 ] } ] }, - "span": 117 + "span": 114 }, { "kind": { @@ -6141,9 +6010,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 117, + "span": 114, "user_ty": null } } @@ -6151,7 +6020,7 @@ } ] }, - "span": 117 + "span": 114 } ], "terminator": { @@ -6188,7 +6057,7 @@ }, "ty": 16 }, - "span": 115, + "span": 112, "user_ty": null } }, @@ -6213,7 +6082,7 @@ }, "ty": 16 }, - "span": 116, + "span": 113, "user_ty": null } } @@ -6223,7 +6092,7 @@ "unwind": "Continue" } }, - "span": 117 + "span": 114 } }, { @@ -6268,9 +6137,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -6284,9 +6153,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 118, + "span": 115, "user_ty": null } }, @@ -6294,7 +6163,7 @@ "unwind": "Continue" } }, - "span": 118 + "span": 115 } }, { @@ -6330,7 +6199,7 @@ }, "ty": 16 }, - "span": 115, + "span": 112, "user_ty": null } }, @@ -6355,7 +6224,7 @@ }, "ty": 16 }, - "span": 116, + "span": 113, "user_ty": null } } @@ -6363,7 +6232,7 @@ } ] }, - "span": 117 + "span": 114 } ], "terminator": { @@ -6386,7 +6255,7 @@ } } }, - "span": 119 + "span": 116 } }, { @@ -6422,16 +6291,16 @@ }, "ty": 16 }, - "span": 121, + "span": 118, "user_ty": null } }, - 28 + 27 ] } ] }, - "span": 122 + "span": 119 }, { "kind": { @@ -6468,9 +6337,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 122, + "span": 119, "user_ty": null } } @@ -6478,7 +6347,7 @@ } ] }, - "span": 122 + "span": 119 } ], "terminator": { @@ -6515,7 +6384,7 @@ }, "ty": 16 }, - "span": 120, + "span": 117, "user_ty": null } }, @@ -6540,7 +6409,7 @@ }, "ty": 16 }, - "span": 121, + "span": 118, "user_ty": null } } @@ -6550,7 +6419,7 @@ "unwind": "Continue" } }, - "span": 122 + "span": 119 } }, { @@ -6595,9 +6464,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -6611,9 +6480,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 123, + "span": 120, "user_ty": null } }, @@ -6621,7 +6490,7 @@ "unwind": "Continue" } }, - "span": 123 + "span": 120 } }, { @@ -6657,7 +6526,7 @@ }, "ty": 16 }, - "span": 120, + "span": 117, "user_ty": null } }, @@ -6682,7 +6551,7 @@ }, "ty": 16 }, - "span": 121, + "span": 118, "user_ty": null } } @@ -6690,7 +6559,7 @@ } ] }, - "span": 122 + "span": 119 } ], "terminator": { @@ -6713,7 +6582,7 @@ } } }, - "span": 124 + "span": 121 } }, { @@ -6749,16 +6618,16 @@ }, "ty": 16 }, - "span": 126, + "span": 123, "user_ty": null } }, - 28 + 27 ] } ] }, - "span": 127 + "span": 124 }, { "kind": { @@ -6795,9 +6664,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 127, + "span": 124, "user_ty": null } } @@ -6805,7 +6674,7 @@ } ] }, - "span": 127 + "span": 124 } ], "terminator": { @@ -6842,7 +6711,7 @@ }, "ty": 16 }, - "span": 125, + "span": 122, "user_ty": null } }, @@ -6867,7 +6736,7 @@ }, "ty": 16 }, - "span": 126, + "span": 123, "user_ty": null } } @@ -6877,7 +6746,7 @@ "unwind": "Continue" } }, - "span": 127 + "span": 124 } }, { @@ -6922,9 +6791,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -6938,9 +6807,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 128, + "span": 125, "user_ty": null } }, @@ -6948,7 +6817,7 @@ "unwind": "Continue" } }, - "span": 128 + "span": 125 } }, { @@ -6984,7 +6853,7 @@ }, "ty": 16 }, - "span": 125, + "span": 122, "user_ty": null } }, @@ -7009,7 +6878,7 @@ }, "ty": 16 }, - "span": 126, + "span": 123, "user_ty": null } } @@ -7017,7 +6886,7 @@ } ] }, - "span": 127 + "span": 124 } ], "terminator": { @@ -7040,7 +6909,7 @@ } } }, - "span": 129 + "span": 126 } }, { @@ -7076,16 +6945,16 @@ }, "ty": 16 }, - "span": 131, + "span": 128, "user_ty": null } }, - 28 + 27 ] } ] }, - "span": 132 + "span": 129 }, { "kind": { @@ -7122,9 +6991,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 132, + "span": 129, "user_ty": null } } @@ -7132,7 +7001,7 @@ } ] }, - "span": 132 + "span": 129 } ], "terminator": { @@ -7169,7 +7038,7 @@ }, "ty": 16 }, - "span": 130, + "span": 127, "user_ty": null } }, @@ -7194,7 +7063,7 @@ }, "ty": 16 }, - "span": 131, + "span": 128, "user_ty": null } } @@ -7204,7 +7073,7 @@ "unwind": "Continue" } }, - "span": 132 + "span": 129 } }, { @@ -7249,9 +7118,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -7265,9 +7134,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 133, + "span": 130, "user_ty": null } }, @@ -7275,7 +7144,7 @@ "unwind": "Continue" } }, - "span": 133 + "span": 130 } }, { @@ -7311,7 +7180,7 @@ }, "ty": 16 }, - "span": 130, + "span": 127, "user_ty": null } }, @@ -7336,7 +7205,7 @@ }, "ty": 16 }, - "span": 131, + "span": 128, "user_ty": null } } @@ -7344,7 +7213,7 @@ } ] }, - "span": 132 + "span": 129 } ], "terminator": { @@ -7367,7 +7236,7 @@ } } }, - "span": 134 + "span": 131 } }, { @@ -7398,7 +7267,7 @@ } ] }, - "span": 135 + "span": 132 } ], "terminator": { @@ -7411,7 +7280,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -7439,7 +7308,7 @@ "unwind": "Continue" } }, - "span": 135 + "span": 132 } }, { @@ -7484,9 +7353,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -7500,9 +7369,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 136, + "span": 133, "user_ty": null } }, @@ -7510,7 +7379,7 @@ "unwind": "Continue" } }, - "span": 136 + "span": 133 } }, { @@ -7539,7 +7408,7 @@ } ] }, - "span": 135 + "span": 132 }, { "kind": { @@ -7567,7 +7436,7 @@ } ] }, - "span": 137 + "span": 134 } ], "terminator": { @@ -7590,7 +7459,7 @@ } } }, - "span": 137 + "span": 134 } }, { @@ -7621,7 +7490,7 @@ } ] }, - "span": 138 + "span": 135 } ], "terminator": { @@ -7634,7 +7503,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -7662,7 +7531,7 @@ "unwind": "Continue" } }, - "span": 138 + "span": 135 } }, { @@ -7707,9 +7576,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -7723,9 +7592,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 139, + "span": 136, "user_ty": null } }, @@ -7733,7 +7602,7 @@ "unwind": "Continue" } }, - "span": 139 + "span": 136 } }, { @@ -7762,7 +7631,7 @@ } ] }, - "span": 138 + "span": 135 }, { "kind": { @@ -7790,7 +7659,7 @@ } ] }, - "span": 140 + "span": 137 } ], "terminator": { @@ -7813,7 +7682,7 @@ } } }, - "span": 140 + "span": 137 } }, { @@ -7844,7 +7713,7 @@ } ] }, - "span": 141 + "span": 138 } ], "terminator": { @@ -7857,7 +7726,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -7885,7 +7754,7 @@ "unwind": "Continue" } }, - "span": 141 + "span": 138 } }, { @@ -7930,9 +7799,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -7946,9 +7815,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 142, + "span": 139, "user_ty": null } }, @@ -7956,7 +7825,7 @@ "unwind": "Continue" } }, - "span": 142 + "span": 139 } }, { @@ -7985,7 +7854,7 @@ } ] }, - "span": 141 + "span": 138 }, { "kind": { @@ -8013,7 +7882,7 @@ } ] }, - "span": 143 + "span": 140 } ], "terminator": { @@ -8026,7 +7895,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -8054,7 +7923,7 @@ "unwind": "Continue" } }, - "span": 143 + "span": 140 } }, { @@ -8083,7 +7952,7 @@ } ] }, - "span": 143 + "span": 140 }, { "kind": { @@ -8111,7 +7980,7 @@ } ] }, - "span": 144 + "span": 141 } ], "terminator": { @@ -8134,7 +8003,7 @@ } } }, - "span": 144 + "span": 141 } }, { @@ -8165,7 +8034,7 @@ } ] }, - "span": 145 + "span": 142 } ], "terminator": { @@ -8178,7 +8047,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -8206,7 +8075,7 @@ "unwind": "Continue" } }, - "span": 145 + "span": 142 } }, { @@ -8251,9 +8120,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -8267,9 +8136,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 146, + "span": 143, "user_ty": null } }, @@ -8277,7 +8146,7 @@ "unwind": "Continue" } }, - "span": 146 + "span": 143 } }, { @@ -8306,7 +8175,7 @@ } ] }, - "span": 145 + "span": 142 }, { "kind": { @@ -8334,7 +8203,7 @@ } ] }, - "span": 147 + "span": 144 } ], "terminator": { @@ -8357,7 +8226,7 @@ } } }, - "span": 147 + "span": 144 } }, { @@ -8388,7 +8257,7 @@ } ] }, - "span": 148 + "span": 145 } ], "terminator": { @@ -8401,7 +8270,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -8429,7 +8298,7 @@ "unwind": "Continue" } }, - "span": 148 + "span": 145 } }, { @@ -8474,9 +8343,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -8490,9 +8359,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 149, + "span": 146, "user_ty": null } }, @@ -8500,7 +8369,7 @@ "unwind": "Continue" } }, - "span": 149 + "span": 146 } }, { @@ -8529,7 +8398,7 @@ } ] }, - "span": 148 + "span": 145 }, { "kind": { @@ -8557,7 +8426,7 @@ } ] }, - "span": 150 + "span": 147 } ], "terminator": { @@ -8580,7 +8449,7 @@ } } }, - "span": 150 + "span": 147 } }, { @@ -8611,7 +8480,7 @@ } ] }, - "span": 151 + "span": 148 } ], "terminator": { @@ -8624,7 +8493,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -8652,7 +8521,7 @@ "unwind": "Continue" } }, - "span": 151 + "span": 148 } }, { @@ -8697,9 +8566,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -8713,9 +8582,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 152, + "span": 149, "user_ty": null } }, @@ -8723,7 +8592,7 @@ "unwind": "Continue" } }, - "span": 152 + "span": 149 } }, { @@ -8752,7 +8621,7 @@ } ] }, - "span": 151 + "span": 148 }, { "kind": { @@ -8780,7 +8649,7 @@ } ] }, - "span": 153 + "span": 150 } ], "terminator": { @@ -8793,7 +8662,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -8821,7 +8690,7 @@ "unwind": "Continue" } }, - "span": 153 + "span": 150 } }, { @@ -8850,7 +8719,7 @@ } ] }, - "span": 153 + "span": 150 }, { "kind": { @@ -8878,7 +8747,7 @@ } ] }, - "span": 154 + "span": 151 } ], "terminator": { @@ -8901,14 +8770,14 @@ } } }, - "span": 154 + "span": 151 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 155 + "span": 152 } }, { @@ -8953,9 +8822,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -8969,9 +8838,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 156, + "span": 153, "user_ty": null } }, @@ -8979,31 +8848,36 @@ "unwind": "Continue" } }, - "span": 156 + "span": 153 } } ], "locals": [ { "mutability": "Mut", - "span": 157, + "span": 154, "ty": 1 }, { "mutability": "Not", - "span": 158, + "span": 155, "ty": 16 }, { "mutability": "Not", - "span": 159, + "span": 156, "ty": 16 }, { "mutability": "Mut", - "span": 50, + "span": 47, "ty": 16 }, + { + "mutability": "Mut", + "span": 47, + "ty": 28 + }, { "mutability": "Mut", "span": 50, @@ -9011,53 +8885,63 @@ }, { "mutability": "Mut", - "span": 53, - "ty": 30 + "span": 49, + "ty": 16 }, { "mutability": "Mut", - "span": 52, - "ty": 16 + "span": 49, + "ty": 28 }, { "mutability": "Mut", - "span": 52, + "span": 53, "ty": 29 }, { "mutability": "Mut", - "span": 56, - "ty": 30 + "span": 55, + "ty": 24 }, { "mutability": "Mut", - "span": 58, - "ty": 25 + "span": 52, + "ty": 16 }, { "mutability": "Mut", - "span": 55, + "span": 52, + "ty": 28 + }, + { + "mutability": "Mut", + "span": 54, "ty": 16 }, { "mutability": "Mut", - "span": 55, - "ty": 29 + "span": 54, + "ty": 28 }, { "mutability": "Mut", "span": 57, + "ty": 29 + }, + { + "mutability": "Mut", + "span": 56, "ty": 16 }, { "mutability": "Mut", - "span": 57, - "ty": 29 + "span": 56, + "ty": 28 }, { "mutability": "Mut", "span": 60, - "ty": 30 + "ty": 29 }, { "mutability": "Mut", @@ -9067,57 +8951,62 @@ { "mutability": "Mut", "span": 59, - "ty": 29 + "ty": 28 }, { "mutability": "Mut", "span": 63, - "ty": 30 + "ty": 29 }, { "mutability": "Mut", - "span": 62, - "ty": 16 + "span": 65, + "ty": 24 }, { "mutability": "Mut", "span": 62, - "ty": 29 + "ty": 16 }, { "mutability": "Mut", - "span": 66, - "ty": 30 + "span": 62, + "ty": 28 }, { "mutability": "Mut", - "span": 68, - "ty": 25 + "span": 64, + "ty": 16 }, { "mutability": "Mut", - "span": 65, - "ty": 16 + "span": 64, + "ty": 28 }, { "mutability": "Mut", - "span": 65, + "span": 67, "ty": 29 }, { "mutability": "Mut", - "span": 67, + "span": 66, "ty": 16 }, { "mutability": "Mut", - "span": 67, - "ty": 29 + "span": 66, + "ty": 28 }, { "mutability": "Mut", "span": 70, - "ty": 30 + "ty": 29 + }, + { + "mutability": "Mut", + "span": 71, + "ty": 16 }, { "mutability": "Mut", @@ -9127,242 +9016,242 @@ { "mutability": "Mut", "span": 69, - "ty": 29 + "ty": 24 }, { "mutability": "Mut", - "span": 73, - "ty": 30 + "span": 71, + "ty": 28 }, { "mutability": "Mut", "span": 74, - "ty": 16 + "ty": 29 }, { "mutability": "Mut", - "span": 72, + "span": 75, "ty": 16 }, { "mutability": "Mut", - "span": 72, - "ty": 25 + "span": 73, + "ty": 16 }, { "mutability": "Mut", - "span": 74, - "ty": 29 + "span": 73, + "ty": 24 }, { "mutability": "Mut", - "span": 77, - "ty": 30 + "span": 75, + "ty": 28 }, { "mutability": "Mut", "span": 78, - "ty": 16 + "ty": 29 }, { "mutability": "Mut", - "span": 76, + "span": 80, "ty": 16 }, { "mutability": "Mut", - "span": 76, - "ty": 25 + "span": 77, + "ty": 16 }, { "mutability": "Mut", - "span": 78, - "ty": 29 + "span": 77, + "ty": 24 }, { "mutability": "Mut", - "span": 81, - "ty": 30 + "span": 79, + "ty": 16 }, { "mutability": "Mut", - "span": 83, - "ty": 16 + "span": 79, + "ty": 24 }, { "mutability": "Mut", "span": 80, - "ty": 16 + "ty": 28 }, { "mutability": "Mut", - "span": 80, - "ty": 25 + "span": 86, + "ty": 29 }, { "mutability": "Mut", - "span": 82, + "span": 85, "ty": 16 }, { "mutability": "Mut", - "span": 82, - "ty": 25 + "span": 91, + "ty": 29 }, { "mutability": "Mut", - "span": 83, - "ty": 29 + "span": 90, + "ty": 16 }, { "mutability": "Mut", - "span": 89, - "ty": 30 + "span": 96, + "ty": 29 }, { "mutability": "Mut", - "span": 88, + "span": 95, "ty": 16 }, { "mutability": "Mut", - "span": 94, - "ty": 30 + "span": 101, + "ty": 29 }, { "mutability": "Mut", - "span": 93, + "span": 100, "ty": 16 }, { "mutability": "Mut", - "span": 99, - "ty": 30 + "span": 106, + "ty": 29 }, { "mutability": "Mut", - "span": 98, + "span": 105, "ty": 16 }, { "mutability": "Mut", - "span": 104, - "ty": 30 + "span": 111, + "ty": 29 }, { "mutability": "Mut", - "span": 103, + "span": 110, "ty": 16 }, { "mutability": "Mut", - "span": 109, - "ty": 30 + "span": 115, + "ty": 29 }, { "mutability": "Mut", - "span": 108, + "span": 114, "ty": 16 }, { "mutability": "Mut", "span": 114, - "ty": 30 + "ty": 27 }, { "mutability": "Mut", - "span": 113, - "ty": 16 + "span": 114, + "ty": 24 }, { "mutability": "Mut", - "span": 118, - "ty": 30 + "span": 120, + "ty": 29 }, { "mutability": "Mut", - "span": 117, + "span": 119, "ty": 16 }, { "mutability": "Mut", - "span": 117, - "ty": 28 + "span": 119, + "ty": 27 }, { "mutability": "Mut", - "span": 117, - "ty": 25 + "span": 119, + "ty": 24 }, { "mutability": "Mut", - "span": 123, - "ty": 30 + "span": 125, + "ty": 29 }, { "mutability": "Mut", - "span": 122, + "span": 124, "ty": 16 }, { "mutability": "Mut", - "span": 122, - "ty": 28 + "span": 124, + "ty": 27 }, { "mutability": "Mut", - "span": 122, - "ty": 25 + "span": 124, + "ty": 24 }, { "mutability": "Mut", - "span": 128, - "ty": 30 + "span": 130, + "ty": 29 }, { "mutability": "Mut", - "span": 127, + "span": 129, "ty": 16 }, { "mutability": "Mut", - "span": 127, - "ty": 28 + "span": 129, + "ty": 27 }, { "mutability": "Mut", - "span": 127, - "ty": 25 + "span": 129, + "ty": 24 }, { "mutability": "Mut", "span": 133, - "ty": 30 + "ty": 29 }, { "mutability": "Mut", - "span": 132, - "ty": 16 + "span": 134, + "ty": 24 }, { "mutability": "Mut", "span": 132, - "ty": 28 + "ty": 16 }, { "mutability": "Mut", "span": 132, - "ty": 25 + "ty": 28 }, { "mutability": "Mut", "span": 136, - "ty": 30 + "ty": 29 }, { "mutability": "Mut", "span": 137, - "ty": 25 + "ty": 24 }, { "mutability": "Mut", @@ -9372,67 +9261,67 @@ { "mutability": "Mut", "span": 135, - "ty": 29 + "ty": 28 }, { "mutability": "Mut", "span": 139, - "ty": 30 + "ty": 29 }, { "mutability": "Mut", - "span": 140, - "ty": 25 + "span": 141, + "ty": 24 }, { "mutability": "Mut", - "span": 138, + "span": 140, "ty": 16 }, { "mutability": "Mut", "span": 138, - "ty": 29 + "ty": 16 }, { "mutability": "Mut", - "span": 142, - "ty": 30 + "span": 138, + "ty": 28 }, { "mutability": "Mut", - "span": 144, - "ty": 25 + "span": 140, + "ty": 28 }, { "mutability": "Mut", "span": 143, - "ty": 16 + "ty": 29 }, { "mutability": "Mut", - "span": 141, - "ty": 16 + "span": 144, + "ty": 24 }, { "mutability": "Mut", - "span": 141, - "ty": 29 + "span": 142, + "ty": 16 }, { "mutability": "Mut", - "span": 143, - "ty": 29 + "span": 142, + "ty": 28 }, { "mutability": "Mut", "span": 146, - "ty": 30 + "ty": 29 }, { "mutability": "Mut", "span": 147, - "ty": 25 + "ty": 24 }, { "mutability": "Mut", @@ -9442,65 +9331,45 @@ { "mutability": "Mut", "span": 145, - "ty": 29 + "ty": 28 }, { "mutability": "Mut", "span": 149, - "ty": 30 + "ty": 29 }, { "mutability": "Mut", - "span": 150, - "ty": 25 + "span": 151, + "ty": 24 }, { "mutability": "Mut", - "span": 148, + "span": 150, "ty": 16 }, { "mutability": "Mut", "span": 148, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 30 - }, - { - "mutability": "Mut", - "span": 154, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 153, "ty": 16 }, { "mutability": "Mut", - "span": 151, - "ty": 16 + "span": 148, + "ty": 28 }, { "mutability": "Mut", - "span": 151, - "ty": 29 + "span": 150, + "ty": 28 }, { "mutability": "Mut", "span": 153, "ty": 29 - }, - { - "mutability": "Mut", - "span": 156, - "ty": 30 } ], - "span": 160, + "span": 157, "spread_arg": null, "var_debug_info": [ { @@ -9509,7 +9378,7 @@ "name": "x", "source_info": { "scope": 0, - "span": 158 + "span": 155 }, "value": { "Place": { @@ -9524,7 +9393,7 @@ "name": "y", "source_info": { "scope": 0, - "span": 159 + "span": 156 }, "value": { "Place": { @@ -9581,14 +9450,14 @@ }, "ty": 16 }, - "span": 163, + "span": 160, "user_ty": null } } } ] }, - "span": 164 + "span": 161 }, { "kind": { @@ -9619,14 +9488,14 @@ }, "ty": 16 }, - "span": 165, + "span": 162, "user_ty": null } } } ] }, - "span": 166 + "span": 163 } ], "terminator": { @@ -9655,9 +9524,9 @@ "const_": { "id": 41, "kind": "ZeroSized", - "ty": 31 + "ty": 30 }, - "span": 161, + "span": 158, "user_ty": null } }, @@ -9665,40 +9534,40 @@ "unwind": "Continue" } }, - "span": 162 + "span": 159 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 167 + "span": 164 } } ], "locals": [ { "mutability": "Mut", - "span": 168, + "span": 165, "ty": 1 }, { "mutability": "Not", - "span": 162, + "span": 159, "ty": 1 }, { "mutability": "Mut", - "span": 164, + "span": 161, "ty": 16 }, { "mutability": "Mut", - "span": 166, + "span": 163, "ty": 16 } ], - "span": 171, + "span": 168, "spread_arg": null, "var_debug_info": [ { @@ -9707,7 +9576,7 @@ "name": "x", "source_info": { "scope": 1, - "span": 169 + "span": 166 }, "value": { "Const": { @@ -9730,7 +9599,7 @@ }, "ty": 16 }, - "span": 163, + "span": 160, "user_ty": null } } @@ -9741,7 +9610,7 @@ "name": "y", "source_info": { "scope": 2, - "span": 170 + "span": 167 }, "value": { "Const": { @@ -9764,7 +9633,7 @@ }, "ty": 16 }, - "span": 165, + "span": 162, "user_ty": null } } diff --git a/tests/integration/programs/char-trivial.smir.json.expected b/tests/integration/programs/char-trivial.smir.json.expected index 99f842f..a6e9bab 100644 --- a/tests/integration/programs/char-trivial.smir.json.expected +++ b/tests/integration/programs/char-trivial.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -43,55 +42,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 26, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 29, { "NoOpSym": "" } @@ -135,16 +125,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 51, + "span": 48, "user_ty": null } } } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -167,14 +157,14 @@ } } }, - "span": 50 + "span": 47 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 53 + "span": 50 } }, { @@ -219,9 +209,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -235,9 +225,9 @@ "const_": { "id": 10, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -245,28 +235,28 @@ "unwind": "Continue" } }, - "span": 54 + "span": 51 } } ], "locals": [ { "mutability": "Mut", - "span": 55, + "span": 52, "ty": 1 }, { "mutability": "Mut", - "span": 52, - "ty": 25 + "span": 49, + "ty": 24 }, { "mutability": "Mut", - "span": 54, - "ty": 28 + "span": 51, + "ty": 27 } ], - "span": 57, + "span": 54, "spread_arg": null, "var_debug_info": [ { @@ -275,7 +265,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 56 + "span": 53 }, "value": { "Const": { @@ -296,9 +286,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -334,12 +324,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -424,7 +408,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -435,12 +419,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -500,7 +478,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -529,51 +507,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -587,7 +565,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -597,7 +575,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -606,7 +584,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -621,7 +599,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -636,7 +614,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -651,7 +629,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -666,7 +644,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -698,19 +676,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -737,7 +715,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -762,7 +740,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -770,7 +748,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -779,7 +757,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -804,7 +782,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -812,7 +790,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -821,13 +799,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -836,42 +814,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -895,7 +837,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -909,7 +851,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -918,37 +860,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -958,27 +894,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -991,7 +922,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1014,7 +945,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1022,21 +953,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1074,7 +990,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1088,9 +1004,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1098,7 +1014,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1114,7 +1030,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1128,9 +1044,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1138,35 +1054,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1175,7 +1091,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1190,7 +1106,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1205,7 +1121,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1214,7 +1130,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1266,9 +1182,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1276,35 +1192,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1343,35 +1259,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1417,7 +1333,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1446,9 +1362,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1458,7 +1374,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1474,14 +1390,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1497,40 +1413,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1553,23 +1469,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1616,58 +1532,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/closure-args.smir.json.expected b/tests/integration/programs/closure-args.smir.json.expected index ae85db5..6baf4e6 100644 --- a/tests/integration/programs/closure-args.smir.json.expected +++ b/tests/integration/programs/closure-args.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -52,61 +51,51 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN12closure_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 26, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 34, { "NoOpSym": "" } @@ -144,7 +133,7 @@ } ] }, - "span": 50 + "span": 47 }, { "kind": { @@ -178,7 +167,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -203,7 +192,7 @@ }, "ty": 16 }, - "span": 53, + "span": 50, "user_ty": null } } @@ -212,7 +201,7 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { @@ -241,9 +230,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -251,7 +240,7 @@ "unwind": "Continue" } }, - "span": 51 + "span": 48 } }, { @@ -276,14 +265,14 @@ } } }, - "span": 54 + "span": 51 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 55 + "span": 52 } }, { @@ -328,9 +317,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -344,9 +333,9 @@ "const_": { "id": 12, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 56, + "span": 53, "user_ty": null } }, @@ -354,43 +343,43 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } } ], "locals": [ { "mutability": "Mut", - "span": 57, + "span": 54, "ty": 1 }, { "mutability": "Not", - "span": 58, - "ty": 28 + "span": 55, + "ty": 27 }, { "mutability": "Mut", - "span": 51, + "span": 48, "ty": 16 }, { "mutability": "Mut", - "span": 50, - "ty": 29 + "span": 47, + "ty": 28 }, { "mutability": "Mut", - "span": 51, - "ty": 30 + "span": 48, + "ty": 29 }, { "mutability": "Mut", - "span": 56, - "ty": 31 + "span": 53, + "ty": 30 } ], - "span": 59, + "span": 56, "spread_arg": null, "var_debug_info": [ { @@ -399,16 +388,16 @@ "name": "sum", "source_info": { "scope": 1, - "span": 58 + "span": 55 }, "value": { "Const": { "const_": { "id": 14, "kind": "ZeroSized", - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -458,7 +447,7 @@ } ] }, - "span": 60 + "span": 57 } ], "terminator": { @@ -471,7 +460,7 @@ { "Field": [ 1, - 32 + 31 ] } ] @@ -499,7 +488,7 @@ "unwind": "Continue" } }, - "span": 60 + "span": 57 } }, { @@ -528,43 +517,43 @@ } ] }, - "span": 60 + "span": 57 } ], "terminator": { "kind": "Return", - "span": 61 + "span": 58 } } ], "locals": [ { "mutability": "Mut", - "span": 62, + "span": 59, "ty": 16 }, { "mutability": "Mut", - "span": 63, - "ty": 29 + "span": 60, + "ty": 28 }, { "mutability": "Not", - "span": 64, + "span": 61, "ty": 16 }, { "mutability": "Not", - "span": 65, + "span": 62, "ty": 16 }, { "mutability": "Mut", - "span": 60, - "ty": 33 + "span": 57, + "ty": 32 } ], - "span": 63, + "span": 60, "spread_arg": null, "var_debug_info": [ { @@ -573,7 +562,7 @@ "name": "x", "source_info": { "scope": 0, - "span": 64 + "span": 61 }, "value": { "Place": { @@ -588,7 +577,7 @@ "name": "y", "source_info": { "scope": 0, - "span": 65 + "span": 62 }, "value": { "Place": { @@ -628,12 +617,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -718,7 +701,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -729,12 +712,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -794,7 +771,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -823,51 +800,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -881,7 +858,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -891,7 +868,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -900,7 +877,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -915,7 +892,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -930,7 +907,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -945,7 +922,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -960,7 +937,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -992,19 +969,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1031,7 +1008,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1056,7 +1033,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1064,7 +1041,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1073,7 +1050,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1098,7 +1075,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1106,7 +1083,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1115,13 +1092,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1130,42 +1107,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1189,7 +1130,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1203,7 +1144,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1212,37 +1153,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1252,27 +1187,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1285,7 +1215,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1308,7 +1238,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1316,21 +1246,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1368,7 +1283,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1382,9 +1297,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1392,7 +1307,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1408,7 +1323,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1422,9 +1337,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1432,35 +1347,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1469,7 +1384,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1484,7 +1399,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1499,7 +1414,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1508,7 +1423,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1560,9 +1475,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1570,35 +1485,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1609,6 +1524,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1644,7 +1626,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1673,9 +1655,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1685,7 +1667,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1701,14 +1683,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1724,40 +1706,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1768,73 +1750,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1847,23 +1762,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1910,58 +1825,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/closure-no-args.smir.json.expected b/tests/integration/programs/closure-no-args.smir.json.expected index b8729ad..9d8e06f 100644 --- a/tests/integration/programs/closure-no-args.smir.json.expected +++ b/tests/integration/programs/closure-no-args.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -46,61 +45,51 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN15closure_no_args4main28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 26, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 32, { "NoOpSym": "" } @@ -138,7 +127,7 @@ } ] }, - "span": 50 + "span": 47 } ], "terminator": { @@ -158,7 +147,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -172,9 +161,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -182,7 +171,7 @@ "unwind": "Continue" } }, - "span": 51 + "span": 48 } }, { @@ -207,14 +196,14 @@ } } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 53 + "span": 50 } }, { @@ -259,9 +248,9 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -275,9 +264,9 @@ "const_": { "id": 10, "kind": "ZeroSized", - "ty": 26 + "ty": 25 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -285,38 +274,38 @@ "unwind": "Continue" } }, - "span": 54 + "span": 51 } } ], "locals": [ { "mutability": "Mut", - "span": 55, + "span": 52, "ty": 1 }, { "mutability": "Not", - "span": 56, - "ty": 28 + "span": 53, + "ty": 27 }, { "mutability": "Mut", - "span": 51, - "ty": 29 + "span": 48, + "ty": 28 }, { "mutability": "Mut", - "span": 50, - "ty": 30 + "span": 47, + "ty": 29 }, { "mutability": "Mut", - "span": 54, - "ty": 31 + "span": 51, + "ty": 30 } ], - "span": 57, + "span": 54, "spread_arg": null, "var_debug_info": [ { @@ -325,16 +314,16 @@ "name": "sum", "source_info": { "scope": 1, - "span": 56 + "span": 53 }, "value": { "Const": { "const_": { "id": 12, "kind": "ZeroSized", - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -385,37 +374,37 @@ } } }, - "ty": 29 + "ty": 28 }, - "span": 59, + "span": 56, "user_ty": null } } } ] }, - "span": 59 + "span": 56 } ], "terminator": { "kind": "Return", - "span": 58 + "span": 55 } } ], "locals": [ { "mutability": "Mut", - "span": 60, - "ty": 29 + "span": 57, + "ty": 28 }, { "mutability": "Mut", - "span": 61, - "ty": 30 + "span": 58, + "ty": 29 } ], - "span": 61, + "span": 58, "spread_arg": null, "var_debug_info": [] } @@ -448,12 +437,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -538,7 +521,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -549,12 +532,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -614,7 +591,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -643,51 +620,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -701,7 +678,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -711,7 +688,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -720,7 +697,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -735,7 +712,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -750,7 +727,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -765,7 +742,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -780,7 +757,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -812,19 +789,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -851,7 +828,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -876,7 +853,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -884,7 +861,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -893,7 +870,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -918,7 +895,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -926,7 +903,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -935,13 +912,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -950,42 +927,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1009,7 +950,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1023,7 +964,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1032,37 +973,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1072,27 +1007,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1105,7 +1035,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1128,7 +1058,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1136,21 +1066,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1188,7 +1103,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1202,9 +1117,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1212,7 +1127,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1228,7 +1143,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1242,9 +1157,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1252,35 +1167,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1289,7 +1204,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1304,7 +1219,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1319,7 +1234,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1328,7 +1243,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1380,9 +1295,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1390,35 +1305,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1457,35 +1372,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1531,7 +1446,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1560,9 +1475,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1572,7 +1487,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1588,14 +1503,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1611,40 +1526,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1667,23 +1582,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1730,58 +1645,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/const-arithm-simple.smir.json.expected b/tests/integration/programs/const-arithm-simple.smir.json.expected index 2198947..18a6705 100644 --- a/tests/integration/programs/const-arithm-simple.smir.json.expected +++ b/tests/integration/programs/const-arithm-simple.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -36,61 +35,51 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN19const_arithm_simple4test17h" } ], [ - 28, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 31, { "NoOpSym": "" } @@ -138,16 +127,16 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 58, + "span": 55, "user_ty": null } } } ] }, - "span": 59 + "span": 56 }, { "kind": { @@ -180,16 +169,16 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 60, + "span": 57, "user_ty": null } } } ] }, - "span": 61 + "span": 58 } ], "terminator": { @@ -218,9 +207,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 56, + "span": 53, "user_ty": null } }, @@ -228,7 +217,7 @@ "unwind": "Continue" } }, - "span": 57 + "span": 54 } }, { @@ -253,7 +242,7 @@ } } }, - "span": 62 + "span": 59 } }, { @@ -298,9 +287,9 @@ } } }, - "ty": 29 + "ty": 28 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -314,9 +303,9 @@ "const_": { "id": 12, "kind": "ZeroSized", - "ty": 28 + "ty": 27 }, - "span": 63, + "span": 60, "user_ty": null } }, @@ -324,45 +313,45 @@ "unwind": "Continue" } }, - "span": 63 + "span": 60 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 64 + "span": 61 } } ], "locals": [ { "mutability": "Mut", - "span": 65, + "span": 62, "ty": 1 }, { "mutability": "Not", - "span": 66, - "ty": 25 + "span": 63, + "ty": 24 }, { "mutability": "Mut", - "span": 59, - "ty": 26 + "span": 56, + "ty": 25 }, { "mutability": "Mut", - "span": 61, - "ty": 26 + "span": 58, + "ty": 25 }, { "mutability": "Mut", - "span": 63, - "ty": 30 + "span": 60, + "ty": 29 } ], - "span": 69, + "span": 66, "spread_arg": null, "var_debug_info": [ { @@ -371,7 +360,7 @@ "name": "x", "source_info": { "scope": 1, - "span": 67 + "span": 64 }, "value": { "Const": { @@ -396,9 +385,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 58, + "span": 55, "user_ty": null } } @@ -409,7 +398,7 @@ "name": "y", "source_info": { "scope": 2, - "span": 68 + "span": 65 }, "value": { "Const": { @@ -434,9 +423,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 60, + "span": 57, "user_ty": null } } @@ -447,7 +436,7 @@ "name": "z", "source_info": { "scope": 3, - "span": 66 + "span": 63 }, "value": { "Place": { @@ -501,33 +490,33 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { "kind": "Return", - "span": 50 + "span": 47 } } ], "locals": [ { "mutability": "Mut", - "span": 52, - "ty": 25 + "span": 49, + "ty": 24 }, { "mutability": "Not", - "span": 53, - "ty": 26 + "span": 50, + "ty": 25 }, { "mutability": "Not", - "span": 54, - "ty": 26 + "span": 51, + "ty": 25 } ], - "span": 55, + "span": 52, "spread_arg": null, "var_debug_info": [ { @@ -536,7 +525,7 @@ "name": "x", "source_info": { "scope": 0, - "span": 53 + "span": 50 }, "value": { "Place": { @@ -551,7 +540,7 @@ "name": "y", "source_info": { "scope": 0, - "span": 54 + "span": 51 }, "value": { "Place": { @@ -591,12 +580,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -681,7 +664,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -692,12 +675,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -757,7 +734,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -786,51 +763,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -844,7 +821,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -854,7 +831,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -863,7 +840,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -878,7 +855,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -893,7 +870,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -908,7 +885,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -923,7 +900,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -955,19 +932,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -994,7 +971,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1019,7 +996,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1027,7 +1004,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1036,7 +1013,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1061,7 +1038,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1069,7 +1046,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1078,13 +1055,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1093,42 +1070,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1152,7 +1093,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1166,7 +1107,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1175,37 +1116,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1215,27 +1150,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1248,7 +1178,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1271,7 +1201,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1279,21 +1209,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1331,7 +1246,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1345,9 +1260,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1355,7 +1270,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1371,7 +1286,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1385,9 +1300,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1395,35 +1310,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1432,7 +1347,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1447,7 +1362,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1462,7 +1377,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1471,7 +1386,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1523,9 +1438,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1533,35 +1448,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1572,73 +1487,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1674,7 +1522,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1703,9 +1551,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1715,7 +1563,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1731,14 +1579,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1754,40 +1602,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1798,6 +1646,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1810,23 +1725,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1873,58 +1788,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/div.smir.json.expected b/tests/integration/programs/div.smir.json.expected index 3ad61cc..7ce57f9 100644 --- a/tests/integration/programs/div.smir.json.expected +++ b/tests/integration/programs/div.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -49,55 +48,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 29, { "NoOpSym": "" } @@ -145,7 +135,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -170,7 +160,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -178,7 +168,7 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { @@ -213,7 +203,7 @@ }, "ty": 16 }, - "span": 50, + "span": 47, "user_ty": null } } @@ -222,7 +212,7 @@ "unwind": "Continue" } }, - "span": 51 + "span": 48 } }, { @@ -258,7 +248,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -283,7 +273,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -291,7 +281,7 @@ } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -324,7 +314,7 @@ }, "ty": 16 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -349,7 +339,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -357,7 +347,7 @@ } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -385,7 +375,7 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { @@ -422,7 +412,7 @@ }, "ty": 16 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -447,7 +437,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } } @@ -457,7 +447,7 @@ "unwind": "Continue" } }, - "span": 51 + "span": 48 } }, { @@ -493,7 +483,7 @@ }, "ty": 16 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -518,7 +508,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } } @@ -526,7 +516,7 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { @@ -549,14 +539,14 @@ } } }, - "span": 53 + "span": 50 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 54 + "span": 51 } }, { @@ -601,9 +591,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -617,9 +607,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 55, + "span": 52, "user_ty": null } }, @@ -627,48 +617,48 @@ "unwind": "Continue" } }, - "span": 55 + "span": 52 } } ], "locals": [ { "mutability": "Mut", - "span": 56, + "span": 53, "ty": 1 }, { "mutability": "Mut", - "span": 51, + "span": 48, "ty": 16 }, { "mutability": "Mut", - "span": 51, - "ty": 27 + "span": 48, + "ty": 26 }, { "mutability": "Mut", - "span": 51, - "ty": 27 + "span": 48, + "ty": 26 }, { "mutability": "Mut", - "span": 51, - "ty": 27 + "span": 48, + "ty": 26 }, { "mutability": "Mut", - "span": 51, - "ty": 27 + "span": 48, + "ty": 26 }, { "mutability": "Mut", - "span": 55, - "ty": 28 + "span": 52, + "ty": 27 } ], - "span": 57, + "span": 54, "spread_arg": null, "var_debug_info": [] } @@ -701,12 +691,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -791,7 +775,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -802,12 +786,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -867,7 +845,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -896,51 +874,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -954,7 +932,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -964,7 +942,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -973,7 +951,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -988,7 +966,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -1003,7 +981,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -1018,7 +996,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -1033,7 +1011,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -1065,19 +1043,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1104,7 +1082,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1129,7 +1107,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1137,7 +1115,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1146,7 +1124,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1171,7 +1149,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1179,7 +1157,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1188,13 +1166,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1203,42 +1181,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1262,7 +1204,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1276,7 +1218,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1285,37 +1227,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1325,27 +1261,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1358,7 +1289,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1381,7 +1312,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1389,21 +1320,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1441,7 +1357,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1455,9 +1371,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1465,7 +1381,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1481,7 +1397,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1495,9 +1411,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1505,35 +1421,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1542,7 +1458,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1557,7 +1473,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1572,7 +1488,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1581,7 +1497,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1633,9 +1549,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1643,35 +1559,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1710,35 +1626,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1784,7 +1700,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1813,9 +1729,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1825,7 +1741,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1841,14 +1757,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1864,40 +1780,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1920,23 +1836,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1983,58 +1899,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/double-ref-deref.smir.json.expected b/tests/integration/programs/double-ref-deref.smir.json.expected index f05ac0e..3dc9b49 100644 --- a/tests/integration/programs/double-ref-deref.smir.json.expected +++ b/tests/integration/programs/double-ref-deref.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -44,55 +43,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 30, { "NoOpSym": "" } @@ -138,14 +128,14 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -168,7 +158,7 @@ } ] }, - "span": 52 + "span": 49 }, { "kind": { @@ -191,7 +181,7 @@ } ] }, - "span": 53 + "span": 50 }, { "kind": { @@ -210,7 +200,7 @@ } ] }, - "span": 54 + "span": 51 }, { "kind": { @@ -231,7 +221,7 @@ } ] }, - "span": 54 + "span": 51 } ], "terminator": { @@ -254,14 +244,14 @@ } } }, - "span": 50 + "span": 47 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 55 + "span": 52 } }, { @@ -306,9 +296,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -322,9 +312,9 @@ "const_": { "id": 10, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 56, + "span": 53, "user_ty": null } }, @@ -332,48 +322,48 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } } ], "locals": [ { "mutability": "Mut", - "span": 57, + "span": 54, "ty": 1 }, { "mutability": "Not", - "span": 58, + "span": 55, "ty": 16 }, { "mutability": "Not", - "span": 59, - "ty": 27 + "span": 56, + "ty": 26 }, { "mutability": "Not", - "span": 60, - "ty": 28 + "span": 57, + "ty": 27 }, { "mutability": "Mut", - "span": 54, + "span": 51, "ty": 16 }, { "mutability": "Mut", - "span": 56, - "ty": 29 + "span": 53, + "ty": 28 }, { "mutability": "Mut", - "span": 60, - "ty": 27 + "span": 57, + "ty": 26 } ], - "span": 61, + "span": 58, "spread_arg": null, "var_debug_info": [ { @@ -382,7 +372,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 58 + "span": 55 }, "value": { "Place": { @@ -397,7 +387,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 59 + "span": 56 }, "value": { "Place": { @@ -412,7 +402,7 @@ "name": "c", "source_info": { "scope": 3, - "span": 60 + "span": 57 }, "value": { "Place": { @@ -452,12 +442,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -542,7 +526,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -553,12 +537,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -618,7 +596,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -647,51 +625,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -705,7 +683,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -715,7 +693,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -724,7 +702,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -739,7 +717,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -754,7 +732,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -769,7 +747,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -784,7 +762,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -816,19 +794,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -855,7 +833,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -880,7 +858,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -888,7 +866,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -897,7 +875,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -922,7 +900,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -930,7 +908,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -939,13 +917,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -954,42 +932,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1013,7 +955,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1027,7 +969,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1036,37 +978,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1076,27 +1012,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1109,7 +1040,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1132,7 +1063,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1140,21 +1071,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1192,7 +1108,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1206,9 +1122,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1216,7 +1132,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1232,7 +1148,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1246,9 +1162,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1256,35 +1172,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1293,7 +1209,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1308,7 +1224,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1323,7 +1239,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1332,7 +1248,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1384,9 +1300,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1394,35 +1310,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1433,73 +1349,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1535,7 +1384,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1564,9 +1413,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1576,7 +1425,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1592,14 +1441,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1615,40 +1464,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1659,6 +1508,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1671,23 +1587,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1734,58 +1650,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/enum.smir.json.expected b/tests/integration/programs/enum.smir.json.expected index a13dfed..6bb4000 100644 --- a/tests/integration/programs/enum.smir.json.expected +++ b/tests/integration/programs/enum.smir.json.expected @@ -2,49 +2,41 @@ "allocs": [], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 26, { "NoOpSym": "" } @@ -73,12 +65,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -163,7 +149,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -174,12 +160,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -239,7 +219,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -268,51 +248,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -326,7 +306,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -336,7 +316,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -345,7 +325,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -360,7 +340,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -375,7 +355,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -390,7 +370,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -405,7 +385,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -437,19 +417,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -476,7 +456,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -501,7 +481,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -509,7 +489,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -518,7 +498,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -543,7 +523,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -551,7 +531,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -560,13 +540,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -575,42 +555,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -634,7 +578,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -648,7 +592,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -657,37 +601,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -697,27 +635,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -730,7 +663,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -753,7 +686,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -761,21 +694,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -813,7 +731,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -827,9 +745,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -837,7 +755,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -853,7 +771,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -867,9 +785,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -877,35 +795,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -914,7 +832,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -929,7 +847,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -944,7 +862,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -953,7 +871,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1005,9 +923,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1015,35 +933,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1054,6 +972,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1089,7 +1074,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1118,9 +1103,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1130,7 +1115,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1146,14 +1131,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1169,40 +1154,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1213,73 +1198,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1292,23 +1210,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1352,28 +1270,28 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { "kind": "Return", - "span": 50 + "span": 47 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 1 }, { "mutability": "Not", - "span": 53, - "ty": 25 + "span": 50, + "ty": 24 } ], - "span": 54, + "span": 51, "spread_arg": null, "var_debug_info": [ { @@ -1382,7 +1300,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 53 + "span": 50 }, "value": { "Place": { @@ -1436,58 +1354,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/fibonacci.smir.json.expected b/tests/integration/programs/fibonacci.smir.json.expected index 9bcc8c1..4d6cad5 100644 --- a/tests/integration/programs/fibonacci.smir.json.expected +++ b/tests/integration/programs/fibonacci.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -43,61 +42,51 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN9fibonacci9fibonacci17h" } ], [ - 29, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 32, { "NoOpSym": "" } @@ -126,12 +115,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -216,7 +199,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -227,12 +210,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -292,7 +269,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -321,51 +298,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -379,7 +356,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -389,7 +366,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -398,7 +375,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -413,7 +390,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -428,7 +405,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -443,7 +420,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -458,7 +435,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -490,19 +467,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -529,7 +506,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -554,7 +531,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -562,7 +539,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -571,7 +548,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -596,7 +573,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -604,7 +581,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -613,13 +590,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -628,42 +605,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -687,7 +628,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -701,7 +642,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -710,37 +651,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -750,27 +685,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -783,7 +713,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -806,7 +736,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -814,21 +744,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -866,7 +781,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -880,9 +795,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -890,7 +805,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -906,7 +821,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -920,9 +835,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -930,35 +845,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -967,7 +882,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -982,7 +897,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -997,7 +912,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1006,7 +921,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1058,9 +973,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1068,35 +983,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1142,7 +1057,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1171,9 +1086,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1183,7 +1098,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1199,14 +1114,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1222,40 +1137,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1294,35 +1209,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1345,23 +1260,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1408,58 +1323,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, @@ -1501,9 +1395,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 68, + "span": 65, "user_ty": null } } @@ -1517,9 +1411,9 @@ "const_": { "id": 12, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 67, + "span": 64, "user_ty": null } }, @@ -1527,7 +1421,7 @@ "unwind": "Continue" } }, - "span": 69 + "span": 66 } }, { @@ -1552,14 +1446,14 @@ } } }, - "span": 70 + "span": 67 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 71 + "span": 68 } }, { @@ -1604,9 +1498,9 @@ } } }, - "ty": 30 + "ty": 29 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1620,9 +1514,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 72, + "span": 69, "user_ty": null } }, @@ -1630,28 +1524,28 @@ "unwind": "Continue" } }, - "span": 72 + "span": 69 } } ], "locals": [ { "mutability": "Mut", - "span": 73, + "span": 70, "ty": 1 }, { "mutability": "Not", - "span": 74, - "ty": 26 + "span": 71, + "ty": 25 }, { "mutability": "Mut", - "span": 72, - "ty": 31 + "span": 69, + "ty": 30 } ], - "span": 75, + "span": 72, "spread_arg": null, "var_debug_info": [ { @@ -1660,7 +1554,7 @@ "name": "ans", "source_info": { "scope": 1, - "span": 74 + "span": 71 }, "value": { "Place": { @@ -1701,18 +1595,18 @@ "branches": [ [ 0, - 2 + 3 ], [ 1, - 3 + 2 ] ], "otherwise": 1 } } }, - "span": 50 + "span": 47 } }, { @@ -1752,9 +1646,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -1762,7 +1656,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -1775,7 +1669,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -1810,9 +1704,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -1822,7 +1716,7 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { @@ -1843,7 +1737,7 @@ "Allocated": { "align": 4, "bytes": [ - 0, + 1, 0, 0, 0 @@ -1854,16 +1748,16 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 53, + "span": 50, "user_ty": null } } } ] }, - "span": 53 + "span": 50 } ], "terminator": { @@ -1872,7 +1766,7 @@ "target": 9 } }, - "span": 53 + "span": 50 } }, { @@ -1893,7 +1787,7 @@ "Allocated": { "align": 4, "bytes": [ - 1, + 0, 0, 0, 0 @@ -1904,16 +1798,16 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 54, + "span": 51, "user_ty": null } } } ] }, - "span": 54 + "span": 51 } ], "terminator": { @@ -1922,7 +1816,7 @@ "target": 9 } }, - "span": 54 + "span": 51 } }, { @@ -1942,7 +1836,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -1951,7 +1845,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -1974,9 +1868,9 @@ "const_": { "id": 12, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 55, + "span": 52, "user_ty": null } }, @@ -1984,7 +1878,7 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } }, { @@ -2008,7 +1902,7 @@ { "Constant": { "const_": { - "id": 11, + "id": 10, "kind": { "Allocated": { "align": 4, @@ -2024,9 +1918,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 57, + "span": 54, "user_ty": null } } @@ -2034,7 +1928,7 @@ } ] }, - "span": 58 + "span": 55 } ], "terminator": { @@ -2047,7 +1941,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -2066,7 +1960,7 @@ { "Constant": { "const_": { - "id": 11, + "id": 10, "kind": { "Allocated": { "align": 4, @@ -2082,9 +1976,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 57, + "span": 54, "user_ty": null } } @@ -2094,7 +1988,7 @@ "unwind": "Continue" } }, - "span": 58 + "span": 55 } }, { @@ -2114,7 +2008,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -2123,7 +2017,7 @@ } ] }, - "span": 58 + "span": 55 } ], "terminator": { @@ -2146,9 +2040,9 @@ "const_": { "id": 12, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 59, + "span": 56, "user_ty": null } }, @@ -2156,7 +2050,7 @@ "unwind": "Continue" } }, - "span": 60 + "span": 57 } }, { @@ -2187,7 +2081,7 @@ } ] }, - "span": 61 + "span": 58 } ], "terminator": { @@ -2200,7 +2094,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -2228,7 +2122,7 @@ "unwind": "Continue" } }, - "span": 61 + "span": 58 } }, { @@ -2248,7 +2142,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -2257,7 +2151,7 @@ } ] }, - "span": 61 + "span": 58 } ], "terminator": { @@ -2266,65 +2160,65 @@ "target": 9 } }, - "span": 62 + "span": 59 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 63 + "span": 60 } } ], "locals": [ { "mutability": "Mut", - "span": 64, - "ty": 26 + "span": 61, + "ty": 25 }, { "mutability": "Not", - "span": 65, - "ty": 26 + "span": 62, + "ty": 25 }, { "mutability": "Mut", - "span": 56, - "ty": 26 + "span": 53, + "ty": 25 }, { "mutability": "Mut", - "span": 52, - "ty": 26 + "span": 49, + "ty": 25 }, { "mutability": "Mut", - "span": 52, - "ty": 28 + "span": 49, + "ty": 27 }, { "mutability": "Mut", - "span": 60, - "ty": 26 + "span": 57, + "ty": 25 }, { "mutability": "Mut", - "span": 58, - "ty": 26 + "span": 55, + "ty": 25 }, { "mutability": "Mut", - "span": 58, - "ty": 28 + "span": 55, + "ty": 27 }, { "mutability": "Mut", - "span": 61, - "ty": 28 + "span": 58, + "ty": 27 } ], - "span": 66, + "span": 63, "spread_arg": null, "var_debug_info": [ { @@ -2333,7 +2227,7 @@ "name": "n", "source_info": { "scope": 0, - "span": 65 + "span": 62 }, "value": { "Place": { diff --git a/tests/integration/programs/float.smir.json.expected b/tests/integration/programs/float.smir.json.expected index 778917c..6466afa 100644 --- a/tests/integration/programs/float.smir.json.expected +++ b/tests/integration/programs/float.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -45,7 +44,6 @@ } ], [ - 1, { "Memory": { "align": 1, @@ -91,55 +89,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 31, { "NoOpSym": "" } @@ -168,12 +157,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -258,7 +241,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -269,12 +252,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -334,7 +311,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -363,51 +340,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -421,7 +398,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -431,7 +408,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -440,7 +417,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -455,7 +432,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -470,7 +447,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -485,7 +462,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -500,7 +477,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -532,19 +509,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -571,7 +548,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -596,7 +573,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -604,7 +581,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -613,7 +590,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -638,7 +615,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -646,7 +623,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -655,13 +632,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -670,42 +647,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -729,7 +670,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -743,7 +684,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -752,37 +693,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -792,27 +727,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -825,7 +755,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -848,7 +778,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -856,21 +786,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -908,7 +823,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -922,9 +837,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -932,7 +847,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -948,7 +863,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -962,9 +877,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -972,35 +887,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1009,7 +924,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1024,7 +939,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1039,7 +954,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1048,7 +963,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1100,9 +1015,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1110,35 +1025,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1177,35 +1092,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1251,7 +1166,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1280,9 +1195,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1292,7 +1207,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1308,14 +1223,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1331,40 +1246,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1387,23 +1302,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1450,58 +1365,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, @@ -1547,16 +1441,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 51, + "span": 48, "user_ty": null } } } ] }, - "span": 52 + "span": 49 }, { "kind": { @@ -1585,16 +1479,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 53, + "span": 50, "user_ty": null } } } ] }, - "span": 54 + "span": 51 }, { "kind": { @@ -1622,7 +1516,7 @@ } ] }, - "span": 55 + "span": 52 }, { "kind": { @@ -1659,9 +1553,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 56, + "span": 53, "user_ty": null } } @@ -1669,7 +1563,7 @@ } ] }, - "span": 50 + "span": 47 } ], "terminator": { @@ -1692,7 +1586,7 @@ } } }, - "span": 50 + "span": 47 } }, { @@ -1728,16 +1622,16 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 58, + "span": 55, "user_ty": null } } } ] }, - "span": 59 + "span": 56 }, { "kind": { @@ -1770,16 +1664,16 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 60, + "span": 57, "user_ty": null } } } ] }, - "span": 61 + "span": 58 }, { "kind": { @@ -1807,7 +1701,7 @@ } ] }, - "span": 62 + "span": 59 }, { "kind": { @@ -1848,9 +1742,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 63, + "span": 60, "user_ty": null } } @@ -1858,7 +1752,7 @@ } ] }, - "span": 57 + "span": 54 } ], "terminator": { @@ -1881,7 +1775,7 @@ } } }, - "span": 57 + "span": 54 } }, { @@ -1926,9 +1820,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1942,9 +1836,9 @@ "const_": { "id": 15, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 64, + "span": 61, "user_ty": null } }, @@ -1952,14 +1846,14 @@ "unwind": "Continue" } }, - "span": 64 + "span": 61 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 65 + "span": 62 } }, { @@ -2004,9 +1898,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2020,9 +1914,9 @@ "const_": { "id": 15, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 66, + "span": 63, "user_ty": null } }, @@ -2030,68 +1924,68 @@ "unwind": "Continue" } }, - "span": 66 + "span": 63 } } ], "locals": [ { "mutability": "Mut", - "span": 67, + "span": 64, "ty": 1 }, { "mutability": "Mut", - "span": 50, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 55, - "ty": 25 + "span": 47, + "ty": 28 }, { "mutability": "Mut", "span": 52, - "ty": 25 + "ty": 24 }, { "mutability": "Mut", - "span": 54, - "ty": 25 + "span": 49, + "ty": 24 }, { "mutability": "Mut", - "span": 64, - "ty": 30 + "span": 51, + "ty": 24 }, { "mutability": "Mut", - "span": 57, + "span": 61, "ty": 29 }, { "mutability": "Mut", - "span": 62, - "ty": 26 + "span": 54, + "ty": 28 }, { "mutability": "Mut", "span": 59, - "ty": 26 + "ty": 25 }, { "mutability": "Mut", - "span": 61, - "ty": 26 + "span": 56, + "ty": 25 }, { "mutability": "Mut", - "span": 66, - "ty": 30 + "span": 58, + "ty": 25 + }, + { + "mutability": "Mut", + "span": 63, + "ty": 29 } ], - "span": 72, + "span": 69, "spread_arg": null, "var_debug_info": [ { @@ -2100,7 +1994,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 68 + "span": 65 }, "value": { "Const": { @@ -2121,9 +2015,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -2134,7 +2028,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 69 + "span": 66 }, "value": { "Const": { @@ -2155,9 +2049,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 53, + "span": 50, "user_ty": null } } @@ -2168,7 +2062,7 @@ "name": "c", "source_info": { "scope": 3, - "span": 70 + "span": 67 }, "value": { "Const": { @@ -2193,9 +2087,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 58, + "span": 55, "user_ty": null } } @@ -2206,7 +2100,7 @@ "name": "d", "source_info": { "scope": 4, - "span": 71 + "span": 68 }, "value": { "Const": { @@ -2231,9 +2125,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 60, + "span": 57, "user_ty": null } } diff --git a/tests/integration/programs/modulo.smir.json.expected b/tests/integration/programs/modulo.smir.json.expected index c3c5441..145f9b9 100644 --- a/tests/integration/programs/modulo.smir.json.expected +++ b/tests/integration/programs/modulo.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -47,55 +46,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 29, { "NoOpSym": "" } @@ -124,12 +114,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -214,7 +198,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -225,12 +209,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -290,7 +268,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -319,51 +297,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -377,7 +355,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -387,7 +365,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -396,7 +374,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -411,7 +389,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -426,7 +404,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -441,7 +419,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -456,7 +434,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -488,19 +466,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -527,7 +505,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -552,7 +530,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -560,7 +538,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -569,7 +547,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -594,7 +572,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -602,7 +580,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -611,13 +589,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -626,42 +604,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -685,7 +627,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -699,7 +641,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -708,37 +650,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -748,27 +684,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -781,7 +712,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -804,7 +735,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -812,21 +743,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -864,7 +780,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -878,9 +794,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -888,7 +804,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -904,7 +820,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -918,9 +834,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -928,35 +844,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -965,7 +881,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -980,7 +896,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -995,7 +911,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1004,7 +920,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1056,9 +972,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1066,35 +982,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1133,35 +1049,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1207,7 +1123,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1236,9 +1152,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1248,7 +1164,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1264,14 +1180,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1287,40 +1203,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1343,23 +1259,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1406,58 +1322,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, @@ -1507,7 +1402,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1532,7 +1427,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -1540,7 +1435,7 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { @@ -1575,7 +1470,7 @@ }, "ty": 16 }, - "span": 50, + "span": 47, "user_ty": null } } @@ -1584,7 +1479,7 @@ "unwind": "Continue" } }, - "span": 51 + "span": 48 } }, { @@ -1620,7 +1515,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1645,7 +1540,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -1653,7 +1548,7 @@ } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -1686,7 +1581,7 @@ }, "ty": 16 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -1711,7 +1606,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -1719,7 +1614,7 @@ } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -1747,7 +1642,7 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { @@ -1784,7 +1679,7 @@ }, "ty": 16 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -1809,7 +1704,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } } @@ -1819,7 +1714,7 @@ "unwind": "Continue" } }, - "span": 51 + "span": 48 } }, { @@ -1855,7 +1750,7 @@ }, "ty": 16 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -1880,7 +1775,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } } @@ -1888,7 +1783,7 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { @@ -1911,14 +1806,14 @@ } } }, - "span": 53 + "span": 50 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 54 + "span": 51 } }, { @@ -1963,9 +1858,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1979,9 +1874,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 55, + "span": 52, "user_ty": null } }, @@ -1989,48 +1884,48 @@ "unwind": "Continue" } }, - "span": 55 + "span": 52 } } ], "locals": [ { "mutability": "Mut", - "span": 56, + "span": 53, "ty": 1 }, { "mutability": "Mut", - "span": 51, + "span": 48, "ty": 16 }, { "mutability": "Mut", - "span": 51, - "ty": 27 + "span": 48, + "ty": 26 }, { "mutability": "Mut", - "span": 51, - "ty": 27 + "span": 48, + "ty": 26 }, { "mutability": "Mut", - "span": 51, - "ty": 27 + "span": 48, + "ty": 26 }, { "mutability": "Mut", - "span": 51, - "ty": 27 + "span": 48, + "ty": 26 }, { "mutability": "Mut", - "span": 55, - "ty": 28 + "span": 52, + "ty": 27 } ], - "span": 57, + "span": 54, "spread_arg": null, "var_debug_info": [] } diff --git a/tests/integration/programs/mutual_recursion.smir.json.expected b/tests/integration/programs/mutual_recursion.smir.json.expected index d142f6b..33812a9 100644 --- a/tests/integration/programs/mutual_recursion.smir.json.expected +++ b/tests/integration/programs/mutual_recursion.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -46,67 +45,56 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN16mutual_recursion6is_odd17h" } ], [ - 29, { "NormalSym": "_ZN16mutual_recursion7is_even17h" } ], [ - 30, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 33, { "NoOpSym": "" } @@ -146,9 +134,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 73, + "span": 70, "user_ty": null } } @@ -162,9 +150,9 @@ "const_": { "id": 13, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 72, + "span": 69, "user_ty": null } }, @@ -172,7 +160,7 @@ "unwind": "Continue" } }, - "span": 74 + "span": 71 } }, { @@ -197,14 +185,14 @@ } } }, - "span": 75 + "span": 72 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 76 + "span": 73 } }, { @@ -249,9 +237,9 @@ } } }, - "ty": 31 + "ty": 30 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -265,9 +253,9 @@ "const_": { "id": 15, "kind": "ZeroSized", - "ty": 30 + "ty": 29 }, - "span": 77, + "span": 74, "user_ty": null } }, @@ -275,28 +263,28 @@ "unwind": "Continue" } }, - "span": 77 + "span": 74 } } ], "locals": [ { "mutability": "Mut", - "span": 78, + "span": 75, "ty": 1 }, { "mutability": "Not", - "span": 79, - "ty": 25 + "span": 76, + "ty": 24 }, { "mutability": "Mut", - "span": 77, - "ty": 32 + "span": 74, + "ty": 31 } ], - "span": 80, + "span": 77, "spread_arg": null, "var_debug_info": [ { @@ -305,7 +293,7 @@ "name": "ans", "source_info": { "scope": 1, - "span": 79 + "span": 76 }, "value": { "Place": { @@ -353,7 +341,7 @@ } } }, - "span": 61 + "span": 58 } }, { @@ -382,16 +370,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 63, + "span": 60, "user_ty": null } } } ] }, - "span": 63 + "span": 60 } ], "terminator": { @@ -400,7 +388,7 @@ "target": 4 } }, - "span": 62 + "span": 59 } }, { @@ -440,9 +428,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 64, + "span": 61, "user_ty": null } } @@ -450,7 +438,7 @@ } ] }, - "span": 65 + "span": 62 } ], "terminator": { @@ -463,7 +451,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -498,9 +486,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 64, + "span": 61, "user_ty": null } } @@ -510,7 +498,7 @@ "unwind": "Continue" } }, - "span": 65 + "span": 62 } }, { @@ -530,7 +518,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -539,7 +527,7 @@ } ] }, - "span": 65 + "span": 62 } ], "terminator": { @@ -562,9 +550,9 @@ "const_": { "id": 13, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 66, + "span": 63, "user_ty": null } }, @@ -572,40 +560,40 @@ "unwind": "Continue" } }, - "span": 67 + "span": 64 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 68 + "span": 65 } } ], "locals": [ { "mutability": "Mut", - "span": 69, - "ty": 25 + "span": 66, + "ty": 24 }, { "mutability": "Not", - "span": 70, - "ty": 26 + "span": 67, + "ty": 25 }, { "mutability": "Mut", - "span": 65, - "ty": 26 + "span": 62, + "ty": 25 }, { "mutability": "Mut", - "span": 65, - "ty": 28 + "span": 62, + "ty": 27 } ], - "span": 71, + "span": 68, "spread_arg": null, "var_debug_info": [ { @@ -614,7 +602,7 @@ "name": "n", "source_info": { "scope": 0, - "span": 70 + "span": 67 }, "value": { "Place": { @@ -662,7 +650,7 @@ } } }, - "span": 50 + "span": 47 } }, { @@ -691,16 +679,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 52, + "span": 49, "user_ty": null } } } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -709,7 +697,7 @@ "target": 4 } }, - "span": 51 + "span": 48 } }, { @@ -749,9 +737,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 53, + "span": 50, "user_ty": null } } @@ -759,7 +747,7 @@ } ] }, - "span": 54 + "span": 51 } ], "terminator": { @@ -772,7 +760,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -807,9 +795,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 53, + "span": 50, "user_ty": null } } @@ -819,7 +807,7 @@ "unwind": "Continue" } }, - "span": 54 + "span": 51 } }, { @@ -839,7 +827,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -848,7 +836,7 @@ } ] }, - "span": 54 + "span": 51 } ], "terminator": { @@ -871,9 +859,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 55, + "span": 52, "user_ty": null } }, @@ -881,40 +869,40 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 57 + "span": 54 } } ], "locals": [ { "mutability": "Mut", - "span": 58, - "ty": 25 + "span": 55, + "ty": 24 }, { "mutability": "Not", - "span": 59, - "ty": 26 + "span": 56, + "ty": 25 }, { "mutability": "Mut", - "span": 54, - "ty": 26 + "span": 51, + "ty": 25 }, { "mutability": "Mut", - "span": 54, - "ty": 28 + "span": 51, + "ty": 27 } ], - "span": 60, + "span": 57, "spread_arg": null, "var_debug_info": [ { @@ -923,7 +911,7 @@ "name": "n", "source_info": { "scope": 0, - "span": 59 + "span": 56 }, "value": { "Place": { @@ -963,12 +951,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -1053,7 +1035,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -1064,12 +1046,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -1129,7 +1105,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -1158,51 +1134,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -1216,7 +1192,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -1226,7 +1202,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -1235,7 +1211,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1250,7 +1226,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -1265,7 +1241,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -1280,7 +1256,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -1295,7 +1271,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -1327,19 +1303,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1366,7 +1342,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1391,7 +1367,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1399,7 +1375,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1408,7 +1384,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1433,7 +1409,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1441,7 +1417,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1450,13 +1426,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1465,42 +1441,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1524,7 +1464,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1538,7 +1478,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1547,37 +1487,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1587,27 +1521,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1620,7 +1549,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1643,7 +1572,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1651,21 +1580,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1703,7 +1617,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1717,9 +1631,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1727,7 +1641,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1743,7 +1657,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1757,9 +1671,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1767,35 +1681,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1804,7 +1718,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1819,7 +1733,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1834,7 +1748,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1843,7 +1757,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1895,9 +1809,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1905,35 +1819,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1944,6 +1858,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1979,7 +1960,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -2008,9 +1989,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -2020,7 +2001,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -2036,14 +2017,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -2059,40 +2040,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -2103,73 +2084,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -2182,23 +2096,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -2245,58 +2159,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/option-construction.smir.json.expected b/tests/integration/programs/option-construction.smir.json.expected index 25a95ae..7f7aa4a 100644 --- a/tests/integration/programs/option-construction.smir.json.expected +++ b/tests/integration/programs/option-construction.smir.json.expected @@ -2,61 +2,51 @@ "allocs": [], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core6option13unwrap_failed17h" } ], [ - 29, { "NormalSym": "_ZN4core6option15Option$LT$T$GT$6unwrap17h" } ], [ - 30, { "NoOpSym": "" } @@ -88,7 +78,7 @@ 1, [ { - "Type": 26 + "Type": 25 } ], null, @@ -115,9 +105,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 62, + "span": 59, "user_ty": null } } @@ -126,7 +116,7 @@ } ] }, - "span": 63 + "span": 60 }, { "kind": { @@ -143,7 +133,7 @@ 0, [ { - "Type": 26 + "Type": 25 } ], null, @@ -155,7 +145,7 @@ } ] }, - "span": 64 + "span": 61 } ], "terminator": { @@ -178,9 +168,9 @@ "const_": { "id": 10, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 60, + "span": 57, "user_ty": null } }, @@ -188,40 +178,40 @@ "unwind": "Continue" } }, - "span": 61 + "span": 58 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 65 + "span": 62 } } ], "locals": [ { "mutability": "Mut", - "span": 66, + "span": 63, "ty": 1 }, { "mutability": "Not", - "span": 67, - "ty": 27 + "span": 64, + "ty": 26 }, { "mutability": "Not", - "span": 68, - "ty": 27 + "span": 65, + "ty": 26 }, { "mutability": "Not", - "span": 69, - "ty": 26 + "span": 66, + "ty": 25 } ], - "span": 70, + "span": 67, "spread_arg": null, "var_debug_info": [ { @@ -230,7 +220,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 67 + "span": 64 }, "value": { "Place": { @@ -245,7 +235,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 68 + "span": 65 }, "value": { "Place": { @@ -260,7 +250,7 @@ "name": "c", "source_info": { "scope": 3, - "span": 69 + "span": 66 }, "value": { "Place": { @@ -300,12 +290,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -390,7 +374,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -401,12 +385,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -466,7 +444,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -495,51 +473,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -553,7 +531,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -563,7 +541,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -572,7 +550,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -587,7 +565,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -602,7 +580,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -617,7 +595,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -632,7 +610,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -664,19 +642,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -703,7 +681,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -728,7 +706,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -736,7 +714,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -745,7 +723,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -770,7 +748,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -778,7 +756,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -787,13 +765,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -802,42 +780,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -861,7 +803,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -875,7 +817,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -884,37 +826,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -924,27 +860,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -957,7 +888,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -980,7 +911,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -988,21 +919,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1040,7 +956,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1054,9 +970,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1064,7 +980,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1080,7 +996,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1094,9 +1010,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1104,35 +1020,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1141,7 +1057,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1156,7 +1072,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1171,7 +1087,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1180,7 +1096,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1232,9 +1148,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1242,35 +1158,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1309,35 +1225,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1383,7 +1299,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1412,9 +1328,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1424,7 +1340,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1440,14 +1356,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1463,40 +1379,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1519,23 +1435,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1571,7 +1487,7 @@ } ] }, - "span": 46 + "span": 43 } ], "terminator": { @@ -1598,14 +1514,14 @@ } } }, - "span": 45 + "span": 42 } }, { "statements": [], "terminator": { "kind": "Unreachable", - "span": 46 + "span": 43 } }, { @@ -1623,9 +1539,9 @@ "const_": { "id": 8, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 47, + "span": 44, "user_ty": null } }, @@ -1633,7 +1549,7 @@ "unwind": "Continue" } }, - "span": 48 + "span": 45 } }, { @@ -1656,7 +1572,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -1665,38 +1581,38 @@ } ] }, - "span": 50 + "span": 47 } ], "terminator": { "kind": "Return", - "span": 49 + "span": 46 } } ], "locals": [ { "mutability": "Mut", - "span": 51, - "ty": 26 + "span": 48, + "ty": 25 }, { "mutability": "Not", - "span": 52, - "ty": 27 + "span": 49, + "ty": 26 }, { "mutability": "Mut", - "span": 53, + "span": 50, "ty": 6 }, { "mutability": "Mut", - "span": 48, - "ty": 28 + "span": 45, + "ty": 27 } ], - "span": 54, + "span": 51, "spread_arg": null, "var_debug_info": [ { @@ -1705,7 +1621,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 52 + "span": 49 }, "value": { "Place": { @@ -1720,7 +1636,7 @@ "name": "val", "source_info": { "scope": 1, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -1774,58 +1690,37 @@ }, "ty": 17 }, - "span": 56, + "span": 53, "user_ty": null } } } ] }, - "span": 56 + "span": 53 } ], "terminator": { "kind": "Return", - "span": 55 + "span": 52 } } ], "locals": [ { "mutability": "Mut", - "span": 57, + "span": 54, "ty": 17 }, { "mutability": "Not", - "span": 58, + "span": 55, "ty": 1 } ], - "span": 59, + "span": 56, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 58 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 6, diff --git a/tests/integration/programs/primitive-type-bounds.smir.json.expected b/tests/integration/programs/primitive-type-bounds.smir.json.expected index 275ad21..b68ee58 100644 --- a/tests/integration/programs/primitive-type-bounds.smir.json.expected +++ b/tests/integration/programs/primitive-type-bounds.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -41,55 +40,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 31, { "NoOpSym": "" } @@ -135,9 +125,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -160,9 +150,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -170,7 +160,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -183,7 +173,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -212,9 +202,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -237,9 +227,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -249,7 +239,7 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { @@ -269,7 +259,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -278,7 +268,7 @@ } ] }, - "span": 52 + "span": 49 }, { "kind": { @@ -307,16 +297,16 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 54, + "span": 51, "user_ty": null } } } ] }, - "span": 55 + "span": 52 }, { "kind": { @@ -344,7 +334,7 @@ } ] }, - "span": 53 + "span": 50 } ], "terminator": { @@ -367,14 +357,14 @@ } } }, - "span": 53 + "span": 50 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 56 + "span": 53 } }, { @@ -419,9 +409,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -435,9 +425,9 @@ "const_": { "id": 12, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 57, + "span": 54, "user_ty": null } }, @@ -445,43 +435,43 @@ "unwind": "Continue" } }, - "span": 57 + "span": 54 } } ], "locals": [ { "mutability": "Mut", - "span": 58, + "span": 55, "ty": 1 }, { "mutability": "Not", - "span": 59, - "ty": 26 + "span": 56, + "ty": 25 }, { "mutability": "Mut", - "span": 52, - "ty": 29 + "span": 49, + "ty": 28 }, { "mutability": "Mut", - "span": 53, - "ty": 25 + "span": 50, + "ty": 24 }, { "mutability": "Mut", - "span": 55, - "ty": 26 + "span": 52, + "ty": 25 }, { "mutability": "Mut", - "span": 57, - "ty": 30 + "span": 54, + "ty": 29 } ], - "span": 61, + "span": 58, "spread_arg": null, "var_debug_info": [ { @@ -490,7 +480,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 60 + "span": 57 }, "value": { "Const": { @@ -511,9 +501,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 54, + "span": 51, "user_ty": null } } @@ -524,7 +514,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 59 + "span": 56 }, "value": { "Place": { @@ -564,12 +554,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -654,7 +638,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -665,12 +649,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -730,7 +708,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -759,51 +737,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -817,7 +795,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -827,7 +805,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -836,7 +814,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -851,7 +829,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -866,7 +844,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -881,7 +859,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -896,7 +874,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -928,19 +906,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -967,7 +945,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -992,7 +970,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1000,7 +978,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1009,7 +987,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1034,7 +1012,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1042,7 +1020,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1051,13 +1029,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1066,42 +1044,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1125,7 +1067,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1139,7 +1081,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1148,37 +1090,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1188,27 +1124,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1221,7 +1152,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1244,7 +1175,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1252,21 +1183,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1304,7 +1220,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1318,9 +1234,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1328,7 +1244,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1344,7 +1260,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1358,9 +1274,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1368,35 +1284,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1405,7 +1321,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1420,7 +1336,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1435,7 +1351,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1444,7 +1360,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1496,9 +1412,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1506,35 +1422,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1545,73 +1461,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1647,7 +1496,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1676,9 +1525,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1688,7 +1537,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1704,14 +1553,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1727,40 +1576,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1771,6 +1620,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1783,23 +1699,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1846,58 +1762,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/recursion-simple-match.smir.json.expected b/tests/integration/programs/recursion-simple-match.smir.json.expected index cb4dda8..6e38528 100644 --- a/tests/integration/programs/recursion-simple-match.smir.json.expected +++ b/tests/integration/programs/recursion-simple-match.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -44,61 +43,51 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN22recursion_simple_match12sum_to_n_rec17h" } ], [ - 29, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 32, { "NoOpSym": "" } @@ -135,7 +124,7 @@ } } }, - "span": 50 + "span": 47 } }, { @@ -175,9 +164,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -185,7 +174,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -198,7 +187,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -233,9 +222,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -245,7 +234,7 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { @@ -277,16 +266,16 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 53, + "span": 50, "user_ty": null } } } ] }, - "span": 53 + "span": 50 } ], "terminator": { @@ -295,7 +284,7 @@ "target": 6 } }, - "span": 53 + "span": 50 } }, { @@ -315,7 +304,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -324,7 +313,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -347,9 +336,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -357,7 +346,7 @@ "unwind": "Continue" } }, - "span": 55 + "span": 52 } }, { @@ -388,7 +377,7 @@ } ] }, - "span": 56 + "span": 53 } ], "terminator": { @@ -401,7 +390,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -429,7 +418,7 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } }, { @@ -449,7 +438,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -458,7 +447,7 @@ } ] }, - "span": 56 + "span": 53 } ], "terminator": { @@ -467,50 +456,50 @@ "target": 6 } }, - "span": 57 + "span": 54 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 58 + "span": 55 } } ], "locals": [ { "mutability": "Mut", - "span": 59, - "ty": 26 + "span": 56, + "ty": 25 }, { "mutability": "Not", - "span": 60, - "ty": 26 + "span": 57, + "ty": 25 }, { "mutability": "Mut", - "span": 55, - "ty": 26 + "span": 52, + "ty": 25 }, { "mutability": "Mut", - "span": 52, - "ty": 26 + "span": 49, + "ty": 25 }, { "mutability": "Mut", - "span": 52, - "ty": 28 + "span": 49, + "ty": 27 }, { "mutability": "Mut", - "span": 56, - "ty": 28 + "span": 53, + "ty": 27 } ], - "span": 61, + "span": 58, "spread_arg": null, "var_debug_info": [ { @@ -519,7 +508,7 @@ "name": "n", "source_info": { "scope": 0, - "span": 60 + "span": 57 }, "value": { "Place": { @@ -570,9 +559,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 63, + "span": 60, "user_ty": null } } @@ -586,9 +575,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 62, + "span": 59, "user_ty": null } }, @@ -596,7 +585,7 @@ "unwind": "Continue" } }, - "span": 64 + "span": 61 } }, { @@ -621,14 +610,14 @@ } } }, - "span": 65 + "span": 62 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 66 + "span": 63 } }, { @@ -673,9 +662,9 @@ } } }, - "ty": 30 + "ty": 29 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -689,9 +678,9 @@ "const_": { "id": 13, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 67, + "span": 64, "user_ty": null } }, @@ -699,28 +688,28 @@ "unwind": "Continue" } }, - "span": 67 + "span": 64 } } ], "locals": [ { "mutability": "Mut", - "span": 68, + "span": 65, "ty": 1 }, { "mutability": "Not", - "span": 69, - "ty": 26 + "span": 66, + "ty": 25 }, { "mutability": "Mut", - "span": 67, - "ty": 31 + "span": 64, + "ty": 30 } ], - "span": 70, + "span": 67, "spread_arg": null, "var_debug_info": [ { @@ -729,7 +718,7 @@ "name": "ans", "source_info": { "scope": 1, - "span": 69 + "span": 66 }, "value": { "Place": { @@ -769,12 +758,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -859,7 +842,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -870,12 +853,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -935,7 +912,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -964,51 +941,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -1022,7 +999,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -1032,7 +1009,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -1041,7 +1018,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1056,7 +1033,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -1071,7 +1048,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -1086,7 +1063,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -1101,7 +1078,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -1133,19 +1110,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1172,7 +1149,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1197,7 +1174,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1205,7 +1182,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1214,7 +1191,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1239,7 +1216,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1247,7 +1224,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1256,13 +1233,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1271,42 +1248,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1330,7 +1271,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1344,7 +1285,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1353,37 +1294,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1393,27 +1328,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1426,7 +1356,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1449,7 +1379,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1457,21 +1387,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1509,7 +1424,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1523,9 +1438,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1533,7 +1448,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1549,7 +1464,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1563,9 +1478,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1573,35 +1488,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1610,7 +1525,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1625,7 +1540,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1640,7 +1555,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1649,7 +1564,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1701,9 +1616,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1711,35 +1626,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1785,7 +1700,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1814,9 +1729,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1826,7 +1741,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1842,14 +1757,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1865,40 +1780,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1937,35 +1852,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1988,23 +1903,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -2051,58 +1966,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/recursion-simple.smir.json.expected b/tests/integration/programs/recursion-simple.smir.json.expected index 1aa246a..c548d35 100644 --- a/tests/integration/programs/recursion-simple.smir.json.expected +++ b/tests/integration/programs/recursion-simple.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -44,61 +43,51 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN16recursion_simple12sum_to_n_rec17h" } ], [ - 29, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 32, { "NoOpSym": "" } @@ -135,7 +124,7 @@ } } }, - "span": 50 + "span": 47 } }, { @@ -167,16 +156,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 52, + "span": 49, "user_ty": null } } } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -185,7 +174,7 @@ "target": 6 } }, - "span": 51 + "span": 48 } }, { @@ -225,9 +214,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 53, + "span": 50, "user_ty": null } } @@ -235,7 +224,7 @@ } ] }, - "span": 54 + "span": 51 } ], "terminator": { @@ -248,7 +237,7 @@ { "Field": [ 1, - 26 + 25 ] } ] @@ -283,9 +272,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 53, + "span": 50, "user_ty": null } } @@ -295,7 +284,7 @@ "unwind": "Continue" } }, - "span": 54 + "span": 51 } }, { @@ -315,7 +304,7 @@ { "Field": [ 0, - 25 + 24 ] } ] @@ -324,7 +313,7 @@ } ] }, - "span": 54 + "span": 51 } ], "terminator": { @@ -347,9 +336,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 55, + "span": 52, "user_ty": null } }, @@ -357,7 +346,7 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } }, { @@ -388,7 +377,7 @@ } ] }, - "span": 57 + "span": 54 } ], "terminator": { @@ -401,7 +390,7 @@ { "Field": [ 1, - 26 + 25 ] } ] @@ -429,7 +418,7 @@ "unwind": "Continue" } }, - "span": 57 + "span": 54 } }, { @@ -449,7 +438,7 @@ { "Field": [ 0, - 25 + 24 ] } ] @@ -458,7 +447,7 @@ } ] }, - "span": 57 + "span": 54 } ], "terminator": { @@ -467,50 +456,50 @@ "target": 6 } }, - "span": 51 + "span": 48 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 58 + "span": 55 } } ], "locals": [ { "mutability": "Mut", - "span": 59, - "ty": 25 + "span": 56, + "ty": 24 }, { "mutability": "Not", - "span": 60, - "ty": 25 + "span": 57, + "ty": 24 }, { "mutability": "Mut", - "span": 56, - "ty": 25 + "span": 53, + "ty": 24 }, { "mutability": "Mut", - "span": 54, - "ty": 25 + "span": 51, + "ty": 24 }, { "mutability": "Mut", - "span": 54, - "ty": 28 + "span": 51, + "ty": 27 }, { "mutability": "Mut", - "span": 57, - "ty": 28 + "span": 54, + "ty": 27 } ], - "span": 61, + "span": 58, "spread_arg": null, "var_debug_info": [ { @@ -519,7 +508,7 @@ "name": "n", "source_info": { "scope": 0, - "span": 60 + "span": 57 }, "value": { "Place": { @@ -570,9 +559,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 63, + "span": 60, "user_ty": null } } @@ -586,9 +575,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 62, + "span": 59, "user_ty": null } }, @@ -596,7 +585,7 @@ "unwind": "Continue" } }, - "span": 64 + "span": 61 } }, { @@ -621,14 +610,14 @@ } } }, - "span": 65 + "span": 62 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 66 + "span": 63 } }, { @@ -673,9 +662,9 @@ } } }, - "ty": 30 + "ty": 29 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -689,9 +678,9 @@ "const_": { "id": 13, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 67, + "span": 64, "user_ty": null } }, @@ -699,28 +688,28 @@ "unwind": "Continue" } }, - "span": 67 + "span": 64 } } ], "locals": [ { "mutability": "Mut", - "span": 68, + "span": 65, "ty": 1 }, { "mutability": "Not", - "span": 69, - "ty": 25 + "span": 66, + "ty": 24 }, { "mutability": "Mut", - "span": 67, - "ty": 31 + "span": 64, + "ty": 30 } ], - "span": 70, + "span": 67, "spread_arg": null, "var_debug_info": [ { @@ -729,7 +718,7 @@ "name": "ans", "source_info": { "scope": 1, - "span": 69 + "span": 66 }, "value": { "Place": { @@ -769,12 +758,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -859,7 +842,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -870,12 +853,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -935,7 +912,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -964,51 +941,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -1022,7 +999,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -1032,7 +1009,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -1041,7 +1018,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1056,7 +1033,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -1071,7 +1048,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -1086,7 +1063,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -1101,7 +1078,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -1133,19 +1110,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1172,7 +1149,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1197,7 +1174,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1205,7 +1182,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1214,7 +1191,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1239,7 +1216,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1247,7 +1224,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1256,13 +1233,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1271,42 +1248,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1330,7 +1271,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1344,7 +1285,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1353,37 +1294,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1393,27 +1328,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1426,7 +1356,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1449,7 +1379,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1457,21 +1387,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1509,7 +1424,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1523,9 +1438,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1533,7 +1448,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1549,7 +1464,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1563,9 +1478,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1573,35 +1488,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1610,7 +1525,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1625,7 +1540,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1640,7 +1555,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1649,7 +1564,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1701,9 +1616,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1711,35 +1626,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1785,7 +1700,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1814,9 +1729,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1826,7 +1741,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1842,14 +1757,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1865,40 +1780,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1937,35 +1852,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1988,23 +1903,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -2051,58 +1966,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/ref-deref.smir.json.expected b/tests/integration/programs/ref-deref.smir.json.expected index 44c9640..65d04b7 100644 --- a/tests/integration/programs/ref-deref.smir.json.expected +++ b/tests/integration/programs/ref-deref.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -42,55 +41,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 29, { "NoOpSym": "" } @@ -119,12 +109,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -209,7 +193,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -220,12 +204,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -285,7 +263,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -314,51 +292,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -372,7 +350,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -382,7 +360,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -391,7 +369,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -406,7 +384,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -421,7 +399,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -436,7 +414,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -451,7 +429,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -483,19 +461,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -522,7 +500,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -547,7 +525,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -555,7 +533,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -564,7 +542,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -589,7 +567,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -597,7 +575,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -606,13 +584,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -621,42 +599,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -680,7 +622,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -694,7 +636,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -703,37 +645,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -743,27 +679,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -776,7 +707,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -799,7 +730,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -807,21 +738,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -859,7 +775,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -873,9 +789,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -883,7 +799,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -899,7 +815,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -913,9 +829,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -923,35 +839,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -960,7 +876,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -975,7 +891,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -990,7 +906,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -999,7 +915,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1051,9 +967,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1061,35 +977,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1128,35 +1044,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1202,7 +1118,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1231,9 +1147,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1243,7 +1159,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1259,14 +1175,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1282,40 +1198,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1338,23 +1254,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1401,58 +1317,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, @@ -1500,14 +1395,14 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -1530,7 +1425,7 @@ } ] }, - "span": 52 + "span": 49 }, { "kind": { @@ -1551,7 +1446,7 @@ } ] }, - "span": 53 + "span": 50 } ], "terminator": { @@ -1574,14 +1469,14 @@ } } }, - "span": 50 + "span": 47 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 54 + "span": 51 } }, { @@ -1626,9 +1521,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1642,9 +1537,9 @@ "const_": { "id": 10, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 55, + "span": 52, "user_ty": null } }, @@ -1652,38 +1547,38 @@ "unwind": "Continue" } }, - "span": 55 + "span": 52 } } ], "locals": [ { "mutability": "Mut", - "span": 56, + "span": 53, "ty": 1 }, { "mutability": "Not", - "span": 57, + "span": 54, "ty": 16 }, { "mutability": "Not", - "span": 58, - "ty": 27 + "span": 55, + "ty": 26 }, { "mutability": "Not", - "span": 59, + "span": 56, "ty": 16 }, { "mutability": "Mut", - "span": 55, - "ty": 28 + "span": 52, + "ty": 27 } ], - "span": 60, + "span": 57, "spread_arg": null, "var_debug_info": [ { @@ -1692,7 +1587,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 57 + "span": 54 }, "value": { "Place": { @@ -1707,7 +1602,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 58 + "span": 55 }, "value": { "Place": { @@ -1722,7 +1617,7 @@ "name": "c", "source_info": { "scope": 3, - "span": 59 + "span": 56 }, "value": { "Place": { diff --git a/tests/integration/programs/shl_min.smir.json.expected b/tests/integration/programs/shl_min.smir.json.expected index 484608d..e8d84cc 100644 --- a/tests/integration/programs/shl_min.smir.json.expected +++ b/tests/integration/programs/shl_min.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -50,7 +49,6 @@ } ], [ - 1, { "Memory": { "align": 1, @@ -102,7 +100,6 @@ } ], [ - 2, { "Memory": { "align": 1, @@ -159,7 +156,6 @@ } ], [ - 3, { "Memory": { "align": 1, @@ -225,7 +221,6 @@ } ], [ - 4, { "Memory": { "align": 1, @@ -314,55 +309,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 33, { "NoOpSym": "" } @@ -391,12 +377,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -481,7 +461,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -492,12 +472,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -557,7 +531,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -586,51 +560,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -644,7 +618,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -654,7 +628,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -663,7 +637,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -678,7 +652,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -693,7 +667,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -708,7 +682,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -723,7 +697,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -755,19 +729,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -794,7 +768,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -819,7 +793,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -827,7 +801,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -836,7 +810,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -861,7 +835,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -869,7 +843,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -878,13 +852,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -893,42 +867,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -952,7 +890,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -966,7 +904,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -975,37 +913,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1015,27 +947,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1048,7 +975,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1071,7 +998,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1079,21 +1006,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1131,7 +1043,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1145,9 +1057,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1155,7 +1067,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1171,7 +1083,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1185,9 +1097,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1195,35 +1107,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1232,7 +1144,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1247,7 +1159,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1262,7 +1174,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1271,7 +1183,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1323,9 +1235,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1333,35 +1245,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1400,35 +1312,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1474,7 +1386,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1503,9 +1415,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1515,7 +1427,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1531,14 +1443,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1554,40 +1466,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1610,23 +1522,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1673,58 +1585,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, @@ -1774,16 +1665,16 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } }, - 25 + 24 ] } ] }, - "span": 52 + "span": 49 }, { "kind": { @@ -1820,9 +1711,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 52, + "span": 49, "user_ty": null } } @@ -1830,7 +1721,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -1864,7 +1755,7 @@ }, "ty": 2 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -1889,7 +1780,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -1899,7 +1790,7 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { @@ -1932,7 +1823,7 @@ }, "ty": 2 }, - "span": 50, + "span": 47, "user_ty": null } }, @@ -1957,7 +1848,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } @@ -1965,7 +1856,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -1988,7 +1879,7 @@ } } }, - "span": 53 + "span": 50 } }, { @@ -2024,16 +1915,16 @@ }, "ty": 16 }, - "span": 55, + "span": 52, "user_ty": null } }, - 25 + 24 ] } ] }, - "span": 56 + "span": 53 }, { "kind": { @@ -2070,9 +1961,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 56, + "span": 53, "user_ty": null } } @@ -2080,7 +1971,7 @@ } ] }, - "span": 56 + "span": 53 } ], "terminator": { @@ -2113,9 +2004,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -2140,7 +2031,7 @@ }, "ty": 16 }, - "span": 55, + "span": 52, "user_ty": null } } @@ -2150,7 +2041,7 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } }, { @@ -2195,9 +2086,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2211,9 +2102,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 57, + "span": 54, "user_ty": null } }, @@ -2221,7 +2112,7 @@ "unwind": "Continue" } }, - "span": 57 + "span": 54 } }, { @@ -2253,9 +2144,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -2280,7 +2171,7 @@ }, "ty": 16 }, - "span": 55, + "span": 52, "user_ty": null } } @@ -2288,7 +2179,7 @@ } ] }, - "span": 56 + "span": 53 } ], "terminator": { @@ -2311,7 +2202,7 @@ } } }, - "span": 58 + "span": 55 } }, { @@ -2347,16 +2238,16 @@ }, "ty": 16 }, - "span": 60, + "span": 57, "user_ty": null } }, - 25 + 24 ] } ] }, - "span": 61 + "span": 58 }, { "kind": { @@ -2393,9 +2284,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 61, + "span": 58, "user_ty": null } } @@ -2403,7 +2294,7 @@ } ] }, - "span": 61 + "span": 58 } ], "terminator": { @@ -2440,7 +2331,7 @@ }, "ty": 16 }, - "span": 59, + "span": 56, "user_ty": null } }, @@ -2465,7 +2356,7 @@ }, "ty": 16 }, - "span": 60, + "span": 57, "user_ty": null } } @@ -2475,7 +2366,7 @@ "unwind": "Continue" } }, - "span": 61 + "span": 58 } }, { @@ -2520,9 +2411,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2536,9 +2427,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 62, + "span": 59, "user_ty": null } }, @@ -2546,7 +2437,7 @@ "unwind": "Continue" } }, - "span": 62 + "span": 59 } }, { @@ -2582,7 +2473,7 @@ }, "ty": 16 }, - "span": 59, + "span": 56, "user_ty": null } }, @@ -2607,7 +2498,7 @@ }, "ty": 16 }, - "span": 60, + "span": 57, "user_ty": null } } @@ -2615,7 +2506,7 @@ } ] }, - "span": 61 + "span": 58 } ], "terminator": { @@ -2638,7 +2529,7 @@ } } }, - "span": 63 + "span": 60 } }, { @@ -2674,16 +2565,16 @@ }, "ty": 16 }, - "span": 65, + "span": 62, "user_ty": null } }, - 25 + 24 ] } ] }, - "span": 66 + "span": 63 }, { "kind": { @@ -2720,9 +2611,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 66, + "span": 63, "user_ty": null } } @@ -2730,7 +2621,7 @@ } ] }, - "span": 66 + "span": 63 } ], "terminator": { @@ -2769,9 +2660,9 @@ } } }, - "ty": 29 + "ty": 28 }, - "span": 64, + "span": 61, "user_ty": null } }, @@ -2796,7 +2687,7 @@ }, "ty": 16 }, - "span": 65, + "span": 62, "user_ty": null } } @@ -2806,7 +2697,7 @@ "unwind": "Continue" } }, - "span": 66 + "span": 63 } }, { @@ -2851,9 +2742,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2867,9 +2758,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 67, + "span": 64, "user_ty": null } }, @@ -2877,7 +2768,7 @@ "unwind": "Continue" } }, - "span": 67 + "span": 64 } }, { @@ -2915,9 +2806,9 @@ } } }, - "ty": 29 + "ty": 28 }, - "span": 64, + "span": 61, "user_ty": null } }, @@ -2942,7 +2833,7 @@ }, "ty": 16 }, - "span": 65, + "span": 62, "user_ty": null } } @@ -2950,7 +2841,7 @@ } ] }, - "span": 66 + "span": 63 } ], "terminator": { @@ -2973,7 +2864,7 @@ } } }, - "span": 68 + "span": 65 } }, { @@ -3009,16 +2900,16 @@ }, "ty": 16 }, - "span": 70, + "span": 67, "user_ty": null } }, - 25 + 24 ] } ] }, - "span": 71 + "span": 68 }, { "kind": { @@ -3055,9 +2946,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 71, + "span": 68, "user_ty": null } } @@ -3065,7 +2956,7 @@ } ] }, - "span": 71 + "span": 68 } ], "terminator": { @@ -3112,9 +3003,9 @@ } } }, - "ty": 30 + "ty": 29 }, - "span": 69, + "span": 66, "user_ty": null } }, @@ -3139,7 +3030,7 @@ }, "ty": 16 }, - "span": 70, + "span": 67, "user_ty": null } } @@ -3149,7 +3040,7 @@ "unwind": "Continue" } }, - "span": 71 + "span": 68 } }, { @@ -3194,9 +3085,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3210,9 +3101,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 72, + "span": 69, "user_ty": null } }, @@ -3220,7 +3111,7 @@ "unwind": "Continue" } }, - "span": 72 + "span": 69 } }, { @@ -3266,9 +3157,9 @@ } } }, - "ty": 30 + "ty": 29 }, - "span": 69, + "span": 66, "user_ty": null } }, @@ -3293,7 +3184,7 @@ }, "ty": 16 }, - "span": 70, + "span": 67, "user_ty": null } } @@ -3301,7 +3192,7 @@ } ] }, - "span": 71 + "span": 68 } ], "terminator": { @@ -3324,14 +3215,14 @@ } } }, - "span": 73 + "span": 70 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 74 + "span": 71 } }, { @@ -3376,9 +3267,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3392,9 +3283,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 75, + "span": 72, "user_ty": null } }, @@ -3402,118 +3293,118 @@ "unwind": "Continue" } }, - "span": 75 + "span": 72 } } ], "locals": [ { "mutability": "Mut", - "span": 76, + "span": 73, "ty": 1 }, { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 2 }, { "mutability": "Mut", - "span": 52, - "ty": 25 + "span": 49, + "ty": 24 }, { "mutability": "Mut", - "span": 52, + "span": 49, + "ty": 30 + }, + { + "mutability": "Mut", + "span": 54, "ty": 31 }, { "mutability": "Mut", - "span": 57, - "ty": 32 + "span": 53, + "ty": 25 }, { "mutability": "Mut", - "span": 56, - "ty": 26 + "span": 53, + "ty": 24 }, { "mutability": "Mut", - "span": 56, - "ty": 25 + "span": 53, + "ty": 30 }, { "mutability": "Mut", - "span": 56, + "span": 59, "ty": 31 }, { "mutability": "Mut", - "span": 62, - "ty": 32 + "span": 58, + "ty": 16 }, { "mutability": "Mut", - "span": 61, - "ty": 16 + "span": 58, + "ty": 24 }, { "mutability": "Mut", - "span": 61, - "ty": 25 + "span": 58, + "ty": 30 }, { "mutability": "Mut", - "span": 61, + "span": 64, "ty": 31 }, { "mutability": "Mut", - "span": 67, - "ty": 32 + "span": 63, + "ty": 28 }, { "mutability": "Mut", - "span": 66, - "ty": 29 + "span": 63, + "ty": 24 }, { "mutability": "Mut", - "span": 66, - "ty": 25 + "span": 63, + "ty": 30 }, { "mutability": "Mut", - "span": 66, + "span": 69, "ty": 31 }, { "mutability": "Mut", - "span": 72, - "ty": 32 + "span": 68, + "ty": 29 }, { "mutability": "Mut", - "span": 71, - "ty": 30 + "span": 68, + "ty": 24 }, { "mutability": "Mut", - "span": 71, - "ty": 25 + "span": 68, + "ty": 30 }, { "mutability": "Mut", - "span": 71, + "span": 72, "ty": 31 - }, - { - "mutability": "Mut", - "span": 75, - "ty": 32 } ], - "span": 77, + "span": 74, "spread_arg": null, "var_debug_info": [] } diff --git a/tests/integration/programs/slice.smir.json.expected b/tests/integration/programs/slice.smir.json.expected index eacc2bf..8dddfc5 100644 --- a/tests/integration/programs/slice.smir.json.expected +++ b/tests/integration/programs/slice.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 4, @@ -23,7 +22,6 @@ } ], [ - 1, { "Memory": { "align": 1, @@ -68,109 +66,91 @@ ], "functions": [ [ - 1, { "NormalSym": "_ZN4core5slice5index24slice_end_index_len_fail17h" } ], [ - 4, { "NormalSym": "_ZN4core5slice5index22slice_index_order_fail17h" } ], [ - 11, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 24, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 25, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 30, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 31, { "IntrinsicSym": "black_box" } ], [ - 32, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 34, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 36, { "NormalSym": "_ZN4core5slice5index74_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h" } ], [ - 38, { "NormalSym": "_ZN69_$LT$T$u20$as$u20$core..array..equality..SpecArrayEq$LT$U$C$_$GT$$GT$7spec_eq17h" } ], [ - 43, { "NormalSym": "_ZN4core5array8equality92_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$u5b$T$u5d$$GT$2eq17h" } ], [ - 45, { "NormalSym": "_ZN106_$LT$core..ops..range..Range$LT$usize$GT$$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" } ], [ - 46, { "IntrinsicSym": "raw_eq" } ], [ - 47, { "NormalSym": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" } ], [ - 48, { "NormalSym": "_ZN4core5array8equality96_$LT$impl$u20$core..cmp..PartialEq$LT$$u5b$U$u3b$$u20$N$u5d$$GT$$u20$for$u20$$RF$$u5b$T$u5d$$GT$2eq17h" } ], [ - 49, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 53, { "NoOpSym": "" } @@ -354,10 +334,16 @@ }, { "kind": { - "StorageLive": 12 + "StorageLive": 11 }, "span": 8 }, + { + "kind": { + "StorageLive": 12 + }, + "span": 9 + }, { "kind": { "Assign": [ @@ -378,13 +364,13 @@ } ] }, - "span": 8 + "span": 9 }, { "kind": { "StorageLive": 15 }, - "span": 9 + "span": 8 }, { "kind": { @@ -488,7 +474,7 @@ "kind": { "StorageDead": 15 }, - "span": 9 + "span": 8 }, { "kind": { @@ -520,6 +506,12 @@ ] }, "span": 15 + }, + { + "kind": { + "StorageDead": 11 + }, + "span": 16 } ], "terminator": { @@ -533,13 +525,13 @@ "kind": { "StorageDead": 13 }, - "span": 18 + "span": 19 }, { "kind": { "StorageDead": 5 }, - "span": 19 + "span": 20 } ], "terminator": { @@ -570,7 +562,7 @@ "kind": "ZeroSized", "ty": 4 }, - "span": 16, + "span": 17, "user_ty": null } }, @@ -578,7 +570,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 18 } }, { @@ -587,7 +579,7 @@ "kind": { "StorageLive": 14 }, - "span": 21 + "span": 22 }, { "kind": { @@ -615,7 +607,7 @@ } ] }, - "span": 22 + "span": 23 }, { "kind": { @@ -651,19 +643,19 @@ } ] }, - "span": 23 + "span": 24 }, { "kind": { "StorageDead": 14 }, - "span": 24 + "span": 25 }, { "kind": { "StorageDead": 13 }, - "span": 18 + "span": 19 }, { "kind": { @@ -692,19 +684,19 @@ } ] }, - "span": 25 + "span": 26 }, { "kind": { "StorageDead": 5 }, - "span": 19 + "span": 20 }, { "kind": { "StorageLive": 8 }, - "span": 20 + "span": 21 }, { "kind": { @@ -726,7 +718,7 @@ } ] }, - "span": 26 + "span": 27 }, { "kind": { @@ -754,7 +746,7 @@ } ] }, - "span": 20 + "span": 21 } ], "terminator": { @@ -777,34 +769,34 @@ } } }, - "span": 20 + "span": 21 } } ], "locals": [ { "mutability": "Mut", - "span": 27, + "span": 28, "ty": 5 }, { "mutability": "Not", - "span": 28, + "span": 29, "ty": 6 }, { "mutability": "Not", - "span": 29, + "span": 30, "ty": 5 }, { "mutability": "Mut", - "span": 30, + "span": 31, "ty": 7 }, { "mutability": "Not", - "span": 25, + "span": 26, "ty": 0 }, { @@ -824,12 +816,12 @@ }, { "mutability": "Mut", - "span": 20, + "span": 21, "ty": 9 }, { "mutability": "Mut", - "span": 26, + "span": 27, "ty": 0 }, { @@ -839,12 +831,12 @@ }, { "mutability": "Not", - "span": 9, + "span": 8, "ty": 10 }, { "mutability": "Mut", - "span": 8, + "span": 9, "ty": 10 }, { @@ -854,17 +846,17 @@ }, { "mutability": "Mut", - "span": 21, + "span": 22, "ty": 0 }, { "mutability": "Not", - "span": 31, + "span": 32, "ty": 2 }, { "mutability": "Not", - "span": 32, + "span": 33, "ty": 2 } ], @@ -877,7 +869,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 28 + "span": 29 }, "value": { "Place": { @@ -892,7 +884,7 @@ "name": "slice", "source_info": { "scope": 0, - "span": 29 + "span": 30 }, "value": { "Place": { @@ -907,7 +899,7 @@ "name": "new_len", "source_info": { "scope": 1, - "span": 25 + "span": 26 }, "value": { "Place": { @@ -922,7 +914,7 @@ "name": "self", "source_info": { "scope": 2, - "span": 33 + "span": 34 }, "value": { "Place": { @@ -937,7 +929,7 @@ "name": "rhs", "source_info": { "scope": 2, - "span": 34 + "span": 35 }, "value": { "Place": { @@ -952,7 +944,7 @@ "name": "ptr", "source_info": { "scope": 3, - "span": 35 + "span": 36 }, "value": { "Place": { @@ -967,7 +959,7 @@ "name": "offset", "source_info": { "scope": 3, - "span": 36 + "span": 37 }, "value": { "Place": { @@ -982,7 +974,7 @@ "name": "len", "source_info": { "scope": 3, - "span": 37 + "span": 38 }, "value": { "Place": { @@ -991,62 +983,17 @@ } } }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 31 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, { "argument_index": 1, "composite": null, "name": "ptr", - "source_info": { - "scope": 5, - "span": 38 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "index", "source_info": { "scope": 5, "span": 39 }, "value": { "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 6, - "span": 32 - }, - "value": { - "Place": { - "local": 16, + "local": 2, "projection": [] } } @@ -1082,12 +1029,6 @@ }, "span": 43 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 43 - }, { "kind": { "StorageLive": 8 @@ -1172,7 +1113,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -1183,12 +1124,6 @@ ] }, "span": 43 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 45 } ], "terminator": { @@ -1248,7 +1183,7 @@ "kind": { "StorageDead": 6 }, - "span": 47 + "span": 46 }, { "kind": { @@ -1277,51 +1212,51 @@ } ] }, - "span": 48 + "span": 47 }, { "kind": { "StorageDead": 8 }, - "span": 49 + "span": 48 }, { "kind": { "StorageDead": 5 }, - "span": 49 + "span": 48 } ], "terminator": { "kind": "Return", - "span": 46 + "span": 45 } } ], "locals": [ { "mutability": "Mut", - "span": 50, + "span": 49, "ty": 17 }, { "mutability": "Not", - "span": 51, + "span": 50, "ty": 18 }, { "mutability": "Not", - "span": 52, + "span": 51, "ty": 17 }, { "mutability": "Not", - "span": 53, + "span": 52, "ty": 19 }, { "mutability": "Not", - "span": 54, + "span": 53, "ty": 20 }, { @@ -1335,7 +1270,7 @@ "ty": 16 }, { - "mutability": "Mut", + "mutability": "Not", "span": 43, "ty": 22 }, @@ -1345,7 +1280,7 @@ "ty": 23 } ], - "span": 55, + "span": 54, "spread_arg": null, "var_debug_info": [ { @@ -1354,7 +1289,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 51 + "span": 50 }, "value": { "Place": { @@ -1369,7 +1304,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 52 + "span": 51 }, "value": { "Place": { @@ -1384,7 +1319,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 53 + "span": 52 }, "value": { "Place": { @@ -1399,7 +1334,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 54 + "span": 53 }, "value": { "Place": { @@ -1414,7 +1349,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 48 + "span": 47 }, "value": { "Place": { @@ -1446,19 +1381,19 @@ "kind": { "StorageLive": 2 }, - "span": 58 + "span": 57 }, { "kind": { "StorageLive": 3 }, - "span": 57 + "span": 56 }, { "kind": { "StorageLive": 4 }, - "span": 59 + "span": 58 }, { "kind": { @@ -1485,7 +1420,7 @@ } ] }, - "span": 59 + "span": 58 } ], "terminator": { @@ -1510,7 +1445,7 @@ "kind": "ZeroSized", "ty": 24 }, - "span": 56, + "span": 55, "user_ty": null } }, @@ -1518,7 +1453,7 @@ "unwind": "Continue" } }, - "span": 57 + "span": 56 } }, { @@ -1527,7 +1462,7 @@ "kind": { "StorageDead": 4 }, - "span": 61 + "span": 60 } ], "terminator": { @@ -1552,7 +1487,7 @@ "kind": "ZeroSized", "ty": 25 }, - "span": 60, + "span": 59, "user_ty": null } }, @@ -1560,7 +1495,7 @@ "unwind": "Continue" } }, - "span": 58 + "span": 57 } }, { @@ -1569,13 +1504,13 @@ "kind": { "StorageDead": 3 }, - "span": 63 + "span": 62 }, { "kind": { "StorageLive": 5 }, - "span": 64 + "span": 63 }, { "kind": { @@ -1584,42 +1519,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 26 - ] - } - ] - } - ] - } - ] - }, - "span": 64 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 65 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1643,7 +1542,7 @@ } ] }, - "span": 65 + "span": 63 }, { "kind": { @@ -1657,7 +1556,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1666,37 +1565,31 @@ } ] }, - "span": 66 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 67 + "span": 64 }, { "kind": { "StorageDead": 5 }, - "span": 68 + "span": 65 }, { "kind": { "StorageDead": 2 }, - "span": 45 + "span": 66 } ], "terminator": { "kind": "Return", - "span": 62 + "span": 61 } } ], "locals": [ { "mutability": "Mut", - "span": 69, + "span": 67, "ty": 27 }, { @@ -1706,27 +1599,22 @@ }, { "mutability": "Mut", - "span": 58, + "span": 57, "ty": 28 }, { "mutability": "Mut", - "span": 57, + "span": 56, "ty": 12 }, { "mutability": "Mut", - "span": 59, + "span": 58, "ty": 18 }, { "mutability": "Mut", - "span": 64, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 65, + "span": 63, "ty": 20 } ], @@ -1739,7 +1627,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 51 + "span": 50 }, "value": { "Place": { @@ -1762,7 +1650,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 70 + "span": 68 }, "value": { "Place": { @@ -1770,21 +1658,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 71 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1822,7 +1695,7 @@ "kind": "ZeroSized", "ty": 12 }, - "span": 73, + "span": 70, "user_ty": null } } @@ -1836,9 +1709,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 30 + "ty": 29 }, - "span": 72, + "span": 69, "user_ty": null } }, @@ -1846,7 +1719,7 @@ "unwind": "Continue" } }, - "span": 74 + "span": 71 } }, { @@ -1862,7 +1735,7 @@ "kind": "ZeroSized", "ty": 12 }, - "span": 73, + "span": 70, "user_ty": null } } @@ -1876,9 +1749,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 31 + "ty": 30 }, - "span": 75, + "span": 72, "user_ty": null } }, @@ -1886,35 +1759,35 @@ "unwind": "Unreachable" } }, - "span": 76 + "span": 73 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 77 + "span": 74 } } ], "locals": [ { "mutability": "Mut", - "span": 78, + "span": 75, "ty": 12 }, { "mutability": "Not", - "span": 79, + "span": 76, "ty": 18 }, { "mutability": "Not", - "span": 80, + "span": 77, "ty": 12 } ], - "span": 83, + "span": 80, "spread_arg": null, "var_debug_info": [ { @@ -1923,7 +1796,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 79 + "span": 76 }, "value": { "Place": { @@ -1938,7 +1811,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 81 + "span": 78 }, "value": { "Place": { @@ -1953,7 +1826,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 82 + "span": 79 }, "value": { "Const": { @@ -1962,7 +1835,7 @@ "kind": "ZeroSized", "ty": 12 }, - "span": 73, + "span": 70, "user_ty": null } } @@ -2014,9 +1887,9 @@ "const_": { "id": 8, "kind": "ZeroSized", - "ty": 32 + "ty": 31 }, - "span": 84, + "span": 81, "user_ty": null } }, @@ -2024,35 +1897,35 @@ "unwind": "Continue" } }, - "span": 84 + "span": 81 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 84 + "span": 81 } } ], "locals": [ { "mutability": "Mut", - "span": 84, + "span": 81, "ty": 27 }, { "mutability": "Not", - "span": 84, - "ty": 33 + "span": 81, + "ty": 32 }, { "mutability": "Not", - "span": 84, + "span": 81, "ty": 12 } ], - "span": 84, + "span": 81, "spread_arg": 2, "var_debug_info": [] } @@ -2098,7 +1971,7 @@ } ] }, - "span": 84 + "span": 81 } ], "terminator": { @@ -2127,9 +2000,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 34 + "ty": 33 }, - "span": 84, + "span": 81, "user_ty": null } }, @@ -2139,7 +2012,7 @@ } } }, - "span": 84 + "span": 81 } }, { @@ -2155,14 +2028,14 @@ "unwind": "Continue" } }, - "span": 84 + "span": 81 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 84 + "span": 81 } }, { @@ -2178,40 +2051,40 @@ "unwind": "Terminate" } }, - "span": 84 + "span": 81 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 84 + "span": 81 } } ], "locals": [ { "mutability": "Mut", - "span": 84, + "span": 81, "ty": 27 }, { "mutability": "Not", - "span": 84, + "span": 81, "ty": 23 }, { "mutability": "Not", - "span": 84, + "span": 81, "ty": 12 }, { "mutability": "Not", - "span": 84, - "ty": 35 + "span": 81, + "ty": 34 } ], - "span": 84, + "span": 81, "spread_arg": 2, "var_debug_info": [] } @@ -2250,35 +2123,35 @@ "unwind": "Continue" } }, - "span": 84 + "span": 81 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 84 + "span": 81 } } ], "locals": [ { "mutability": "Mut", - "span": 84, + "span": 81, "ty": 12 }, { "mutability": "Not", - "span": 84, + "span": 81, "ty": 18 }, { "mutability": "Not", - "span": 84, + "span": 81, "ty": 12 } ], - "span": 84, + "span": 81, "spread_arg": 2, "var_debug_info": [] } @@ -2301,23 +2174,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 85 + "span": 82 } } ], "locals": [ { "mutability": "Mut", - "span": 85, + "span": 82, "ty": 12 }, { "mutability": "Not", - "span": 85, - "ty": 33 + "span": 82, + "ty": 32 } ], - "span": 85, + "span": 82, "spread_arg": null, "var_debug_info": [] } @@ -2361,7 +2234,7 @@ } ] }, - "span": 88 + "span": 85 } ], "terminator": { @@ -2390,9 +2263,9 @@ "const_": { "id": 10, "kind": "ZeroSized", - "ty": 36 + "ty": 35 }, - "span": 86, + "span": 83, "user_ty": null } }, @@ -2400,40 +2273,40 @@ "unwind": "Continue" } }, - "span": 87 + "span": 84 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 89 + "span": 86 } } ], "locals": [ { "mutability": "Mut", - "span": 90, + "span": 87, "ty": 5 }, { "mutability": "Not", - "span": 91, - "ty": 37 + "span": 88, + "ty": 36 }, { "mutability": "Not", - "span": 92, + "span": 89, "ty": 6 }, { "mutability": "Not", - "span": 93, + "span": 85, "ty": 5 } ], - "span": 94, + "span": 90, "spread_arg": null, "var_debug_info": [ { @@ -2442,7 +2315,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 91 + "span": 88 }, "value": { "Place": { @@ -2457,7 +2330,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 92 + "span": 89 }, "value": { "Place": { @@ -2489,37 +2362,43 @@ "kind": { "StorageLive": 3 }, - "span": 96 + "span": 92 }, { "kind": { - "StorageLive": 7 + "StorageLive": 5 }, - "span": 97 + "span": 93 }, { "kind": { "StorageLive": 9 }, - "span": 97 + "span": 94 }, { "kind": { - "StorageLive": 5 + "StorageLive": 10 }, - "span": 95 + "span": 94 }, { "kind": { "StorageLive": 6 }, - "span": 98 + "span": 91 + }, + { + "kind": { + "StorageLive": 7 + }, + "span": 95 }, { "kind": { "Assign": [ { - "local": 6, + "local": 7, "projection": [] }, { @@ -2535,13 +2414,13 @@ } ] }, - "span": 98 + "span": 95 }, { "kind": { "Assign": [ { - "local": 5, + "local": 6, "projection": [] }, { @@ -2549,7 +2428,7 @@ "Eq", { "Move": { - "local": 6, + "local": 7, "projection": [] } }, @@ -2578,7 +2457,7 @@ }, "ty": 0 }, - "span": 99, + "span": 96, "user_ty": null } } @@ -2586,7 +2465,7 @@ } ] }, - "span": 95 + "span": 91 } ], "terminator": { @@ -2594,7 +2473,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 5, + "local": 6, "projection": [] } }, @@ -2609,7 +2488,7 @@ } } }, - "span": 95 + "span": 91 } }, { @@ -2618,27 +2497,33 @@ "kind": { "StorageDead": 3 }, - "span": 101 + "span": 98 } ], "terminator": { "kind": "Return", - "span": 100 + "span": 97 } }, { "statements": [ { "kind": { - "StorageDead": 6 + "StorageDead": 7 }, - "span": 99 + "span": 96 + }, + { + "kind": { + "StorageLive": 8 + }, + "span": 101 }, { "kind": { "Assign": [ { - "local": 9, + "local": 10, "projection": [] }, { @@ -2654,13 +2539,13 @@ } ] }, - "span": 104 + "span": 102 }, { "kind": { "Assign": [ { - "local": 7, + "local": 8, "projection": [] }, { @@ -2668,28 +2553,22 @@ "PtrToPtr", { "Copy": { - "local": 9, + "local": 10, "projection": [] } }, - 39 + 38 ] } ] }, - "span": 105 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 106 + "span": 103 }, { "kind": { "Assign": [ { - "local": 8, + "local": 9, "projection": [] }, { @@ -2699,7 +2578,7 @@ }, "Shared", { - "local": 7, + "local": 8, "projection": [ "Deref" ] @@ -2708,27 +2587,24 @@ } ] }, - "span": 106 + "span": 104 }, { "kind": { "Assign": [ { - "local": 3, + "local": 5, "projection": [] }, { "Aggregate": [ { "Adt": [ - 9, - 0, + 1, + 1, [ { - "Type": 40 - }, - { - "Type": 41 + "Type": 39 } ], null, @@ -2737,8 +2613,8 @@ }, [ { - "Move": { - "local": 8, + "Copy": { + "local": 9, "projection": [] } } @@ -2747,31 +2623,117 @@ } ] }, - "span": 107 + "span": 105 }, { "kind": { "StorageDead": 8 }, + "span": 106 + }, + { + "kind": { + "StorageDead": 6 + }, + "span": 107 + }, + { + "kind": { + "StorageDead": 10 + }, + "span": 94 + }, + { + "kind": { + "StorageDead": 9 + }, + "span": 94 + }, + { + "kind": { + "StorageLive": 11 + }, "span": 108 }, { "kind": { - "StorageDead": 5 + "Assign": [ + { + "local": 11, + "projection": [] + }, + { + "Use": { + "Move": { + "local": 5, + "projection": [ + { + "Downcast": 1 + }, + { + "Field": [ + 0, + 39 + ] + } + ] + } + } + } + ] }, "span": 109 }, { "kind": { - "StorageDead": 9 + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Aggregate": [ + { + "Adt": [ + 9, + 0, + [ + { + "Type": 39 + }, + { + "Type": 40 + } + ], + null, + null + ] + }, + [ + { + "Copy": { + "local": 11, + "projection": [] + } + } + ] + ] + } + ] }, - "span": 97 + "span": 110 }, { "kind": { - "StorageDead": 7 + "StorageDead": 11 }, - "span": 97 + "span": 108 + }, + { + "kind": { + "StorageDead": 5 + }, + "span": 111 }, { "kind": { @@ -2791,7 +2753,7 @@ { "Field": [ 0, - 40 + 39 ] } ] @@ -2800,7 +2762,7 @@ } ] }, - "span": 110 + "span": 112 } ], "terminator": { @@ -2829,9 +2791,9 @@ "const_": { "id": 12, "kind": "ZeroSized", - "ty": 38 + "ty": 37 }, - "span": 102, + "span": 99, "user_ty": null } }, @@ -2839,22 +2801,22 @@ "unwind": "Continue" } }, - "span": 103 + "span": 100 } }, { "statements": [ { "kind": { - "StorageDead": 6 + "StorageDead": 7 }, - "span": 99 + "span": 96 }, { "kind": { "Assign": [ { - "local": 3, + "local": 5, "projection": [] }, { @@ -2881,40 +2843,46 @@ } } }, - "ty": 42 + "ty": 41 }, - "span": 73, + "span": 70, "user_ty": null } } } ] }, - "span": 112 + "span": 114 }, { "kind": { - "StorageDead": 5 + "StorageDead": 6 }, - "span": 109 + "span": 107 + }, + { + "kind": { + "StorageDead": 10 + }, + "span": 94 }, { "kind": { "StorageDead": 9 }, - "span": 97 + "span": 94 }, { "kind": { - "StorageDead": 7 + "StorageLive": 11 }, - "span": 97 + "span": 108 }, { "kind": { "Assign": [ { - "local": 0, + "local": 3, "projection": [] }, { @@ -2922,6 +2890,60 @@ "Constant": { "const_": { "id": 14, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 42 + }, + "span": 70, + "user_ty": null + } + } + } + ] + }, + "span": 115 + }, + { + "kind": { + "StorageDead": 11 + }, + "span": 108 + }, + { + "kind": { + "StorageDead": 5 + }, + "span": 111 + }, + { + "kind": { + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Use": { + "Constant": { + "const_": { + "id": 15, "kind": { "Allocated": { "align": 1, @@ -2936,14 +2958,14 @@ }, "ty": 9 }, - "span": 111, + "span": 113, "user_ty": null } } } ] }, - "span": 111 + "span": 113 } ], "terminator": { @@ -2952,63 +2974,73 @@ "target": 1 } }, - "span": 111 + "span": 113 } } ], "locals": [ { "mutability": "Mut", - "span": 113, + "span": 116, "ty": 9 }, { "mutability": "Not", - "span": 114, + "span": 117, "ty": 5 }, { "mutability": "Not", - "span": 115, - "ty": 40 + "span": 118, + "ty": 39 }, { "mutability": "Not", - "span": 96, + "span": 92, "ty": 42 }, { "mutability": "Not", - "span": 110, - "ty": 40 + "span": 112, + "ty": 39 }, { "mutability": "Mut", - "span": 95, + "span": 93, + "ty": 41 + }, + { + "mutability": "Mut", + "span": 91, "ty": 9 }, { "mutability": "Mut", - "span": 98, + "span": 95, "ty": 0 }, { "mutability": "Not", - "span": 116, - "ty": 39 + "span": 101, + "ty": 38 }, { - "mutability": "Mut", - "span": 106, - "ty": 40 + "mutability": "Not", + "span": 119, + "ty": 39 }, { "mutability": "Mut", - "span": 117, + "span": 120, "ty": 10 + }, + { + "mutability": "Not", + "span": 109, + "ty": 39 } ], - "span": 123, + "span": 129, "spread_arg": null, "var_debug_info": [ { @@ -3017,7 +3049,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 114 + "span": 117 }, "value": { "Place": { @@ -3032,7 +3064,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 115 + "span": 118 }, "value": { "Place": { @@ -3047,7 +3079,7 @@ "name": "b", "source_info": { "scope": 1, - "span": 96 + "span": 92 }, "value": { "Place": { @@ -3062,7 +3094,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 110 + "span": 112 }, "value": { "Place": { @@ -3077,7 +3109,7 @@ "name": "self", "source_info": { "scope": 3, - "span": 118 + "span": 121 }, "value": { "Place": { @@ -3092,7 +3124,22 @@ "name": "slice", "source_info": { "scope": 4, - "span": 119 + "span": 122 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 5, + "span": 123 }, "value": { "Place": { @@ -3106,12 +3153,27 @@ "composite": null, "name": "ptr", "source_info": { - "scope": 5, - "span": 116 + "scope": 6, + "span": 101 }, "value": { "Place": { - "local": 7, + "local": 8, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "me", + "source_info": { + "scope": 7, + "span": 119 + }, + "value": { + "Place": { + "local": 8, "projection": [] } } @@ -3121,8 +3183,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 6, - "span": 120 + "scope": 8, + "span": 124 }, "value": { "Place": { @@ -3136,8 +3198,58 @@ "composite": null, "name": "self", "source_info": { - "scope": 7, - "span": 121 + "scope": 9, + "span": 125 + }, + "value": { + "Place": { + "local": 5, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "err", + "source_info": { + "scope": 9, + "span": 126 + }, + "value": { + "Const": { + "const_": { + "id": 16, + "kind": "ZeroSized", + "ty": 40 + }, + "span": 70, + "user_ty": null + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "v", + "source_info": { + "scope": 10, + "span": 109 + }, + "value": { + "Place": { + "local": 11, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 11, + "span": 127 }, "value": { "Place": { @@ -3151,8 +3263,8 @@ "composite": null, "name": "other", "source_info": { - "scope": 7, - "span": 122 + "scope": 11, + "span": 128 }, "value": { "Place": { @@ -3199,7 +3311,7 @@ } ] }, - "span": 125 + "span": 131 } ], "terminator": { @@ -3226,11 +3338,11 @@ "func": { "Constant": { "const_": { - "id": 15, + "id": 17, "kind": "ZeroSized", "ty": 43 }, - "span": 124, + "span": 130, "user_ty": null } }, @@ -3238,40 +3350,40 @@ "unwind": "Continue" } }, - "span": 124 + "span": 130 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 126 + "span": 132 } } ], "locals": [ { "mutability": "Mut", - "span": 127, + "span": 133, "ty": 9 }, { "mutability": "Not", - "span": 128, + "span": 134, "ty": 44 }, { "mutability": "Not", - "span": 129, - "ty": 40 + "span": 135, + "ty": 39 }, { "mutability": "Mut", - "span": 128, + "span": 134, "ty": 5 } ], - "span": 130, + "span": 136, "spread_arg": null, "var_debug_info": [ { @@ -3280,7 +3392,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 128 + "span": 134 }, "value": { "Place": { @@ -3295,7 +3407,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 129 + "span": 135 }, "value": { "Place": { @@ -3347,11 +3459,11 @@ "func": { "Constant": { "const_": { - "id": 16, + "id": 18, "kind": "ZeroSized", "ty": 45 }, - "span": 131, + "span": 137, "user_ty": null } }, @@ -3359,35 +3471,35 @@ "unwind": "Continue" } }, - "span": 132 + "span": 138 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 133 + "span": 139 } } ], "locals": [ { "mutability": "Mut", - "span": 134, + "span": 140, "ty": 5 }, { "mutability": "Not", - "span": 135, + "span": 141, "ty": 5 }, { "mutability": "Not", - "span": 136, + "span": 142, "ty": 6 } ], - "span": 137, + "span": 143, "spread_arg": null, "var_debug_info": [ { @@ -3396,7 +3508,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 135 + "span": 141 }, "value": { "Place": { @@ -3411,7 +3523,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 136 + "span": 142 }, "value": { "Place": { @@ -3450,7 +3562,7 @@ "Use": { "Constant": { "const_": { - "id": 17, + "id": 19, "kind": { "Allocated": { "align": 1, @@ -3465,58 +3577,37 @@ }, "ty": 28 }, - "span": 139, + "span": 145, "user_ty": null } } } ] }, - "span": 139 + "span": 145 } ], "terminator": { "kind": "Return", - "span": 138 + "span": 144 } } ], "locals": [ { "mutability": "Mut", - "span": 140, + "span": 146, "ty": 28 }, { "mutability": "Not", - "span": 141, + "span": 147, "ty": 12 } ], - "span": 142, + "span": 148, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 141 - }, - "value": { - "Const": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 12 - }, - "span": 73, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 12, @@ -3551,7 +3642,7 @@ { "Constant": { "const_": { - "id": 20, + "id": 22, "kind": { "Allocated": { "align": 4, @@ -3569,14 +3660,14 @@ }, "ty": 27 }, - "span": 153, + "span": 159, "user_ty": null } }, { "Constant": { "const_": { - "id": 21, + "id": 23, "kind": { "Allocated": { "align": 4, @@ -3594,14 +3685,14 @@ }, "ty": 27 }, - "span": 154, + "span": 160, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, + "id": 24, "kind": { "Allocated": { "align": 4, @@ -3619,14 +3710,14 @@ }, "ty": 27 }, - "span": 155, + "span": 161, "user_ty": null } }, { "Constant": { "const_": { - "id": 23, + "id": 25, "kind": { "Allocated": { "align": 4, @@ -3644,7 +3735,7 @@ }, "ty": 27 }, - "span": 156, + "span": 162, "user_ty": null } } @@ -3653,7 +3744,7 @@ } ] }, - "span": 157 + "span": 163 }, { "kind": { @@ -3676,7 +3767,7 @@ } ] }, - "span": 158 + "span": 164 }, { "kind": { @@ -3704,7 +3795,7 @@ { "Constant": { "const_": { - "id": 24, + "id": 26, "kind": { "Allocated": { "align": 8, @@ -3726,14 +3817,14 @@ }, "ty": 0 }, - "span": 159, + "span": 165, "user_ty": null } }, { "Constant": { "const_": { - "id": 25, + "id": 27, "kind": { "Allocated": { "align": 8, @@ -3755,7 +3846,7 @@ }, "ty": 0 }, - "span": 160, + "span": 166, "user_ty": null } } @@ -3764,7 +3855,7 @@ } ] }, - "span": 161 + "span": 167 } ], "terminator": { @@ -3791,11 +3882,11 @@ "func": { "Constant": { "const_": { - "id": 19, + "id": 21, "kind": "ZeroSized", "ty": 47 }, - "span": 152, + "span": 158, "user_ty": null } }, @@ -3803,7 +3894,7 @@ "unwind": "Continue" } }, - "span": 152 + "span": 158 } }, { @@ -3825,7 +3916,7 @@ } ] }, - "span": 163 + "span": 169 }, { "kind": { @@ -3848,7 +3939,7 @@ } ] }, - "span": 164 + "span": 170 }, { "kind": { @@ -3861,7 +3952,7 @@ "Use": { "Constant": { "const_": { - "id": 27, + "id": 29, "kind": { "Allocated": { "align": 8, @@ -3886,16 +3977,16 @@ } } }, - "ty": 40 + "ty": 39 }, - "span": 165, + "span": 171, "user_ty": null } } } ] }, - "span": 165 + "span": 171 } ], "terminator": { @@ -3922,11 +4013,11 @@ "func": { "Constant": { "const_": { - "id": 26, + "id": 28, "kind": "ZeroSized", "ty": 48 }, - "span": 162, + "span": 168, "user_ty": null } }, @@ -3934,7 +4025,7 @@ "unwind": "Continue" } }, - "span": 162 + "span": 168 } }, { @@ -3959,14 +4050,14 @@ } } }, - "span": 162 + "span": 168 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 166 + "span": 172 } }, { @@ -3978,7 +4069,7 @@ { "Constant": { "const_": { - "id": 29, + "id": 31, "kind": { "Allocated": { "align": 8, @@ -4013,7 +4104,7 @@ }, "ty": 50 }, - "span": 73, + "span": 70, "user_ty": null } } @@ -4025,11 +4116,11 @@ "func": { "Constant": { "const_": { - "id": 28, + "id": 30, "kind": "ZeroSized", "ty": 49 }, - "span": 167, + "span": 173, "user_ty": null } }, @@ -4037,63 +4128,63 @@ "unwind": "Continue" } }, - "span": 167 + "span": 173 } } ], "locals": [ { "mutability": "Mut", - "span": 168, + "span": 174, "ty": 12 }, { "mutability": "Not", - "span": 169, + "span": 175, "ty": 51 }, { "mutability": "Not", - "span": 170, + "span": 176, "ty": 5 }, { "mutability": "Not", - "span": 152, + "span": 158, "ty": 5 }, { "mutability": "Mut", - "span": 158, - "ty": 37 + "span": 164, + "ty": 36 }, { "mutability": "Mut", - "span": 161, + "span": 167, "ty": 6 }, { "mutability": "Mut", - "span": 162, + "span": 168, "ty": 9 }, { "mutability": "Mut", - "span": 164, + "span": 170, "ty": 44 }, { "mutability": "Mut", - "span": 165, - "ty": 40 + "span": 171, + "ty": 39 }, { "mutability": "Mut", - "span": 167, + "span": 173, "ty": 7 } ], - "span": 171, + "span": 177, "spread_arg": null, "var_debug_info": [ { @@ -4102,7 +4193,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 169 + "span": 175 }, "value": { "Place": { @@ -4117,7 +4208,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 170 + "span": 176 }, "value": { "Place": { @@ -4149,7 +4240,7 @@ { "Constant": { "const_": { - "id": 21, + "id": 23, "kind": { "Allocated": { "align": 4, @@ -4167,14 +4258,14 @@ }, "ty": 27 }, - "span": 172, + "span": 178, "user_ty": null } }, { "Constant": { "const_": { - "id": 22, + "id": 24, "kind": { "Allocated": { "align": 4, @@ -4192,7 +4283,7 @@ }, "ty": 27 }, - "span": 173, + "span": 179, "user_ty": null } } @@ -4201,7 +4292,7 @@ } ] }, - "span": 165 + "span": 171 }, { "kind": { @@ -4224,28 +4315,28 @@ } ] }, - "span": 165 + "span": 171 } ], "terminator": { "kind": "Return", - "span": 165 + "span": 171 } } ], "locals": [ { "mutability": "Mut", - "span": 165, - "ty": 40 + "span": 171, + "ty": 39 }, { "mutability": "Mut", - "span": 165, + "span": 171, "ty": 52 } ], - "span": 165, + "span": 171, "spread_arg": null, "var_debug_info": [] } @@ -4270,7 +4361,7 @@ "kind": { "StorageLive": 3 }, - "span": 145 + "span": 151 }, { "kind": { @@ -4288,12 +4379,12 @@ "projection": [] } }, - 40 + 39 ] } ] }, - "span": 145 + "span": 151 } ], "terminator": { @@ -4320,11 +4411,11 @@ "func": { "Constant": { "const_": { - "id": 18, + "id": 20, "kind": "ZeroSized", "ty": 46 }, - "span": 143, + "span": 149, "user_ty": null } }, @@ -4332,7 +4423,7 @@ "unwind": "Unreachable" } }, - "span": 144 + "span": 150 } }, { @@ -4341,38 +4432,38 @@ "kind": { "StorageDead": 3 }, - "span": 147 + "span": 153 } ], "terminator": { "kind": "Return", - "span": 146 + "span": 152 } } ], "locals": [ { "mutability": "Mut", - "span": 148, + "span": 154, "ty": 9 }, { "mutability": "Not", - "span": 149, - "ty": 40 + "span": 155, + "ty": 39 }, { "mutability": "Not", - "span": 150, - "ty": 40 + "span": 156, + "ty": 39 }, { "mutability": "Mut", - "span": 145, - "ty": 40 + "span": 151, + "ty": 39 } ], - "span": 151, + "span": 157, "spread_arg": null, "var_debug_info": [ { @@ -4381,7 +4472,7 @@ "name": "a", "source_info": { "scope": 0, - "span": 149 + "span": 155 }, "value": { "Place": { @@ -4396,7 +4487,7 @@ "name": "b", "source_info": { "scope": 0, - "span": 150 + "span": 156 }, "value": { "Place": { diff --git a/tests/integration/programs/strange-ref-deref.smir.json.expected b/tests/integration/programs/strange-ref-deref.smir.json.expected index 394ce0a..d8d139e 100644 --- a/tests/integration/programs/strange-ref-deref.smir.json.expected +++ b/tests/integration/programs/strange-ref-deref.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -43,55 +42,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 30, { "NoOpSym": "" } @@ -137,14 +127,14 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } } } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -167,7 +157,7 @@ } ] }, - "span": 52 + "span": 49 }, { "kind": { @@ -190,7 +180,7 @@ } ] }, - "span": 53 + "span": 50 }, { "kind": { @@ -209,7 +199,7 @@ } ] }, - "span": 53 + "span": 50 }, { "kind": { @@ -228,7 +218,7 @@ } ] }, - "span": 54 + "span": 51 }, { "kind": { @@ -249,7 +239,7 @@ } ] }, - "span": 55 + "span": 52 } ], "terminator": { @@ -272,14 +262,14 @@ } } }, - "span": 50 + "span": 47 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 56 + "span": 53 } }, { @@ -324,9 +314,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -340,9 +330,9 @@ "const_": { "id": 10, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 57, + "span": 54, "user_ty": null } }, @@ -350,48 +340,48 @@ "unwind": "Continue" } }, - "span": 57 + "span": 54 } } ], "locals": [ { "mutability": "Mut", - "span": 58, + "span": 55, "ty": 1 }, { "mutability": "Not", - "span": 59, + "span": 56, "ty": 16 }, { "mutability": "Mut", - "span": 60, - "ty": 27 + "span": 57, + "ty": 26 }, { "mutability": "Not", - "span": 53, - "ty": 28 + "span": 50, + "ty": 27 }, { "mutability": "Mut", - "span": 55, + "span": 52, "ty": 16 }, { "mutability": "Mut", - "span": 57, - "ty": 29 + "span": 54, + "ty": 28 }, { "mutability": "Mut", - "span": 53, - "ty": 27 + "span": 50, + "ty": 26 } ], - "span": 61, + "span": 58, "spread_arg": null, "var_debug_info": [ { @@ -400,7 +390,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 59 + "span": 56 }, "value": { "Place": { @@ -415,7 +405,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 60 + "span": 57 }, "value": { "Place": { @@ -455,12 +445,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -545,7 +529,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -556,12 +540,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -621,7 +599,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -650,51 +628,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -708,7 +686,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -718,7 +696,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -727,7 +705,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -742,7 +720,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -757,7 +735,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -772,7 +750,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -787,7 +765,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -819,19 +797,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -858,7 +836,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -883,7 +861,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -891,7 +869,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -900,7 +878,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -925,7 +903,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -933,7 +911,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -942,13 +920,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -957,42 +935,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1016,7 +958,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1030,7 +972,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1039,37 +981,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1079,27 +1015,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1112,7 +1043,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1135,7 +1066,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1143,21 +1074,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1195,7 +1111,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1209,9 +1125,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1219,7 +1135,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1235,7 +1151,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1249,9 +1165,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1259,35 +1175,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1296,7 +1212,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1311,7 +1227,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1326,7 +1242,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1335,7 +1251,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1387,9 +1303,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1397,35 +1313,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1436,73 +1352,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1538,7 +1387,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1567,9 +1416,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1579,7 +1428,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1595,14 +1444,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1618,40 +1467,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1662,6 +1511,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1674,23 +1590,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1737,58 +1653,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, diff --git a/tests/integration/programs/struct.smir.json.expected b/tests/integration/programs/struct.smir.json.expected index 0eeacdd..cf13294 100644 --- a/tests/integration/programs/struct.smir.json.expected +++ b/tests/integration/programs/struct.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -49,55 +48,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 32, { "NoOpSym": "" } @@ -126,12 +116,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -216,7 +200,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -227,12 +211,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -292,7 +270,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -321,51 +299,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -379,7 +357,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -389,7 +367,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -398,7 +376,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -413,7 +391,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -428,7 +406,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -443,7 +421,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -458,7 +436,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -490,19 +468,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -529,7 +507,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -554,7 +532,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -562,7 +540,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -571,7 +549,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -596,7 +574,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -604,7 +582,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -613,13 +591,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -628,42 +606,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -687,7 +629,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -701,7 +643,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -710,37 +652,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -750,27 +686,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -783,7 +714,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -806,7 +737,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -814,21 +745,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -866,7 +782,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -880,9 +796,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -890,7 +806,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -906,7 +822,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -920,9 +836,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -930,35 +846,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -967,7 +883,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -982,7 +898,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -997,7 +913,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1006,7 +922,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1058,9 +974,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1068,35 +984,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1135,35 +1051,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1209,7 +1125,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1238,9 +1154,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1250,7 +1166,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1266,14 +1182,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1289,40 +1205,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1345,23 +1261,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1408,58 +1324,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, @@ -1516,9 +1411,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1541,9 +1436,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 53, + "span": 50, "user_ty": null } } @@ -1552,7 +1447,7 @@ } ] }, - "span": 54 + "span": 51 }, { "kind": { @@ -1569,7 +1464,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -1578,7 +1473,7 @@ } ] }, - "span": 55 + "span": 52 }, { "kind": { @@ -1615,9 +1510,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 50, + "span": 47, "user_ty": null } } @@ -1625,7 +1520,7 @@ } ] }, - "span": 51 + "span": 48 } ], "terminator": { @@ -1638,7 +1533,7 @@ { "Field": [ 1, - 25 + 24 ] } ] @@ -1673,9 +1568,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 50, + "span": 47, "user_ty": null } } @@ -1685,7 +1580,7 @@ "unwind": "Continue" } }, - "span": 51 + "span": 48 } }, { @@ -1705,7 +1600,7 @@ { "Field": [ 0, - 26 + 25 ] } ] @@ -1714,7 +1609,7 @@ } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -1731,7 +1626,7 @@ { "Field": [ 1, - 26 + 25 ] } ] @@ -1740,7 +1635,7 @@ } ] }, - "span": 57 + "span": 54 }, { "kind": { @@ -1768,7 +1663,7 @@ } ] }, - "span": 56 + "span": 53 } ], "terminator": { @@ -1791,14 +1686,14 @@ } } }, - "span": 56 + "span": 53 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 58 + "span": 55 } }, { @@ -1843,9 +1738,9 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1859,9 +1754,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 59, + "span": 56, "user_ty": null } }, @@ -1869,53 +1764,53 @@ "unwind": "Continue" } }, - "span": 59 + "span": 56 } } ], "locals": [ { "mutability": "Mut", - "span": 60, + "span": 57, "ty": 1 }, { "mutability": "Not", - "span": 61, - "ty": 29 + "span": 58, + "ty": 28 }, { "mutability": "Mut", - "span": 56, - "ty": 25 + "span": 53, + "ty": 24 }, { "mutability": "Mut", - "span": 51, - "ty": 26 + "span": 48, + "ty": 25 }, { "mutability": "Mut", - "span": 55, - "ty": 26 + "span": 52, + "ty": 25 }, { "mutability": "Mut", - "span": 51, - "ty": 30 + "span": 48, + "ty": 29 }, { "mutability": "Mut", - "span": 57, - "ty": 26 + "span": 54, + "ty": 25 }, { "mutability": "Mut", - "span": 59, - "ty": 31 + "span": 56, + "ty": 30 } ], - "span": 62, + "span": 59, "spread_arg": null, "var_debug_info": [ { @@ -1924,7 +1819,7 @@ "name": "s", "source_info": { "scope": 1, - "span": 61 + "span": 58 }, "value": { "Place": { diff --git a/tests/integration/programs/sum-to-n.smir.json.expected b/tests/integration/programs/sum-to-n.smir.json.expected index 3aa2d1b..b9b0985 100644 --- a/tests/integration/programs/sum-to-n.smir.json.expected +++ b/tests/integration/programs/sum-to-n.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -41,67 +40,56 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 28, { "NormalSym": "_ZN8sum_to_n8sum_to_n17h" } ], [ - 29, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 32, { "NormalSym": "_ZN8sum_to_n13test_sum_to_n17h" } ], [ - 33, { "NoOpSym": "" } @@ -130,12 +118,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -220,7 +202,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -231,12 +213,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -296,7 +272,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -325,51 +301,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -383,7 +359,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -393,7 +369,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -402,7 +378,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -417,7 +393,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -432,7 +408,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -447,7 +423,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -462,7 +438,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -494,19 +470,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -533,7 +509,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -558,7 +534,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -566,7 +542,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -575,7 +551,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -600,7 +576,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -608,7 +584,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -617,13 +593,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -632,42 +608,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -691,7 +631,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -705,7 +645,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -714,37 +654,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -754,27 +688,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -787,7 +716,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -810,7 +739,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -818,21 +747,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -870,7 +784,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -884,9 +798,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -894,7 +808,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -910,7 +824,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -924,9 +838,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -934,35 +848,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -971,7 +885,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -986,7 +900,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1001,7 +915,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1010,7 +924,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1062,9 +976,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1072,35 +986,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1111,73 +1025,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1213,7 +1060,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1242,9 +1089,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1254,7 +1101,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1270,14 +1117,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1293,40 +1140,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1337,6 +1184,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1349,23 +1263,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1412,58 +1326,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, @@ -1513,16 +1406,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 71, + "span": 68, "user_ty": null } } } ] }, - "span": 72 + "span": 69 } ], "terminator": { @@ -1545,9 +1438,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 28 + "ty": 27 }, - "span": 69, + "span": 66, "user_ty": null } }, @@ -1555,7 +1448,7 @@ "unwind": "Continue" } }, - "span": 70 + "span": 67 } }, { @@ -1591,16 +1484,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 74, + "span": 71, "user_ty": null } } } ] }, - "span": 75 + "span": 72 }, { "kind": { @@ -1628,7 +1521,7 @@ } ] }, - "span": 76 + "span": 73 } ], "terminator": { @@ -1651,7 +1544,7 @@ } } }, - "span": 73 + "span": 70 } }, { @@ -1696,9 +1589,9 @@ } } }, - "ty": 30 + "ty": 29 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1712,9 +1605,9 @@ "const_": { "id": 14, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 77, + "span": 74, "user_ty": null } }, @@ -1722,50 +1615,50 @@ "unwind": "Continue" } }, - "span": 77 + "span": 74 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 78 + "span": 75 } } ], "locals": [ { "mutability": "Mut", - "span": 79, + "span": 76, "ty": 1 }, { "mutability": "Not", - "span": 80, - "ty": 26 + "span": 77, + "ty": 25 }, { "mutability": "Mut", - "span": 70, - "ty": 25 + "span": 67, + "ty": 24 }, { "mutability": "Mut", - "span": 72, - "ty": 25 + "span": 69, + "ty": 24 }, { "mutability": "Mut", - "span": 75, - "ty": 25 + "span": 72, + "ty": 24 }, { "mutability": "Mut", - "span": 77, - "ty": 31 + "span": 74, + "ty": 30 } ], - "span": 83, + "span": 80, "spread_arg": null, "var_debug_info": [ { @@ -1774,7 +1667,7 @@ "name": "n", "source_info": { "scope": 1, - "span": 81 + "span": 78 }, "value": { "Const": { @@ -1799,9 +1692,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 71, + "span": 68, "user_ty": null } } @@ -1812,7 +1705,7 @@ "name": "golden", "source_info": { "scope": 2, - "span": 82 + "span": 79 }, "value": { "Const": { @@ -1837,9 +1730,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 74, + "span": 71, "user_ty": null } } @@ -1850,7 +1743,7 @@ "name": "sucess", "source_info": { "scope": 3, - "span": 80 + "span": 77 }, "value": { "Place": { @@ -1891,9 +1784,9 @@ "const_": { "id": 16, "kind": "ZeroSized", - "ty": 32 + "ty": 31 }, - "span": 84, + "span": 81, "user_ty": null } }, @@ -1901,30 +1794,30 @@ "unwind": "Continue" } }, - "span": 85 + "span": 82 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 86 + "span": 83 } } ], "locals": [ { "mutability": "Mut", - "span": 87, + "span": 84, "ty": 1 }, { "mutability": "Not", - "span": 85, + "span": 82, "ty": 1 } ], - "span": 88, + "span": 85, "spread_arg": null, "var_debug_info": [] } @@ -1976,16 +1869,16 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 51, + "span": 48, "user_ty": null } } } ] }, - "span": 51 + "span": 48 }, { "kind": { @@ -2004,7 +1897,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -2013,7 +1906,7 @@ "target": 1 } }, - "span": 50 + "span": 47 } }, { @@ -2035,7 +1928,7 @@ } ] }, - "span": 54 + "span": 51 }, { "kind": { @@ -2076,9 +1969,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 55, + "span": 52, "user_ty": null } } @@ -2086,7 +1979,7 @@ } ] }, - "span": 53 + "span": 50 } ], "terminator": { @@ -2109,7 +2002,7 @@ } } }, - "span": 53 + "span": 50 } }, { @@ -2131,7 +2024,7 @@ } ] }, - "span": 57 + "span": 54 }, { "kind": { @@ -2159,7 +2052,7 @@ } ] }, - "span": 56 + "span": 53 } ], "terminator": { @@ -2172,7 +2065,7 @@ { "Field": [ 1, - 26 + 25 ] } ] @@ -2200,7 +2093,7 @@ "unwind": "Continue" } }, - "span": 56 + "span": 53 } }, { @@ -2220,7 +2113,7 @@ { "Field": [ 0, - 25 + 24 ] } ] @@ -2229,7 +2122,7 @@ } ] }, - "span": 56 + "span": 53 }, { "kind": { @@ -2248,7 +2141,7 @@ } ] }, - "span": 60 + "span": 57 }, { "kind": { @@ -2289,9 +2182,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 58, + "span": 55, "user_ty": null } } @@ -2299,7 +2192,7 @@ } ] }, - "span": 59 + "span": 56 } ], "terminator": { @@ -2312,7 +2205,7 @@ { "Field": [ 1, - 26 + 25 ] } ] @@ -2351,9 +2244,9 @@ } } }, - "ty": 25 + "ty": 24 }, - "span": 58, + "span": 55, "user_ty": null } } @@ -2363,7 +2256,7 @@ "unwind": "Continue" } }, - "span": 59 + "span": 56 } }, { @@ -2383,7 +2276,7 @@ { "Field": [ 0, - 25 + 24 ] } ] @@ -2392,7 +2285,7 @@ } ] }, - "span": 61 + "span": 58 } ], "terminator": { @@ -2401,7 +2294,7 @@ "target": 1 } }, - "span": 50 + "span": 47 } }, { @@ -2423,68 +2316,68 @@ } ] }, - "span": 63 + "span": 60 } ], "terminator": { "kind": "Return", - "span": 62 + "span": 59 } } ], "locals": [ { "mutability": "Mut", - "span": 64, - "ty": 25 + "span": 61, + "ty": 24 }, { "mutability": "Not", - "span": 65, - "ty": 25 + "span": 62, + "ty": 24 }, { "mutability": "Mut", - "span": 66, - "ty": 25 + "span": 63, + "ty": 24 }, { "mutability": "Mut", - "span": 67, - "ty": 25 + "span": 64, + "ty": 24 }, { "mutability": "Mut", - "span": 53, - "ty": 26 + "span": 50, + "ty": 25 }, { "mutability": "Mut", - "span": 54, - "ty": 25 + "span": 51, + "ty": 24 }, { "mutability": "Mut", - "span": 57, - "ty": 25 + "span": 54, + "ty": 24 }, { "mutability": "Mut", - "span": 56, - "ty": 27 + "span": 53, + "ty": 26 }, { "mutability": "Mut", - "span": 60, - "ty": 25 + "span": 57, + "ty": 24 }, { "mutability": "Mut", - "span": 59, - "ty": 27 + "span": 56, + "ty": 26 } ], - "span": 68, + "span": 65, "spread_arg": null, "var_debug_info": [ { @@ -2493,7 +2386,7 @@ "name": "n", "source_info": { "scope": 0, - "span": 65 + "span": 62 }, "value": { "Place": { @@ -2508,7 +2401,7 @@ "name": "sum", "source_info": { "scope": 1, - "span": 66 + "span": 63 }, "value": { "Place": { @@ -2523,7 +2416,7 @@ "name": "counter", "source_info": { "scope": 2, - "span": 67 + "span": 64 }, "value": { "Place": { diff --git a/tests/integration/programs/tuple-eq.smir.json.expected b/tests/integration/programs/tuple-eq.smir.json.expected index 00dc480..d64beff 100644 --- a/tests/integration/programs/tuple-eq.smir.json.expected +++ b/tests/integration/programs/tuple-eq.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 4, @@ -23,7 +22,6 @@ } ], [ - 1, { "Memory": { "align": 1, @@ -72,67 +70,56 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 23, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 25, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 27, { "NormalSym": "_ZN4core3cmp5impls54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$i32$GT$2eq17h" } ], [ - 29, { "NormalSym": "_ZN4core5tuple64_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$$LP$U$C$T$RP$$GT$2eq17h" } ], [ - 30, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 34, { "NoOpSym": "" } @@ -161,12 +148,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -251,7 +232,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -262,12 +243,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -327,7 +302,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -356,51 +331,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -414,7 +389,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -424,7 +399,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -433,7 +408,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -448,7 +423,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -463,7 +438,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -478,7 +453,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -493,7 +468,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -525,19 +500,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -564,7 +539,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -589,7 +564,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -597,7 +572,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -606,7 +581,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -631,7 +606,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -639,7 +614,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -648,13 +623,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -663,42 +638,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -722,7 +661,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -736,7 +675,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -745,37 +684,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -785,27 +718,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -818,7 +746,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -841,7 +769,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -849,21 +777,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -901,7 +814,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -915,9 +828,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -925,7 +838,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -941,7 +854,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -955,9 +868,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -965,35 +878,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1002,7 +915,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1017,7 +930,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1032,7 +945,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1041,7 +954,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1069,7 +982,7 @@ "kind": { "StorageLive": 3 }, - "span": 44 + "span": 41 }, { "kind": { @@ -1090,13 +1003,13 @@ } ] }, - "span": 44 + "span": 41 }, { "kind": { "StorageLive": 4 }, - "span": 45 + "span": 42 }, { "kind": { @@ -1117,7 +1030,7 @@ } ] }, - "span": 45 + "span": 42 }, { "kind": { @@ -1145,55 +1058,55 @@ } ] }, - "span": 46 + "span": 43 }, { "kind": { "StorageDead": 4 }, - "span": 47 + "span": 44 }, { "kind": { "StorageDead": 3 }, - "span": 47 + "span": 44 } ], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 48, - "ty": 21 + "span": 45, + "ty": 20 }, { "mutability": "Not", - "span": 49, - "ty": 22 + "span": 46, + "ty": 21 }, { "mutability": "Not", - "span": 50, - "ty": 22 + "span": 47, + "ty": 21 }, { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 16 }, { "mutability": "Mut", - "span": 45, + "span": 42, "ty": 16 } ], - "span": 51, + "span": 48, "spread_arg": null, "var_debug_info": [ { @@ -1202,7 +1115,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 49 + "span": 46 }, "value": { "Place": { @@ -1217,7 +1130,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -1273,9 +1186,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1283,35 +1196,35 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 16 }, { "mutability": "Not", - "span": 52, - "ty": 24 + "span": 49, + "ty": 23 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } @@ -1322,6 +1235,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 49 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 49 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 49, + "ty": 1 + }, + { + "mutability": "Not", + "span": 49, + "ty": 7 + }, + { + "mutability": "Not", + "span": 49, + "ty": 1 + } + ], + "span": 49, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 4, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1357,7 +1337,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -1386,9 +1366,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1398,7 +1378,7 @@ } } }, - "span": 52 + "span": 49 } }, { @@ -1414,14 +1394,14 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } }, { @@ -1437,40 +1417,40 @@ "unwind": "Terminate" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 16 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 12 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 }, { "mutability": "Not", - "span": 52, - "ty": 26 + "span": 49, + "ty": 25 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } @@ -1481,73 +1461,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 52 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 52 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 52, - "ty": 1 - }, - { - "mutability": "Not", - "span": 52, - "ty": 7 - }, - { - "mutability": "Not", - "span": 52, - "ty": 1 - } - ], - "span": 52, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 4, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1560,23 +1473,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 53 + "span": 50 } } ], "locals": [ { "mutability": "Mut", - "span": 53, + "span": 50, "ty": 1 }, { "mutability": "Not", - "span": 53, - "ty": 24 + "span": 50, + "ty": 23 } ], - "span": 53, + "span": 50, "spread_arg": null, "var_debug_info": [] } @@ -1601,13 +1514,13 @@ "kind": { "StorageLive": 3 }, - "span": 54 + "span": 51 }, { "kind": { "StorageLive": 4 }, - "span": 55 + "span": 52 }, { "kind": { @@ -1638,13 +1551,13 @@ } ] }, - "span": 55 + "span": 52 }, { "kind": { "StorageLive": 5 }, - "span": 56 + "span": 53 }, { "kind": { @@ -1675,7 +1588,7 @@ } ] }, - "span": 56 + "span": 53 } ], "terminator": { @@ -1704,9 +1617,9 @@ "const_": { "id": 8, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -1714,7 +1627,7 @@ "unwind": "Continue" } }, - "span": 54 + "span": 51 } }, { @@ -1739,7 +1652,7 @@ } } }, - "span": 54 + "span": 51 } }, { @@ -1748,19 +1661,19 @@ "kind": { "StorageDead": 5 }, - "span": 57 + "span": 54 }, { "kind": { "StorageDead": 4 }, - "span": 57 + "span": 54 }, { "kind": { "StorageLive": 6 }, - "span": 55 + "span": 52 }, { "kind": { @@ -1791,13 +1704,13 @@ } ] }, - "span": 55 + "span": 52 }, { "kind": { "StorageLive": 7 }, - "span": 56 + "span": 53 }, { "kind": { @@ -1828,7 +1741,7 @@ } ] }, - "span": 56 + "span": 53 } ], "terminator": { @@ -1857,9 +1770,9 @@ "const_": { "id": 8, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -1867,7 +1780,7 @@ "unwind": "Continue" } }, - "span": 54 + "span": 51 } }, { @@ -1876,13 +1789,13 @@ "kind": { "StorageDead": 5 }, - "span": 57 + "span": 54 }, { "kind": { "StorageDead": 4 }, - "span": 57 + "span": 54 }, { "kind": { @@ -1908,16 +1821,16 @@ } } }, - "ty": 21 + "ty": 20 }, - "span": 54, + "span": 51, "user_ty": null } } } ] }, - "span": 54 + "span": 51 } ], "terminator": { @@ -1926,7 +1839,7 @@ "target": 5 } }, - "span": 54 + "span": 51 } }, { @@ -1935,13 +1848,13 @@ "kind": { "StorageDead": 7 }, - "span": 57 + "span": 54 }, { "kind": { "StorageDead": 6 }, - "span": 57 + "span": 54 } ], "terminator": { @@ -1950,7 +1863,7 @@ "target": 5 } }, - "span": 54 + "span": 51 } }, { @@ -1959,58 +1872,58 @@ "kind": { "StorageDead": 3 }, - "span": 57 + "span": 54 } ], "terminator": { "kind": "Return", - "span": 58 + "span": 55 } } ], "locals": [ { "mutability": "Mut", - "span": 59, - "ty": 21 + "span": 56, + "ty": 20 }, { "mutability": "Not", - "span": 60, - "ty": 28 + "span": 57, + "ty": 27 }, { "mutability": "Not", - "span": 61, - "ty": 28 + "span": 58, + "ty": 27 }, { "mutability": "Mut", - "span": 54, - "ty": 21 + "span": 51, + "ty": 20 }, { "mutability": "Mut", - "span": 55, - "ty": 22 + "span": 52, + "ty": 21 }, { "mutability": "Mut", - "span": 56, - "ty": 22 + "span": 53, + "ty": 21 }, { "mutability": "Mut", - "span": 55, - "ty": 22 + "span": 52, + "ty": 21 }, { "mutability": "Mut", - "span": 56, - "ty": 22 + "span": 53, + "ty": 21 } ], - "span": 62, + "span": 59, "spread_arg": null, "var_debug_info": [ { @@ -2019,7 +1932,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 60 + "span": 57 }, "value": { "Place": { @@ -2034,7 +1947,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 61 + "span": 58 }, "value": { "Place": { @@ -2088,58 +2001,37 @@ }, "ty": 17 }, - "span": 64, + "span": 61, "user_ty": null } } } ] }, - "span": 64 + "span": 61 } ], "terminator": { "kind": "Return", - "span": 63 + "span": 60 } } ], "locals": [ { "mutability": "Mut", - "span": 65, + "span": 62, "ty": 17 }, { "mutability": "Not", - "span": 66, + "span": 63, "ty": 1 } ], - "span": 67, + "span": 64, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 66 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 7, @@ -2190,7 +2082,7 @@ }, "ty": 16 }, - "span": 69, + "span": 66, "user_ty": null } }, @@ -2215,7 +2107,7 @@ }, "ty": 16 }, - "span": 70, + "span": 67, "user_ty": null } } @@ -2224,7 +2116,7 @@ } ] }, - "span": 71 + "span": 68 }, { "kind": { @@ -2247,7 +2139,7 @@ } ] }, - "span": 72 + "span": 69 }, { "kind": { @@ -2285,16 +2177,16 @@ } } }, - "ty": 28 + "ty": 27 }, - "span": 73, + "span": 70, "user_ty": null } } } ] }, - "span": 73 + "span": 70 } ], "terminator": { @@ -2323,9 +2215,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 68, + "span": 65, "user_ty": null } }, @@ -2333,7 +2225,7 @@ "unwind": "Continue" } }, - "span": 68 + "span": 65 } }, { @@ -2358,14 +2250,14 @@ } } }, - "span": 68 + "span": 65 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 74 + "span": 71 } }, { @@ -2410,9 +2302,9 @@ } } }, - "ty": 31 + "ty": 30 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2426,9 +2318,9 @@ "const_": { "id": 15, "kind": "ZeroSized", - "ty": 30 + "ty": 29 }, - "span": 75, + "span": 72, "user_ty": null } }, @@ -2436,43 +2328,43 @@ "unwind": "Continue" } }, - "span": 75 + "span": 72 } } ], "locals": [ { "mutability": "Mut", - "span": 76, + "span": 73, "ty": 1 }, { "mutability": "Not", - "span": 77, - "ty": 32 + "span": 74, + "ty": 31 }, { "mutability": "Mut", - "span": 68, - "ty": 21 + "span": 65, + "ty": 20 }, { "mutability": "Mut", - "span": 72, - "ty": 28 + "span": 69, + "ty": 27 }, { "mutability": "Mut", - "span": 73, - "ty": 28 + "span": 70, + "ty": 27 }, { "mutability": "Mut", - "span": 75, - "ty": 33 + "span": 72, + "ty": 32 } ], - "span": 78, + "span": 75, "spread_arg": null, "var_debug_info": [ { @@ -2481,7 +2373,7 @@ "name": "tup", "source_info": { "scope": 1, - "span": 77 + "span": 74 }, "value": { "Place": { @@ -2529,7 +2421,7 @@ }, "ty": 16 }, - "span": 79, + "span": 76, "user_ty": null } }, @@ -2554,7 +2446,7 @@ }, "ty": 16 }, - "span": 80, + "span": 77, "user_ty": null } } @@ -2563,7 +2455,7 @@ } ] }, - "span": 73 + "span": 70 }, { "kind": { @@ -2586,28 +2478,28 @@ } ] }, - "span": 73 + "span": 70 } ], "terminator": { "kind": "Return", - "span": 73 + "span": 70 } } ], "locals": [ { "mutability": "Mut", - "span": 73, - "ty": 28 + "span": 70, + "ty": 27 }, { "mutability": "Mut", - "span": 73, - "ty": 32 + "span": 70, + "ty": 31 } ], - "span": 73, + "span": 70, "spread_arg": null, "var_debug_info": [] } diff --git a/tests/integration/programs/tuples-simple.smir.json.expected b/tests/integration/programs/tuples-simple.smir.json.expected index ca8895d..b289b9d 100644 --- a/tests/integration/programs/tuples-simple.smir.json.expected +++ b/tests/integration/programs/tuples-simple.smir.json.expected @@ -1,7 +1,6 @@ { "allocs": [ [ - 0, { "Memory": { "align": 1, @@ -49,55 +48,46 @@ ], "functions": [ [ - 0, { "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ - 13, { "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ - 14, { "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ - 19, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 20, { "IntrinsicSym": "black_box" } ], [ - 21, { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ - 23, { "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ - 25, { "NormalSym": "_ZN4core9panicking5panic17h" } ], [ - 30, { "NoOpSym": "" } @@ -146,7 +136,7 @@ }, "ty": 16 }, - "span": 51, + "span": 48, "user_ty": null } }, @@ -171,7 +161,7 @@ }, "ty": 16 }, - "span": 52, + "span": 49, "user_ty": null } } @@ -180,7 +170,7 @@ } ] }, - "span": 53 + "span": 50 }, { "kind": { @@ -206,7 +196,7 @@ } ] }, - "span": 54 + "span": 51 }, { "kind": { @@ -232,7 +222,7 @@ } ] }, - "span": 55 + "span": 52 }, { "kind": { @@ -260,7 +250,7 @@ } ] }, - "span": 50 + "span": 47 } ], "terminator": { @@ -283,14 +273,14 @@ } } }, - "span": 50 + "span": 47 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 56 + "span": 53 } }, { @@ -335,9 +325,9 @@ } } }, - "ty": 26 + "ty": 25 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -351,9 +341,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 57, + "span": 54, "user_ty": null } }, @@ -361,43 +351,43 @@ "unwind": "Continue" } }, - "span": 57 + "span": 54 } } ], "locals": [ { "mutability": "Mut", - "span": 58, + "span": 55, "ty": 1 }, { "mutability": "Not", - "span": 59, - "ty": 27 + "span": 56, + "ty": 26 }, { "mutability": "Mut", - "span": 50, - "ty": 28 + "span": 47, + "ty": 27 }, { "mutability": "Mut", - "span": 54, + "span": 51, "ty": 16 }, { "mutability": "Mut", - "span": 55, + "span": 52, "ty": 16 }, { "mutability": "Mut", - "span": 57, - "ty": 29 + "span": 54, + "ty": 28 } ], - "span": 60, + "span": 57, "spread_arg": null, "var_debug_info": [ { @@ -406,7 +396,7 @@ "name": "tup", "source_info": { "scope": 1, - "span": 59 + "span": 56 }, "value": { "Place": { @@ -446,12 +436,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -536,7 +520,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -547,12 +531,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -612,7 +590,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -641,51 +619,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -699,7 +677,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -709,7 +687,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -718,7 +696,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -733,7 +711,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -748,7 +726,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -763,7 +741,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -778,7 +756,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -810,19 +788,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -849,7 +827,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -874,7 +852,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -882,7 +860,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -891,7 +869,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -916,7 +894,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -924,7 +902,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -933,13 +911,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -948,42 +926,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1007,7 +949,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1021,7 +963,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1030,37 +972,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1070,27 +1006,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1103,7 +1034,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1126,7 +1057,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1134,21 +1065,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1186,7 +1102,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1200,9 +1116,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1210,7 +1126,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1226,7 +1142,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1240,9 +1156,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1250,35 +1166,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1287,7 +1203,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1302,7 +1218,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1317,7 +1233,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1326,7 +1242,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1378,9 +1294,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1388,35 +1304,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1455,35 +1371,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1529,7 +1445,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1558,9 +1474,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1570,7 +1486,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1586,14 +1502,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1609,40 +1525,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1665,23 +1581,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1728,58 +1644,37 @@ }, "ty": 17 }, - "span": 46, + "span": 43, "user_ty": null } } } ] }, - "span": 46 + "span": 43 } ], "terminator": { "kind": "Return", - "span": 45 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 47, + "span": 44, "ty": 17 }, { "mutability": "Not", - "span": 48, + "span": 45, "ty": 1 } ], - "span": 49, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 48 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 5, From c8665097bb006139f83be7365037e2d6f8835848 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 16 Jan 2025 11:13:28 +1100 Subject: [PATCH 13/15] include function name in sort key for items (call_once duplicates) --- tests/integration/normalise-filter.jq | 4 +- .../programs/assert_eq.smir.json.expected | 134 +++++++++--------- .../programs/binop.smir.json.expected | 134 +++++++++--------- .../const-arithm-simple.smir.json.expected | 134 +++++++++--------- .../double-ref-deref.smir.json.expected | 134 +++++++++--------- .../programs/fibonacci.smir.json.expected | 134 +++++++++--------- .../primitive-type-bounds.smir.json.expected | 134 +++++++++--------- .../recursion-simple-match.smir.json.expected | 134 +++++++++--------- .../recursion-simple.smir.json.expected | 134 +++++++++--------- .../programs/slice.smir.json.expected | 134 +++++++++--------- .../strange-ref-deref.smir.json.expected | 134 +++++++++--------- .../programs/sum-to-n.smir.json.expected | 134 +++++++++--------- 12 files changed, 739 insertions(+), 739 deletions(-) diff --git a/tests/integration/normalise-filter.jq b/tests/integration/normalise-filter.jq index fc04d8a..31dd8a2 100644 --- a/tests/integration/normalise-filter.jq +++ b/tests/integration/normalise-filter.jq @@ -17,7 +17,7 @@ ), items: ( [ .items[] ] -# sort items by symbol name they refer to - | sort_by(.symbol_name) +# sort items by symbol name they refer to and by the function name for functions + | sort_by(.symbol_name, .mono_item_kind.MonoItemFn.name) ) } \ No newline at end of file diff --git a/tests/integration/programs/assert_eq.smir.json.expected b/tests/integration/programs/assert_eq.smir.json.expected index 716eaef..be856ca 100644 --- a/tests/integration/programs/assert_eq.smir.json.expected +++ b/tests/integration/programs/assert_eq.smir.json.expected @@ -977,6 +977,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1136,73 +1203,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/binop.smir.json.expected b/tests/integration/programs/binop.smir.json.expected index 05ded48..39e9921 100644 --- a/tests/integration/programs/binop.smir.json.expected +++ b/tests/integration/programs/binop.smir.json.expected @@ -2086,6 +2086,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -2245,73 +2312,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/const-arithm-simple.smir.json.expected b/tests/integration/programs/const-arithm-simple.smir.json.expected index 18a6705..a5c6988 100644 --- a/tests/integration/programs/const-arithm-simple.smir.json.expected +++ b/tests/integration/programs/const-arithm-simple.smir.json.expected @@ -1487,6 +1487,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1646,73 +1713,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/double-ref-deref.smir.json.expected b/tests/integration/programs/double-ref-deref.smir.json.expected index 3dc9b49..53d05f1 100644 --- a/tests/integration/programs/double-ref-deref.smir.json.expected +++ b/tests/integration/programs/double-ref-deref.smir.json.expected @@ -1349,6 +1349,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1508,73 +1575,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/fibonacci.smir.json.expected b/tests/integration/programs/fibonacci.smir.json.expected index 4d6cad5..b716cd6 100644 --- a/tests/integration/programs/fibonacci.smir.json.expected +++ b/tests/integration/programs/fibonacci.smir.json.expected @@ -1022,6 +1022,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1181,73 +1248,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/primitive-type-bounds.smir.json.expected b/tests/integration/programs/primitive-type-bounds.smir.json.expected index b68ee58..86bf1a4 100644 --- a/tests/integration/programs/primitive-type-bounds.smir.json.expected +++ b/tests/integration/programs/primitive-type-bounds.smir.json.expected @@ -1461,6 +1461,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1620,73 +1687,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/recursion-simple-match.smir.json.expected b/tests/integration/programs/recursion-simple-match.smir.json.expected index 6e38528..d6f6751 100644 --- a/tests/integration/programs/recursion-simple-match.smir.json.expected +++ b/tests/integration/programs/recursion-simple-match.smir.json.expected @@ -1665,6 +1665,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1824,73 +1891,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/recursion-simple.smir.json.expected b/tests/integration/programs/recursion-simple.smir.json.expected index c548d35..ebc6d5f 100644 --- a/tests/integration/programs/recursion-simple.smir.json.expected +++ b/tests/integration/programs/recursion-simple.smir.json.expected @@ -1665,6 +1665,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1824,73 +1891,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/slice.smir.json.expected b/tests/integration/programs/slice.smir.json.expected index 8dddfc5..6f1b9bf 100644 --- a/tests/integration/programs/slice.smir.json.expected +++ b/tests/integration/programs/slice.smir.json.expected @@ -1936,6 +1936,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 81 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 81 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 81, + "ty": 12 + }, + { + "mutability": "Not", + "span": 81, + "ty": 18 + }, + { + "mutability": "Not", + "span": 81, + "ty": 12 + } + ], + "span": 81, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 5, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -2095,73 +2162,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 81 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 81 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 81, - "ty": 12 - }, - { - "mutability": "Not", - "span": 81, - "ty": 18 - }, - { - "mutability": "Not", - "span": 81, - "ty": 12 - } - ], - "span": 81, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 5, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/strange-ref-deref.smir.json.expected b/tests/integration/programs/strange-ref-deref.smir.json.expected index d8d139e..cb37763 100644 --- a/tests/integration/programs/strange-ref-deref.smir.json.expected +++ b/tests/integration/programs/strange-ref-deref.smir.json.expected @@ -1352,6 +1352,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1511,73 +1578,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { diff --git a/tests/integration/programs/sum-to-n.smir.json.expected b/tests/integration/programs/sum-to-n.smir.json.expected index b9b0985..5b34262 100644 --- a/tests/integration/programs/sum-to-n.smir.json.expected +++ b/tests/integration/programs/sum-to-n.smir.json.expected @@ -1025,6 +1025,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1184,73 +1251,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 40 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 40 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 40, - "ty": 1 - }, - { - "mutability": "Not", - "span": 40, - "ty": 7 - }, - { - "mutability": "Not", - "span": 40, - "ty": 1 - } - ], - "span": 40, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { From 776fefc3d036e192ab1b14ff8de99a61d75976c7 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 16 Jan 2025 11:37:51 +1100 Subject: [PATCH 14/15] remove some commented code, add TODO comments for TyKind --- src/printer.rs | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/printer.rs b/src/printer.rs index b4bf470..7fc6db1 100644 --- a/src/printer.rs +++ b/src/printer.rs @@ -11,11 +11,18 @@ extern crate stable_mir; extern crate serde; extern crate serde_json; use rustc_middle as middle; -use rustc_middle::ty::{TyCtxt, Ty, TyKind, EarlyBinder, FnSig, GenericArgs, TypeFoldable, TypingEnv}; //, Binder, Generics, GenericPredicates +use rustc_middle::ty::{TyCtxt, Ty, TyKind, EarlyBinder, FnSig, GenericArgs, TypeFoldable, TypingEnv}; use rustc_session::config::{OutFileName, OutputType}; -use rustc_span::{def_id::{DefId, LOCAL_CRATE}, symbol}; // DUMMY_SP, symbol::sym::test; +use rustc_span::{def_id::{DefId, LOCAL_CRATE}, symbol}; use rustc_smir::rustc_internal; -use stable_mir::{CrateItem,CrateDef,ItemKind,mir::{Body,LocalDecl,Terminator,TerminatorKind,Rvalue,visit::MirVisitor},ty::{Allocation,ForeignItemKind},mir::mono::{MonoItem,Instance,InstanceKind}}; // Symbol +use stable_mir::{ + CrateItem, + CrateDef, + ItemKind, + mir::{Body,LocalDecl,Terminator,TerminatorKind,Rvalue,visit::MirVisitor}, + ty::{Allocation,ForeignItemKind}, + mir::mono::{MonoItem,Instance,InstanceKind} +}; use serde::{Serialize, Serializer}; // Structs for serializing extra details about mono items @@ -366,7 +373,7 @@ pub enum AllocInfo { Function(stable_mir::mir::mono::Instance), VTable(stable_mir::ty::Ty, Option>), Static(stable_mir::mir::mono::StaticDef), - Memory(/* stable_mir::ty::TyKind, */ stable_mir::ty::Allocation), + Memory(stable_mir::ty::Allocation), // TODO include stable_mir::ty::TyKind? } type LinkMap<'tcx> = HashMap, (ItemSource, FnSymType)>; type AllocMap = HashMap; @@ -427,7 +434,7 @@ fn collect_alloc(val_collector: &mut InternedValueCollector, kind: Option { let pointed_kind = get_prov_type(kind); if debug_enabled() { println!("DEBUG: called collect_alloc: {:?}:{:?}:{:?}", val, pointed_kind, global_alloc); } - entry.or_insert(AllocInfo::Memory(alloc.clone())); // pointed_kind.clone().unwrap(), alloc.clone())); + entry.or_insert(AllocInfo::Memory(alloc.clone())); // TODO: include pointed_kind.clone().unwrap() ? alloc.provenance.ptrs.iter().for_each(|(_, prov)| { collect_alloc(val_collector, pointed_kind.clone(), prov.0); }); From 31fbd24b6f2501a048004f0341adc032cdfc24e5 Mon Sep 17 00:00:00 2001 From: Jost Berthold Date: Thu, 16 Jan 2025 11:43:08 +1100 Subject: [PATCH 15/15] update expectations for failing tests once more --- .../failing/array.smir.json.expected | 447 +- .../failing/box.smir.json.expected | 8799 ++--- .../failing/defined-trait.smir.json.expected | 27669 ---------------- .../derive-copy-struct.smir.json.expected | 674 +- .../failing/generic.smir.json.expected | 907 +- .../failing/panic_example.smir.json.expected | 12505 +------ .../std-string-empty.smir.json.expected | 7957 +---- .../failing/std-to-string.smir.json.expected | 27369 --------------- .../failing/str-empty.smir.json.expected | 1329 +- .../failing/str-trivial.smir.json.expected | 1431 +- 10 files changed, 8437 insertions(+), 80650 deletions(-) diff --git a/tests/integration/failing/array.smir.json.expected b/tests/integration/failing/array.smir.json.expected index 0a4d0f3..4f82c5c 100644 --- a/tests/integration/failing/array.smir.json.expected +++ b/tests/integration/failing/array.smir.json.expected @@ -163,12 +163,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -253,7 +247,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -264,12 +258,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -329,7 +317,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -358,51 +346,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -416,7 +404,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -426,7 +414,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -435,7 +423,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -450,7 +438,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -465,7 +453,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -480,7 +468,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -495,7 +483,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -527,19 +515,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -566,7 +554,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -591,7 +579,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -599,7 +587,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -608,7 +596,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -633,7 +621,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -641,7 +629,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -650,13 +638,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -665,42 +653,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -724,7 +676,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -738,7 +690,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -747,37 +699,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -787,27 +733,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -820,7 +761,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -843,7 +784,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -851,21 +792,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -903,7 +829,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -917,9 +843,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -927,7 +853,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -943,7 +869,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -957,9 +883,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -967,35 +893,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1004,7 +930,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1019,7 +945,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1034,7 +960,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1043,7 +969,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1095,9 +1021,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1105,35 +1031,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1172,35 +1098,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 7 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1246,7 +1172,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1275,9 +1201,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1287,7 +1213,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1303,14 +1229,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1326,40 +1252,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1382,23 +1308,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1445,9 +1371,9 @@ "const_": { "id": 8, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 45, + "span": 42, "user_ty": null } }, @@ -1455,35 +1381,35 @@ "unwind": "Continue" } }, - "span": 46 + "span": 43 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 47 + "span": 44 } } ], "locals": [ { "mutability": "Mut", - "span": 48, - "ty": 26 + "span": 45, + "ty": 25 }, { "mutability": "Not", - "span": 49, - "ty": 27 + "span": 46, + "ty": 26 }, { "mutability": "Not", - "span": 50, - "ty": 27 + "span": 47, + "ty": 26 } ], - "span": 51, + "span": 48, "spread_arg": null, "var_debug_info": [ { @@ -1492,7 +1418,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 49 + "span": 46 }, "value": { "Place": { @@ -1507,7 +1433,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -1561,58 +1487,37 @@ }, "ty": 17 }, - "span": 53, + "span": 50, "user_ty": null } } } ] }, - "span": 53 + "span": 50 } ], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 54, + "span": 51, "ty": 17 }, { "mutability": "Not", - "span": 55, + "span": 52, "ty": 1 } ], - "span": 56, + "span": 53, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 55 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 6, @@ -1665,7 +1570,7 @@ }, "ty": 16 }, - "span": 67, + "span": 64, "user_ty": null } }, @@ -1690,7 +1595,7 @@ }, "ty": 16 }, - "span": 68, + "span": 65, "user_ty": null } }, @@ -1715,7 +1620,7 @@ }, "ty": 16 }, - "span": 69, + "span": 66, "user_ty": null } }, @@ -1740,7 +1645,7 @@ }, "ty": 16 }, - "span": 70, + "span": 67, "user_ty": null } } @@ -1749,7 +1654,7 @@ } ] }, - "span": 71 + "span": 68 }, { "kind": { @@ -1772,7 +1677,7 @@ } ] }, - "span": 72 + "span": 69 }, { "kind": { @@ -1810,16 +1715,16 @@ } } }, - "ty": 27 + "ty": 26 }, - "span": 73, + "span": 70, "user_ty": null } } } ] }, - "span": 73 + "span": 70 } ], "terminator": { @@ -1848,9 +1753,9 @@ "const_": { "id": 11, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 66, + "span": 63, "user_ty": null } }, @@ -1858,7 +1763,7 @@ "unwind": "Continue" } }, - "span": 66 + "span": 63 } }, { @@ -1883,14 +1788,14 @@ } } }, - "span": 66 + "span": 63 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 74 + "span": 71 } }, { @@ -1935,9 +1840,9 @@ } } }, - "ty": 31 + "ty": 30 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1951,9 +1856,9 @@ "const_": { "id": 17, "kind": "ZeroSized", - "ty": 30 + "ty": 29 }, - "span": 75, + "span": 72, "user_ty": null } }, @@ -1961,43 +1866,43 @@ "unwind": "Continue" } }, - "span": 75 + "span": 72 } } ], "locals": [ { "mutability": "Mut", - "span": 76, + "span": 73, "ty": 1 }, { "mutability": "Not", - "span": 77, - "ty": 32 + "span": 74, + "ty": 31 }, { "mutability": "Mut", - "span": 66, - "ty": 26 + "span": 63, + "ty": 25 }, { "mutability": "Mut", - "span": 72, - "ty": 27 + "span": 69, + "ty": 26 }, { "mutability": "Mut", - "span": 73, - "ty": 27 + "span": 70, + "ty": 26 }, { "mutability": "Mut", - "span": 75, - "ty": 33 + "span": 72, + "ty": 32 } ], - "span": 78, + "span": 75, "spread_arg": null, "var_debug_info": [ { @@ -2006,7 +1911,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 77 + "span": 74 }, "value": { "Place": { @@ -2056,7 +1961,7 @@ }, "ty": 16 }, - "span": 79, + "span": 76, "user_ty": null } }, @@ -2081,7 +1986,7 @@ }, "ty": 16 }, - "span": 80, + "span": 77, "user_ty": null } }, @@ -2106,7 +2011,7 @@ }, "ty": 16 }, - "span": 81, + "span": 78, "user_ty": null } }, @@ -2131,7 +2036,7 @@ }, "ty": 16 }, - "span": 82, + "span": 79, "user_ty": null } } @@ -2140,7 +2045,7 @@ } ] }, - "span": 73 + "span": 70 }, { "kind": { @@ -2163,28 +2068,28 @@ } ] }, - "span": 73 + "span": 70 } ], "terminator": { "kind": "Return", - "span": 73 + "span": 70 } } ], "locals": [ { "mutability": "Mut", - "span": 73, - "ty": 27 + "span": 70, + "ty": 26 }, { "mutability": "Mut", - "span": 73, - "ty": 32 + "span": 70, + "ty": 31 } ], - "span": 73, + "span": 70, "spread_arg": null, "var_debug_info": [] } @@ -2209,7 +2114,7 @@ "kind": { "StorageLive": 3 }, - "span": 59 + "span": 56 }, { "kind": { @@ -2227,12 +2132,12 @@ "projection": [] } }, - 27 + 26 ] } ] }, - "span": 59 + "span": 56 } ], "terminator": { @@ -2261,9 +2166,9 @@ "const_": { "id": 10, "kind": "ZeroSized", - "ty": 28 + "ty": 27 }, - "span": 57, + "span": 54, "user_ty": null } }, @@ -2271,7 +2176,7 @@ "unwind": "Unreachable" } }, - "span": 58 + "span": 55 } }, { @@ -2280,38 +2185,38 @@ "kind": { "StorageDead": 3 }, - "span": 61 + "span": 58 } ], "terminator": { "kind": "Return", - "span": 60 + "span": 57 } } ], "locals": [ { "mutability": "Mut", - "span": 62, - "ty": 26 + "span": 59, + "ty": 25 }, { "mutability": "Not", - "span": 63, - "ty": 27 + "span": 60, + "ty": 26 }, { "mutability": "Not", - "span": 64, - "ty": 27 + "span": 61, + "ty": 26 }, { "mutability": "Mut", - "span": 59, - "ty": 27 + "span": 56, + "ty": 26 } ], - "span": 65, + "span": 62, "spread_arg": null, "var_debug_info": [ { @@ -2320,7 +2225,7 @@ "name": "a", "source_info": { "scope": 0, - "span": 63 + "span": 60 }, "value": { "Place": { @@ -2335,7 +2240,7 @@ "name": "b", "source_info": { "scope": 0, - "span": 64 + "span": 61 }, "value": { "Place": { diff --git a/tests/integration/failing/box.smir.json.expected b/tests/integration/failing/box.smir.json.expected index 7e1d9d3..ae74cb3 100644 --- a/tests/integration/failing/box.smir.json.expected +++ b/tests/integration/failing/box.smir.json.expected @@ -1,128 +1,5 @@ { "allocs": [ - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 112, - 116, - 114, - 58, - 58, - 114, - 101, - 97, - 100, - 95, - 118, - 111, - 108, - 97, - 116, - 105, - 108, - 101, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, - 116, - 104, - 101, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 97, - 114, - 103, - 117, - 109, - 101, - 110, - 116, - 32, - 105, - 115, - 32, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 32, - 97, - 110, - 100, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], [ { "Memory": { @@ -169,36 +46,19 @@ } } ], + [ + { + "Static": 56 + } + ], [ { "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], + "align": 1, + "bytes": [], "mutability": "Not", "provenance": { - "ptrs": [ - [ - 0, - 17 - ] - ] + "ptrs": [] } } } @@ -309,35 +169,6 @@ } } ], - [ - { - "Memory": { - "align": 1, - "bytes": [], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Static": 92 - } - ], [ { "Memory": { @@ -457,20 +288,86 @@ "Memory": { "align": 1, "bytes": [ + 117, + 110, + 115, + 97, + 102, + 101, + 32, + 112, + 114, + 101, + 99, + 111, + 110, + 100, + 105, + 116, + 105, + 111, + 110, + 40, + 115, + 41, + 32, + 118, 105, + 111, + 108, + 97, + 116, + 101, + 100, + 58, + 32, + 76, + 97, + 121, + 111, + 117, + 116, + 58, + 58, + 102, + 114, + 111, + 109, + 95, 115, + 105, + 122, + 101, 95, 97, 108, 105, 103, 110, + 95, + 117, + 110, + 99, + 104, + 101, + 99, + 107, 101, 100, - 95, + 32, + 114, + 101, + 113, + 117, + 105, + 114, + 101, + 115, + 32, + 116, + 104, + 97, 116, - 111, - 58, 32, 97, 108, @@ -481,10 +378,6 @@ 105, 115, 32, - 110, - 111, - 116, - 32, 97, 32, 112, @@ -492,13 +385,196 @@ 119, 101, 114, - 45, + 32, 111, 102, + 32, + 50, + 32, + 97, + 110, + 100, + 32, + 116, + 104, + 101, + 32, + 114, + 111, + 117, + 110, + 100, + 101, + 100, 45, + 117, + 112, + 32, + 97, + 108, + 108, + 111, + 99, + 97, 116, - 119, - 111 + 105, + 111, + 110, + 32, + 115, + 105, + 122, + 101, + 32, + 100, + 111, + 101, + 115, + 32, + 110, + 111, + 116, + 32, + 101, + 120, + 99, + 101, + 101, + 100, + 32, + 105, + 115, + 105, + 122, + 101, + 58, + 58, + 77, + 65, + 88 + ], + "mutability": "Not", + "provenance": { + "ptrs": [] + } + } + } + ], + [ + { + "Memory": { + "align": 1, + "bytes": [ + 117, + 110, + 115, + 97, + 102, + 101, + 32, + 112, + 114, + 101, + 99, + 111, + 110, + 100, + 105, + 116, + 105, + 111, + 110, + 40, + 115, + 41, + 32, + 118, + 105, + 111, + 108, + 97, + 116, + 101, + 100, + 58, + 32, + 112, + 116, + 114, + 58, + 58, + 114, + 101, + 97, + 100, + 95, + 118, + 111, + 108, + 97, + 116, + 105, + 108, + 101, + 32, + 114, + 101, + 113, + 117, + 105, + 114, + 101, + 115, + 32, + 116, + 104, + 97, + 116, + 32, + 116, + 104, + 101, + 32, + 112, + 111, + 105, + 110, + 116, + 101, + 114, + 32, + 97, + 114, + 103, + 117, + 109, + 101, + 110, + 116, + 32, + 105, + 115, + 32, + 97, + 108, + 105, + 103, + 110, + 101, + 100, + 32, + 97, + 110, + 100, + 32, + 110, + 111, + 110, + 45, + 110, + 117, + 108, + 108 ], "mutability": "Not", "provenance": { @@ -601,12 +677,12 @@ ], [ { - "NormalSym": "_ZN4core9panicking14panic_nounwind17h" + "IntrinsicSym": "ctpop" } ], [ { - "IntrinsicSym": "ctpop" + "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ @@ -621,7 +697,22 @@ ], [ { - "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" + "NormalSym": "_ZN4core5alloc6layout6Layout19is_size_align_valid17h" + } + ], + [ + { + "NormalSym": "__" + } + ], + [ + { + "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" + } + ], + [ + { + "IntrinsicSym": "volatile_load" } ], [ @@ -631,22 +722,22 @@ ], [ { - "NormalSym": "" + "NormalSym": "_ZN4core5alloc6layout6Layout25from_size_align_unchecked18precondition_check17h" } ], [ { - "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" + "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" } ], [ { - "IntrinsicSym": "volatile_load" + "NormalSym": "" } ], [ { - "NormalSym": "__" + "NormalSym": "_ZN5alloc5alloc12alloc_zeroed17h" } ], [ @@ -706,7 +797,7 @@ ], [ { - "NormalSym": "_ZN4core3ptr49drop_in_place$LT$alloc..boxed..Box$LT$i32$GT$$GT$17h" + "NoOpSym": "" } ], [ @@ -716,7 +807,7 @@ ], [ { - "NoOpSym": "" + "NormalSym": "_ZN4core3ptr49drop_in_place$LT$alloc..boxed..Box$LT$i32$GT$$GT$17h" } ] ], @@ -738,7 +829,7 @@ { "Constant": { "const_": { - "id": 48, + "id": 50, "kind": { "Allocated": { "align": 4, @@ -756,7 +847,7 @@ }, "ty": 16 }, - "span": 368, + "span": 376, "user_ty": null } } @@ -768,11 +859,11 @@ "func": { "Constant": { "const_": { - "id": 47, + "id": 49, "kind": "ZeroSized", - "ty": 87 + "ty": 90 }, - "span": 367, + "span": 375, "user_ty": 0 } }, @@ -780,7 +871,7 @@ "unwind": "Continue" } }, - "span": 369 + "span": 377 } }, { @@ -792,7 +883,7 @@ { "Constant": { "const_": { - "id": 48, + "id": 50, "kind": { "Allocated": { "align": 4, @@ -810,7 +901,7 @@ }, "ty": 16 }, - "span": 371, + "span": 379, "user_ty": null } } @@ -822,11 +913,11 @@ "func": { "Constant": { "const_": { - "id": 47, + "id": 49, "kind": "ZeroSized", - "ty": 87 + "ty": 90 }, - "span": 370, + "span": 378, "user_ty": 1 } }, @@ -836,7 +927,7 @@ } } }, - "span": 372 + "span": 380 } }, { @@ -862,7 +953,7 @@ } ] }, - "span": 374 + "span": 382 }, { "kind": { @@ -885,7 +976,7 @@ } ] }, - "span": 375 + "span": 383 } ], "terminator": { @@ -912,11 +1003,11 @@ "func": { "Constant": { "const_": { - "id": 49, + "id": 51, "kind": "ZeroSized", - "ty": 88 + "ty": 91 }, - "span": 373, + "span": 381, "user_ty": null } }, @@ -926,7 +1017,7 @@ } } }, - "span": 373 + "span": 381 } }, { @@ -951,7 +1042,7 @@ } } }, - "span": 373 + "span": 381 } }, { @@ -971,19 +1062,19 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 0, - 43 + 41 ] }, { "Field": [ 0, - 44 + 42 ] } ] @@ -992,7 +1083,7 @@ } ] }, - "span": 376 + "span": 384 }, { "kind": { @@ -1010,12 +1101,12 @@ "projection": [] } }, - 38 + 36 ] } ] }, - "span": 376 + "span": 384 }, { "kind": { @@ -1033,12 +1124,12 @@ "projection": [] } }, - 28 + 29 ] } ] }, - "span": 376 + "span": 384 }, { "kind": { @@ -1055,7 +1146,7 @@ } ] }, - "span": 376 + "span": 384 }, { "kind": { @@ -1076,7 +1167,7 @@ { "Constant": { "const_": { - "id": 11, + "id": 12, "kind": { "Allocated": { "align": 8, @@ -1096,9 +1187,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 376, + "span": 384, "user_ty": null } } @@ -1106,7 +1197,7 @@ } ] }, - "span": 376 + "span": 384 }, { "kind": { @@ -1134,7 +1225,7 @@ } ] }, - "span": 376 + "span": 384 }, { "kind": { @@ -1155,7 +1246,7 @@ { "Constant": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -1175,9 +1266,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 376, + "span": 384, "user_ty": null } } @@ -1185,7 +1276,7 @@ } ] }, - "span": 376 + "span": 384 } ], "terminator": { @@ -1218,7 +1309,7 @@ "unwind": "Unreachable" } }, - "span": 376 + "span": 384 } }, { @@ -1230,7 +1321,7 @@ { "Constant": { "const_": { - "id": 51, + "id": 53, "kind": { "Allocated": { "align": 8, @@ -1257,15 +1348,15 @@ "ptrs": [ [ 0, - 8 + 7 ] ] } } }, - "ty": 30 + "ty": 28 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1277,11 +1368,11 @@ "func": { "Constant": { "const_": { - "id": 50, + "id": 52, "kind": "ZeroSized", - "ty": 89 + "ty": 92 }, - "span": 377, + "span": 385, "user_ty": null } }, @@ -1291,7 +1382,7 @@ } } }, - "span": 377 + "span": 385 } }, { @@ -1311,19 +1402,19 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 0, - 43 + 41 ] }, { "Field": [ 0, - 44 + 42 ] } ] @@ -1332,7 +1423,7 @@ } ] }, - "span": 378 + "span": 386 }, { "kind": { @@ -1350,12 +1441,12 @@ "projection": [] } }, - 38 + 36 ] } ] }, - "span": 378 + "span": 386 }, { "kind": { @@ -1373,12 +1464,12 @@ "projection": [] } }, - 28 + 29 ] } ] }, - "span": 378 + "span": 386 }, { "kind": { @@ -1395,7 +1486,7 @@ } ] }, - "span": 378 + "span": 386 }, { "kind": { @@ -1416,7 +1507,7 @@ { "Constant": { "const_": { - "id": 11, + "id": 12, "kind": { "Allocated": { "align": 8, @@ -1436,9 +1527,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 378, + "span": 386, "user_ty": null } } @@ -1446,7 +1537,7 @@ } ] }, - "span": 378 + "span": 386 }, { "kind": { @@ -1474,7 +1565,7 @@ } ] }, - "span": 378 + "span": 386 }, { "kind": { @@ -1495,7 +1586,7 @@ { "Constant": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -1515,9 +1606,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 378, + "span": 386, "user_ty": null } } @@ -1525,7 +1616,7 @@ } ] }, - "span": 378 + "span": 386 } ], "terminator": { @@ -1558,7 +1649,7 @@ "unwind": "Unreachable" } }, - "span": 378 + "span": 386 } }, { @@ -1570,7 +1661,7 @@ { "Constant": { "const_": { - "id": 52, + "id": 54, "kind": { "Allocated": { "align": 8, @@ -1597,15 +1688,15 @@ "ptrs": [ [ 0, - 9 + 8 ] ] } } }, - "ty": 30 + "ty": 28 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1617,11 +1708,11 @@ "func": { "Constant": { "const_": { - "id": 50, + "id": 52, "kind": "ZeroSized", - "ty": 89 + "ty": 92 }, - "span": 379, + "span": 387, "user_ty": null } }, @@ -1631,7 +1722,7 @@ } } }, - "span": 379 + "span": 387 } }, { @@ -1649,7 +1740,7 @@ } } }, - "span": 380 + "span": 388 } }, { @@ -1661,7 +1752,7 @@ { "Constant": { "const_": { - "id": 53, + "id": 55, "kind": { "Allocated": { "align": 8, @@ -1688,15 +1779,15 @@ "ptrs": [ [ 0, - 10 + 9 ] ] } } }, - "ty": 30 + "ty": 28 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1708,11 +1799,11 @@ "func": { "Constant": { "const_": { - "id": 50, + "id": 52, "kind": "ZeroSized", - "ty": 89 + "ty": 92 }, - "span": 381, + "span": 389, "user_ty": null } }, @@ -1722,7 +1813,7 @@ } } }, - "span": 381 + "span": 389 } }, { @@ -1738,14 +1829,14 @@ "unwind": "Continue" } }, - "span": 380 + "span": 388 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 382 + "span": 390 } }, { @@ -1761,7 +1852,7 @@ "unwind": "Terminate" } }, - "span": 380 + "span": 388 } }, { @@ -1777,14 +1868,14 @@ "unwind": "Terminate" } }, - "span": 380 + "span": 388 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 383 + "span": 391 } }, { @@ -1808,7 +1899,7 @@ } ] }, - "span": 378 + "span": 386 } ], "terminator": { @@ -1831,7 +1922,7 @@ } } }, - "span": 384 + "span": 392 } }, { @@ -1855,7 +1946,7 @@ } ] }, - "span": 386 + "span": 394 }, { "kind": { @@ -1883,7 +1974,7 @@ } ] }, - "span": 385 + "span": 393 } ], "terminator": { @@ -1906,7 +1997,7 @@ } } }, - "span": 385 + "span": 393 } }, { @@ -1930,7 +2021,7 @@ } ] }, - "span": 376 + "span": 384 }, { "kind": { @@ -1947,19 +2038,19 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 0, - 43 + 41 ] }, { "Field": [ 0, - 44 + 42 ] } ] @@ -1968,7 +2059,7 @@ } ] }, - "span": 386 + "span": 394 }, { "kind": { @@ -1986,12 +2077,12 @@ "projection": [] } }, - 38 + 36 ] } ] }, - "span": 386 + "span": 394 }, { "kind": { @@ -2009,12 +2100,12 @@ "projection": [] } }, - 28 + 29 ] } ] }, - "span": 386 + "span": 394 }, { "kind": { @@ -2031,7 +2122,7 @@ } ] }, - "span": 386 + "span": 394 }, { "kind": { @@ -2052,7 +2143,7 @@ { "Constant": { "const_": { - "id": 11, + "id": 12, "kind": { "Allocated": { "align": 8, @@ -2072,9 +2163,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 386, + "span": 394, "user_ty": null } } @@ -2082,7 +2173,7 @@ } ] }, - "span": 386 + "span": 394 }, { "kind": { @@ -2110,7 +2201,7 @@ } ] }, - "span": 386 + "span": 394 }, { "kind": { @@ -2131,7 +2222,7 @@ { "Constant": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -2151,9 +2242,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 386, + "span": 394, "user_ty": null } } @@ -2161,7 +2252,7 @@ } ] }, - "span": 386 + "span": 394 } ], "terminator": { @@ -2194,183 +2285,183 @@ "unwind": "Unreachable" } }, - "span": 386 + "span": 394 } } ], "locals": [ { "mutability": "Mut", - "span": 387, + "span": 395, "ty": 1 }, { "mutability": "Not", - "span": 388, - "ty": 77 + "span": 396, + "ty": 79 }, { "mutability": "Not", - "span": 389, - "ty": 77 + "span": 397, + "ty": 79 }, { "mutability": "Mut", - "span": 373, - "ty": 21 + "span": 381, + "ty": 20 }, { "mutability": "Mut", - "span": 374, - "ty": 80 + "span": 382, + "ty": 82 }, { "mutability": "Mut", - "span": 375, - "ty": 80 + "span": 383, + "ty": 82 }, { "mutability": "Mut", - "span": 377, - "ty": 39 + "span": 385, + "ty": 37 }, { "mutability": "Mut", - "span": 385, - "ty": 21 + "span": 393, + "ty": 20 }, { "mutability": "Mut", - "span": 376, + "span": 384, "ty": 16 }, { "mutability": "Mut", - "span": 386, + "span": 394, "ty": 16 }, { "mutability": "Mut", - "span": 379, - "ty": 39 + "span": 387, + "ty": 37 }, { "mutability": "Mut", - "span": 378, + "span": 386, "ty": 16 }, { "mutability": "Mut", - "span": 381, - "ty": 39 + "span": 389, + "ty": 37 }, { "mutability": "Mut", - "span": 388, - "ty": 44 + "span": 396, + "ty": 42 }, { "mutability": "Mut", - "span": 389, - "ty": 44 + "span": 397, + "ty": 42 }, { "mutability": "Mut", - "span": 388, - "ty": 44 + "span": 396, + "ty": 42 }, { "mutability": "Mut", - "span": 378, - "ty": 38 + "span": 386, + "ty": 36 }, { "mutability": "Mut", - "span": 378, - "ty": 28 + "span": 386, + "ty": 29 }, { "mutability": "Mut", - "span": 378, - "ty": 28 + "span": 386, + "ty": 29 }, { "mutability": "Mut", - "span": 378, - "ty": 28 + "span": 386, + "ty": 29 }, { "mutability": "Mut", - "span": 378, - "ty": 28 + "span": 386, + "ty": 29 }, { "mutability": "Mut", - "span": 378, - "ty": 21 + "span": 386, + "ty": 20 }, { "mutability": "Mut", - "span": 386, - "ty": 38 + "span": 394, + "ty": 36 }, { "mutability": "Mut", - "span": 386, - "ty": 28 + "span": 394, + "ty": 29 }, { "mutability": "Mut", - "span": 386, - "ty": 28 + "span": 394, + "ty": 29 }, { "mutability": "Mut", - "span": 386, - "ty": 28 + "span": 394, + "ty": 29 }, { "mutability": "Mut", - "span": 386, - "ty": 28 + "span": 394, + "ty": 29 }, { "mutability": "Mut", - "span": 386, - "ty": 21 + "span": 394, + "ty": 20 }, { "mutability": "Mut", - "span": 376, - "ty": 38 + "span": 384, + "ty": 36 }, { "mutability": "Mut", - "span": 376, - "ty": 28 + "span": 384, + "ty": 29 }, { "mutability": "Mut", - "span": 376, - "ty": 28 + "span": 384, + "ty": 29 }, { "mutability": "Mut", - "span": 376, - "ty": 28 + "span": 384, + "ty": 29 }, { "mutability": "Mut", - "span": 376, - "ty": 28 + "span": 384, + "ty": 29 }, { "mutability": "Mut", - "span": 376, - "ty": 21 + "span": 384, + "ty": 20 } ], - "span": 383, + "span": 391, "spread_arg": null, "var_debug_info": [ { @@ -2379,7 +2470,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 388 + "span": 396 }, "value": { "Place": { @@ -2394,7 +2485,7 @@ "name": "b", "source_info": { "scope": 2, - "span": 389 + "span": 397 }, "value": { "Place": { @@ -2434,12 +2525,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -2524,7 +2609,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -2535,12 +2620,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -2600,7 +2679,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -2629,51 +2708,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -2687,7 +2766,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -2697,7 +2776,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -2706,7 +2785,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -2721,7 +2800,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -2736,7 +2815,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -2751,7 +2830,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -2766,7 +2845,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -2798,19 +2877,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -2837,7 +2916,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -2862,7 +2941,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -2870,7 +2949,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -2879,7 +2958,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -2904,7 +2983,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -2912,7 +2991,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -2921,13 +3000,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -2936,42 +3015,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -2995,7 +3038,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -3009,7 +3052,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -3018,37 +3061,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -3058,27 +3095,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -3091,7 +3123,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -3114,7 +3146,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -3122,21 +3154,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -3174,7 +3191,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3188,9 +3205,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -3198,7 +3215,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -3214,7 +3231,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3228,9 +3245,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -3238,35 +3255,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -3275,7 +3292,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -3290,7 +3307,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -3305,7 +3322,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -3314,7 +3331,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3328,28 +3345,6 @@ }, "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [], - "id": 3, - "name": "std::intrinsics::size_of_val::" - } - }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [], - "id": 4, - "name": "std::intrinsics::min_align_of_val::" - } - }, - "symbol_name": "_ZN4core10intrinsics16min_align_of_val17h" - }, { "details": null, "mono_item_kind": { @@ -3364,7 +3359,7 @@ "kind": { "StorageLive": 3 }, - "span": 44 + "span": 41 }, { "kind": { @@ -3385,13 +3380,13 @@ } ] }, - "span": 44 + "span": 41 }, { "kind": { "StorageLive": 4 }, - "span": 45 + "span": 42 }, { "kind": { @@ -3412,7 +3407,7 @@ } ] }, - "span": 45 + "span": 42 }, { "kind": { @@ -3440,55 +3435,55 @@ } ] }, - "span": 46 + "span": 43 }, { "kind": { "StorageDead": 4 }, - "span": 47 + "span": 44 }, { "kind": { "StorageDead": 3 }, - "span": 47 + "span": 44 } ], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 48, - "ty": 21 + "span": 45, + "ty": 20 }, { "mutability": "Not", - "span": 49, - "ty": 22 + "span": 46, + "ty": 21 }, { "mutability": "Not", - "span": 50, - "ty": 22 + "span": 47, + "ty": 21 }, { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 16 }, { "mutability": "Mut", - "span": 45, + "span": 42, "ty": 16 } ], - "span": 51, + "span": 48, "spread_arg": null, "var_debug_info": [ { @@ -3497,7 +3492,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 49 + "span": 46 }, "value": { "Place": { @@ -3512,7 +3507,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -3524,7 +3519,7 @@ ] } ], - "id": 5, + "id": 3, "name": "std::cmp::impls::::eq" } }, @@ -3568,9 +3563,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -3578,40 +3573,40 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 16 }, { "mutability": "Not", - "span": 52, - "ty": 24 + "span": 49, + "ty": 23 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } ], - "id": 6, + "id": 4, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -3645,40 +3640,40 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 1 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 7 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } ], - "id": 6, + "id": 4, "name": ">::call_once" } }, @@ -3719,7 +3714,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -3748,9 +3743,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -3760,7 +3755,7 @@ } } }, - "span": 52 + "span": 49 } }, { @@ -3776,14 +3771,14 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } }, { @@ -3799,45 +3794,45 @@ "unwind": "Terminate" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 16 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 12 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 }, { "mutability": "Not", - "span": 52, - "ty": 26 + "span": 49, + "ty": 25 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } ], - "id": 6, + "id": 4, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -3849,116 +3844,74 @@ "MonoItemFn": { "body": [ { - "arg_count": 2, + "arg_count": 3, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 3 - }, - "span": 54 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 54 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 55 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 27 - ] - } - ] + "StorageLive": 4 }, - "span": 56 + "span": 52 }, { "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] + "StorageLive": 10 }, - "span": 57 + "span": 53 }, { "kind": { - "StorageDead": 5 + "StorageLive": 12 }, - "span": 55 + "span": 54 } ], "terminator": { "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 6, - "projection": [] + "Call": { + "args": [ + { + "Copy": { + "local": 2, + "projection": [] + } } + ], + "destination": { + "local": 12, + "projection": [] }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 4 - } + "func": { + "Constant": { + "const_": { + "id": 8, + "kind": "ZeroSized", + "ty": 26 + }, + "span": 50, + "user_ty": null + } + }, + "target": 9, + "unwind": "Unreachable" } }, - "span": 53 + "span": 51 } }, { "statements": [ { "kind": { - "StorageDead": 3 + "StorageDead": 4 }, - "span": 59 + "span": 56 } ], "terminator": { "kind": "Return", - "span": 58 + "span": 55 } }, { @@ -3970,7 +3923,7 @@ { "Constant": { "const_": { - "id": 9, + "id": 10, "kind": { "Allocated": { "align": 8, @@ -4003,25 +3956,25 @@ } } }, - "ty": 30 + "ty": 28 }, - "span": 61, + "span": 58, "user_ty": null } } ], "destination": { - "local": 4, + "local": 5, "projection": [] }, "func": { "Constant": { "const_": { - "id": 8, + "id": 9, "kind": "ZeroSized", - "ty": 29 + "ty": 27 }, - "span": 60, + "span": 57, "user_ty": null } }, @@ -4029,102 +3982,104 @@ "unwind": "Unreachable" } }, - "span": 62 + "span": 59 } }, { "statements": [ { "kind": { - "StorageDead": 6 + "StorageDead": 9 }, - "span": 54 + "span": 61 } ], "terminator": { "kind": { - "Goto": { - "target": 2 + "SwitchInt": { + "discr": { + "Copy": { + "local": 3, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 6 + ] + ], + "otherwise": 5 + } } }, - "span": 54 + "span": 60 } }, { "statements": [ { "kind": { - "StorageLive": 9 + "StorageDead": 9 }, - "span": 65 + "span": 61 + }, + { + "kind": { + "StorageDead": 10 + }, + "span": 53 } ], "terminator": { "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 10, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 63, - "user_ty": null - } - }, - "target": 7, - "unwind": "Unreachable" + "Goto": { + "target": 2 } }, - "span": 64 + "span": 52 } }, { "statements": [ { "kind": { - "StorageDead": 9 - }, - "span": 66 - }, - { - "kind": { - "StorageLive": 12 + "StorageDead": 10 }, - "span": 67 + "span": 53 + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 1 + } }, + "span": 52 + } + }, + { + "statements": [ { "kind": { - "StorageLive": 13 + "StorageLive": 6 }, - "span": 68 + "span": 62 }, { "kind": { "Assign": [ { - "local": 13, + "local": 6, "projection": [] }, { "BinaryOp": [ - "Sub", + "Eq", { "Copy": { - "local": 2, + "local": 10, "projection": [] } }, @@ -4136,7 +4091,7 @@ "Allocated": { "align": 8, "bytes": [ - 1, + 0, 0, 0, 0, @@ -4151,9 +4106,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 69, + "span": 63, "user_ty": null } } @@ -4161,27 +4116,21 @@ } ] }, - "span": 68 + "span": 64 }, { "kind": { "Assign": [ { - "local": 12, + "local": 4, "projection": [] }, { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 6, - "projection": [] - } - }, + "UnaryOp": [ + "Not", { "Move": { - "local": 13, + "local": 6, "projection": [] } } @@ -4189,28 +4138,101 @@ } ] }, - "span": 67 + "span": 65 }, { "kind": { - "StorageDead": 13 + "StorageDead": 6 }, - "span": 70 + "span": 66 }, { "kind": { - "Assign": [ - { - "local": 3, + "StorageDead": 10 + }, + "span": 53 + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 4, "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 12, - "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 2 + ] + ], + "otherwise": 1 + } + } + }, + "span": 52 + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 12 + }, + "span": 67 + }, + { + "kind": { + "StorageLive": 9 + }, + "span": 68 + }, + { + "kind": { + "Assign": [ + { + "local": 10, + "projection": [] + }, + { + "Cast": [ + "Transmute", + { + "Copy": { + "local": 1, + "projection": [] + } + }, + 29 + ] + } + ] + }, + "span": 69 + }, + { + "kind": { + "StorageLive": 11 + }, + "span": 70 + }, + { + "kind": { + "Assign": [ + { + "local": 11, + "projection": [] + }, + { + "BinaryOp": [ + "Sub", + { + "Copy": { + "local": 2, + "projection": [] } }, { @@ -4221,7 +4243,7 @@ "Allocated": { "align": 8, "bytes": [ - 0, + 1, 0, 0, 0, @@ -4236,7 +4258,7 @@ } } }, - "ty": 28 + "ty": 29 }, "span": 71, "user_ty": null @@ -4246,19 +4268,41 @@ } ] }, - "span": 72 + "span": 70 }, { "kind": { - "StorageDead": 12 + "Assign": [ + { + "local": 9, + "projection": [] + }, + { + "BinaryOp": [ + "BitAnd", + { + "Copy": { + "local": 10, + "projection": [] + } + }, + { + "Move": { + "local": 11, + "projection": [] + } + } + ] + } + ] }, - "span": 71 + "span": 68 }, { "kind": { - "StorageDead": 6 + "StorageDead": 11 }, - "span": 54 + "span": 72 } ], "terminator": { @@ -4266,7 +4310,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 3, + "local": 9, "projection": [] } }, @@ -4274,23 +4318,23 @@ "branches": [ [ 0, - 2 + 3 ] ], - "otherwise": 1 + "otherwise": 4 } } }, - "span": 54 + "span": 61 } }, { "statements": [ { "kind": { - "StorageDead": 9 + "StorageDead": 12 }, - "span": 66 + "span": 67 }, { "kind": { @@ -4300,7 +4344,7 @@ }, { "kind": { - "StorageLive": 10 + "StorageLive": 13 }, "span": 76 }, @@ -4308,7 +4352,7 @@ "kind": { "Assign": [ { - "local": 10, + "local": 13, "projection": [] }, { @@ -4344,13 +4388,13 @@ } } }, - "ty": 33 + "ty": 31 }, - "span": 32, + "span": 77, "user_ty": null } }, - 34 + 32 ] } ] @@ -4359,15 +4403,15 @@ }, { "kind": { - "StorageLive": 11 + "StorageLive": 14 }, - "span": 77 + "span": 78 }, { "kind": { "Assign": [ { - "local": 11, + "local": 14, "projection": [] }, { @@ -4403,18 +4447,18 @@ } } }, - "ty": 35 + "ty": 33 }, - "span": 32, + "span": 78, "user_ty": null } }, - 36 + 34 ] } ] }, - "span": 77 + "span": 78 }, { "kind": { @@ -4427,7 +4471,7 @@ "Aggregate": [ { "Adt": [ - 8, + 6, 0, [ { @@ -4443,7 +4487,7 @@ [ { "Move": { - "local": 10, + "local": 13, "projection": [] } }, @@ -4478,15 +4522,15 @@ } } }, - "ty": 37 + "ty": 35 }, - "span": 32, + "span": 29, "user_ty": null } }, { "Move": { - "local": 11, + "local": 14, "projection": [] } } @@ -4495,19 +4539,19 @@ } ] }, - "span": 78 + "span": 79 }, { "kind": { - "StorageDead": 11 + "StorageDead": 14 }, - "span": 79 + "span": 80 }, { "kind": { - "StorageDead": 10 + "StorageDead": 13 }, - "span": 79 + "span": 80 } ], "terminator": { @@ -4530,7 +4574,7 @@ "const_": { "id": 13, "kind": "ZeroSized", - "ty": 32 + "ty": 30 }, "span": 73, "user_ty": null @@ -4550,7 +4594,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 9, + "local": 12, "projection": [] } }, @@ -4558,90 +4602,95 @@ "branches": [ [ 1, - 5 + 7 ] ], - "otherwise": 6 + "otherwise": 8 } } }, - "span": 66 + "span": 67 } } ], "locals": [ { "mutability": "Mut", - "span": 80, + "span": 81, "ty": 1 }, { "mutability": "Not", - "span": 81, - "ty": 38 + "span": 82, + "ty": 36 }, { "mutability": "Not", - "span": 81, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 54, - "ty": 21 + "span": 82, + "ty": 29 }, { "mutability": "Not", - "span": 62, - "ty": 39 + "span": 82, + "ty": 20 }, { "mutability": "Mut", - "span": 56, - "ty": 27 + "span": 52, + "ty": 20 + }, + { + "mutability": "Not", + "span": 59, + "ty": 37 }, { "mutability": "Mut", - "span": 82, - "ty": 28 + "span": 62, + "ty": 20 }, { "mutability": "Not", "span": 74, - "ty": 39 + "ty": 37 }, { "mutability": "Mut", "span": 75, - "ty": 40 + "ty": 38 }, { "mutability": "Mut", - "span": 65, - "ty": 41 + "span": 68, + "ty": 29 }, { "mutability": "Mut", - "span": 76, - "ty": 34 + "span": 83, + "ty": 29 }, { "mutability": "Mut", - "span": 77, - "ty": 36 + "span": 70, + "ty": 29 }, { "mutability": "Mut", - "span": 67, - "ty": 28 + "span": 54, + "ty": 39 }, { "mutability": "Mut", - "span": 68, - "ty": 28 + "span": 76, + "ty": 32 + }, + { + "mutability": "Mut", + "span": 78, + "ty": 34 } ], - "span": 97, + "span": 96, "spread_arg": null, "var_debug_info": [ { @@ -4650,7 +4699,7 @@ "name": "addr", "source_info": { "scope": 0, - "span": 81 + "span": 82 }, "value": { "Place": { @@ -4665,7 +4714,7 @@ "name": "align", "source_info": { "scope": 0, - "span": 81 + "span": 82 }, "value": { "Place": { @@ -4674,13 +4723,28 @@ } } }, + { + "argument_index": 3, + "composite": null, + "name": "is_zst", + "source_info": { + "scope": 0, + "span": 82 + }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, { "argument_index": 1, "composite": null, "name": "ptr", "source_info": { "scope": 1, - "span": 83 + "span": 84 }, "value": { "Place": { @@ -4695,7 +4759,7 @@ "name": "align", "source_info": { "scope": 1, - "span": 84 + "span": 85 }, "value": { "Place": { @@ -4705,16 +4769,16 @@ } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "self", + "name": "is_zst", "source_info": { - "scope": 2, - "span": 85 + "scope": 1, + "span": 86 }, "value": { "Place": { - "local": 1, + "local": 3, "projection": [] } } @@ -4724,42 +4788,42 @@ "composite": null, "name": "ptr", "source_info": { - "scope": 4, - "span": 86 + "scope": 2, + "span": 87 }, "value": { "Place": { - "local": 5, + "local": 1, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "self", + "name": "align", "source_info": { - "scope": 5, + "scope": 2, "span": 87 }, "value": { "Place": { - "local": 5, + "local": 2, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "self", + "name": "is_zst", "source_info": { - "scope": 6, - "span": 88 + "scope": 2, + "span": 87 }, "value": { "Place": { - "local": 5, + "local": 3, "projection": [] } } @@ -4769,8 +4833,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 7, - "span": 89 + "scope": 3, + "span": 88 }, "value": { "Place": { @@ -4784,8 +4848,8 @@ "composite": null, "name": "align", "source_info": { - "scope": 7, - "span": 90 + "scope": 3, + "span": 89 }, "value": { "Place": { @@ -4799,8 +4863,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 8, - "span": 91 + "scope": 4, + "span": 90 }, "value": { "Place": { @@ -4814,8 +4878,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 9, - "span": 92 + "scope": 5, + "span": 91 }, "value": { "Place": { @@ -4829,8 +4893,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 10, - "span": 88 + "scope": 6, + "span": 92 }, "value": { "Place": { @@ -4842,18 +4906,33 @@ { "argument_index": 1, "composite": null, - "name": "pieces", + "name": "self", "source_info": { - "scope": 11, + "scope": 7, "span": 93 }, "value": { - "Const": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "pieces", + "source_info": { + "scope": 8, + "span": 94 + }, + "value": { + "Const": { + "const_": { + "id": 14, + "kind": { + "Allocated": { + "align": 8, "bytes": [ 0, 0, @@ -4869,71 +4948,26 @@ "ptrs": [ [ 0, - 3 + 1 ] ] } } }, - "ty": 33 + "ty": 31 }, - "span": 94, + "span": 77, "user_ty": null } } }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 95 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 96 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, { "argument_index": 1, "composite": null, "name": "self", "source_info": { - "scope": 13, - "span": 87 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 88 + "scope": 9, + "span": 95 }, "value": { "Place": { @@ -4945,7 +4979,7 @@ ] } ], - "id": 7, + "id": 5, "name": "std::ptr::read_volatile::precondition_check" } }, @@ -4976,19 +5010,19 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 0, - 43 + 41 ] }, { "Field": [ 0, - 44 + 42 ] } ] @@ -4996,7 +5030,7 @@ } ] }, - "span": 98 + "span": 97 } ], "terminator": { @@ -5014,21 +5048,21 @@ } } }, - "span": 98 + "span": 97 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 98 + "span": 97 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 98 + "span": 97 } }, { @@ -5060,7 +5094,7 @@ } ] }, - "span": 98 + "span": 97 } ], "terminator": { @@ -5081,11 +5115,11 @@ "func": { "Constant": { "const_": { - "id": 18, + "id": 17, "kind": "ZeroSized", - "ty": 45 + "ty": 43 }, - "span": 98, + "span": 97, "user_ty": null } }, @@ -5093,7 +5127,7 @@ "unwind": "Continue" } }, - "span": 98 + "span": 97 } }, { @@ -5125,7 +5159,7 @@ } ] }, - "span": 98 + "span": 97 } ], "terminator": { @@ -5146,11 +5180,11 @@ "func": { "Constant": { "const_": { - "id": 18, + "id": 17, "kind": "ZeroSized", - "ty": 45 + "ty": 43 }, - "span": 98, + "span": 97, "user_ty": null } }, @@ -5158,53 +5192,53 @@ "unwind": "Terminate" } }, - "span": 98 + "span": 97 } } ], "locals": [ { "mutability": "Mut", - "span": 98, + "span": 97, "ty": 1 }, { "mutability": "Not", - "span": 98, - "ty": 46 + "span": 97, + "ty": 44 }, { "mutability": "Mut", - "span": 98, - "ty": 47 + "span": 97, + "ty": 45 }, { "mutability": "Mut", - "span": 98, + "span": 97, "ty": 1 }, { "mutability": "Mut", - "span": 98, - "ty": 47 + "span": 97, + "ty": 45 }, { "mutability": "Mut", - "span": 98, + "span": 97, "ty": 1 }, { "mutability": "Mut", - "span": 98, - "ty": 44 + "span": 97, + "ty": 42 } ], - "span": 98, + "span": 97, "spread_arg": null, "var_debug_info": [] } ], - "id": 9, + "id": 7, "name": "std::ptr::drop_in_place::>" } }, @@ -5222,28 +5256,28 @@ "statements": [], "terminator": { "kind": "Return", - "span": 98 + "span": 97 } } ], "locals": [ { "mutability": "Mut", - "span": 98, + "span": 97, "ty": 1 }, { "mutability": "Not", - "span": 98, - "ty": 24 + "span": 97, + "ty": 23 } ], - "span": 98, + "span": 97, "spread_arg": null, "var_debug_info": [] } ], - "id": 9, + "id": 7, "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, @@ -5263,7 +5297,7 @@ "kind": { "StorageLive": 3 }, - "span": 100 + "span": 99 }, { "kind": { @@ -5272,35 +5306,6 @@ "local": 3, "projection": [] }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 48 - ] - } - ] - }, - "span": 101 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 102 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, { "Cast": [ "Transmute", @@ -5310,18 +5315,12 @@ "projection": [] } }, - 28 + 29 ] } ] }, - "span": 103 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 100 + "span": 69 } ], "terminator": { @@ -5329,7 +5328,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 4, + "local": 3, "projection": [] } }, @@ -5344,16 +5343,16 @@ } } }, - "span": 99 + "span": 98 } }, { "statements": [ { "kind": { - "StorageDead": 4 + "StorageDead": 3 }, - "span": 99 + "span": 98 } ], "terminator": { @@ -5363,7 +5362,7 @@ { "Constant": { "const_": { - "id": 19, + "id": 18, "kind": { "Allocated": { "align": 8, @@ -5390,15 +5389,15 @@ "ptrs": [ [ 0, - 4 + 3 ] ] } } }, - "ty": 30 + "ty": 28 }, - "span": 105, + "span": 101, "user_ty": null } } @@ -5410,11 +5409,11 @@ "func": { "Constant": { "const_": { - "id": 8, + "id": 9, "kind": "ZeroSized", - "ty": 29 + "ty": 27 }, - "span": 104, + "span": 100, "user_ty": null } }, @@ -5422,52 +5421,47 @@ "unwind": "Unreachable" } }, - "span": 106 + "span": 102 } }, { "statements": [ { "kind": { - "StorageDead": 4 + "StorageDead": 3 }, - "span": 99 + "span": 98 } ], "terminator": { "kind": "Return", - "span": 107 + "span": 103 } } ], "locals": [ { "mutability": "Mut", - "span": 108, + "span": 104, "ty": 1 }, { "mutability": "Not", - "span": 109, - "ty": 49 + "span": 105, + "ty": 46 }, { "mutability": "Not", - "span": 106, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 101, - "ty": 48 + "span": 102, + "ty": 37 }, { "mutability": "Mut", - "span": 102, - "ty": 28 + "span": 99, + "ty": 29 } ], - "span": 114, + "span": 107, "spread_arg": null, "var_debug_info": [ { @@ -5476,7 +5470,7 @@ "name": "ptr", "source_info": { "scope": 0, - "span": 109 + "span": 105 }, "value": { "Place": { @@ -5491,7 +5485,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 110 + "span": 106 }, "value": { "Place": { @@ -5499,56 +5493,11 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 2, - "span": 111 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 112 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 113 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } } ] } ], - "id": 10, + "id": 8, "name": "std::ptr::NonNull::::new_unchecked::precondition_check" } }, @@ -5560,186 +5509,97 @@ "MonoItemFn": { "body": [ { - "arg_count": 1, + "arg_count": 2, "blocks": [ { "statements": [ { "kind": { - "Assign": [ + "StorageLive": 3 + }, + "span": 109 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 0, - "projection": [] + "Move": { + "local": 1, + "projection": [] + } }, { - "Use": { - "Constant": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 17 - }, - "span": 116, - "user_ty": null - } + "Move": { + "local": 2, + "projection": [] } } - ] - }, - "span": 116 - } - ], - "terminator": { - "kind": "Return", - "span": 115 + ], + "destination": { + "local": 3, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 19, + "kind": "ZeroSized", + "ty": 47 + }, + "span": 108, + "user_ty": null + } + }, + "target": 1, + "unwind": "Terminate" + } + }, + "span": 109 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 117, - "ty": 17 }, { - "mutability": "Not", - "span": 118, - "ty": 1 - } - ], - "span": 119, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 118 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 11, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 8 - }, - "span": 123 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 52 - ] - } - ] - }, - "span": 124 - }, - { - "kind": { - "Assign": [ - { + "statements": [], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { "local": 3, "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 13, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 8, - "projection": [] - } - } - ] - ] } - ] - }, - "span": 125 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 126 + }, + "targets": { + "branches": [ + [ + 0, + 3 + ] + ], + "otherwise": 2 + } + } }, + "span": 109 + } + }, + { + "statements": [ { "kind": { - "StorageLive": 4 + "StorageDead": 3 }, - "span": 127 + "span": 111 } ], + "terminator": { + "kind": "Return", + "span": 110 + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { @@ -5747,7 +5607,7 @@ { "Constant": { "const_": { - "id": 22, + "id": 20, "kind": { "Allocated": { "align": 8, @@ -5759,6 +5619,14 @@ 0, 0, 0, + 0, + 164, + 0, + 0, + 0, + 0, + 0, + 0, 0 ], "mutability": "Mut", @@ -5766,43 +5634,15 @@ "ptrs": [ [ 0, - 5 + 4 ] ] } } }, - "ty": 51 - }, - "span": 32, - "user_ty": null - } - }, - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 23, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 21 + "ty": 28 }, - "span": 121, + "span": 113, "user_ty": null } } @@ -5814,128 +5654,308 @@ "func": { "Constant": { "const_": { - "id": 21, + "id": 9, "kind": "ZeroSized", - "ty": 50 + "ty": 27 }, - "span": 120, + "span": 112, "user_ty": null } }, - "target": 4, - "unwind": "Continue" + "target": null, + "unwind": "Unreachable" } }, - "span": 122 + "span": 114 } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 115, + "ty": 1 }, { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 127 - } + "mutability": "Not", + "span": 116, + "ty": 29 }, { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 24, - "kind": "ZeroSized", - "ty": 53 - }, - "span": 128, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 129 + "mutability": "Not", + "span": 116, + "ty": 29 + }, + { + "mutability": "Mut", + "span": 109, + "ty": 20 + }, + { + "mutability": "Not", + "span": 114, + "ty": 37 + } + ], + "span": 117, + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "size", + "source_info": { + "scope": 0, + "span": 116 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } } }, { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 6, + "argument_index": 2, + "composite": null, + "name": "align", + "source_info": { + "scope": 0, + "span": 116 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + } + ] + } + ], + "id": 9, + "name": "std::alloc::Layout::from_size_align_unchecked::precondition_check" + } + }, + "symbol_name": "_ZN4core5alloc6layout6Layout25from_size_align_unchecked18precondition_check17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 0, "projection": [] }, { "Use": { - "Copy": { - "local": 4, - "projection": [ - { - "Downcast": 0 + "Constant": { + "const_": { + "id": 21, + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } }, - { - "Field": [ - 0, - 54 - ] - } - ] + "ty": 17 + }, + "span": 119, + "user_ty": null } } } ] }, - "span": 131 + "span": 119 + } + ], + "terminator": { + "kind": "Return", + "span": 118 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 120, + "ty": 17 + }, + { + "mutability": "Not", + "span": 121, + "ty": 1 + } + ], + "span": 122, + "spread_arg": null, + "var_debug_info": [] + } + ], + "id": 10, + "name": "<() as std::process::Termination>::report" + } + }, + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "StorageLive": 2 + }, + "span": 124 }, { "kind": { - "StorageLive": 10 + "StorageLive": 7 }, - "span": 132 + "span": 123 }, { "kind": { - "StorageLive": 11 + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "NullaryOp": [ + "UbChecks", + 20 + ] + } + ] + }, + "span": 125 + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 7, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 5 + ] + ], + "otherwise": 3 + } + } + }, + "span": 123 + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 5 + }, + "span": 127 + }, + { + "kind": { + "StorageDead": 3 + }, + "span": 127 + } + ], + "terminator": { + "kind": "Return", + "span": 126 + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 2 + }, + "span": 130 + }, + { + "kind": { + "StorageLive": 3 + }, + "span": 131 + }, + { + "kind": { + "StorageLive": 4 }, "span": 132 }, { "kind": { - "StorageLive": 9 + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 1, + "projection": [] + } + ] + } + ] }, - "span": 133 + "span": 132 }, { "kind": { "Assign": [ { - "local": 11, + "local": 3, "projection": [] }, { "Use": { "Copy": { - "local": 6, + "local": 1, "projection": [ { "Field": [ 0, - 55 + 29 ] } ] @@ -5944,122 +5964,297 @@ } ] }, + "span": 133 + }, + { + "kind": { + "StorageDead": 4 + }, "span": 134 }, + { + "kind": { + "StorageLive": 5 + }, + "span": 135 + }, + { + "kind": { + "StorageLive": 6 + }, + "span": 136 + }, { "kind": { "Assign": [ { - "local": 10, + "local": 6, "projection": [] }, { - "Cast": [ - "PtrToPtr", + "Ref": [ { - "Copy": { - "local": 11, - "projection": [] - } + "kind": "ReErased" }, - 27 + "Shared", + { + "local": 1, + "projection": [] + } ] } ] }, - "span": 135 + "span": 136 + }, + { + "kind": { + "StorageLive": 10 + }, + "span": 137 }, { "kind": { "Assign": [ { - "local": 9, + "local": 10, "projection": [] }, { - "Aggregate": [ - { - "Adt": [ - 14, - 0, - [ - { - "Type": 9 - } - ], - null, - null + "Use": { + "Copy": { + "local": 1, + "projection": [ + { + "Field": [ + 1, + 49 + ] + } ] - }, - [ - { - "Copy": { - "local": 10, - "projection": [] + } + } + } + ] + }, + "span": 137 + }, + { + "kind": { + "StorageLive": 12 + }, + "span": 138 + }, + { + "kind": { + "StorageLive": 13 + }, + "span": 138 + }, + { + "kind": { + "StorageLive": 14 + }, + "span": 138 + }, + { + "kind": { + "StorageLive": 15 + }, + "span": 138 + }, + { + "kind": { + "StorageLive": 11 + }, + "span": 139 + }, + { + "kind": { + "Assign": [ + { + "local": 11, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 10, + "projection": [ + { + "Field": [ + 0, + 50 + ] } - } - ] - ] + ] + } + } } ] }, - "span": 136 + "span": 139 }, { "kind": { "Assign": [ { - "local": 0, + "local": 12, "projection": [] }, { - "Cast": [ - "PtrToPtr", + "Discriminant": { + "local": 11, + "projection": [] + } + } + ] + }, + "span": 140 + }, + { + "kind": { + "Assign": [ + { + "local": 13, + "projection": [] + }, + { + "BinaryOp": [ + "Ge", { "Copy": { - "local": 11, + "local": 12, "projection": [] } }, - 48 + { + "Constant": { + "const_": { + "id": 23, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 51 + }, + "span": 140, + "user_ty": null + } + } ] } ] }, - "span": 137 + "span": 140 }, { "kind": { - "StorageDead": 9 + "Assign": [ + { + "local": 14, + "projection": [] + }, + { + "BinaryOp": [ + "Le", + { + "Copy": { + "local": 12, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "id": 24, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 51 + }, + "span": 140, + "user_ty": null + } + } + ] + } + ] }, - "span": 138 + "span": 140 }, { "kind": { - "StorageDead": 11 + "Assign": [ + { + "local": 15, + "projection": [] + }, + { + "BinaryOp": [ + "BitAnd", + { + "Move": { + "local": 13, + "projection": [] + } + }, + { + "Move": { + "local": 14, + "projection": [] + } + } + ] + } + ] }, - "span": 132 + "span": 140 }, { "kind": { - "StorageDead": 10 + "Intrinsic": { + "Assume": { + "Move": { + "local": 15, + "projection": [] + } + } + } }, - "span": 132 + "span": 140 }, - { - "kind": { - "StorageDead": 4 - }, - "span": 139 - } - ], - "terminator": { - "kind": "Return", - "span": 130 - } - }, - { - "statements": [ { "kind": { "Assign": [ @@ -6068,210 +6263,432 @@ "projection": [] }, { - "Discriminant": { - "local": 4, - "projection": [] - } + "Cast": [ + "IntToInt", + { + "Copy": { + "local": 12, + "projection": [] + } + }, + 29 + ] } ] }, - "span": 127 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ], - [ - 1, - 2 - ] - ], - "otherwise": 1 - } + "span": 140 + }, + { + "kind": { + "StorageDead": 11 + }, + "span": 141 + }, + { + "kind": { + "StorageDead": 15 + }, + "span": 138 + }, + { + "kind": { + "StorageDead": 14 + }, + "span": 138 + }, + { + "kind": { + "StorageDead": 13 + }, + "span": 138 + }, + { + "kind": { + "StorageDead": 12 + }, + "span": 138 + }, + { + "kind": { + "StorageDead": 10 + }, + "span": 142 + }, + { + "kind": { + "StorageDead": 6 + }, + "span": 143 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 5, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 22, + "kind": "ZeroSized", + "ty": 48 + }, + "span": 128, + "user_ty": null + } + }, + "target": 1, + "unwind": "Unreachable" } }, - "span": 140 + "span": 129 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 141, - "ty": 48 - }, - { - "mutability": "Not", - "span": 142, - "ty": 28 - }, - { - "mutability": "Not", - "span": 143, - "ty": 28 - }, - { - "mutability": "Not", - "span": 144, - "ty": 56 - }, - { - "mutability": "Mut", - "span": 127, - "ty": 57 - }, - { - "mutability": "Mut", - "span": 145, - "ty": 6 }, { - "mutability": "Not", - "span": 131, - "ty": 54 + "statements": [ + { + "kind": { + "StorageLive": 9 + }, + "span": 147 + }, + { + "kind": { + "Assign": [ + { + "local": 9, + "projection": [] + }, + { + "Cast": [ + "PtrToPtr", + { + "Constant": { + "const_": { + "id": 27, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 5 + ] + ] + } + } + }, + "ty": 53 + }, + "span": 29, + "user_ty": null + } + }, + 36 + ] + } + ] + }, + "span": 147 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 9, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "id": 12, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 29 + }, + "span": 29, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "id": 26, + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 20 + }, + "span": 145, + "user_ty": null + } + } + ], + "destination": { + "local": 8, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 25, + "kind": "ZeroSized", + "ty": 52 + }, + "span": 144, + "user_ty": null + } + }, + "target": 4, + "unwind": "Unreachable" + } + }, + "span": 146 + } }, { - "mutability": "Mut", - "span": 129, - "ty": 39 + "statements": [ + { + "kind": { + "StorageDead": 9 + }, + "span": 149 + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 5 + } + }, + "span": 148 + } }, { - "mutability": "Mut", - "span": 123, - "ty": 52 + "statements": [ + { + "kind": { + "StorageDead": 7 + }, + "span": 152 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "id": 27, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 5 + ] + ] + } + } + }, + "ty": 53 + }, + "span": 29, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 28, + "kind": "ZeroSized", + "ty": 54 + }, + "span": 150, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + }, + "span": 151 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 153, + "ty": 55 + }, + { + "mutability": "Not", + "span": 154, + "ty": 56 + }, + { + "mutability": "Not", + "span": 124, + "ty": 9 + }, + { + "mutability": "Mut", + "span": 131, + "ty": 29 }, { "mutability": "Mut", - "span": 133, - "ty": 58 + "span": 132, + "ty": 57 }, { "mutability": "Mut", "span": 135, - "ty": 27 + "ty": 29 }, { "mutability": "Mut", - "span": 134, - "ty": 55 - } - ], - "span": 156, - "spread_arg": null, - "var_debug_info": [ + "span": 136, + "ty": 57 + }, { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 0, - "span": 142 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } + "mutability": "Mut", + "span": 123, + "ty": 20 }, { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 143 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } + "mutability": "Not", + "span": 146, + "ty": 1 }, { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 1, - "span": 144 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } + "mutability": "Mut", + "span": 147, + "ty": 36 }, { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 2, - "span": 131 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } + "mutability": "Mut", + "span": 137, + "ty": 49 }, { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 3, - "span": 146 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } + "mutability": "Not", + "span": 139, + "ty": 50 }, { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 3, - "span": 147 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } + "mutability": "Mut", + "span": 139, + "ty": 51 + }, + { + "mutability": "Mut", + "span": 140, + "ty": 20 + }, + { + "mutability": "Mut", + "span": 140, + "ty": 20 }, + { + "mutability": "Mut", + "span": 140, + "ty": 20 + } + ], + "span": 159, + "spread_arg": null, + "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "align", + "name": "layout", "source_info": { - "scope": 4, - "span": 148 + "scope": 0, + "span": 154 }, "value": { "Place": { - "local": 2, + "local": 1, "projection": [] } } @@ -6279,15 +6696,15 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "src", "source_info": { - "scope": 5, - "span": 149 + "scope": 1, + "span": 155 }, "value": { "Const": { "const_": { - "id": 25, + "id": 27, "kind": { "Allocated": { "align": 8, @@ -6306,30 +6723,30 @@ "ptrs": [ [ 0, - 6 + 5 ] ] } } }, - "ty": 51 + "ty": 53 }, - "span": 150, + "span": 156, "user_ty": null } } }, { - "argument_index": 2, + "argument_index": 1, "composite": null, - "name": "layout", + "name": "self", "source_info": { "scope": 5, - "span": 151 + "span": 157 }, "value": { "Place": { - "local": 3, + "local": 4, "projection": [] } } @@ -6340,7 +6757,7 @@ "name": "self", "source_info": { "scope": 6, - "span": 152 + "span": 158 }, "value": { "Place": { @@ -6348,903 +6765,559 @@ "projection": [] } } - }, + } + ] + } + ], + "id": 11, + "name": "std::alloc::alloc_zeroed" + } + }, + "symbol_name": "_ZN5alloc5alloc12alloc_zeroed17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 153 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 154 - }, - "value": { - "Place": { - "local": 6, - "projection": [] + "statements": [ + { + "kind": { + "StorageLive": 8 + }, + "span": 160 + }, + { + "kind": { + "Assign": [ + { + "local": 8, + "projection": [] + }, + { + "NullaryOp": [ + "UbChecks", + 20 + ] + } + ] + }, + "span": 160 } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 8, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 5 + ] + ], + "otherwise": 4 + } + } + }, + "span": 160 } }, { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 155 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } + "statements": [], + "terminator": { + "kind": "Unreachable", + "span": 161 } }, { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 155 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + } + ], + "destination": { + "local": 7, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 29, + "kind": "ZeroSized", + "ty": 58 + }, + "span": 162, + "user_ty": null + } + }, + "target": null, + "unwind": "Continue" + } + }, + "span": 163 } - } - ] - }, - { - "arg_count": 0, - "blocks": [ + }, { "statements": [ { "kind": { "Assign": [ { - "local": 1, + "local": 6, "projection": [] }, { - "Aggregate": [ - { - "Adt": [ - 15, - 0, - [], - null, - null + "Use": { + "Copy": { + "local": 4, + "projection": [ + { + "Downcast": 0 + }, + { + "Field": [ + 0, + 59 + ] + } ] - }, - [] - ] + } + } } ] }, - "span": 150 + "span": 165 }, { "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] + "StorageLive": 11 }, - "span": 150 - } - ], - "terminator": { - "kind": "Return", - "span": 150 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 150, - "ty": 51 - }, - { - "mutability": "Mut", - "span": 150, - "ty": 59 - } - ], - "span": 150, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "alloc::alloc::exchange_malloc" - } - }, - "symbol_name": "_ZN5alloc5alloc15exchange_malloc17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ + "span": 166 + }, { "kind": { - "StorageLive": 2 + "StorageLive": 13 }, - "span": 158 + "span": 167 }, { "kind": { - "StorageLive": 7 + "StorageLive": 12 }, - "span": 157 + "span": 168 }, { "kind": { "Assign": [ { - "local": 7, + "local": 13, "projection": [] }, { - "NullaryOp": [ - "UbChecks", - 21 + "Cast": [ + "Transmute", + { + "Copy": { + "local": 6, + "projection": [] + } + }, + 60 ] } ] }, - "span": 159 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 3 - } - } + "span": 169 }, - "span": 157 - } - }, - { - "statements": [ { "kind": { - "StorageDead": 5 + "Assign": [ + { + "local": 12, + "projection": [] + }, + { + "Cast": [ + "PtrToPtr", + { + "Copy": { + "local": 13, + "projection": [] + } + }, + 53 + ] + } + ] }, - "span": 161 + "span": 168 }, { "kind": { - "StorageDead": 3 - }, - "span": 161 - } - ], - "terminator": { - "kind": "Return", - "span": 160 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 + "Assign": [ + { + "local": 11, + "projection": [] + }, + { + "Aggregate": [ + { + "Adt": [ + 13, + 0, + [ + { + "Type": 9 + } + ], + null, + null + ] + }, + [ + { + "Move": { + "local": 12, + "projection": [] + } + } + ] + ] + } + ] }, - "span": 164 + "span": 170 }, { "kind": { - "StorageLive": 3 + "StorageDead": 12 }, - "span": 165 + "span": 171 }, { "kind": { - "StorageLive": 4 + "StorageDead": 13 }, - "span": 166 + "span": 167 }, { "kind": { "Assign": [ { - "local": 4, + "local": 0, "projection": [] }, { - "Ref": [ + "Cast": [ + "Transmute", { - "kind": "ReErased" + "Copy": { + "local": 11, + "projection": [] + } }, - "Shared", - { - "local": 1, - "projection": [] - } + 55 ] } ] }, - "span": 166 + "span": 169 }, { "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] + "StorageDead": 11 }, - "span": 167 + "span": 172 }, { "kind": { "StorageDead": 4 }, - "span": 168 + "span": 173 + } + ], + "terminator": { + "kind": "Return", + "span": 164 + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Copy": { + "local": 1, + "projection": [] + } + }, + { + "Copy": { + "local": 2, + "projection": [] + } + } + ], + "destination": { + "local": 9, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 30, + "kind": "ZeroSized", + "ty": 61 + }, + "span": 174, + "user_ty": null + } + }, + "target": 5, + "unwind": "Unreachable" + } }, + "span": 175 + } + }, + { + "statements": [ { "kind": { - "StorageLive": 5 + "StorageDead": 8 }, - "span": 169 + "span": 180 }, { "kind": { - "StorageLive": 6 + "StorageLive": 10 }, - "span": 170 + "span": 181 }, { "kind": { "Assign": [ { - "local": 6, + "local": 10, "projection": [] }, { - "Ref": [ + "Cast": [ + "Transmute", { - "kind": "ReErased" + "Copy": { + "local": 2, + "projection": [] + } }, - "Shared", - { - "local": 1, - "projection": [] - } + 49 ] } ] }, - "span": 170 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 171 + "span": 181 }, { "kind": { "Assign": [ { - "local": 10, + "local": 3, "projection": [] }, { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 1, - 52 - ] - } + "Aggregate": [ + { + "Adt": [ + 14, + 0, + [], + null, + null ] - } - } + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } + }, + { + "Move": { + "local": 10, + "projection": [] + } + } + ] + ] } ] }, - "span": 171 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 172 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 172 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 172 + "span": 182 }, { "kind": { - "StorageLive": 15 + "StorageDead": 10 }, - "span": 172 + "span": 183 }, { "kind": { - "StorageLive": 11 + "StorageLive": 4 }, - "span": 173 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, + "span": 161 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { - "Use": { - "Copy": { - "local": 10, - "projection": [ - { - "Field": [ + "Constant": { + "const_": { + "id": 32, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ 0, - 61 - ] + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 6 + ] + ] + } } - ] - } + }, + "ty": 63 + }, + "span": 177, + "user_ty": null } - } - ] - }, - "span": 173 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] }, { - "Discriminant": { - "local": 11, + "Copy": { + "local": 3, "projection": [] } - } - ] - }, - "span": 174 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] }, { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 12, - "projection": [] - } + "Constant": { + "const_": { + "id": 26, + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 20 }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 62 - }, - "span": 174, - "user_ty": null - } - } - ] + "span": 178, + "user_ty": null + } } - ] - }, - "span": 174 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 62 - }, - "span": 174, - "user_ty": null - } - } - ] + ], + "destination": { + "local": 4, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 31, + "kind": "ZeroSized", + "ty": 62 + }, + "span": 176, + "user_ty": null } - ] - }, - "span": 174 + }, + "target": 6, + "unwind": "Continue" + } }, + "span": 179 + } + }, + { + "statements": [ { "kind": { "Assign": [ { - "local": 15, + "local": 5, "projection": [] }, { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 13, - "projection": [] - } - }, - { - "Move": { - "local": 14, - "projection": [] - } - } - ] - } - ] - }, - "span": 174 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 15, + "Discriminant": { + "local": 4, "projection": [] } } - } - }, - "span": 174 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 28 - ] - } ] }, - "span": 174 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 175 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 172 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 172 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 172 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 172 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 176 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 177 + "span": 161 } ], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 26, - "kind": "ZeroSized", - "ty": 60 - }, - "span": 162, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } - }, - "span": 163 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 180 - }, - { - "kind": { - "Assign": [ - { - "local": 9, + "SwitchInt": { + "discr": { + "Move": { + "local": 5, "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Constant": { - "const_": { - "id": 30, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 7 - ] - ] - } - } - }, - "ty": 27 - }, - "span": 32, - "user_ty": null - } - }, - 38 - ] - } - ] - }, - "span": 180 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 8, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 29, - "kind": "ZeroSized", - "ty": 63 - }, - "span": 178, - "user_ty": null - } - }, - "target": 4, - "unwind": "Unreachable" - } - }, - "span": 179 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 182 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 181 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 185 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 30, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 7 - ] - ] - } - } - }, - "ty": 27 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 31, - "kind": "ZeroSized", - "ty": 64 - }, - "span": 183, - "user_ty": null } }, - "target": 2, - "unwind": "Unreachable" + "targets": { + "branches": [ + [ + 0, + 3 + ], + [ + 1, + 2 + ] + ], + "otherwise": 1 + } } }, "span": 184 @@ -7254,95 +7327,85 @@ "locals": [ { "mutability": "Mut", + "span": 185, + "ty": 55 + }, + { + "mutability": "Not", "span": 186, - "ty": 48 + "ty": 29 }, { "mutability": "Not", "span": 187, - "ty": 56 + "ty": 29 }, { "mutability": "Not", - "span": 158, - "ty": 9 + "span": 188, + "ty": 56 }, { "mutability": "Mut", - "span": 165, - "ty": 28 + "span": 161, + "ty": 64 }, { "mutability": "Mut", - "span": 166, - "ty": 65 + "span": 189, + "ty": 6 }, { - "mutability": "Mut", - "span": 169, - "ty": 28 + "mutability": "Not", + "span": 165, + "ty": 59 }, { "mutability": "Mut", - "span": 170, - "ty": 65 + "span": 163, + "ty": 37 }, { "mutability": "Mut", - "span": 157, - "ty": 21 + "span": 160, + "ty": 20 }, { "mutability": "Not", - "span": 179, + "span": 175, "ty": 1 }, { "mutability": "Mut", - "span": 180, - "ty": 38 - }, - { - "mutability": "Mut", - "span": 171, - "ty": 52 - }, - { - "mutability": "Not", - "span": 173, - "ty": 61 - }, - { - "mutability": "Mut", - "span": 173, - "ty": 62 + "span": 181, + "ty": 49 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 166, + "ty": 65 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 168, + "ty": 53 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 190, + "ty": 60 } ], - "span": 193, + "span": 196, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "layout", + "name": "size", "source_info": { "scope": 0, - "span": 187 + "span": 186 }, "value": { "Place": { @@ -7352,17 +7415,92 @@ } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "src", + "name": "align", + "source_info": { + "scope": 0, + "span": 187 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "layout", "source_info": { "scope": 1, "span": 188 }, + "value": { + "Place": { + "local": 3, + "projection": [] + } + } + }, + { + "argument_index": null, + "composite": null, + "name": "ptr", + "source_info": { + "scope": 2, + "span": 165 + }, + "value": { + "Place": { + "local": 6, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "size", + "source_info": { + "scope": 3, + "span": 191 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 2, + "composite": null, + "name": "align", + "source_info": { + "scope": 3, + "span": 192 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 4, + "span": 193 + }, "value": { "Const": { "const_": { - "id": 30, + "id": 32, "kind": { "Allocated": { "align": 8, @@ -7381,30 +7519,30 @@ "ptrs": [ [ 0, - 7 + 6 ] ] } } }, - "ty": 27 + "ty": 63 }, - "span": 189, + "span": 177, "user_ty": null } } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "self", + "name": "layout", "source_info": { - "scope": 5, - "span": 190 + "scope": 4, + "span": 194 }, "value": { "Place": { - "local": 4, + "local": 3, "projection": [] } } @@ -7414,8 +7552,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 6, - "span": 191 + "scope": 5, + "span": 195 }, "value": { "Place": { @@ -7423,52 +7561,44 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 192 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } } ] - } - ], - "id": 16, - "name": "std::alloc::alloc" - } - }, - "symbol_name": "_ZN5alloc5alloc5alloc17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ + }, { - "arg_count": 3, + "arg_count": 0, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 5 + "Assign": [ + { + "local": 1, + "projection": [] + }, + { + "Aggregate": [ + { + "Adt": [ + 15, + 0, + [], + null, + null + ] + }, + [] + ] + } + ] }, - "span": 195 + "span": 177 }, { "kind": { "Assign": [ { - "local": 5, + "local": 0, "projection": [] }, { @@ -7478,54 +7608,91 @@ }, "Shared", { - "local": 2, + "local": 1, "projection": [] } ] } ] }, - "span": 195 + "span": 177 + } + ], + "terminator": { + "kind": "Return", + "span": 177 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 177, + "ty": 63 + }, + { + "mutability": "Mut", + "span": 177, + "ty": 66 + } + ], + "span": 177, + "spread_arg": null, + "var_debug_info": [] + } + ], + "id": 12, + "name": "alloc::alloc::exchange_malloc" + } + }, + "symbol_name": "_ZN5alloc5alloc15exchange_malloc17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 1, + "blocks": [ + { + "statements": [ + { + "kind": { + "StorageLive": 2 + }, + "span": 197 + }, + { + "kind": { + "StorageLive": 7 + }, + "span": 123 }, { "kind": { "Assign": [ { - "local": 4, + "local": 7, "projection": [] }, { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } + "NullaryOp": [ + "UbChecks", + 20 + ] } ] }, - "span": 167 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 196 + "span": 125 } ], "terminator": { "kind": { "SwitchInt": { "discr": { - "Copy": { - "local": 4, + "Move": { + "local": 7, "projection": [] } }, @@ -7533,73 +7700,61 @@ "branches": [ [ 0, - 2 + 5 ] ], - "otherwise": 1 + "otherwise": 3 } } }, - "span": 194 + "span": 123 } }, { "statements": [ { "kind": { - "StorageLive": 9 + "StorageDead": 5 + }, + "span": 199 + }, + { + "kind": { + "StorageDead": 3 }, - "span": 198 + "span": 199 } ], "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 197 + "kind": "Return", + "span": 198 } }, { "statements": [ { "kind": { - "StorageLive": 6 + "StorageDead": 2 }, - "span": 200 + "span": 202 }, { "kind": { - "StorageLive": 7 + "StorageLive": 3 }, - "span": 201 + "span": 203 }, { "kind": { - "StorageLive": 8 + "StorageLive": 4 }, - "span": 202 + "span": 204 }, { "kind": { "Assign": [ { - "local": 8, + "local": 4, "projection": [] }, { @@ -7609,43 +7764,104 @@ }, "Shared", { - "local": 2, + "local": 1, "projection": [] } ] } ] }, - "span": 202 + "span": 204 }, { "kind": { - "StorageLive": 18 + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 1, + "projection": [ + { + "Field": [ + 0, + 29 + ] + } + ] + } + } + } + ] }, - "span": 203 + "span": 133 }, { "kind": { - "StorageLive": 19 + "StorageDead": 4 }, - "span": 171 + "span": 205 + }, + { + "kind": { + "StorageLive": 5 + }, + "span": 206 + }, + { + "kind": { + "StorageLive": 6 + }, + "span": 207 }, { "kind": { "Assign": [ { - "local": 19, + "local": 6, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 1, + "projection": [] + } + ] + } + ] + }, + "span": 207 + }, + { + "kind": { + "StorageLive": 10 + }, + "span": 137 + }, + { + "kind": { + "Assign": [ + { + "local": 10, "projection": [] }, { "Use": { "Copy": { - "local": 2, + "local": 1, "projection": [ { "Field": [ 1, - 52 + 49 ] } ] @@ -7654,54 +7870,54 @@ } ] }, - "span": 171 + "span": 137 }, { "kind": { - "StorageLive": 21 + "StorageLive": 12 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 22 + "StorageLive": 13 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 23 + "StorageLive": 14 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 24 + "StorageLive": 15 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 20 + "StorageLive": 11 }, - "span": 173 + "span": 139 }, { "kind": { "Assign": [ { - "local": 20, + "local": 11, "projection": [] }, { "Use": { "Copy": { - "local": 19, + "local": 10, "projection": [ { "Field": [ 0, - 61 + 50 ] } ] @@ -7710,30 +7926,30 @@ } ] }, - "span": 173 + "span": 139 }, { "kind": { "Assign": [ { - "local": 21, + "local": 12, "projection": [] }, { "Discriminant": { - "local": 20, + "local": 11, "projection": [] } } ] }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 22, + "local": 13, "projection": [] }, { @@ -7741,14 +7957,14 @@ "Ge", { "Copy": { - "local": 21, + "local": 12, "projection": [] } }, { "Constant": { "const_": { - "id": 27, + "id": 23, "kind": { "Allocated": { "align": 8, @@ -7768,9 +7984,60 @@ } } }, - "ty": 62 + "ty": 51 + }, + "span": 140, + "user_ty": null + } + } + ] + } + ] + }, + "span": 140 + }, + { + "kind": { + "Assign": [ + { + "local": 14, + "projection": [] + }, + { + "BinaryOp": [ + "Le", + { + "Copy": { + "local": 12, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "id": 24, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 128 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 51 }, - "span": 174, + "span": 140, "user_ty": null } } @@ -7778,204 +8045,671 @@ } ] }, - "span": 174 + "span": 140 + }, + { + "kind": { + "Assign": [ + { + "local": 15, + "projection": [] + }, + { + "BinaryOp": [ + "BitAnd", + { + "Move": { + "local": 13, + "projection": [] + } + }, + { + "Move": { + "local": 14, + "projection": [] + } + } + ] + } + ] + }, + "span": 140 + }, + { + "kind": { + "Intrinsic": { + "Assume": { + "Move": { + "local": 15, + "projection": [] + } + } + } + }, + "span": 140 + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Copy": { + "local": 12, + "projection": [] + } + }, + 29 + ] + } + ] + }, + "span": 140 + }, + { + "kind": { + "StorageDead": 11 + }, + "span": 141 + }, + { + "kind": { + "StorageDead": 15 + }, + "span": 138 }, { "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 62 - }, - "span": 174, - "user_ty": null - } - } - ] - } - ] + "StorageDead": 14 + }, + "span": 138 + }, + { + "kind": { + "StorageDead": 13 + }, + "span": 138 + }, + { + "kind": { + "StorageDead": 12 + }, + "span": 138 + }, + { + "kind": { + "StorageDead": 10 + }, + "span": 142 + }, + { + "kind": { + "StorageDead": 6 + }, + "span": 208 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 5, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 33, + "kind": "ZeroSized", + "ty": 67 + }, + "span": 200, + "user_ty": null + } + }, + "target": 1, + "unwind": "Unreachable" + } + }, + "span": 201 + } + }, + { + "statements": [ + { + "kind": { + "StorageLive": 9 + }, + "span": 147 + }, + { + "kind": { + "Assign": [ + { + "local": 9, + "projection": [] + }, + { + "Cast": [ + "PtrToPtr", + { + "Constant": { + "const_": { + "id": 27, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 5 + ] + ] + } + } + }, + "ty": 53 + }, + "span": 29, + "user_ty": null + } + }, + 36 + ] + } + ] + }, + "span": 147 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 9, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "id": 12, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 29 + }, + "span": 29, + "user_ty": null + } + }, + { + "Constant": { + "const_": { + "id": 26, + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 20 + }, + "span": 145, + "user_ty": null + } + } + ], + "destination": { + "local": 8, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 25, + "kind": "ZeroSized", + "ty": 52 + }, + "span": 144, + "user_ty": null + } + }, + "target": 4, + "unwind": "Unreachable" + } + }, + "span": 146 + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 9 + }, + "span": 149 + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 5 + } + }, + "span": 148 + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 7 + }, + "span": 152 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Constant": { + "const_": { + "id": 27, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 5 + ] + ] + } + } + }, + "ty": 53 + }, + "span": 29, + "user_ty": null + } + } + ], + "destination": { + "local": 2, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 28, + "kind": "ZeroSized", + "ty": 54 + }, + "span": 150, + "user_ty": null + } + }, + "target": 2, + "unwind": "Unreachable" + } + }, + "span": 151 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 209, + "ty": 55 + }, + { + "mutability": "Not", + "span": 210, + "ty": 56 + }, + { + "mutability": "Not", + "span": 197, + "ty": 9 + }, + { + "mutability": "Mut", + "span": 203, + "ty": 29 + }, + { + "mutability": "Mut", + "span": 204, + "ty": 57 + }, + { + "mutability": "Mut", + "span": 206, + "ty": 29 + }, + { + "mutability": "Mut", + "span": 207, + "ty": 57 + }, + { + "mutability": "Mut", + "span": 123, + "ty": 20 + }, + { + "mutability": "Not", + "span": 146, + "ty": 1 + }, + { + "mutability": "Mut", + "span": 147, + "ty": 36 + }, + { + "mutability": "Mut", + "span": 137, + "ty": 49 + }, + { + "mutability": "Not", + "span": 139, + "ty": 50 + }, + { + "mutability": "Mut", + "span": 139, + "ty": 51 + }, + { + "mutability": "Mut", + "span": 140, + "ty": 20 + }, + { + "mutability": "Mut", + "span": 140, + "ty": 20 + }, + { + "mutability": "Mut", + "span": 140, + "ty": 20 + } + ], + "span": 212, + "spread_arg": null, + "var_debug_info": [ + { + "argument_index": 1, + "composite": null, + "name": "layout", + "source_info": { + "scope": 0, + "span": 210 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "src", + "source_info": { + "scope": 1, + "span": 155 + }, + "value": { + "Const": { + "const_": { + "id": 27, + "kind": { + "Allocated": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [ + [ + 0, + 5 + ] + ] + } + } + }, + "ty": 53 + }, + "span": 211, + "user_ty": null + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 5, + "span": 157 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 6, + "span": 158 + }, + "value": { + "Place": { + "local": 6, + "projection": [] + } + } + } + ] + } + ], + "id": 16, + "name": "std::alloc::alloc" + } + }, + "symbol_name": "_ZN5alloc5alloc5alloc17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 3, + "blocks": [ + { + "statements": [ + { + "kind": { + "StorageLive": 5 }, - "span": 174 + "span": 214 }, { "kind": { "Assign": [ { - "local": 24, + "local": 5, "projection": [] }, { - "BinaryOp": [ - "BitAnd", + "Ref": [ { - "Move": { - "local": 22, - "projection": [] - } + "kind": "ReErased" }, + "Shared", { - "Move": { - "local": 23, - "projection": [] - } + "local": 2, + "projection": [] } ] } ] }, - "span": 174 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 24, - "projection": [] - } - } - } - }, - "span": 174 + "span": 214 }, { "kind": { "Assign": [ { - "local": 18, + "local": 4, "projection": [] }, { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - 28 - ] + "Use": { + "Copy": { + "local": 2, + "projection": [ + { + "Field": [ + 0, + 29 + ] + } + ] + } + } } ] }, - "span": 174 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 175 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 172 - }, - { - "kind": { - "StorageDead": 23 - }, - "span": 172 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 172 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 172 + "span": 133 }, { "kind": { - "StorageDead": 19 + "StorageDead": 5 }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 17, + "span": 215 + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Copy": { + "local": 4, "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 18, - "projection": [] - } - }, - 48 - ] } - ] - }, - "span": 204 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 205 + }, + "targets": { + "branches": [ + [ + 0, + 2 + ] + ], + "otherwise": 1 + } + } }, + "span": 213 + } + }, + { + "statements": [ { "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 21 - ] - } - ] + "StorageLive": 9 }, - "span": 159 + "span": 217 } ], "terminator": { @@ -7983,7 +8717,7 @@ "SwitchInt": { "discr": { "Copy": { - "local": 25, + "local": 3, "projection": [] } }, @@ -7991,54 +8725,41 @@ "branches": [ [ 0, - 9 + 4 ] ], - "otherwise": 7 + "otherwise": 3 } } }, - "span": 199 + "span": 216 } }, { "statements": [ { "kind": { - "StorageLive": 10 + "StorageLive": 6 }, - "span": 208 + "span": 219 }, { "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [] - } - } - } - ] + "StorageLive": 7 }, - "span": 208 + "span": 220 }, { "kind": { - "StorageLive": 34 + "StorageLive": 8 }, - "span": 209 + "span": 221 }, { "kind": { "Assign": [ { - "local": 34, + "local": 8, "projection": [] }, { @@ -8048,67 +8769,38 @@ }, "Shared", { - "local": 10, + "local": 2, "projection": [] } ] } ] }, - "span": 209 - }, - { - "kind": { - "StorageDead": 34 - }, - "span": 210 - }, - { - "kind": { - "StorageLive": 35 - }, - "span": 211 - }, - { - "kind": { - "StorageLive": 36 - }, - "span": 212 + "span": 221 }, - { - "kind": { - "Assign": [ - { - "local": 36, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 10, - "projection": [] - } - ] - } - ] + { + "kind": { + "StorageLive": 16 }, - "span": 212 + "span": 222 }, { "kind": { - "StorageLive": 37 + "StorageLive": 17 }, - "span": 171 + "span": 223 + }, + { + "kind": { + "StorageLive": 18 + }, + "span": 137 }, { "kind": { "Assign": [ { - "local": 37, + "local": 18, "projection": [] }, { @@ -8119,7 +8811,7 @@ { "Field": [ 1, - 52 + 49 ] } ] @@ -8128,54 +8820,54 @@ } ] }, - "span": 171 + "span": 137 }, { "kind": { - "StorageLive": 39 + "StorageLive": 20 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 40 + "StorageLive": 21 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 41 + "StorageLive": 22 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 42 + "StorageLive": 23 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 38 + "StorageLive": 19 }, - "span": 173 + "span": 139 }, { "kind": { "Assign": [ { - "local": 38, + "local": 19, "projection": [] }, { "Use": { "Copy": { - "local": 37, + "local": 18, "projection": [ { "Field": [ 0, - 61 + 50 ] } ] @@ -8184,30 +8876,30 @@ } ] }, - "span": 173 + "span": 139 }, { "kind": { "Assign": [ { - "local": 39, + "local": 20, "projection": [] }, { "Discriminant": { - "local": 38, + "local": 19, "projection": [] } } ] }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 40, + "local": 21, "projection": [] }, { @@ -8215,14 +8907,14 @@ "Ge", { "Copy": { - "local": 39, + "local": 20, "projection": [] } }, { "Constant": { "const_": { - "id": 27, + "id": 23, "kind": { "Allocated": { "align": 8, @@ -8242,9 +8934,9 @@ } } }, - "ty": 62 + "ty": 51 }, - "span": 174, + "span": 140, "user_ty": null } } @@ -8252,13 +8944,13 @@ } ] }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 41, + "local": 22, "projection": [] }, { @@ -8266,14 +8958,14 @@ "Le", { "Copy": { - "local": 39, + "local": 20, "projection": [] } }, { "Constant": { "const_": { - "id": 28, + "id": 24, "kind": { "Allocated": { "align": 8, @@ -8293,9 +8985,9 @@ } } }, - "ty": 62 + "ty": 51 }, - "span": 174, + "span": 140, "user_ty": null } } @@ -8303,13 +8995,13 @@ } ] }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 42, + "local": 23, "projection": [] }, { @@ -8317,13 +9009,13 @@ "BitAnd", { "Move": { - "local": 40, + "local": 21, "projection": [] } }, { "Move": { - "local": 41, + "local": 22, "projection": [] } } @@ -8331,26 +9023,26 @@ } ] }, - "span": 174 + "span": 140 }, { "kind": { "Intrinsic": { "Assume": { "Move": { - "local": 42, + "local": 23, "projection": [] } } } }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 35, + "local": 17, "projection": [] }, { @@ -8358,73 +9050,138 @@ "IntToInt", { "Copy": { - "local": 39, + "local": 20, "projection": [] } }, - 28 + 29 ] } ] }, - "span": 174 + "span": 140 }, { "kind": { - "StorageDead": 38 + "StorageDead": 19 }, - "span": 175 + "span": 141 }, { "kind": { - "StorageDead": 42 + "StorageDead": 23 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageDead": 41 + "StorageDead": 22 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageDead": 40 + "StorageDead": 21 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageDead": 39 + "StorageDead": 20 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageDead": 37 + "StorageDead": 18 }, - "span": 176 + "span": 142 }, { "kind": { - "StorageDead": 36 + "Assign": [ + { + "local": 16, + "projection": [] + }, + { + "Cast": [ + "Transmute", + { + "Copy": { + "local": 17, + "projection": [] + } + }, + 55 + ] + } + ] + }, + "span": 224 + }, + { + "kind": { + "StorageDead": 17 + }, + "span": 225 + }, + { + "kind": { + "StorageLive": 27 + }, + "span": 226 + }, + { + "kind": { + "Assign": [ + { + "local": 24, + "projection": [] + }, + { + "NullaryOp": [ + "UbChecks", + 20 + ] + } + ] }, - "span": 213 + "span": 125 } ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Copy": { + "local": 24, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 9 + ] + ], + "otherwise": 7 + } + } + }, + "span": 218 + } + }, + { + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 35, + "local": 2, "projection": [] } } @@ -8436,19 +9193,19 @@ "func": { "Constant": { "const_": { - "id": 32, + "id": 34, "kind": "ZeroSized", - "ty": 66 + "ty": 68 }, - "span": 206, + "span": 227, "user_ty": null } }, - "target": 13, - "unwind": "Unreachable" + "target": 5, + "unwind": "Continue" } }, - "span": 207 + "span": 228 } }, { @@ -8471,11 +9228,11 @@ "func": { "Constant": { "const_": { - "id": 33, + "id": 35, "kind": "ZeroSized", - "ty": 67 + "ty": 69 }, - "span": 214, + "span": 229, "user_ty": null } }, @@ -8483,34 +9240,34 @@ "unwind": "Continue" } }, - "span": 215 + "span": 230 } }, { "statements": [ { "kind": { - "StorageLive": 11 + "StorageLive": 10 }, - "span": 217 + "span": 232 }, { "kind": { - "StorageLive": 12 + "StorageLive": 11 }, - "span": 218 + "span": 233 }, { "kind": { - "StorageLive": 13 + "StorageLive": 12 }, - "span": 219 + "span": 234 }, { "kind": { "Assign": [ { - "local": 14, + "local": 13, "projection": [] }, { @@ -8523,19 +9280,42 @@ } ] }, - "span": 220 + "span": 235 + }, + { + "kind": { + "Assign": [ + { + "local": 34, + "projection": [] + }, + { + "Cast": [ + "PtrToPtr", + { + "Copy": { + "local": 13, + "projection": [] + } + }, + 53 + ] + } + ] + }, + "span": 236 }, { "kind": { - "StorageLive": 44 + "StorageLive": 35 }, - "span": 102 + "span": 99 }, { "kind": { "Assign": [ { - "local": 44, + "local": 35, "projection": [] }, { @@ -8543,16 +9323,16 @@ "Transmute", { "Copy": { - "local": 14, + "local": 13, "projection": [] } }, - 28 + 29 ] } ] }, - "span": 103 + "span": 69 } ], "terminator": { @@ -8560,7 +9340,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 44, + "local": 35, "projection": [] } }, @@ -8568,36 +9348,36 @@ "branches": [ [ 0, - 14 + 13 ] ], - "otherwise": 15 + "otherwise": 14 } } }, - "span": 216 + "span": 231 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 221 + "span": 237 } }, { "statements": [ { "kind": { - "StorageLive": 27 + "StorageLive": 26 }, - "span": 224 + "span": 240 }, { "kind": { "Assign": [ { - "local": 27, + "local": 26, "projection": [] }, { @@ -8605,16 +9385,16 @@ "PtrToPtr", { "Copy": { - "local": 17, + "local": 16, "projection": [] } }, - 49 + 46 ] } ] }, - "span": 224 + "span": 240 } ], "terminator": { @@ -8623,23 +9403,23 @@ "args": [ { "Move": { - "local": 27, + "local": 26, "projection": [] } } ], "destination": { - "local": 26, + "local": 25, "projection": [] }, "func": { "Constant": { "const_": { - "id": 34, + "id": 36, "kind": "ZeroSized", - "ty": 68 + "ty": 70 }, - "span": 222, + "span": 238, "user_ty": null } }, @@ -8647,22 +9427,22 @@ "unwind": "Unreachable" } }, - "span": 223 + "span": 239 } }, { "statements": [ { "kind": { - "StorageDead": 27 + "StorageDead": 26 }, - "span": 225 + "span": 241 }, { "kind": { "Assign": [ { - "local": 28, + "local": 27, "projection": [] }, { @@ -8670,16 +9450,16 @@ "PtrToPtr", { "Copy": { - "local": 17, + "local": 16, "projection": [] } }, - 27 + 53 ] } ] }, - "span": 226 + "span": 242 }, { "kind": { @@ -8692,7 +9472,7 @@ "Aggregate": [ { "Adt": [ - 14, + 13, 0, [ { @@ -8706,7 +9486,7 @@ [ { "Copy": { - "local": 28, + "local": 27, "projection": [] } } @@ -8715,71 +9495,87 @@ } ] }, - "span": 227 + "span": 243 + }, + { + "kind": { + "StorageDead": 27 + }, + "span": 226 + }, + { + "kind": { + "StorageDead": 16 + }, + "span": 244 }, { "kind": { "StorageDead": 8 }, - "span": 228 + "span": 245 }, { "kind": { "StorageLive": 29 }, - "span": 229 + "span": 219 }, { "kind": { - "StorageLive": 30 + "StorageLive": 28 }, - "span": 230 + "span": 246 }, { "kind": { "Assign": [ { - "local": 30, + "local": 29, "projection": [] }, { - "Use": { - "Copy": { - "local": 17, - "projection": [] - } - } + "Cast": [ + "Transmute", + { + "Copy": { + "local": 7, + "projection": [] + } + }, + 55 + ] } ] }, - "span": 137 + "span": 169 }, { "kind": { "Assign": [ { - "local": 29, + "local": 28, "projection": [] }, { "Aggregate": [ { "RawPtr": [ - 69, + 71, "Mut" ] }, [ { "Copy": { - "local": 17, + "local": 29, "projection": [] } }, { "Constant": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -8799,9 +9595,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -8810,19 +9606,13 @@ } ] }, - "span": 231 - }, - { - "kind": { - "StorageDead": 30 - }, - "span": 232 + "span": 247 }, { "kind": { - "StorageLive": 33 + "StorageLive": 32 }, - "span": 233 + "span": 248 } ], "terminator": { @@ -8831,7 +9621,7 @@ "target": 10 } }, - "span": 199 + "span": 218 } }, { @@ -8840,7 +9630,7 @@ "kind": { "Assign": [ { - "local": 28, + "local": 27, "projection": [] }, { @@ -8848,16 +9638,16 @@ "PtrToPtr", { "Copy": { - "local": 17, + "local": 16, "projection": [] } }, - 27 + 53 ] } ] }, - "span": 226 + "span": 242 }, { "kind": { @@ -8870,7 +9660,7 @@ "Aggregate": [ { "Adt": [ - 14, + 13, 0, [ { @@ -8884,7 +9674,7 @@ [ { "Copy": { - "local": 28, + "local": 27, "projection": [] } } @@ -8893,71 +9683,87 @@ } ] }, - "span": 227 + "span": 243 + }, + { + "kind": { + "StorageDead": 27 + }, + "span": 226 + }, + { + "kind": { + "StorageDead": 16 + }, + "span": 244 }, { "kind": { "StorageDead": 8 }, - "span": 228 + "span": 245 }, { "kind": { "StorageLive": 29 }, - "span": 229 + "span": 219 }, { "kind": { - "StorageLive": 30 + "StorageLive": 28 }, - "span": 230 + "span": 246 }, { "kind": { "Assign": [ { - "local": 30, + "local": 29, "projection": [] }, { - "Use": { - "Copy": { - "local": 17, - "projection": [] - } - } + "Cast": [ + "Transmute", + { + "Copy": { + "local": 7, + "projection": [] + } + }, + 55 + ] } ] }, - "span": 137 + "span": 169 }, { "kind": { "Assign": [ { - "local": 29, + "local": 28, "projection": [] }, { "Aggregate": [ { "RawPtr": [ - 69, + 71, "Mut" ] }, [ { "Copy": { - "local": 17, + "local": 29, "projection": [] } }, { "Constant": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -8977,9 +9783,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -8988,19 +9794,13 @@ } ] }, - "span": 231 - }, - { - "kind": { - "StorageDead": 30 - }, - "span": 232 + "span": 247 }, { "kind": { - "StorageLive": 33 + "StorageLive": 32 }, - "span": 233 + "span": 248 } ], "terminator": { @@ -9008,7 +9808,7 @@ "SwitchInt": { "discr": { "Copy": { - "local": 25, + "local": 24, "projection": [] } }, @@ -9023,22 +9823,22 @@ } } }, - "span": 199 + "span": 218 } }, { "statements": [ { "kind": { - "StorageLive": 32 + "StorageLive": 31 }, - "span": 224 + "span": 240 }, { "kind": { "Assign": [ { - "local": 32, + "local": 31, "projection": [] }, { @@ -9046,16 +9846,16 @@ "PtrToPtr", { "Copy": { - "local": 17, + "local": 29, "projection": [] } }, - 49 + 46 ] } ] }, - "span": 224 + "span": 240 } ], "terminator": { @@ -9064,23 +9864,23 @@ "args": [ { "Move": { - "local": 32, + "local": 31, "projection": [] } } ], "destination": { - "local": 31, + "local": 30, "projection": [] }, "func": { "Constant": { "const_": { - "id": 34, + "id": 36, "kind": "ZeroSized", - "ty": 68 + "ty": 70 }, - "span": 222, + "span": 238, "user_ty": null } }, @@ -9088,16 +9888,16 @@ "unwind": "Unreachable" } }, - "span": 223 + "span": 239 } }, { "statements": [ { "kind": { - "StorageDead": 32 + "StorageDead": 31 }, - "span": 225 + "span": 241 } ], "terminator": { @@ -9106,7 +9906,7 @@ "target": 12 } }, - "span": 234 + "span": 249 } }, { @@ -9115,7 +9915,7 @@ "kind": { "Assign": [ { - "local": 33, + "local": 32, "projection": [] }, { @@ -9123,16 +9923,16 @@ "PtrToPtr", { "Copy": { - "local": 29, + "local": 28, "projection": [] } }, - 55 + 72 ] } ] }, - "span": 226 + "span": 242 }, { "kind": { @@ -9145,11 +9945,11 @@ "Aggregate": [ { "Adt": [ - 14, + 13, 0, [ { - "Type": 69 + "Type": 71 } ], null, @@ -9159,7 +9959,7 @@ [ { "Copy": { - "local": 33, + "local": 32, "projection": [] } } @@ -9168,25 +9968,31 @@ } ] }, - "span": 227 + "span": 243 + }, + { + "kind": { + "StorageDead": 32 + }, + "span": 248 }, { "kind": { - "StorageDead": 33 + "StorageDead": 28 }, - "span": 233 + "span": 251 }, { "kind": { "StorageDead": 29 }, - "span": 236 + "span": 219 }, { "kind": { "StorageDead": 7 }, - "span": 237 + "span": 252 }, { "kind": { @@ -9203,10 +10009,10 @@ 0, [ { - "Type": 54 + "Type": 59 }, { - "Type": 70 + "Type": 73 } ], null, @@ -9225,13 +10031,13 @@ } ] }, - "span": 238 + "span": 253 }, { "kind": { "StorageDead": 6 }, - "span": 235 + "span": 250 } ], "terminator": { @@ -9240,7 +10046,7 @@ "target": 6 } }, - "span": 235 + "span": 250 } }, { @@ -9249,44 +10055,20 @@ "kind": { "StorageDead": 35 }, - "span": 240 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 241 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 239 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 44 - }, - "span": 216 + "span": 231 }, { "kind": { "Assign": [ { - "local": 13, + "local": 12, "projection": [] }, { "Use": { "Constant": { "const_": { - "id": 35, + "id": 37, "kind": { "Allocated": { "align": 8, @@ -9306,35 +10088,35 @@ } } }, - "ty": 71 + "ty": 74 }, - "span": 32, + "span": 29, "user_ty": null } } } ] }, - "span": 242 + "span": 254 }, { "kind": { - "StorageLive": 49 + "StorageLive": 39 }, - "span": 243 + "span": 255 }, { "kind": { "Assign": [ { - "local": 12, + "local": 11, "projection": [] }, { "Use": { "Constant": { "const_": { - "id": 36, + "id": 38, "kind": { "Allocated": { "align": 8, @@ -9354,46 +10136,46 @@ } } }, - "ty": 72 + "ty": 75 }, - "span": 32, + "span": 29, "user_ty": null } } } ] }, - "span": 244 + "span": 256 }, { "kind": { - "StorageDead": 49 + "StorageDead": 39 }, - "span": 243 + "span": 255 }, { "kind": { - "StorageDead": 13 + "StorageDead": 12 }, - "span": 245 + "span": 257 }, { "kind": { - "StorageLive": 50 + "StorageLive": 40 }, - "span": 217 + "span": 232 }, { "kind": { - "StorageDead": 50 + "StorageDead": 40 }, - "span": 217 + "span": 232 }, { "kind": { - "StorageDead": 12 + "StorageDead": 11 }, - "span": 246 + "span": 258 }, { "kind": { @@ -9406,7 +10188,7 @@ "Use": { "Constant": { "const_": { - "id": 37, + "id": 39, "kind": { "Allocated": { "align": 8, @@ -9434,28 +10216,28 @@ } } }, - "ty": 57 + "ty": 64 }, - "span": 32, + "span": 29, "user_ty": null } } } ] }, - "span": 247 + "span": 259 }, { "kind": { - "StorageDead": 11 + "StorageDead": 10 }, - "span": 248 + "span": 260 }, { "kind": { "StorageDead": 9 }, - "span": 249 + "span": 261 } ], "terminator": { @@ -9464,51 +10246,45 @@ "target": 6 } }, - "span": 221 + "span": 237 } }, { "statements": [ { "kind": { - "StorageDead": 44 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 43 + "StorageDead": 35 }, - "span": 250 + "span": 231 }, { "kind": { - "StorageLive": 48 + "StorageLive": 33 }, - "span": 251 + "span": 262 }, { "kind": { - "StorageLive": 45 + "StorageLive": 36 }, - "span": 199 + "span": 218 }, { "kind": { "Assign": [ { - "local": 45, + "local": 36, "projection": [] }, { "NullaryOp": [ "UbChecks", - 21 + 20 ] } ] }, - "span": 159 + "span": 125 } ], "terminator": { @@ -9516,7 +10292,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 45, + "local": 36, "projection": [] } }, @@ -9524,29 +10300,29 @@ "branches": [ [ 0, - 18 + 17 ] ], - "otherwise": 16 + "otherwise": 15 } } }, - "span": 199 + "span": 218 } }, { "statements": [ { "kind": { - "StorageLive": 47 + "StorageLive": 38 }, - "span": 224 + "span": 240 }, { "kind": { "Assign": [ { - "local": 47, + "local": 38, "projection": [] }, { @@ -9554,16 +10330,16 @@ "PtrToPtr", { "Copy": { - "local": 14, + "local": 13, "projection": [] } }, - 49 + 46 ] } ] }, - "span": 224 + "span": 240 } ], "terminator": { @@ -9572,94 +10348,71 @@ "args": [ { "Move": { - "local": 47, + "local": 38, "projection": [] } } ], "destination": { - "local": 46, + "local": 37, "projection": [] }, "func": { "Constant": { "const_": { - "id": 34, + "id": 36, "kind": "ZeroSized", - "ty": 68 + "ty": 70 }, - "span": 222, + "span": 238, "user_ty": null } }, - "target": 17, + "target": 16, "unwind": "Unreachable" } }, - "span": 223 + "span": 239 } }, { "statements": [ { "kind": { - "StorageDead": 47 + "StorageDead": 38 }, - "span": 225 + "span": 241 } ], "terminator": { "kind": { "Goto": { - "target": 18 + "target": 17 } }, - "span": 234 + "span": 249 } }, { "statements": [ { "kind": { - "StorageDead": 45 - }, - "span": 252 - }, - { - "kind": { - "Assign": [ - { - "local": 48, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 27 - ] - } - ] + "StorageDead": 36 }, - "span": 226 + "span": 263 }, { "kind": { "Assign": [ { - "local": 43, + "local": 33, "projection": [] }, { "Aggregate": [ { "Adt": [ - 14, + 13, 0, [ { @@ -9673,7 +10426,7 @@ [ { "Copy": { - "local": 48, + "local": 34, "projection": [] } } @@ -9682,19 +10435,13 @@ } ] }, - "span": 227 - }, - { - "kind": { - "StorageDead": 48 - }, - "span": 251 + "span": 243 }, { "kind": { "Assign": [ { - "local": 13, + "local": 12, "projection": [] }, { @@ -9705,7 +10452,7 @@ 1, [ { - "Type": 58 + "Type": 65 } ], null, @@ -9715,7 +10462,7 @@ [ { "Move": { - "local": 43, + "local": 33, "projection": [] } } @@ -9724,31 +10471,31 @@ } ] }, - "span": 253 + "span": 264 }, { "kind": { - "StorageDead": 43 + "StorageDead": 33 }, - "span": 254 + "span": 265 }, { "kind": { - "StorageLive": 49 + "StorageLive": 39 }, - "span": 243 + "span": 255 }, { "kind": { "Assign": [ { - "local": 49, + "local": 39, "projection": [] }, { "Use": { "Move": { - "local": 13, + "local": 12, "projection": [ { "Downcast": 1 @@ -9756,7 +10503,7 @@ { "Field": [ 0, - 58 + 65 ] } ] @@ -9765,13 +10512,13 @@ } ] }, - "span": 255 + "span": 266 }, { "kind": { "Assign": [ { - "local": 12, + "local": 11, "projection": [] }, { @@ -9782,10 +10529,10 @@ 0, [ { - "Type": 58 + "Type": 65 }, { - "Type": 70 + "Type": 73 } ], null, @@ -9795,7 +10542,7 @@ [ { "Copy": { - "local": 49, + "local": 39, "projection": [] } } @@ -9804,37 +10551,37 @@ } ] }, - "span": 256 + "span": 267 }, { "kind": { - "StorageDead": 49 + "StorageDead": 39 }, - "span": 243 + "span": 255 }, { "kind": { - "StorageDead": 13 + "StorageDead": 12 }, - "span": 245 + "span": 257 }, { "kind": { - "StorageLive": 50 + "StorageLive": 40 }, - "span": 217 + "span": 232 }, { "kind": { "Assign": [ { - "local": 50, + "local": 40, "projection": [] }, { "Use": { "Move": { - "local": 12, + "local": 11, "projection": [ { "Downcast": 0 @@ -9842,7 +10589,7 @@ { "Field": [ 0, - 58 + 65 ] } ] @@ -9851,13 +10598,13 @@ } ] }, - "span": 257 + "span": 268 }, { "kind": { "Assign": [ { - "local": 11, + "local": 10, "projection": [] }, { @@ -9868,10 +10615,10 @@ 0, [ { - "Type": 73 + "Type": 76 }, { - "Type": 58 + "Type": 65 } ], null, @@ -9881,7 +10628,7 @@ [ { "Copy": { - "local": 50, + "local": 40, "projection": [] } } @@ -9890,31 +10637,31 @@ } ] }, - "span": 258 + "span": 269 }, { "kind": { - "StorageDead": 50 + "StorageDead": 40 }, - "span": 217 + "span": 232 }, { "kind": { - "StorageDead": 12 + "StorageDead": 11 }, - "span": 246 + "span": 258 }, { "kind": { "Assign": [ { - "local": 15, + "local": 14, "projection": [] }, { "Use": { "Copy": { - "local": 11, + "local": 10, "projection": [ { "Downcast": 0 @@ -9922,7 +10669,7 @@ { "Field": [ 0, - 58 + 65 ] } ] @@ -9931,106 +10678,74 @@ } ] }, - "span": 259 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 248 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 260 + "span": 270 }, { "kind": { - "StorageLive": 53 + "StorageDead": 10 }, "span": 260 }, { "kind": { - "StorageLive": 51 + "StorageLive": 15 }, - "span": 229 + "span": 271 }, { "kind": { - "StorageLive": 52 + "StorageLive": 42 }, - "span": 230 + "span": 271 }, { "kind": { - "Assign": [ - { - "local": 53, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] + "StorageLive": 41 }, - "span": 134 + "span": 246 }, { "kind": { "Assign": [ { - "local": 52, + "local": 42, "projection": [] }, { "Cast": [ - "PtrToPtr", + "Transmute", { "Copy": { - "local": 53, + "local": 14, "projection": [] } }, - 48 + 55 ] } ] }, - "span": 137 + "span": 169 }, { "kind": { "Assign": [ { - "local": 51, + "local": 41, "projection": [] }, { "Aggregate": [ { "RawPtr": [ - 69, + 71, "Mut" ] }, [ { "Copy": { - "local": 52, + "local": 42, "projection": [] } }, @@ -10045,42 +10760,36 @@ } ] }, - "span": 231 - }, - { - "kind": { - "StorageDead": 52 - }, - "span": 232 + "span": 247 }, { "kind": { - "StorageLive": 57 + "StorageLive": 46 }, - "span": 233 + "span": 248 }, { "kind": { - "StorageLive": 54 + "StorageLive": 43 }, - "span": 199 + "span": 218 }, { "kind": { "Assign": [ { - "local": 54, + "local": 43, "projection": [] }, { "NullaryOp": [ "UbChecks", - 21 + 20 ] } ] }, - "span": 159 + "span": 125 } ], "terminator": { @@ -10088,7 +10797,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 54, + "local": 43, "projection": [] } }, @@ -10096,29 +10805,29 @@ "branches": [ [ 0, - 21 + 20 ] ], - "otherwise": 19 + "otherwise": 18 } } }, - "span": 199 + "span": 218 } }, { "statements": [ { "kind": { - "StorageLive": 56 + "StorageLive": 45 }, - "span": 224 + "span": 240 }, { "kind": { "Assign": [ { - "local": 56, + "local": 45, "projection": [] }, { @@ -10126,16 +10835,16 @@ "PtrToPtr", { "Copy": { - "local": 53, + "local": 42, "projection": [] } }, - 49 + 46 ] } ] }, - "span": 224 + "span": 240 } ], "terminator": { @@ -10144,64 +10853,64 @@ "args": [ { "Move": { - "local": 56, + "local": 45, "projection": [] } } ], "destination": { - "local": 55, + "local": 44, "projection": [] }, "func": { "Constant": { "const_": { - "id": 34, + "id": 36, "kind": "ZeroSized", - "ty": 68 + "ty": 70 }, - "span": 222, + "span": 238, "user_ty": null } }, - "target": 20, + "target": 19, "unwind": "Unreachable" } }, - "span": 223 + "span": 239 } }, { "statements": [ { "kind": { - "StorageDead": 56 + "StorageDead": 45 }, - "span": 225 + "span": 241 } ], "terminator": { "kind": { "Goto": { - "target": 21 + "target": 20 } }, - "span": 234 + "span": 249 } }, { "statements": [ { "kind": { - "StorageDead": 54 + "StorageDead": 43 }, - "span": 252 + "span": 263 }, { "kind": { "Assign": [ { - "local": 57, + "local": 46, "projection": [] }, { @@ -10209,33 +10918,33 @@ "PtrToPtr", { "Copy": { - "local": 51, + "local": 41, "projection": [] } }, - 55 + 72 ] } ] }, - "span": 226 + "span": 242 }, { "kind": { "Assign": [ { - "local": 16, + "local": 15, "projection": [] }, { "Aggregate": [ { "Adt": [ - 14, + 13, 0, [ { - "Type": 69 + "Type": 71 } ], null, @@ -10245,7 +10954,7 @@ [ { "Copy": { - "local": 57, + "local": 46, "projection": [] } } @@ -10254,25 +10963,25 @@ } ] }, - "span": 227 + "span": 243 }, { "kind": { - "StorageDead": 57 + "StorageDead": 46 }, - "span": 233 + "span": 248 }, { "kind": { - "StorageDead": 51 + "StorageDead": 41 }, - "span": 236 + "span": 251 }, { "kind": { - "StorageDead": 53 + "StorageDead": 42 }, - "span": 260 + "span": 271 }, { "kind": { @@ -10289,10 +10998,10 @@ 0, [ { - "Type": 54 + "Type": 59 }, { - "Type": 70 + "Type": 73 } ], null, @@ -10302,7 +11011,7 @@ [ { "Move": { - "local": 16, + "local": 15, "projection": [] } } @@ -10311,19 +11020,19 @@ } ] }, - "span": 261 + "span": 272 }, { "kind": { - "StorageDead": 16 + "StorageDead": 15 }, - "span": 262 + "span": 273 }, { "kind": { "StorageDead": 9 }, - "span": 249 + "span": 261 } ], "terminator": { @@ -10332,303 +11041,248 @@ "target": 6 } }, - "span": 249 + "span": 261 } } ], "locals": [ { "mutability": "Mut", - "span": 263, - "ty": 57 + "span": 274, + "ty": 64 }, { "mutability": "Not", - "span": 264, - "ty": 51 + "span": 275, + "ty": 63 }, { "mutability": "Not", - "span": 265, + "span": 276, "ty": 56 }, { "mutability": "Not", - "span": 266, - "ty": 21 + "span": 277, + "ty": 20 }, { "mutability": "Mut", - "span": 267, - "ty": 28 + "span": 278, + "ty": 29 }, { "mutability": "Mut", - "span": 195, - "ty": 65 + "span": 214, + "ty": 57 }, { "mutability": "Mut", - "span": 200, - "ty": 54 + "span": 219, + "ty": 59 }, { "mutability": "Mut", - "span": 201, - "ty": 58 + "span": 220, + "ty": 65 }, { "mutability": "Mut", - "span": 202, - "ty": 65 + "span": 221, + "ty": 57 }, { "mutability": "Not", - "span": 198, - "ty": 48 - }, - { - "mutability": "Mut", - "span": 208, - "ty": 56 + "span": 217, + "ty": 55 }, { "mutability": "Mut", - "span": 217, - "ty": 74 + "span": 232, + "ty": 77 }, { "mutability": "Mut", - "span": 218, - "ty": 72 + "span": 233, + "ty": 75 }, { "mutability": "Mut", - "span": 219, - "ty": 71 + "span": 234, + "ty": 74 }, { "mutability": "Mut", - "span": 220, - "ty": 48 + "span": 235, + "ty": 55 }, { "mutability": "Not", - "span": 259, - "ty": 58 + "span": 270, + "ty": 65 }, { "mutability": "Mut", - "span": 260, - "ty": 54 + "span": 271, + "ty": 59 }, { "mutability": "Mut", - "span": 268, - "ty": 48 + "span": 222, + "ty": 55 }, { "mutability": "Mut", - "span": 203, - "ty": 28 + "span": 223, + "ty": 29 }, { "mutability": "Mut", - "span": 171, - "ty": 52 + "span": 137, + "ty": 49 }, { "mutability": "Not", - "span": 173, - "ty": 61 + "span": 139, + "ty": 50 }, { "mutability": "Mut", - "span": 173, - "ty": 62 + "span": 139, + "ty": 51 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 140, + "ty": 20 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 140, + "ty": 20 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 140, + "ty": 20 }, { "mutability": "Mut", - "span": 199, - "ty": 21 + "span": 218, + "ty": 20 }, { "mutability": "Not", - "span": 223, + "span": 239, "ty": 1 }, { "mutability": "Mut", - "span": 224, - "ty": 49 + "span": 240, + "ty": 46 }, { "mutability": "Mut", - "span": 226, - "ty": 27 + "span": 242, + "ty": 53 }, { "mutability": "Mut", - "span": 229, - "ty": 75 + "span": 246, + "ty": 60 }, { "mutability": "Mut", - "span": 230, - "ty": 48 + "span": 279, + "ty": 55 }, { "mutability": "Not", - "span": 223, + "span": 239, "ty": 1 }, { "mutability": "Mut", - "span": 224, - "ty": 49 - }, - { - "mutability": "Mut", - "span": 226, - "ty": 55 - }, - { - "mutability": "Mut", - "span": 209, - "ty": 65 + "span": 240, + "ty": 46 }, { "mutability": "Mut", - "span": 211, - "ty": 28 + "span": 242, + "ty": 72 }, { "mutability": "Mut", - "span": 212, + "span": 262, "ty": 65 }, - { - "mutability": "Mut", - "span": 171, - "ty": 52 - }, { "mutability": "Not", - "span": 173, - "ty": 61 - }, - { - "mutability": "Mut", - "span": 173, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 174, - "ty": 21 - }, - { - "mutability": "Mut", - "span": 174, - "ty": 21 - }, - { - "mutability": "Mut", - "span": 174, - "ty": 21 - }, - { - "mutability": "Mut", - "span": 250, - "ty": 58 + "span": 280, + "ty": 53 }, { "mutability": "Mut", - "span": 102, - "ty": 28 + "span": 99, + "ty": 29 }, { "mutability": "Mut", - "span": 199, - "ty": 21 + "span": 218, + "ty": 20 }, { "mutability": "Not", - "span": 223, + "span": 239, "ty": 1 }, { "mutability": "Mut", - "span": 224, - "ty": 49 - }, - { - "mutability": "Mut", - "span": 226, - "ty": 27 + "span": 240, + "ty": 46 }, { "mutability": "Not", - "span": 255, - "ty": 58 + "span": 266, + "ty": 65 }, { "mutability": "Not", - "span": 257, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 229, - "ty": 75 + "span": 268, + "ty": 65 }, { "mutability": "Mut", - "span": 230, - "ty": 48 + "span": 246, + "ty": 60 }, { "mutability": "Mut", - "span": 134, - "ty": 27 + "span": 279, + "ty": 55 }, { "mutability": "Mut", - "span": 199, - "ty": 21 + "span": 218, + "ty": 20 }, { "mutability": "Not", - "span": 223, + "span": 239, "ty": 1 }, { "mutability": "Mut", - "span": 224, - "ty": 49 + "span": 240, + "ty": 46 }, { "mutability": "Mut", - "span": 226, - "ty": 55 + "span": 242, + "ty": 72 } ], - "span": 291, + "span": 301, "spread_arg": null, "var_debug_info": [ { @@ -10637,7 +11291,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 264 + "span": 275 }, "value": { "Place": { @@ -10652,7 +11306,7 @@ "name": "layout", "source_info": { "scope": 0, - "span": 265 + "span": 276 }, "value": { "Place": { @@ -10667,7 +11321,7 @@ "name": "zeroed", "source_info": { "scope": 0, - "span": 266 + "span": 277 }, "value": { "Place": { @@ -10682,7 +11336,7 @@ "name": "size", "source_info": { "scope": 1, - "span": 269 + "span": 281 }, "value": { "Place": { @@ -10697,7 +11351,7 @@ "name": "raw_ptr", "source_info": { "scope": 2, - "span": 198 + "span": 217 }, "value": { "Place": { @@ -10712,11 +11366,11 @@ "name": "ptr", "source_info": { "scope": 3, - "span": 270 + "span": 282 }, "value": { "Place": { - "local": 15, + "local": 14, "projection": [] } } @@ -10727,16 +11381,16 @@ "name": "residual", "source_info": { "scope": 4, - "span": 271 + "span": 283 }, "value": { "Const": { "const_": { - "id": 38, + "id": 40, "kind": "ZeroSized", - "ty": 73 + "ty": 76 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -10747,11 +11401,11 @@ "name": "val", "source_info": { "scope": 6, - "span": 259 + "span": 270 }, "value": { "Place": { - "local": 15, + "local": 14, "projection": [] } } @@ -10762,7 +11416,7 @@ "name": "self", "source_info": { "scope": 8, - "span": 190 + "span": 157 }, "value": { "Place": { @@ -10777,7 +11431,7 @@ "name": "self", "source_info": { "scope": 9, - "span": 272 + "span": 284 }, "value": { "Place": { @@ -10792,7 +11446,7 @@ "name": "self", "source_info": { "scope": 10, - "span": 191 + "span": 158 }, "value": { "Place": { @@ -10801,32 +11455,17 @@ } } }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 11, - "span": 192 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, { "argument_index": 1, "composite": null, "name": "addr", "source_info": { "scope": 12, - "span": 273 + "span": 285 }, "value": { "Place": { - "local": 18, + "local": 17, "projection": [] } } @@ -10837,11 +11476,11 @@ "name": "ptr", "source_info": { "scope": 13, - "span": 274 + "span": 286 }, "value": { "Place": { - "local": 17, + "local": 16, "projection": [] } } @@ -10852,7 +11491,7 @@ "name": "data", "source_info": { "scope": 16, - "span": 275 + "span": 287 }, "value": { "Place": { @@ -10867,12 +11506,12 @@ "name": "len", "source_info": { "scope": 16, - "span": 276 + "span": 288 }, "value": { "Const": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -10892,9 +11531,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 277, + "span": 289, "user_ty": null } } @@ -10905,7 +11544,7 @@ "name": "self", "source_info": { "scope": 17, - "span": 155 + "span": 290 }, "value": { "Place": { @@ -10920,11 +11559,11 @@ "name": "data", "source_info": { "scope": 18, - "span": 278 + "span": 291 }, "value": { "Place": { - "local": 30, + "local": 29, "projection": [] } } @@ -10935,65 +11574,12 @@ "name": "len", "source_info": { "scope": 18, - "span": 279 - }, - "value": { - "Const": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 277, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 19, - "span": 280 - }, - "value": { - "Place": { - "local": 30, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 19, - "span": 281 + "span": 292 }, "value": { "Const": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -11013,9 +11599,9 @@ } } }, - "ty": 28 + "ty": 29 }, - "span": 277, + "span": 289, "user_ty": null } } @@ -11026,11 +11612,11 @@ "name": "ptr", "source_info": { "scope": 20, - "span": 274 + "span": 286 }, "value": { "Place": { - "local": 29, + "local": 28, "projection": [] } } @@ -11038,14 +11624,14 @@ { "argument_index": 1, "composite": null, - "name": "layout", + "name": "ptr", "source_info": { "scope": 23, - "span": 282 + "span": 293 }, "value": { "Place": { - "local": 10, + "local": 13, "projection": [] } } @@ -11056,71 +11642,11 @@ "name": "self", "source_info": { "scope": 24, - "span": 190 - }, - "value": { - "Place": { - "local": 34, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 25, - "span": 191 - }, - "value": { - "Place": { - "local": 36, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 26, - "span": 192 - }, - "value": { - "Place": { - "local": 37, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 27, - "span": 283 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 28, - "span": 110 + "span": 106 }, "value": { "Place": { - "local": 14, + "local": 13, "projection": [] } } @@ -11129,58 +11655,13 @@ "argument_index": 1, "composite": null, "name": "ptr", - "source_info": { - "scope": 29, - "span": 111 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 30, - "span": 112 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", "source_info": { "scope": 31, - "span": 113 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 32, - "span": 274 + "span": 286 }, "value": { "Place": { - "local": 14, + "local": 13, "projection": [] } } @@ -11190,12 +11671,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 35, - "span": 284 + "scope": 34, + "span": 294 }, "value": { "Place": { - "local": 13, + "local": 12, "projection": [] } } @@ -11205,17 +11686,17 @@ "composite": null, "name": "err", "source_info": { - "scope": 35, - "span": 285 + "scope": 34, + "span": 295 }, "value": { "Const": { "const_": { - "id": 39, + "id": 41, "kind": "ZeroSized", - "ty": 70 + "ty": 73 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -11225,12 +11706,12 @@ "composite": null, "name": "v", "source_info": { - "scope": 36, - "span": 255 + "scope": 35, + "span": 266 }, "value": { "Place": { - "local": 49, + "local": 39, "projection": [] } } @@ -11240,12 +11721,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 37, - "span": 286 + "scope": 36, + "span": 296 }, "value": { "Place": { - "local": 12, + "local": 11, "projection": [] } } @@ -11255,12 +11736,12 @@ "composite": null, "name": "v", "source_info": { - "scope": 38, - "span": 257 + "scope": 37, + "span": 268 }, "value": { "Place": { - "local": 50, + "local": 40, "projection": [] } } @@ -11270,17 +11751,17 @@ "composite": null, "name": "e", "source_info": { - "scope": 39, - "span": 287 + "scope": 38, + "span": 297 }, "value": { "Const": { "const_": { - "id": 39, + "id": 41, "kind": "ZeroSized", - "ty": 70 + "ty": 73 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -11290,12 +11771,12 @@ "composite": null, "name": "data", "source_info": { - "scope": 40, - "span": 275 + "scope": 39, + "span": 287 }, "value": { "Place": { - "local": 15, + "local": 14, "projection": [] } } @@ -11305,8 +11786,8 @@ "composite": null, "name": "len", "source_info": { - "scope": 40, - "span": 276 + "scope": 39, + "span": 288 }, "value": { "Place": { @@ -11316,46 +11797,16 @@ } }, { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 41, - "span": 155 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 42, - "span": 278 - }, - "value": { - "Place": { - "local": 52, - "projection": [] - } - } - }, - { - "argument_index": 2, + "argument_index": 1, "composite": null, - "name": "len", + "name": "self", "source_info": { - "scope": 42, - "span": 279 + "scope": 40, + "span": 290 }, "value": { "Place": { - "local": 4, + "local": 14, "projection": [] } } @@ -11363,14 +11814,14 @@ { "argument_index": 1, "composite": null, - "name": "data_pointer", + "name": "data", "source_info": { - "scope": 43, - "span": 280 + "scope": 41, + "span": 291 }, "value": { "Place": { - "local": 52, + "local": 42, "projection": [] } } @@ -11378,10 +11829,10 @@ { "argument_index": 2, "composite": null, - "name": "metadata", + "name": "len", "source_info": { - "scope": 43, - "span": 281 + "scope": 41, + "span": 292 }, "value": { "Place": { @@ -11395,12 +11846,12 @@ "composite": null, "name": "ptr", "source_info": { - "scope": 44, - "span": 274 + "scope": 43, + "span": 286 }, "value": { "Place": { - "local": 51, + "local": 41, "projection": [] } } @@ -11410,17 +11861,17 @@ "composite": null, "name": "residual", "source_info": { - "scope": 47, - "span": 288 + "scope": 46, + "span": 298 }, "value": { "Const": { "const_": { - "id": 38, + "id": 40, "kind": "ZeroSized", - "ty": 73 + "ty": 76 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -11430,17 +11881,17 @@ "composite": null, "name": "e", "source_info": { - "scope": 48, - "span": 289 + "scope": 47, + "span": 299 }, "value": { "Const": { "const_": { - "id": 39, + "id": 41, "kind": "ZeroSized", - "ty": 70 + "ty": 73 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -11450,17 +11901,17 @@ "composite": null, "name": "t", "source_info": { - "scope": 49, - "span": 290 + "scope": 48, + "span": 300 }, "value": { "Const": { "const_": { - "id": 39, + "id": 41, "kind": "ZeroSized", - "ty": 70 + "ty": 73 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -11499,7 +11950,7 @@ } ] }, - "span": 292 + "span": 302 }, { "kind": { @@ -11516,7 +11967,7 @@ } ] }, - "span": 292 + "span": 302 } ], "terminator": { @@ -11543,11 +11994,11 @@ "func": { "Constant": { "const_": { - "id": 40, + "id": 42, "kind": "ZeroSized", - "ty": 76 + "ty": 78 }, - "span": 292, + "span": 302, "user_ty": null } }, @@ -11557,7 +12008,7 @@ } } }, - "span": 292 + "span": 302 } }, { @@ -11582,7 +12033,7 @@ } ] }, - "span": 292 + "span": 302 }, { "kind": { @@ -11599,19 +12050,19 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 0, - 43 + 41 ] }, { "Field": [ 0, - 44 + 42 ] } ] @@ -11620,7 +12071,7 @@ } ] }, - "span": 294 + "span": 304 }, { "kind": { @@ -11641,12 +12092,12 @@ } ] }, - "span": 294 + "span": 304 } ], "terminator": { "kind": "Return", - "span": 293 + "span": 303 } }, { @@ -11662,50 +12113,50 @@ "unwind": "Terminate" } }, - "span": 295 + "span": 305 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 296 + "span": 306 } } ], "locals": [ { "mutability": "Mut", - "span": 297, - "ty": 77 + "span": 307, + "ty": 79 }, { "mutability": "Not", - "span": 298, + "span": 308, "ty": 16 }, { "mutability": "Mut", - "span": 292, - "ty": 28 + "span": 302, + "ty": 29 }, { "mutability": "Mut", - "span": 292, - "ty": 28 + "span": 302, + "ty": 29 }, { "mutability": "Mut", - "span": 292, - "ty": 48 + "span": 302, + "ty": 55 }, { "mutability": "Mut", - "span": 292, - "ty": 44 + "span": 302, + "ty": 42 } ], - "span": 296, + "span": 306, "spread_arg": null, "var_debug_info": [ { @@ -11714,7 +12165,7 @@ "name": "x", "source_info": { "scope": 0, - "span": 298 + "span": 308 }, "value": { "Place": { @@ -11746,7 +12197,7 @@ "kind": { "StorageLive": 5 }, - "span": 300 + "span": 310 }, { "kind": { @@ -11769,7 +12220,7 @@ } ] }, - "span": 300 + "span": 310 }, { "kind": { @@ -11786,7 +12237,7 @@ { "Field": [ 0, - 28 + 29 ] } ] @@ -11795,13 +12246,13 @@ } ] }, - "span": 167 + "span": 133 }, { "kind": { "StorageDead": 5 }, - "span": 301 + "span": 311 } ], "terminator": { @@ -11824,7 +12275,7 @@ } } }, - "span": 299 + "span": 309 } }, { @@ -11833,39 +12284,7 @@ "kind": { "StorageLive": 6 }, - "span": 304 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 134 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 134 + "span": 314 }, { "kind": { @@ -11876,31 +12295,25 @@ }, { "Cast": [ - "PtrToPtr", + "Transmute", { - "Move": { - "local": 8, + "Copy": { + "local": 2, "projection": [] } }, - 48 + 55 ] } ] }, - "span": 137 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 305 + "span": 169 }, { "kind": { "StorageLive": 7 }, - "span": 306 + "span": 315 }, { "kind": { @@ -11919,19 +12332,19 @@ } ] }, - "span": 306 + "span": 315 }, { "kind": { - "StorageLive": 9 + "StorageLive": 8 }, - "span": 307 + "span": 316 }, { "kind": { "Assign": [ { - "local": 9, + "local": 8, "projection": [] }, { @@ -11948,31 +12361,31 @@ } ] }, - "span": 307 + "span": 316 }, { "kind": { - "StorageDead": 9 + "StorageDead": 8 }, - "span": 308 + "span": 317 }, { "kind": { - "StorageLive": 10 + "StorageLive": 9 }, - "span": 309 + "span": 318 }, { "kind": { - "StorageLive": 11 + "StorageLive": 10 }, - "span": 310 + "span": 319 }, { "kind": { "Assign": [ { - "local": 11, + "local": 10, "projection": [] }, { @@ -11989,19 +12402,19 @@ } ] }, - "span": 310 + "span": 319 }, { "kind": { - "StorageLive": 12 + "StorageLive": 11 }, - "span": 171 + "span": 137 }, { "kind": { "Assign": [ { - "local": 12, + "local": 11, "projection": [] }, { @@ -12012,7 +12425,7 @@ { "Field": [ 1, - 52 + 49 ] } ] @@ -12021,54 +12434,54 @@ } ] }, - "span": 171 + "span": 137 }, { "kind": { - "StorageLive": 14 + "StorageLive": 13 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 15 + "StorageLive": 14 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 16 + "StorageLive": 15 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 17 + "StorageLive": 16 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageLive": 13 + "StorageLive": 12 }, - "span": 173 + "span": 139 }, { "kind": { "Assign": [ { - "local": 13, + "local": 12, "projection": [] }, { "Use": { "Copy": { - "local": 12, + "local": 11, "projection": [ { "Field": [ 0, - 61 + 50 ] } ] @@ -12077,30 +12490,30 @@ } ] }, - "span": 173 + "span": 139 }, { "kind": { "Assign": [ { - "local": 14, + "local": 13, "projection": [] }, { "Discriminant": { - "local": 13, + "local": 12, "projection": [] } } ] }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 15, + "local": 14, "projection": [] }, { @@ -12108,14 +12521,14 @@ "Ge", { "Copy": { - "local": 14, + "local": 13, "projection": [] } }, { "Constant": { "const_": { - "id": 27, + "id": 23, "kind": { "Allocated": { "align": 8, @@ -12135,9 +12548,9 @@ } } }, - "ty": 62 + "ty": 51 }, - "span": 174, + "span": 140, "user_ty": null } } @@ -12145,13 +12558,13 @@ } ] }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 16, + "local": 15, "projection": [] }, { @@ -12159,14 +12572,14 @@ "Le", { "Copy": { - "local": 14, + "local": 13, "projection": [] } }, { "Constant": { "const_": { - "id": 28, + "id": 24, "kind": { "Allocated": { "align": 8, @@ -12186,9 +12599,9 @@ } } }, - "ty": 62 + "ty": 51 }, - "span": 174, + "span": 140, "user_ty": null } } @@ -12196,13 +12609,13 @@ } ] }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 17, + "local": 16, "projection": [] }, { @@ -12210,13 +12623,13 @@ "BitAnd", { "Move": { - "local": 15, + "local": 14, "projection": [] } }, { "Move": { - "local": 16, + "local": 15, "projection": [] } } @@ -12224,26 +12637,26 @@ } ] }, - "span": 174 + "span": 140 }, { "kind": { "Intrinsic": { "Assume": { "Move": { - "local": 17, + "local": 16, "projection": [] } } } }, - "span": 174 + "span": 140 }, { "kind": { "Assign": [ { - "local": 10, + "local": 9, "projection": [] }, { @@ -12251,58 +12664,58 @@ "IntToInt", { "Copy": { - "local": 14, + "local": 13, "projection": [] } }, - 28 + 29 ] } ] }, - "span": 174 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 175 + "span": 140 }, { "kind": { - "StorageDead": 17 + "StorageDead": 12 }, - "span": 172 + "span": 141 }, { "kind": { "StorageDead": 16 }, - "span": 172 + "span": 138 }, { "kind": { "StorageDead": 15 }, - "span": 172 + "span": 138 }, { "kind": { "StorageDead": 14 }, - "span": 172 + "span": 138 }, { "kind": { - "StorageDead": 12 + "StorageDead": 13 }, - "span": 176 + "span": 138 }, { "kind": { "StorageDead": 11 }, - "span": 311 + "span": 142 + }, + { + "kind": { + "StorageDead": 10 + }, + "span": 320 } ], "terminator": { @@ -12323,7 +12736,7 @@ }, { "Move": { - "local": 10, + "local": 9, "projection": [] } } @@ -12335,11 +12748,11 @@ "func": { "Constant": { "const_": { - "id": 41, + "id": 43, "kind": "ZeroSized", - "ty": 78 + "ty": 80 }, - "span": 302, + "span": 312, "user_ty": null } }, @@ -12347,35 +12760,35 @@ "unwind": "Unreachable" } }, - "span": 303 + "span": 313 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 312 + "span": 321 } }, { "statements": [ { "kind": { - "StorageDead": 10 + "StorageDead": 9 }, - "span": 314 + "span": 323 }, { "kind": { "StorageDead": 7 }, - "span": 315 + "span": 324 }, { "kind": { "StorageDead": 6 }, - "span": 315 + "span": 324 } ], "terminator": { @@ -12384,103 +12797,98 @@ "target": 2 } }, - "span": 313 + "span": 322 } } ], "locals": [ { "mutability": "Mut", - "span": 316, + "span": 325, "ty": 1 }, { "mutability": "Not", - "span": 317, - "ty": 51 + "span": 326, + "ty": 63 }, { "mutability": "Not", - "span": 318, - "ty": 58 + "span": 327, + "ty": 65 }, { "mutability": "Not", - "span": 319, + "span": 328, "ty": 56 }, { "mutability": "Mut", - "span": 320, - "ty": 28 + "span": 329, + "ty": 29 }, { "mutability": "Mut", - "span": 300, - "ty": 65 + "span": 310, + "ty": 57 }, { "mutability": "Mut", - "span": 304, - "ty": 48 + "span": 314, + "ty": 55 }, { "mutability": "Mut", - "span": 306, + "span": 315, "ty": 56 }, { "mutability": "Mut", - "span": 134, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 307, - "ty": 65 + "span": 316, + "ty": 57 }, { "mutability": "Mut", - "span": 309, - "ty": 28 + "span": 318, + "ty": 29 }, { "mutability": "Mut", - "span": 310, - "ty": 65 + "span": 319, + "ty": 57 }, { "mutability": "Mut", - "span": 171, - "ty": 52 + "span": 137, + "ty": 49 }, { "mutability": "Not", - "span": 173, - "ty": 61 + "span": 139, + "ty": 50 }, { "mutability": "Mut", - "span": 173, - "ty": 62 + "span": 139, + "ty": 51 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 140, + "ty": 20 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 140, + "ty": 20 }, { "mutability": "Mut", - "span": 174, - "ty": 21 + "span": 140, + "ty": 20 } ], - "span": 323, + "span": 332, "spread_arg": null, "var_debug_info": [ { @@ -12489,7 +12897,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 317 + "span": 326 }, "value": { "Place": { @@ -12504,7 +12912,7 @@ "name": "ptr", "source_info": { "scope": 0, - "span": 318 + "span": 327 }, "value": { "Place": { @@ -12519,7 +12927,7 @@ "name": "layout", "source_info": { "scope": 0, - "span": 319 + "span": 328 }, "value": { "Place": { @@ -12534,7 +12942,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 190 + "span": 157 }, "value": { "Place": { @@ -12549,7 +12957,7 @@ "name": "self", "source_info": { "scope": 2, - "span": 155 + "span": 290 }, "value": { "Place": { @@ -12564,7 +12972,7 @@ "name": "ptr", "source_info": { "scope": 3, - "span": 321 + "span": 330 }, "value": { "Place": { @@ -12574,31 +12982,16 @@ } }, { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 3, - "span": 322 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "self", + "name": "layout", "source_info": { - "scope": 4, - "span": 190 + "scope": 3, + "span": 331 }, "value": { "Place": { - "local": 9, + "local": 7, "projection": [] } } @@ -12608,12 +13001,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 5, - "span": 191 + "scope": 4, + "span": 157 }, "value": { "Place": { - "local": 11, + "local": 8, "projection": [] } } @@ -12623,12 +13016,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 6, - "span": 192 + "scope": 5, + "span": 158 }, "value": { "Place": { - "local": 12, + "local": 10, "projection": [] } } @@ -12652,12 +13045,6 @@ "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 326 - }, { "kind": { "Assign": [ @@ -12677,7 +13064,7 @@ } ] }, - "span": 326 + "span": 335 }, { "kind": { @@ -12694,19 +13081,19 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 0, - 43 + 41 ] }, { "Field": [ 0, - 44 + 42 ] } ] @@ -12715,7 +13102,7 @@ } ] }, - "span": 326 + "span": 335 }, { "kind": { @@ -12740,13 +13127,7 @@ } ] }, - "span": 326 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 327 + "span": 335 }, { "kind": { @@ -12767,7 +13148,7 @@ } ] }, - "span": 327 + "span": 336 }, { "kind": { @@ -12784,19 +13165,19 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 0, - 43 + 41 ] }, { "Field": [ 0, - 44 + 42 ] } ] @@ -12805,7 +13186,7 @@ } ] }, - "span": 327 + "span": 336 }, { "kind": { @@ -12830,7 +13211,7 @@ } ] }, - "span": 327 + "span": 336 } ], "terminator": { @@ -12857,11 +13238,11 @@ "func": { "Constant": { "const_": { - "id": 42, + "id": 44, "kind": "ZeroSized", - "ty": 79 + "ty": 81 }, - "span": 324, + "span": 333, "user_ty": null } }, @@ -12869,78 +13250,65 @@ "unwind": "Continue" } }, - "span": 325 + "span": 334 } }, { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 329 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 329 - } - ], + "statements": [], "terminator": { "kind": "Return", - "span": 328 + "span": 337 } } ], "locals": [ { "mutability": "Mut", - "span": 330, - "ty": 21 + "span": 338, + "ty": 20 }, { "mutability": "Not", - "span": 331, - "ty": 80 + "span": 339, + "ty": 82 }, { "mutability": "Not", - "span": 332, - "ty": 80 + "span": 340, + "ty": 82 }, { - "mutability": "Mut", - "span": 326, - "ty": 22 + "mutability": "Not", + "span": 335, + "ty": 21 }, { - "mutability": "Mut", - "span": 327, - "ty": 22 + "mutability": "Not", + "span": 336, + "ty": 21 }, { "mutability": "Mut", - "span": 331, - "ty": 77 + "span": 339, + "ty": 79 }, { "mutability": "Mut", - "span": 332, - "ty": 77 + "span": 340, + "ty": 79 }, { "mutability": "Mut", - "span": 331, - "ty": 44 + "span": 339, + "ty": 42 }, { "mutability": "Mut", - "span": 332, - "ty": 44 + "span": 340, + "ty": 42 } ], - "span": 333, + "span": 341, "spread_arg": null, "var_debug_info": [ { @@ -12949,7 +13317,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 331 + "span": 339 }, "value": { "Place": { @@ -12964,7 +13332,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 332 + "span": 340 }, "value": { "Place": { @@ -12996,7 +13364,7 @@ "kind": { "Assign": [ { - "local": 12, + "local": 15, "projection": [] }, { @@ -13008,13 +13376,13 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 0, - 43 + 41 ] } ] @@ -13023,13 +13391,13 @@ } ] }, - "span": 336 + "span": 344 }, { "kind": { "Assign": [ { - "local": 13, + "local": 16, "projection": [] }, { @@ -13041,13 +13409,13 @@ { "Field": [ 0, - 42 + 40 ] }, { "Field": [ 1, - 82 + 84 ] } ] @@ -13056,39 +13424,65 @@ } ] }, - "span": 336 + "span": 344 + }, + { + "kind": { + "StorageLive": 3 + }, + "span": 345 }, { "kind": { "Assign": [ { - "local": 6, + "local": 4, "projection": [] }, { - "Use": { - "Copy": { - "local": 12, - "projection": [ - { - "Field": [ - 0, - 44 - ] - } - ] - } - } + "Cast": [ + "Transmute", + { + "Copy": { + "local": 15, + "projection": [] + } + }, + 85 + ] } ] }, - "span": 134 + "span": 169 }, { "kind": { - "StorageLive": 8 + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Cast": [ + "PtrToPtr", + { + "Copy": { + "local": 4, + "projection": [] + } + }, + 42 + ] + } + ] + }, + "span": 345 + }, + { + "kind": { + "StorageLive": 9 }, - "span": 337 + "span": 346 } ], "terminator": { @@ -13097,23 +13491,23 @@ "args": [ { "Copy": { - "local": 6, + "local": 3, "projection": [] } } ], "destination": { - "local": 7, + "local": 8, "projection": [] }, "func": { "Constant": { "const_": { - "id": 43, + "id": 45, "kind": "ZeroSized", - "ty": 81 + "ty": 83 }, - "span": 334, + "span": 342, "user_ty": null } }, @@ -13121,22 +13515,22 @@ "unwind": "Unreachable" } }, - "span": 335 + "span": 343 } }, { "statements": [ { "kind": { - "StorageLive": 5 + "StorageLive": 7 }, - "span": 340 + "span": 349 }, { "kind": { "Assign": [ { - "local": 5, + "local": 7, "projection": [] }, { @@ -13152,7 +13546,7 @@ { "Field": [ 1, - 59 + 66 ] } ] @@ -13161,19 +13555,19 @@ } ] }, - "span": 340 + "span": 349 }, { "kind": { - "StorageLive": 11 + "StorageLive": 14 }, - "span": 135 + "span": 168 }, { "kind": { "Assign": [ { - "local": 11, + "local": 14, "projection": [] }, { @@ -13181,29 +13575,29 @@ "PtrToPtr", { "Copy": { - "local": 6, + "local": 4, "projection": [] } }, - 27 + 53 ] } ] }, - "span": 135 + "span": 168 }, { "kind": { "Assign": [ { - "local": 10, + "local": 13, "projection": [] }, { "Aggregate": [ { "Adt": [ - 14, + 13, 0, [ { @@ -13217,7 +13611,7 @@ [ { "Move": { - "local": 11, + "local": 14, "projection": [] } } @@ -13226,13 +13620,13 @@ } ] }, - "span": 136 + "span": 170 }, { "kind": { - "StorageDead": 11 + "StorageDead": 14 }, - "span": 341 + "span": 171 } ], "terminator": { @@ -13241,13 +13635,13 @@ "args": [ { "Move": { - "local": 5, + "local": 7, "projection": [] } }, { "Move": { - "local": 10, + "local": 13, "projection": [] } }, @@ -13259,17 +13653,17 @@ } ], "destination": { - "local": 4, + "local": 6, "projection": [] }, "func": { "Constant": { "const_": { - "id": 44, + "id": 46, "kind": "ZeroSized", - "ty": 83 + "ty": 86 }, - "span": 338, + "span": 347, "user_ty": null } }, @@ -13277,16 +13671,16 @@ "unwind": "Continue" } }, - "span": 339 + "span": 348 } }, { "statements": [ { "kind": { - "StorageDead": 5 + "StorageDead": 7 }, - "span": 343 + "span": 351 } ], "terminator": { @@ -13295,14 +13689,98 @@ "target": 3 } }, - "span": 342 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 344 + "span": 350 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 352 + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 3, + "projection": [] + } + } + ], + "destination": { + "local": 9, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 47, + "kind": "ZeroSized", + "ty": 87 + }, + "span": 353, + "user_ty": null + } + }, + "target": 5, + "unwind": "Unreachable" + } + }, + "span": 354 + } + }, + { + "statements": [ + { + "kind": { + "StorageLive": 10 + }, + "span": 160 + }, + { + "kind": { + "Assign": [ + { + "local": 10, + "projection": [] + }, + { + "NullaryOp": [ + "UbChecks", + 20 + ] + } + ] + }, + "span": 160 + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 10, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 7 + ] + ], + "otherwise": 6 + } + } + }, + "span": 160 } }, { @@ -13313,46 +13791,58 @@ "args": [ { "Copy": { - "local": 6, + "local": 8, + "projection": [] + } + }, + { + "Copy": { + "local": 9, "projection": [] } } ], "destination": { - "local": 8, + "local": 11, "projection": [] }, "func": { "Constant": { "const_": { - "id": 45, + "id": 30, "kind": "ZeroSized", - "ty": 84 + "ty": 61 }, - "span": 345, + "span": 174, "user_ty": null } }, - "target": 5, + "target": 7, "unwind": "Unreachable" } }, - "span": 346 + "span": 175 } }, { "statements": [ { "kind": { - "StorageLive": 9 + "StorageDead": 10 }, - "span": 123 + "span": 180 + }, + { + "kind": { + "StorageLive": 12 + }, + "span": 181 }, { "kind": { "Assign": [ { - "local": 9, + "local": 12, "projection": [] }, { @@ -13360,16 +13850,16 @@ "Transmute", { "Copy": { - "local": 8, + "local": 9, "projection": [] } }, - 52 + 49 ] } ] }, - "span": 124 + "span": 181 }, { "kind": { @@ -13382,7 +13872,7 @@ "Aggregate": [ { "Adt": [ - 13, + 14, 0, [], null, @@ -13392,13 +13882,13 @@ [ { "Copy": { - "local": 7, + "local": 8, "projection": [] } }, { "Move": { - "local": 9, + "local": 12, "projection": [] } } @@ -13407,31 +13897,37 @@ } ] }, - "span": 125 + "span": 182 + }, + { + "kind": { + "StorageDead": 12 + }, + "span": 183 }, { "kind": { "StorageDead": 9 }, - "span": 126 + "span": 346 }, { "kind": { - "StorageDead": 8 + "StorageDead": 3 }, - "span": 337 + "span": 356 }, { "kind": { - "StorageLive": 3 + "StorageLive": 5 }, - "span": 348 + "span": 357 }, { "kind": { "Assign": [ { - "local": 3, + "local": 5, "projection": [] }, { @@ -13448,13 +13944,13 @@ } ] }, - "span": 348 + "span": 357 }, { "kind": { - "StorageDead": 3 + "StorageDead": 5 }, - "span": 349 + "span": 358 } ], "terminator": { @@ -13462,7 +13958,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 7, + "local": 8, "projection": [] } }, @@ -13477,83 +13973,98 @@ } } }, - "span": 347 + "span": 355 } } ], "locals": [ { "mutability": "Mut", - "span": 350, + "span": 359, "ty": 1 }, { "mutability": "Not", - "span": 351, - "ty": 47 + "span": 360, + "ty": 45 }, { "mutability": "Not", - "span": 352, + "span": 361, "ty": 56 }, { "mutability": "Mut", - "span": 348, - "ty": 65 + "span": 345, + "ty": 42 + }, + { + "mutability": "Mut", + "span": 345, + "ty": 85 + }, + { + "mutability": "Mut", + "span": 357, + "ty": 57 }, { "mutability": "Not", - "span": 339, + "span": 348, "ty": 1 }, { "mutability": "Mut", - "span": 340, - "ty": 51 + "span": 349, + "ty": 63 }, { "mutability": "Mut", - "span": 134, - "ty": 44 + "span": 362, + "ty": 29 }, { "mutability": "Mut", - "span": 353, - "ty": 28 + "span": 363, + "ty": 29 }, { "mutability": "Mut", - "span": 354, - "ty": 28 + "span": 160, + "ty": 20 + }, + { + "mutability": "Not", + "span": 175, + "ty": 1 }, { "mutability": "Mut", - "span": 123, - "ty": 52 + "span": 181, + "ty": 49 }, { "mutability": "Mut", - "span": 355, - "ty": 58 + "span": 364, + "ty": 65 }, { "mutability": "Mut", - "span": 135, - "ty": 27 + "span": 168, + "ty": 53 }, { "mutability": "Not", - "span": 356, - "ty": 43 + "span": 365, + "ty": 41 }, { "mutability": "Not", - "span": 356, - "ty": 82 + "span": 365, + "ty": 84 } ], - "span": 366, + "span": 374, "spread_arg": null, "var_debug_info": [ { @@ -13562,7 +14073,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 351 + "span": 360 }, "value": { "Place": { @@ -13578,20 +14089,20 @@ { "Field": [ 0, - 43 + 41 ] } ], - "ty": 42 + "ty": 40 }, "name": "ptr", "source_info": { "scope": 1, - "span": 356 + "span": 365 }, "value": { "Place": { - "local": 12, + "local": 15, "projection": [] } } @@ -13603,20 +14114,20 @@ { "Field": [ 1, - 82 + 84 ] } ], - "ty": 42 + "ty": 40 }, "name": "ptr", "source_info": { "scope": 1, - "span": 356 + "span": 365 }, "value": { "Place": { - "local": 13, + "local": 16, "projection": [] } } @@ -13627,7 +14138,7 @@ "name": "layout", "source_info": { "scope": 2, - "span": 352 + "span": 361 }, "value": { "Place": { @@ -13643,20 +14154,20 @@ { "Field": [ 0, - 43 + 41 ] } ], - "ty": 42 + "ty": 40 }, "name": "self", "source_info": { "scope": 3, - "span": 357 + "span": 366 }, "value": { "Place": { - "local": 12, + "local": 15, "projection": [] } } @@ -13668,35 +14179,20 @@ { "Field": [ 1, - 82 + 84 ] } ], - "ty": 42 + "ty": 40 }, "name": "self", "source_info": { "scope": 3, - "span": 357 - }, - "value": { - "Place": { - "local": 13, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 155 + "span": 366 }, "value": { "Place": { - "local": 12, + "local": 16, "projection": [] } } @@ -13707,11 +14203,11 @@ "name": "t", "source_info": { "scope": 5, - "span": 358 + "span": 367 }, "value": { "Place": { - "local": 6, + "local": 3, "projection": [] } } @@ -13722,11 +14218,11 @@ "name": "size", "source_info": { "scope": 6, - "span": 359 + "span": 368 }, "value": { "Place": { - "local": 7, + "local": 8, "projection": [] } } @@ -13737,11 +14233,11 @@ "name": "align", "source_info": { "scope": 6, - "span": 360 + "span": 369 }, "value": { "Place": { - "local": 8, + "local": 9, "projection": [] } } @@ -13752,11 +14248,11 @@ "name": "val", "source_info": { "scope": 7, - "span": 361 + "span": 370 }, "value": { "Place": { - "local": 6, + "local": 3, "projection": [] } } @@ -13767,11 +14263,11 @@ "name": "val", "source_info": { "scope": 8, - "span": 362 + "span": 371 }, "value": { "Place": { - "local": 6, + "local": 3, "projection": [] } } @@ -13782,11 +14278,11 @@ "name": "size", "source_info": { "scope": 9, - "span": 146 + "span": 191 }, "value": { "Place": { - "local": 7, + "local": 8, "projection": [] } } @@ -13797,26 +14293,11 @@ "name": "align", "source_info": { "scope": 9, - "span": 147 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 10, - "span": 148 + "span": 192 }, "value": { "Place": { - "local": 8, + "local": 9, "projection": [] } } @@ -13826,12 +14307,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 11, - "span": 190 + "scope": 10, + "span": 157 }, "value": { "Place": { - "local": 3, + "local": 5, "projection": [] } } @@ -13843,20 +14324,20 @@ { "Field": [ 0, - 43 + 41 ] } ], - "ty": 42 + "ty": 40 }, "name": "self", "source_info": { - "scope": 12, - "span": 363 + "scope": 11, + "span": 372 }, "value": { "Place": { - "local": 12, + "local": 15, "projection": [] } } @@ -13868,50 +14349,20 @@ { "Field": [ 1, - 82 + 84 ] } ], - "ty": 42 + "ty": 40 }, "name": "self", "source_info": { - "scope": 12, - "span": 363 - }, - "value": { - "Place": { - "local": 13, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 154 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 155 + "scope": 11, + "span": 372 }, "value": { "Place": { - "local": 12, + "local": 16, "projection": [] } } @@ -13923,20 +14374,20 @@ { "Field": [ 0, - 58 + 65 ] } ], - "ty": 85 + "ty": 88 }, "name": "unique", "source_info": { - "scope": 15, - "span": 364 + "scope": 14, + "span": 373 }, "value": { "Place": { - "local": 10, + "local": 13, "projection": [] } } @@ -13948,80 +14399,25 @@ { "Field": [ 1, - 86 + 89 ] } ], - "ty": 85 + "ty": 88 }, "name": "unique", "source_info": { - "scope": 15, - "span": 364 - }, - "value": { - "Const": { - "const_": { - "id": 46, - "kind": "ZeroSized", - "ty": 86 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 58 - ] - } - ], - "ty": 85 - }, - "name": "self", - "source_info": { - "scope": 16, - "span": 365 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 86 - ] - } - ], - "ty": 85 - }, - "name": "self", - "source_info": { - "scope": 16, - "span": 365 + "scope": 14, + "span": 373 }, "value": { "Const": { "const_": { - "id": 46, + "id": 48, "kind": "ZeroSized", - "ty": 86 + "ty": 89 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -14034,6 +14430,17 @@ } }, "symbol_name": "_ZN72_$LT$alloc..boxed..Box$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [], + "id": 56, + "name": "alloc::alloc::__rust_no_alloc_shim_is_unstable" + } + }, + "symbol_name": "__rust_no_alloc" } ] } diff --git a/tests/integration/failing/defined-trait.smir.json.expected b/tests/integration/failing/defined-trait.smir.json.expected index 239c476..e69de29 100644 --- a/tests/integration/failing/defined-trait.smir.json.expected +++ b/tests/integration/failing/defined-trait.smir.json.expected @@ -1,27669 +0,0 @@ -{ - "allocs": [ - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 112, - 116, - 114, - 58, - 58, - 99, - 111, - 112, - 121, - 95, - 110, - 111, - 110, - 111, - 118, - 101, - 114, - 108, - 97, - 112, - 112, - 105, - 110, - 103, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, - 98, - 111, - 116, - 104, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 97, - 114, - 103, - 117, - 109, - 101, - 110, - 116, - 115, - 32, - 97, - 114, - 101, - 32, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 32, - 97, - 110, - 100, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108, - 32, - 97, - 110, - 100, - 32, - 116, - 104, - 101, - 32, - 115, - 112, - 101, - 99, - 105, - 102, - 105, - 101, - 100, - 32, - 109, - 101, - 109, - 111, - 114, - 121, - 32, - 114, - 97, - 110, - 103, - 101, - 115, - 32, - 100, - 111, - 32, - 110, - 111, - 116, - 32, - 111, - 118, - 101, - 114, - 108, - 97, - 112 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 23 - ] - ] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 24 - ] - ] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 117, - 115, - 105, - 122, - 101, - 58, - 58, - 117, - 110, - 99, - 104, - 101, - 99, - 107, - 101, - 100, - 95, - 109, - 117, - 108, - 32, - 99, - 97, - 110, - 110, - 111, - 116, - 32, - 111, - 118, - 101, - 114, - 102, - 108, - 111, - 119 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 112, - 116, - 114, - 58, - 58, - 114, - 101, - 97, - 100, - 95, - 118, - 111, - 108, - 97, - 116, - 105, - 108, - 101, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, - 116, - 104, - 101, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 97, - 114, - 103, - 117, - 109, - 101, - 110, - 116, - 32, - 105, - 115, - 32, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 32, - 97, - 110, - 100, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 78, - 111, - 110, - 78, - 117, - 108, - 108, - 58, - 58, - 110, - 101, - 119, - 95, - 117, - 110, - 99, - 104, - 101, - 99, - 107, - 101, - 100, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, - 116, - 104, - 101, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 105, - 115, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 115, - 108, - 105, - 99, - 101, - 58, - 58, - 102, - 114, - 111, - 109, - 95, - 114, - 97, - 119, - 95, - 112, - 97, - 114, - 116, - 115, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 101, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 116, - 111, - 32, - 98, - 101, - 32, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 32, - 97, - 110, - 100, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108, - 44, - 32, - 97, - 110, - 100, - 32, - 116, - 104, - 101, - 32, - 116, - 111, - 116, - 97, - 108, - 32, - 115, - 105, - 122, - 101, - 32, - 111, - 102, - 32, - 116, - 104, - 101, - 32, - 115, - 108, - 105, - 99, - 101, - 32, - 110, - 111, - 116, - 32, - 116, - 111, - 32, - 101, - 120, - 99, - 101, - 101, - 100, - 32, - 96, - 105, - 115, - 105, - 122, - 101, - 58, - 58, - 77, - 65, - 88, - 96 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 110, - 111, - 110, - 111, - 118, - 101, - 114, - 108, - 97, - 112, - 112, - 105, - 110, - 103, - 58, - 32, - 96, - 115, - 105, - 122, - 101, - 95, - 111, - 102, - 58, - 58, - 60, - 84, - 62, - 40, - 41, - 32, - 42, - 32, - 99, - 111, - 117, - 110, - 116, - 96, - 32, - 111, - 118, - 101, - 114, - 102, - 108, - 111, - 119, - 115, - 32, - 97, - 32, - 117, - 115, - 105, - 122, - 101 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Static": 70 - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 84, - 104, - 101, - 32, - 110, - 117, - 109, - 98, - 101, - 114, - 32, - 105, - 115, - 32, - 122, - 101, - 114, - 111, - 32, - 111, - 114, - 32, - 109, - 111, - 114, - 101, - 33 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 27, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 25 - ] - ] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 97, - 115, - 115, - 101, - 114, - 116, - 105, - 111, - 110, - 32, - 102, - 97, - 105, - 108, - 101, - 100, - 58, - 32, - 99, - 111, - 110, - 46, - 115, - 117, - 109, - 109, - 97, - 114, - 105, - 115, - 101, - 40, - 41, - 32, - 61, - 61, - 32, - 34, - 84, - 104, - 101, - 32, - 110, - 117, - 109, - 98, - 101, - 114, - 32, - 105, - 115, - 32, - 122, - 101, - 114, - 111, - 32, - 111, - 114, - 32, - 109, - 111, - 114, - 101, - 33, - 34 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 84, - 104, - 101, - 32, - 110, - 117, - 109, - 98, - 101, - 114, - 32, - 105, - 115, - 32, - 122, - 101, - 114, - 111, - 32, - 111, - 114, - 32, - 109, - 111, - 114, - 101, - 33 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 95, - 116, - 111, - 58, - 32, - 97, - 108, - 105, - 103, - 110, - 32, - 105, - 115, - 32, - 110, - 111, - 116, - 32, - 97, - 32, - 112, - 111, - 119, - 101, - 114, - 45, - 111, - 102, - 45, - 116, - 119, - 111 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 95, - 116, - 111, - 58, - 32, - 97, - 108, - 105, - 103, - 110, - 32, - 105, - 115, - 32, - 110, - 111, - 116, - 32, - 97, - 32, - 112, - 111, - 119, - 101, - 114, - 45, - 111, - 102, - 45, - 116, - 119, - 111 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 84, - 104, - 101, - 32, - 110, - 117, - 109, - 98, - 101, - 114, - 32, - 105, - 115, - 32, - 122, - 101, - 114, - 111, - 32, - 111, - 114, - 32, - 109, - 111, - 114, - 101, - 33 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ] - ], - "functions": [ - [ - { - "NormalSym": "_ZN3std2rt19lang_start_internal17h" - } - ], - [ - { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - } - ], - [ - { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" - } - ], - [ - { - "IntrinsicSym": "black_box" - } - ], - [ - { - "NormalSym": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" - } - ], - [ - { - "NormalSym": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" - } - ], - [ - { - "NormalSym": "_ZN4core9panicking14panic_nounwind17h" - } - ], - [ - { - "IntrinsicSym": "ctpop" - } - ], - [ - { - "NormalSym": "_ZN4core9panicking9panic_fmt17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" - } - ], - [ - { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" - } - ], - [ - { - "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - } - ], - [ - { - "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - } - ], - [ - { - "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" - } - ], - [ - { - "IntrinsicSym": "unlikely" - } - ], - [ - { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" - } - ], - [ - { - "NormalSym": "_ZN5alloc7raw_vec12handle_error17h" - } - ], - [ - { - "NormalSym": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" - } - ], - [ - { - "NormalSym": "" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" - } - ], - [ - { - "IntrinsicSym": "volatile_load" - } - ], - [ - { - "NormalSym": "__" - } - ], - [ - { - "NormalSym": "_ZN5alloc5alloc5alloc17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" - } - ], - [ - { - "NormalSym": "_ZN4core5alloc6layout6Layout5array5inner17h" - } - ], - [ - { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" - } - ], - [ - { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" - } - ], - [ - { - "NormalSym": "" - } - ], - [ - { - "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" - } - ], - [ - { - "NoOpSym": "" - } - ], - [ - { - "IntrinsicSym": "size_of_val" - } - ], - [ - { - "IntrinsicSym": "compare_bytes" - } - ], - [ - { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" - } - ], - [ - { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" - } - ], - [ - { - "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" - } - ], - [ - { - "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" - } - ], - [ - { - "NormalSym": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" - } - ], - [ - { - "NormalSym": "_ZN67_$LT$defined_trait..Container$u20$as$u20$defined_trait..Summary$GT$9summarise17h" - } - ], - [ - { - "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" - } - ], - [ - { - "NormalSym": "_ZN4core9panicking5panic17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" - } - ], - [ - { - "NoOpSym": "" - } - ], - [ - { - "NoOpSym": "" - } - ] - ], - "items": [ - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 0, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 1, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 43, - 0, - [], - null, - null - ] - }, - [ - { - "Constant": { - "const_": { - "id": 77, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 42, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 43 - }, - "span": 778, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 779 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 780 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 4, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 76, - "kind": "ZeroSized", - "ty": 118 - }, - "span": 776, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 777 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 4, - "projection": [] - } - ] - } - ] - }, - "span": 777 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 79, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 11 - ] - ] - } - } - }, - "ty": 112 - }, - "span": 782, - "user_ty": null - } - } - } - ] - }, - "span": 782 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 78, - "kind": "ZeroSized", - "ty": 119 - }, - "span": 781, - "user_ty": null - } - }, - "target": 2, - "unwind": { - "Cleanup": 7 - } - } - }, - "span": 781 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 781 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 4, - "projection": [] - }, - "target": 6, - "unwind": "Continue" - } - }, - "span": 783 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 4, - "projection": [] - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 783 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 81, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 66, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 12 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 80, - "kind": "ZeroSized", - "ty": 120 - }, - "span": 784, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 784 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 785 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 4, - "projection": [] - }, - "target": 8, - "unwind": "Terminate" - } - }, - "span": 783 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 786 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 787, - "ty": 1 - }, - { - "mutability": "Not", - "span": 788, - "ty": 121 - }, - { - "mutability": "Mut", - "span": 781, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 777, - "ty": 111 - }, - { - "mutability": "Not", - "span": 777, - "ty": 24 - }, - { - "mutability": "Mut", - "span": 780, - "ty": 117 - }, - { - "mutability": "Mut", - "span": 782, - "ty": 112 - }, - { - "mutability": "Mut", - "span": 784, - "ty": 41 - } - ], - "span": 786, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "con", - "source_info": { - "scope": 1, - "span": 788 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - }, - { - "arg_count": 0, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 1, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 75, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 27, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 13 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 782, - "user_ty": null - } - } - } - ] - }, - "span": 782 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 782 - } - ], - "terminator": { - "kind": "Return", - "span": 782 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 782, - "ty": 112 - }, - { - "mutability": "Mut", - "span": 782, - "ty": 25 - } - ], - "span": 782, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 42, - "name": "main" - } - }, - "symbol_name": "_ZN13defined_trait4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Move": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized", - "ty": 0 - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 6 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 8 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 8 - } - ], - "terminator": { - "kind": "Return", - "span": 5 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 9, - "ty": 6 - }, - { - "mutability": "Not", - "span": 10, - "ty": 7 - }, - { - "mutability": "Not", - "span": 11, - "ty": 6 - }, - { - "mutability": "Not", - "span": 12, - "ty": 8 - }, - { - "mutability": "Not", - "span": 13, - "ty": 9 - }, - { - "mutability": "Mut", - "span": 1, - "ty": 10 - }, - { - "mutability": "Mut", - "span": 2, - "ty": 5 - }, - { - "mutability": "Mut", - "span": 2, - "ty": 11 - }, - { - "mutability": "Not", - "span": 3, - "ty": 12 - } - ], - "span": 14, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 13 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 7 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] - } - ], - "id": 0, - "name": "std::rt::lang_start::<()>" - } - }, - "symbol_name": "_ZN3std2rt10lang_start17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 17 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 18 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - } - ] - }, - "span": 18 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 1, - "kind": "ZeroSized", - "ty": 13 - }, - "span": 15, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 16 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 20 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 2, - "kind": "ZeroSized", - "ty": 14 - }, - "span": 19, - "user_ty": null - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 17 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 16 - ] - } - ] - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 27 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 4 - } - ], - "terminator": { - "kind": "Return", - "span": 21 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 28, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 3, - "ty": 11 - }, - { - "mutability": "Mut", - "span": 17, - "ty": 17 - }, - { - "mutability": "Mut", - "span": 16, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 18, - "ty": 7 - }, - { - "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, - "ty": 9 - } - ], - "span": 3, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] - } - ], - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" - } - }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized", - "ty": 19 - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 33 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized", - "ty": 20 - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37, - "ty": 1 - }, - { - "mutability": "Not", - "span": 38, - "ty": 7 - }, - { - "mutability": "Not", - "span": 39, - "ty": 1 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 45 - }, - { - "kind": { - "StorageLive": 2 - }, - "span": 46 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 23 - ] - } - ] - }, - "span": 47 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 7, - "kind": "ZeroSized", - "ty": 22 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 21 - }, - "span": 43, - "user_ty": 0 - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 44 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 4, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 49 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 50 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 45 - } - ], - "terminator": { - "kind": "Return", - "span": 48 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 51, - "ty": 24 - }, - { - "mutability": "Not", - "span": 52, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 46, - "ty": 26 - }, - { - "mutability": "Not", - "span": 53, - "ty": 23 - } - ], - "span": 64, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 52 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "s", - "source_info": { - "scope": 1, - "span": 54 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 55 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 56 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 57 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 58 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 59 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 6, - "span": 60 - }, - "value": { - "Const": { - "const_": { - "id": 7, - "kind": "ZeroSized", - "ty": 22 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "s", - "source_info": { - "scope": 7, - "span": 61 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 7, - "span": 62 - }, - "value": { - "Const": { - "const_": { - "id": 7, - "kind": "ZeroSized", - "ty": 22 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "bytes", - "source_info": { - "scope": 8, - "span": 63 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 3, - "name": "::to_string" - } - }, - "symbol_name": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [], - "id": 5, - "name": "std::intrinsics::size_of_val::<[u8]>" - } - }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 5, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 66 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 66 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 67 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 68 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 12, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 8 - ] - ], - "otherwise": 9 - } - } - }, - "span": 65 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 7 - }, - "span": 70 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 29 - ] - } - ] - }, - "span": 71 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 70 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 67 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 68 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 21, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 13 - ] - ], - "otherwise": 14 - } - } - }, - "span": 65 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 74 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 8, - "kind": "ZeroSized", - "ty": 30 - }, - "span": 72, - "user_ty": null - } - }, - "target": 18, - "unwind": "Terminate" - } - }, - "span": 73 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 76 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 76 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 76 - } - ], - "terminator": { - "kind": "Return", - "span": 75 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 7 - } - }, - "span": 32 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 7 - } - }, - "span": 32 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 7 - } - }, - "span": 32 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 166, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 78, - "user_ty": null - } - } - ], - "destination": { - "local": 10, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 77, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 79 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 12 - }, - "span": 66 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 66 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 15 - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 15, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 12, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 15 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 86, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Move": { - "local": 19, - "projection": [] - } - } - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 18, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 88, - "user_ty": null - } - } - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 88 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 66 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 6, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 6 - ] - ], - "otherwise": 1 - } - } - }, - "span": 66 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 15 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 92 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 93 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 32, - "user_ty": null - } - }, - 35 - ] - } - ] - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 36 - }, - "span": 32, - "user_ty": null - } - }, - 37 - ] - } - ] - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 7, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 16, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 38 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 17, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 96 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 14, - "projection": [] - } - } - ], - "destination": { - "local": 13, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 90, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 15, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 10 - ] - ], - "otherwise": 11 - } - } - }, - "span": 83 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 21 - }, - "span": 70 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 70 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 24 - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 24, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 17, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 24 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 27 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 28 - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 86, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 27, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Move": { - "local": 28, - "projection": [] - } - } - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 28 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 27, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 88, - "user_ty": null - } - } - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageDead": 27 - }, - "span": 88 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 70 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 2 - } - } - }, - "span": 70 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 24 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 92 - }, - { - "kind": { - "StorageLive": 25 - }, - "span": 93 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 32, - "user_ty": null - } - }, - 35 - ] - } - ] - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 26 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 26, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 36 - }, - "span": 32, - "user_ty": null - } - }, - 37 - ] - } - ] - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 7, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 25, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 38 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 26, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "StorageDead": 26 - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 25 - }, - "span": 96 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 23, - "projection": [] - } - } - ], - "destination": { - "local": 22, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 90, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 24, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 15 - ] - ], - "otherwise": 16 - } - } - }, - "span": 83 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 74 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 97, - "ty": 1 - }, - { - "mutability": "Not", - "span": 98, - "ty": 29 - }, - { - "mutability": "Not", - "span": 98, - "ty": 39 - }, - { - "mutability": "Not", - "span": 98, - "ty": 28 - }, - { - "mutability": "Not", - "span": 98, - "ty": 28 - }, - { - "mutability": "Not", - "span": 98, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 66, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 70, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 71, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 74, - "ty": 40 - }, - { - "mutability": "Not", - "span": 79, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 68, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 99, - "ty": 28 - }, - { - "mutability": "Not", - "span": 91, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 92, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 43 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 94, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 68, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 99, - "ty": 28 - }, - { - "mutability": "Not", - "span": 91, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 92, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 43 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 94, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 28 - } - ], - "span": 118, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dst", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "size", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 5, - "composite": null, - "name": "count", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 100 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 101 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 102 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 103 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 104 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 105 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 106 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 7, - "span": 107 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 108 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 109 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 11, - "span": 110 - }, - "value": { - "Const": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 111, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 112 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 113 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 104 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 15, - "span": 100 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 15, - "span": 101 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 16, - "span": 102 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 18, - "span": 103 - }, - "value": { - "Place": { - "local": 20, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 19, - "span": 104 - }, - "value": { - "Place": { - "local": 20, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 20, - "span": 105 - }, - "value": { - "Place": { - "local": 20, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 21, - "span": 106 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 21, - "span": 107 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 22, - "span": 108 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 23, - "span": 109 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 105 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 25, - "span": 110 - }, - "value": { - "Const": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 111, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 26, - "span": 112 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 26, - "span": 113 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 27, - "span": 104 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 28, - "span": 105 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 29, - "span": 114 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dst", - "source_info": { - "scope": 29, - "span": 115 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "size", - "source_info": { - "scope": 29, - "span": 116 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "count", - "source_info": { - "scope": 29, - "span": 117 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] - } - ], - "id": 6, - "name": "std::intrinsics::copy_nonoverlapping::precondition_check" - } - }, - "symbol_name": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [] - } - } - } - ] - }, - "span": 120 - } - ], - "terminator": { - "kind": "Return", - "span": 119 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 121, - "ty": 40 - }, - { - "mutability": "Not", - "span": 122, - "ty": 40 - } - ], - "span": 123, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "b", - "source_info": { - "scope": 0, - "span": 122 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - } - ], - "id": 8, - "name": "std::intrinsics::unlikely" - } - }, - "symbol_name": "_ZN4core10intrinsics8unlikely17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 125 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 126 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 127 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 44 - ] - } - ] - }, - "span": 127 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 128 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 44 - ] - } - ] - }, - "span": 128 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Mul", - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Move": { - "local": 8, - "projection": [] - } - } - ] - } - ] - }, - "span": 126 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 129 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 129 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 6, - "projection": [ - { - "Field": [ - 0, - 44 - ] - } - ] - } - } - } - ] - }, - "span": 130 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 6, - "projection": [ - { - "Field": [ - 1, - 40 - ] - } - ] - } - } - } - ] - }, - "span": 131 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 132 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 125 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 124 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 19, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 69, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 4 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 134, - "user_ty": null - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 133, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 135 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 136 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 137, - "ty": 1 - }, - { - "mutability": "Not", - "span": 138, - "ty": 28 - }, - { - "mutability": "Not", - "span": 138, - "ty": 28 - }, - { - "mutability": "Not", - "span": 135, - "ty": 41 - }, - { - "mutability": "Not", - "span": 130, - "ty": 44 - }, - { - "mutability": "Not", - "span": 131, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 126, - "ty": 45 - }, - { - "mutability": "Mut", - "span": 127, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 128, - "ty": 44 - } - ], - "span": 141, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "lhs", - "source_info": { - "scope": 0, - "span": 138 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 0, - "span": 138 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 139 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 1, - "span": 140 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 2, - "span": 130 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 2, - "span": 131 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] - } - ], - "id": 9, - "name": "core::num::::unchecked_mul::precondition_check" - } - }, - "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 20, - "kind": "ZeroSized", - "ty": 46 - }, - "span": 142, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 142 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 142, - "ty": 16 - }, - { - "mutability": "Not", - "span": 142, - "ty": 47 - }, - { - "mutability": "Not", - "span": 142, - "ty": 1 - } - ], - "span": 142, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 10, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 142 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 21, - "kind": "ZeroSized", - "ty": 48 - }, - "span": 142, - "user_ty": null - } - }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 142 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 142, - "ty": 16 - }, - { - "mutability": "Not", - "span": 142, - "ty": 12 - }, - { - "mutability": "Not", - "span": 142, - "ty": 1 - }, - { - "mutability": "Not", - "span": 142, - "ty": 49 - } - ], - "span": 142, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 10, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 142 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 142, - "ty": 1 - }, - { - "mutability": "Not", - "span": 142, - "ty": 7 - }, - { - "mutability": "Not", - "span": 142, - "ty": 1 - } - ], - "span": 142, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 10, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 143 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 143 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 67 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 68 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 6, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 4 - } - } - }, - "span": 65 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 145 - } - ], - "terminator": { - "kind": "Return", - "span": 144 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 22, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 110, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 5 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 147, - "user_ty": null - } - } - ], - "destination": { - "local": 4, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 146, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 148 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 143 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 2 - } - }, - "span": 143 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 7, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 86, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 13, - "projection": [] - } - } - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 88, - "user_ty": null - } - } - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 88 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 143 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 143 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 92 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 93 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 32, - "user_ty": null - } - }, - 35 - ] - } - ] - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 36 - }, - "span": 32, - "user_ty": null - } - }, - 37 - ] - } - ] - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 7, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 10, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 38 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 96 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 8, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 90, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 5 - ] - ], - "otherwise": 6 - } - } - }, - "span": 83 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 149, - "ty": 1 - }, - { - "mutability": "Not", - "span": 150, - "ty": 29 - }, - { - "mutability": "Not", - "span": 150, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 143, - "ty": 40 - }, - { - "mutability": "Not", - "span": 148, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 68, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 99, - "ty": 28 - }, - { - "mutability": "Not", - "span": 91, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 92, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 43 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 94, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 28 - } - ], - "span": 151, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "addr", - "source_info": { - "scope": 0, - "span": 150 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 150 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 100 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 101 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 102 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 103 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 104 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 105 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 106 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 7, - "span": 107 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 108 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 109 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 11, - "span": 110 - }, - "value": { - "Const": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 111, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 112 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 113 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 104 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - } - ], - "id": 11, - "name": "std::ptr::read_volatile::precondition_check" - } - }, - "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - } - ] - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 152 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 152, - "ty": 1 - }, - { - "mutability": "Not", - "span": 152, - "ty": 50 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "std::ptr::drop_in_place::" - } - }, - "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 152 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 23, - "kind": "ZeroSized", - "ty": 51 - }, - "span": 152, - "user_ty": null - } - }, - "target": 4, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 52 - ] - } - ] - }, - "target": 1, - "unwind": "Terminate" - } - }, - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 52 - ] - } - ] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 152 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 152, - "ty": 1 - }, - { - "mutability": "Not", - "span": 152, - "ty": 53 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 1 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "std::ptr::drop_in_place::>" - } - }, - "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 152 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 24, - "kind": "ZeroSized", - "ty": 55 - }, - "span": 152, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 152 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 152, - "ty": 1 - }, - { - "mutability": "Not", - "span": 152, - "ty": 56 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 57 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 1 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "std::ptr::drop_in_place::>" - } - }, - "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 152 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 152, - "ty": 1 - }, - { - "mutability": "Not", - "span": 152, - "ty": 47 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 154 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 155 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 156 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 157 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 154 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 1 - ] - ], - "otherwise": 2 - } - } - }, - "span": 153 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 153 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 25, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 93, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 6 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 159, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 158, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 160 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 153 - } - ], - "terminator": { - "kind": "Return", - "span": 161 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 162, - "ty": 1 - }, - { - "mutability": "Not", - "span": 163, - "ty": 39 - }, - { - "mutability": "Not", - "span": 160, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 155, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 156, - "ty": 28 - } - ], - "span": 168, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 0, - "span": 163 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 164 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 2, - "span": 165 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 166 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 167 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - } - ] - } - ], - "id": 13, - "name": "std::ptr::NonNull::::new_unchecked::precondition_check" - } - }, - "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 1 - } - } - }, - "span": 169 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 171 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 170 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 172 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 173 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 174 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Discriminant": { - "local": 13, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 15, - "projection": [] - } - }, - { - "Move": { - "local": 16, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 17, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 175 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 175 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 175 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 175 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Move": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 179, - "user_ty": null - } - } - ] - } - ] - }, - "span": 173 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 180 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 255, - 255, - 255, - 255, - 255, - 255, - 255, - 127 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - } - ] - }, - "span": 181 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 180 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 170, - "user_ty": null - } - } - ] - } - ] - }, - "span": 170 - } - ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 7, - "projection": [] - } - }, - "expected": false, - "msg": { - "DivisionByZero": { - "Copy": { - "local": 6, - "projection": [] - } - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 170 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "BinaryOp": [ - "Div", - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 170 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 182 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "BinaryOp": [ - "Gt", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 171 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 171 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 182 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 29, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 60 - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 184 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 185 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 183 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 182 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 32 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 185 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 186 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 18, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 8 - ] - ], - "otherwise": 7 - } - } - }, - "span": 186 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 183 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Copy": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 19, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 30, - "kind": "ZeroSized", - "ty": 61 - }, - "span": 188, - "user_ty": null - } - }, - "target": 8, - "unwind": "Unreachable" - } - }, - "span": 189 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 18 - }, - "span": 190 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "BinaryOp": [ - "MulUnchecked", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Copy": { - "local": 3, - "projection": [] - } - } - ] - } - ] - }, - "span": 191 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 192 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 193 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Discriminant": { - "local": 20, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 24, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 22, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 24, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 194 - }, - { - "kind": { - "StorageDead": 23 - }, - "span": 194 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 194 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 25 - }, - "span": 195 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 10, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 196 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 15, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 25, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 197 - }, - { - "kind": { - "StorageDead": 25 - }, - "span": 198 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 199 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 63 - }, - { - "Type": 64 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 9, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 200 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 201 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 183 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 202, - "ty": 60 - }, - { - "mutability": "Not", - "span": 203, - "ty": 28 - }, - { - "mutability": "Not", - "span": 204, - "ty": 62 - }, - { - "mutability": "Not", - "span": 205, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 171, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 170, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 172, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 170, - "ty": 40 - }, - { - "mutability": "Not", - "span": 206, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 192, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 193, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 173, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 174, - "ty": 28 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 186, - "ty": 40 - }, - { - "mutability": "Not", - "span": 189, - "ty": 1 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 195, - "ty": 62 - } - ], - "span": 214, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "element_size", - "source_info": { - "scope": 0, - "span": 203 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 204 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "n", - "source_info": { - "scope": 0, - "span": 205 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "array_size", - "source_info": { - "scope": 1, - "span": 206 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 2, - "span": 207 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 208 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 209 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 4, - "span": 210 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 208 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 8, - "span": 211 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 8, - "span": 212 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 9, - "span": 213 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - } - ] - } - ], - "id": 14, - "name": "std::alloc::Layout::array::inner" - } - }, - "symbol_name": "_ZN4core5alloc6layout6Layout5array5inner17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 215 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 216 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 29 - ] - } - ] - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 215 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 67 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 68 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 10, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 6 - ] - ], - "otherwise": 7 - } - } - }, - "span": 65 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 218 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 219 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 219 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 220 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 221, - "user_ty": null - } - } - ] - } - ] - }, - "span": 217 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 11 - ] - ], - "otherwise": 12 - } - } - }, - "span": 217 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 223 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 223 - } - ], - "terminator": { - "kind": "Return", - "span": 222 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 32 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 218 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 32 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 31, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 162, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 7 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 225, - "user_ty": null - } - } - ], - "destination": { - "local": 8, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 224, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 226 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 215 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 215 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 13 - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 13, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 10, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 13 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 86, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 10, - "projection": [] - } - }, - { - "Move": { - "local": 17, - "projection": [] - } - } - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 16, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 88, - "user_ty": null - } - } - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 88 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 215 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 1 - } - } - }, - "span": 215 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 13 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 92 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 93 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 32, - "user_ty": null - } - }, - 35 - ] - } - ] - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 36 - }, - "span": 32, - "user_ty": null - } - }, - 37 - ] - } - ] - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 7, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 38 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 15, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 96 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 12, - "projection": [] - } - } - ], - "destination": { - "local": 11, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 90, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 13, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 8 - ] - ], - "otherwise": 9 - } - } - }, - "span": 83 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 32, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 255, - 255, - 255, - 255, - 255, - 255, - 255, - 255 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 228, - "user_ty": null - } - } - } - ] - }, - "span": 228 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 14 - } - }, - "span": 227 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Copy": { - "local": 19, - "projection": [] - } - }, - "expected": false, - "msg": { - "DivisionByZero": { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 255, - 255, - 255, - 255, - 255, - 255, - 255, - 127 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - }, - "target": 13, - "unwind": "Terminate" - } - }, - "span": 229 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "BinaryOp": [ - "Div", - { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 255, - 255, - 255, - 255, - 255, - 255, - 255, - 127 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - }, - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - } - ] - }, - "span": 229 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 14 - } - }, - "span": 227 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 20 - }, - "span": 230 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 18, - "projection": [] - } - } - } - ] - }, - "span": 230 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 20, - "projection": [] - } - } - ] - } - ] - }, - "span": 231 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 232 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 233 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 219 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 2 - } - } - }, - "span": 219 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 234, - "ty": 1 - }, - { - "mutability": "Not", - "span": 235, - "ty": 39 - }, - { - "mutability": "Not", - "span": 235, - "ty": 28 - }, - { - "mutability": "Not", - "span": 235, - "ty": 28 - }, - { - "mutability": "Not", - "span": 235, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 215, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 216, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 219, - "ty": 40 - }, - { - "mutability": "Not", - "span": 226, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 68, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 99, - "ty": 28 - }, - { - "mutability": "Not", - "span": 91, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 92, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 43 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 94, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 28 - }, - { - "mutability": "Not", - "span": 220, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 217, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 230, - "ty": 28 - } - ], - "span": 238, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 0, - "span": 235 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "size", - "source_info": { - "scope": 0, - "span": 235 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 235 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "len", - "source_info": { - "scope": 0, - "span": 235 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 100 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 101 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 102 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 103 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 104 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 105 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 106 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 7, - "span": 107 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 108 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 109 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 105 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 11, - "span": 110 - }, - "value": { - "Const": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 111, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 112 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 113 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 104 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 105 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 15, - "span": 236 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 15, - "span": 237 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "max_len", - "source_info": { - "scope": 16, - "span": 220 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - } - ] - } - ], - "id": 17, - "name": "std::slice::from_raw_parts::precondition_check" - } - }, - "symbol_name": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 241 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 242 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 242 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 243 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 126 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 127 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - 44 - ] - } - ] - }, - "span": 127 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 128 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - 44 - ] - } - ] - }, - "span": 128 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Mul", - { - "Move": { - "local": 16, - "projection": [] - } - }, - { - "Move": { - "local": 17, - "projection": [] - } - } - ] - } - ] - }, - "span": 126 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 129 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 129 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 44 - ] - } - ] - } - } - } - ] - }, - "span": 130 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 1, - 40 - ] - } - ] - } - } - } - ] - }, - "span": 131 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 132 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 13, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 244 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 243 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 240 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 14, - "projection": [] - } - } - ], - "destination": { - "local": 12, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 33, - "kind": "ZeroSized", - "ty": 65 - }, - "span": 239, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } - }, - "span": 240 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 12, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 2 - } - } - }, - "span": 240 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 12 - }, - "span": 248 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 242 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 242 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 249 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 34, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 61, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 8 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 246, - "user_ty": null - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 245, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 247 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 1, - [ - { - "Type": 28 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 18, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 251 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 248 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 242 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 242 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 252 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 249 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 253 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 250 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "BinaryOp": [ - "Lt", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 250 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 22, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 4 - } - } - }, - "span": 250 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 6, - "projection": [] - } - }, - { - "Copy": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 256 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 255 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 257 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 255 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 22 - }, - "span": 259 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 254 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 254 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 260 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 10, - "projection": [] - } - } - } - ] - }, - "span": 260 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Move": { - "local": 11, - "projection": [] - } - }, - { - "Copy": { - "local": 8, - "projection": [] - } - } - ] - } - ] - }, - "span": 261 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 262 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 263 - } - ], - "terminator": { - "kind": "Return", - "span": 258 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 264, - "ty": 40 - }, - { - "mutability": "Not", - "span": 265, - "ty": 29 - }, - { - "mutability": "Not", - "span": 266, - "ty": 29 - }, - { - "mutability": "Not", - "span": 267, - "ty": 28 - }, - { - "mutability": "Not", - "span": 268, - "ty": 28 - }, - { - "mutability": "Not", - "span": 269, - "ty": 28 - }, - { - "mutability": "Not", - "span": 270, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 271, - "ty": 41 - }, - { - "mutability": "Not", - "span": 252, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 241, - "ty": 66 - }, - { - "mutability": "Not", - "span": 253, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 260, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 240, - "ty": 40 - }, - { - "mutability": "Not", - "span": 130, - "ty": 44 - }, - { - "mutability": "Not", - "span": 131, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 126, - "ty": 45 - }, - { - "mutability": "Mut", - "span": 127, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 128, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 244, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 272, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 273, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 274, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 250, - "ty": 40 - } - ], - "span": 285, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 0, - "span": 265 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dst", - "source_info": { - "scope": 0, - "span": 266 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "size", - "source_info": { - "scope": 0, - "span": 267 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "count", - "source_info": { - "scope": 0, - "span": 268 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "src_usize", - "source_info": { - "scope": 1, - "span": 269 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "dst_usize", - "source_info": { - "scope": 2, - "span": 270 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 3, - "span": 252 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "diff", - "source_info": { - "scope": 4, - "span": 253 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 104 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 104 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 105 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 275 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 9, - "span": 276 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 10, - "span": 277 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 10, - "span": 278 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 11, - "span": 139 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 11, - "span": 140 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 12, - "span": 130 - }, - "value": { - "Place": { - "local": 13, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 12, - "span": 131 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 279 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 13, - "span": 280 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 15, - "span": 281 - }, - "value": { - "Place": { - "local": 20, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 15, - "span": 282 - }, - "value": { - "Place": { - "local": 21, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 16, - "span": 283 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 284 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - } - ] - } - ], - "id": 18, - "name": "core::ub_checks::is_nonoverlapping::runtime" - } - }, - "symbol_name": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 288 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 289 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 290 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 290 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 290 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 287 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 36, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 68 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 10, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 35, - "kind": "ZeroSized", - "ty": 67 - }, - "span": 286, - "user_ty": 0 - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 287 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Discriminant": { - "local": 10, - "projection": [] - } - } - ] - }, - "span": 287 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 11, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ], - [ - 1, - 3 - ] - ], - "otherwise": 2 - } - } - }, - "span": 291 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 287 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 10, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 70 - ] - } - ] - } - } - } - ] - }, - "span": 294 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 12, - "projection": [] - } - } - ], - "destination": { - "local": 13, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 37, - "kind": "ZeroSized", - "ty": 69 - }, - "span": 292, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 293 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 10, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 52 - ] - } - ] - } - } - } - ] - }, - "span": 296 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 297 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 290 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 290 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 21, - 0, - [ - { - "Type": 9 - }, - { - "Type": 22 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 298, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 299 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 300 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 301 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 302 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 303 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 304 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 305 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "TwoPhaseBorrow" - } - }, - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 305 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 306 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [ - { - "Field": [ - 0, - 52 - ] - } - ] - } - ] - } - ] - }, - "span": 306 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 307 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [ - { - "Field": [ - 0, - 52 - ] - }, - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 308 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 16, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 307 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 311 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 312 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 295 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 18, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 7 - ] - ], - "otherwise": 5 - } - } - }, - "span": 295 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 20 - }, - "span": 315 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 29 - ] - } - ] - }, - "span": 315 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 316 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 16, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 316 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 317 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "NullaryOp": [ - "SizeOf", - 9 - ] - } - ] - }, - "span": 317 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 318 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 319 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 20, - "projection": [] - } - }, - { - "Move": { - "local": 21, - "projection": [] - } - }, - { - "Move": { - "local": 22, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - }, - { - "Copy": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 19, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 38, - "kind": "ZeroSized", - "ty": 73 - }, - "span": 313, - "user_ty": null - } - }, - "target": 6, - "unwind": "Unreachable" - } - }, - "span": 314 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 23 - }, - "span": 321 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 321 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 321 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 321 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 7 - } - }, - "span": 320 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 18 - }, - "span": 323 - }, - { - "kind": { - "Intrinsic": { - "CopyNonOverlapping": { - "count": { - "Copy": { - "local": 4, - "projection": [] - } - }, - "dst": { - "Copy": { - "local": 6, - "projection": [] - } - }, - "src": { - "Copy": { - "local": 5, - "projection": [] - } - } - } - } - }, - "span": 324 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 325 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 325 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 326 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "TwoPhaseBorrow" - } - }, - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 326 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 327 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [ - { - "Field": [ - 1, - 28 - ] - } - ] - }, - { - "Use": { - "Copy": { - "local": 4, - "projection": [] - } - } - } - ] - }, - "span": 328 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 327 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 329 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 330 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 331 - } - ], - "terminator": { - "kind": "Return", - "span": 322 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 332, - "ty": 26 - }, - { - "mutability": "Not", - "span": 333, - "ty": 23 - }, - { - "mutability": "Not", - "span": 334, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 288, - "ty": 26 - }, - { - "mutability": "Mut", - "span": 289, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 301, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 304, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 305, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 326, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 290, - "ty": 52 - }, - { - "mutability": "Mut", - "span": 287, - "ty": 74 - }, - { - "mutability": "Mut", - "span": 335, - "ty": 6 - }, - { - "mutability": "Not", - "span": 294, - "ty": 70 - }, - { - "mutability": "Mut", - "span": 293, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 306, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 308, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 295, - "ty": 40 - }, - { - "mutability": "Not", - "span": 314, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 315, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 316, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 317, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 318, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 337, - "ty": 76 - } - ], - "span": 357, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "s", - "source_info": { - "scope": 0, - "span": 333 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 0, - "span": 334 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 288 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "capacity", - "source_info": { - "scope": 2, - "span": 338 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 2, - "span": 339 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "capacity", - "source_info": { - "scope": 3, - "span": 340 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 3, - "span": 341 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "res", - "source_info": { - "scope": 4, - "span": 296 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "err", - "source_info": { - "scope": 5, - "span": 294 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 342 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 343 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 344 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 9, - "span": 345 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 9, - "span": 345 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 346 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 11, - "span": 347 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dest", - "source_info": { - "scope": 11, - "span": 348 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "count", - "source_info": { - "scope": 11, - "span": 349 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 12, - "span": 350 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dst", - "source_info": { - "scope": 12, - "span": 351 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "count", - "source_info": { - "scope": 12, - "span": 352 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 16, - "span": 353 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "new_len", - "source_info": { - "scope": 16, - "span": 354 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 355 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 18, - "span": 356 - }, - "value": { - "Place": { - "local": 24, - "projection": [] - } - } - } - ] - } - ], - "id": 20, - "name": "::to_vec::" - } - }, - "symbol_name": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 40, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 17 - }, - "span": 359, - "user_ty": null - } - } - } - ] - }, - "span": 359 - } - ], - "terminator": { - "kind": "Return", - "span": 358 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 360, - "ty": 17 - }, - { - "mutability": "Not", - "span": 361, - "ty": 1 - } - ], - "span": 362, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 361 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 22, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 364 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 363 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 3 - } - } - }, - "span": 363 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 366 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 366 - } - ], - "terminator": { - "kind": "Return", - "span": 365 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 369 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 370 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 371 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 371 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 372 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 373 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 374 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 375 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 375 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 1, - 62 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 10, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Discriminant": { - "local": 11, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 13, - "projection": [] - } - }, - { - "Move": { - "local": 14, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 15, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 378 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 379 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 41, - "kind": "ZeroSized", - "ty": 78 - }, - "span": 367, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } - }, - "span": 368 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 382 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Constant": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 9 - ] - ] - } - } - }, - "ty": 27 - }, - "span": 32, - "user_ty": null - } - }, - 29 - ] - } - ] - }, - "span": 382 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 8, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 42, - "kind": "ZeroSized", - "ty": 79 - }, - "span": 380, - "user_ty": null - } - }, - "target": 4, - "unwind": "Unreachable" - } - }, - "span": 381 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 384 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 383 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 387 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 9 - ] - ] - } - } - }, - "ty": 27 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 44, - "kind": "ZeroSized", - "ty": 80 - }, - "span": 385, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 386 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 388, - "ty": 58 - }, - { - "mutability": "Not", - "span": 389, - "ty": 63 - }, - { - "mutability": "Not", - "span": 364, - "ty": 9 - }, - { - "mutability": "Mut", - "span": 370, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 371, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 374, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 375, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 363, - "ty": 40 - }, - { - "mutability": "Not", - "span": 381, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 382, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 376, - "ty": 62 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - } - ], - "span": 394, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 389 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 1, - "span": 390 - }, - "value": { - "Const": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 9 - ] - ] - } - } - }, - "ty": 27 - }, - "span": 391, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 392 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 393 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 208 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - } - ] - } - ], - "id": 23, - "name": "std::alloc::alloc" - } - }, - "symbol_name": "_ZN5alloc5alloc5alloc17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 396 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [] - } - ] - } - ] - }, - "span": 396 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 372 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 397 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 395 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 399 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 398 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 401 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 402 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 403 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [] - } - ] - } - ] - }, - "span": 403 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 404 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 1, - 62 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 19, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Discriminant": { - "local": 20, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 24, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 22, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 24, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 23 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 378 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 18, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 405 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 406 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 25, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 9 - ] - ], - "otherwise": 7 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 10 - }, - "span": 409 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [] - } - } - } - ] - }, - "span": 409 - }, - { - "kind": { - "StorageLive": 34 - }, - "span": 410 - }, - { - "kind": { - "Assign": [ - { - "local": 34, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 10, - "projection": [] - } - ] - } - ] - }, - "span": 410 - }, - { - "kind": { - "StorageDead": 34 - }, - "span": 411 - }, - { - "kind": { - "StorageLive": 35 - }, - "span": 412 - }, - { - "kind": { - "StorageLive": 36 - }, - "span": 413 - }, - { - "kind": { - "Assign": [ - { - "local": 36, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 10, - "projection": [] - } - ] - } - ] - }, - "span": 413 - }, - { - "kind": { - "StorageLive": 37 - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 37, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 1, - 62 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "StorageLive": 39 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 40 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 41 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 42 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 38 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 38, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 37, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 39, - "projection": [] - }, - { - "Discriminant": { - "local": 38, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 40, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 41, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 42, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 40, - "projection": [] - } - }, - { - "Move": { - "local": 41, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 42, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 35, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 38 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 42 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 41 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 40 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 39 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 37 - }, - "span": 378 - }, - { - "kind": { - "StorageDead": 36 - }, - "span": 414 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 35, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 45, - "kind": "ZeroSized", - "ty": 82 - }, - "span": 407, - "user_ty": null - } - }, - "target": 13, - "unwind": "Unreachable" - } - }, - "span": 408 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 46, - "kind": "ZeroSized", - "ty": 83 - }, - "span": 415, - "user_ty": null - } - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 416 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 11 - }, - "span": 418 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 419 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 420 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [] - } - } - } - ] - }, - "span": 421 - }, - { - "kind": { - "StorageLive": 44 - }, - "span": 156 - }, - { - "kind": { - "Assign": [ - { - "local": 44, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 157 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 44, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 14 - ] - ], - "otherwise": 15 - } - } - }, - "span": 417 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 422 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 27 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 27, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 27, - "projection": [] - } - } - ], - "destination": { - "local": 26, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 8, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 27 - }, - "span": 426 - }, - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 28, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 429 - }, - { - "kind": { - "StorageLive": 29 - }, - "span": 430 - }, - { - "kind": { - "StorageLive": 30 - }, - "span": 431 - }, - { - "kind": { - "Assign": [ - { - "local": 30, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [] - } - } - } - ] - }, - "span": 310 - }, - { - "kind": { - "Assign": [ - { - "local": 29, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 17, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 432 - }, - { - "kind": { - "StorageDead": 30 - }, - "span": 433 - }, - { - "kind": { - "StorageLive": 33 - }, - "span": 434 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 10 - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 28, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 429 - }, - { - "kind": { - "StorageLive": 29 - }, - "span": 430 - }, - { - "kind": { - "StorageLive": 30 - }, - "span": 431 - }, - { - "kind": { - "Assign": [ - { - "local": 30, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [] - } - } - } - ] - }, - "span": 310 - }, - { - "kind": { - "Assign": [ - { - "local": 29, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 17, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 432 - }, - { - "kind": { - "StorageDead": 30 - }, - "span": 433 - }, - { - "kind": { - "StorageLive": 33 - }, - "span": 434 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 25, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 12 - ] - ], - "otherwise": 10 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 32 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 32, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 32, - "projection": [] - } - } - ], - "destination": { - "local": 31, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 11, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 32 - }, - "span": 426 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 12 - } - }, - "span": 435 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 33, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 29, - "projection": [] - } - }, - 75 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 85 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 33, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 33 - }, - "span": 434 - }, - { - "kind": { - "StorageDead": 29 - }, - "span": 437 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 438 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 86 - }, - { - "Type": 87 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 6, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 439 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 436 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 436 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 35 - }, - "span": 441 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 442 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 440 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 44 - }, - "span": 417 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 48, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 88 - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 443 - }, - { - "kind": { - "StorageLive": 49 - }, - "span": 444 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 49, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 89 - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 445 - }, - { - "kind": { - "StorageDead": 49 - }, - "span": 444 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 446 - }, - { - "kind": { - "StorageLive": 50 - }, - "span": 418 - }, - { - "kind": { - "StorageDead": 50 - }, - "span": 418 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 447 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 50, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 90 - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 448 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 449 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 450 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 422 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 44 - }, - "span": 417 - }, - { - "kind": { - "StorageLive": 43 - }, - "span": 451 - }, - { - "kind": { - "StorageLive": 48 - }, - "span": 452 - }, - { - "kind": { - "StorageLive": 45 - }, - "span": 400 - }, - { - "kind": { - "Assign": [ - { - "local": 45, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 45, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 18 - ] - ], - "otherwise": 16 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 47 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 47, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 47, - "projection": [] - } - } - ], - "destination": { - "local": 46, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 17, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 47 - }, - "span": 426 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 18 - } - }, - "span": 435 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 45 - }, - "span": 453 - }, - { - "kind": { - "Assign": [ - { - "local": 48, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 43, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 48, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 48 - }, - "span": 452 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 1, - [ - { - "Type": 72 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 43, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 454 - }, - { - "kind": { - "StorageDead": 43 - }, - "span": 455 - }, - { - "kind": { - "StorageLive": 49 - }, - "span": 444 - }, - { - "kind": { - "Assign": [ - { - "local": 49, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 13, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 456 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 72 - }, - { - "Type": 87 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 49, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 457 - }, - { - "kind": { - "StorageDead": 49 - }, - "span": 444 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 446 - }, - { - "kind": { - "StorageLive": 50 - }, - "span": 418 - }, - { - "kind": { - "Assign": [ - { - "local": 50, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 12, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 458 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 26, - 0, - [ - { - "Type": 91 - }, - { - "Type": 72 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 50, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 459 - }, - { - "kind": { - "StorageDead": 50 - }, - "span": 418 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 447 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 11, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 460 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 449 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 461 - }, - { - "kind": { - "StorageLive": 53 - }, - "span": 461 - }, - { - "kind": { - "StorageLive": 51 - }, - "span": 430 - }, - { - "kind": { - "StorageLive": 52 - }, - "span": 431 - }, - { - "kind": { - "Assign": [ - { - "local": 53, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 52, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 53, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "Assign": [ - { - "local": 51, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 52, - "projection": [] - } - }, - { - "Copy": { - "local": 4, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 432 - }, - { - "kind": { - "StorageDead": 52 - }, - "span": 433 - }, - { - "kind": { - "StorageLive": 57 - }, - "span": 434 - }, - { - "kind": { - "StorageLive": 54 - }, - "span": 400 - }, - { - "kind": { - "Assign": [ - { - "local": 54, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 54, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 21 - ] - ], - "otherwise": 19 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 56 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 56, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 53, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 56, - "projection": [] - } - } - ], - "destination": { - "local": 55, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 20, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 56 - }, - "span": 426 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 21 - } - }, - "span": 435 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 54 - }, - "span": 453 - }, - { - "kind": { - "Assign": [ - { - "local": 57, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 51, - "projection": [] - } - }, - 75 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 85 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 57, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 57 - }, - "span": 434 - }, - { - "kind": { - "StorageDead": 51 - }, - "span": 437 - }, - { - "kind": { - "StorageDead": 53 - }, - "span": 461 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 86 - }, - { - "Type": 87 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 16, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 462 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 463 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 450 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 450 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 464, - "ty": 90 - }, - { - "mutability": "Not", - "span": 465, - "ty": 92 - }, - { - "mutability": "Not", - "span": 466, - "ty": 63 - }, - { - "mutability": "Not", - "span": 467, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 468, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 396, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 401, - "ty": 86 - }, - { - "mutability": "Mut", - "span": 402, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 403, - "ty": 81 - }, - { - "mutability": "Not", - "span": 399, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 409, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 418, - "ty": 93 - }, - { - "mutability": "Mut", - "span": 419, - "ty": 89 - }, - { - "mutability": "Mut", - "span": 420, - "ty": 88 - }, - { - "mutability": "Mut", - "span": 421, - "ty": 58 - }, - { - "mutability": "Not", - "span": 460, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 461, - "ty": 86 - }, - { - "mutability": "Mut", - "span": 469, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 404, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 376, - "ty": 62 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 40 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 430, - "ty": 94 - }, - { - "mutability": "Mut", - "span": 431, - "ty": 58 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 410, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 412, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 413, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 376, - "ty": 62 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 451, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 156, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 40 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 27 - }, - { - "mutability": "Not", - "span": 456, - "ty": 72 - }, - { - "mutability": "Not", - "span": 458, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 430, - "ty": 94 - }, - { - "mutability": "Mut", - "span": 431, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 40 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 75 - } - ], - "span": 492, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 465 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 466 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "zeroed", - "source_info": { - "scope": 0, - "span": 467 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 1, - "span": 470 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "raw_ptr", - "source_info": { - "scope": 2, - "span": 399 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 3, - "span": 471 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "residual", - "source_info": { - "scope": 4, - "span": 472 - }, - "value": { - "Const": { - "const_": { - "id": 51, - "kind": "ZeroSized", - "ty": 91 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "val", - "source_info": { - "scope": 6, - "span": 460 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 392 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 473 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 393 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 11, - "span": 208 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "addr", - "source_info": { - "scope": 12, - "span": 474 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 13, - "span": 475 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 16, - "span": 476 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 16, - "span": 477 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 478, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 346 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 18, - "span": 479 - }, - "value": { - "Place": { - "local": 30, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 18, - "span": 480 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 478, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 19, - "span": 481 - }, - "value": { - "Place": { - "local": 30, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 19, - "span": 482 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 478, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 20, - "span": 475 - }, - "value": { - "Place": { - "local": 29, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "layout", - "source_info": { - "scope": 23, - "span": 483 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 392 - }, - "value": { - "Place": { - "local": 34, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 25, - "span": 393 - }, - "value": { - "Place": { - "local": 36, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 26, - "span": 208 - }, - "value": { - "Place": { - "local": 37, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 27, - "span": 484 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 28, - "span": 164 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 29, - "span": 165 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 30, - "span": 166 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 31, - "span": 167 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 32, - "span": 475 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 35, - "span": 485 - }, - "value": { - "Place": { - "local": 13, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "err", - "source_info": { - "scope": 35, - "span": 486 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 87 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 36, - "span": 456 - }, - "value": { - "Place": { - "local": 49, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 37, - "span": 487 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 38, - "span": 458 - }, - "value": { - "Place": { - "local": 50, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "e", - "source_info": { - "scope": 39, - "span": 488 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 87 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 40, - "span": 476 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 40, - "span": 477 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 41, - "span": 346 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 42, - "span": 479 - }, - "value": { - "Place": { - "local": 52, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 42, - "span": 480 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 43, - "span": 481 - }, - "value": { - "Place": { - "local": 52, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 43, - "span": 482 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 44, - "span": 475 - }, - "value": { - "Place": { - "local": 51, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "residual", - "source_info": { - "scope": 47, - "span": 489 - }, - "value": { - "Const": { - "const_": { - "id": 51, - "kind": "ZeroSized", - "ty": 91 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "e", - "source_info": { - "scope": 48, - "span": 490 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 87 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "t", - "source_info": { - "scope": 49, - "span": 491 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 87 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 24, - "name": "std::alloc::Global::alloc_impl" - } - }, - "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Constant": { - "const_": { - "id": 53, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 493, - "user_ty": null - } - }, - "targets": { - "branches": [ - [ - 0, - 1 - ] - ], - "otherwise": 3 - } - } - }, - "span": 493 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 495 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 95 - ] - }, - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 495 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 4 - } - } - }, - "span": 494 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 497 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 3 - } - }, - "span": 496 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 0, - [ - { - "Type": 96 - } - ], - null, - null - ] - }, - [] - ] - } - ] - }, - "span": 499 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 498 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 497 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 319 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 501 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "NullaryOp": [ - "SizeOf", - 9 - ] - } - ] - }, - "span": 502 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 503 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 95 - ] - }, - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 503 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 500 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 7 - ] - ], - "otherwise": 6 - } - } - }, - "span": 500 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 504 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 10, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 30, - "kind": "ZeroSized", - "ty": 61 - }, - "span": 505, - "user_ty": null - } - }, - "target": 7, - "unwind": "Unreachable" - } - }, - "span": 506 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 507 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "BinaryOp": [ - "MulUnchecked", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 508 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 509 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 509 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 195 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 196 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 15, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 197 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 198 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 510 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 511 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 511 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 1, - 77 - ] - } - ] - } - } - } - ] - }, - "span": 511 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 512 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 513 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 513 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 13, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 514 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 515 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 512 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 516 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - "Tuple", - [ - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Copy": { - "local": 7, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 510 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 1, - [ - { - "Type": 96 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 8, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 517 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 518 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 498 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 519, - "ty": 97 - }, - { - "mutability": "Not", - "span": 520, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 495, - "ty": 28 - }, - { - "mutability": "Not", - "span": 521, - "ty": 28 - }, - { - "mutability": "Not", - "span": 522, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 501, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 503, - "ty": 28 - }, - { - "mutability": "Not", - "span": 523, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 510, - "ty": 96 - }, - { - "mutability": "Mut", - "span": 500, - "ty": 40 - }, - { - "mutability": "Not", - "span": 506, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 195, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 524, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 513, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 511, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 511, - "ty": 77 - } - ], - "span": 532, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 520 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 521 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 2, - "span": 522 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 3, - "span": 523 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 525 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 6, - "span": 526 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 9, - "span": 211 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 9, - "span": 212 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 10, - "span": 213 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 11, - "span": 527 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 11, - "span": 527 - }, - "value": { - "Place": { - "local": 16, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 12, - "span": 528 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 346 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 14, - "span": 529 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 14, - "span": 529 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "unique", - "source_info": { - "scope": 15, - "span": 530 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "unique", - "source_info": { - "scope": 15, - "span": 530 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 16, - "span": 531 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 16, - "span": 531 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 27, - "name": "alloc::raw_vec::RawVec::::current_memory" - } - }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Constant": { - "const_": { - "id": 53, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 533, - "user_ty": null - } - }, - "targets": { - "branches": [ - [ - 0, - 1 - ] - ], - "otherwise": 2 - } - } - }, - "span": 533 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 3 - } - } - }, - "span": 534 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 535 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 536 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 536 - }, - { - "kind": { - "StorageLive": 25 - }, - "span": 537 - }, - { - "kind": { - "StorageLive": 26 - }, - "span": 538 - }, - { - "kind": { - "StorageLive": 27 - }, - "span": 538 - }, - { - "kind": { - "StorageLive": 28 - }, - "span": 539 - }, - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 319 - }, - { - "kind": { - "Assign": [ - { - "local": 27, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 28, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 405 - }, - { - "kind": { - "StorageDead": 28 - }, - "span": 540 - }, - { - "kind": { - "StorageLive": 32 - }, - "span": 541 - }, - { - "kind": { - "StorageLive": 29 - }, - "span": 400 - }, - { - "kind": { - "Assign": [ - { - "local": 29, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 29, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 21 - ] - ], - "otherwise": 19 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 544 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 545 - }, - { - "kind": { - "StorageLive": 33 - }, - "span": 546 - }, - { - "kind": { - "Assign": [ - { - "local": 33, - "projection": [] - }, - { - "NullaryOp": [ - "SizeOf", - 9 - ] - } - ] - }, - "span": 502 - }, - { - "kind": { - "StorageLive": 34 - }, - "span": 547 - }, - { - "kind": { - "StorageLive": 35 - }, - "span": 548 - }, - { - "kind": { - "Assign": [ - { - "local": 35, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 319 - }, - { - "kind": { - "Assign": [ - { - "local": 34, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 35, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 196 - }, - { - "kind": { - "StorageDead": 35 - }, - "span": 549 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 33, - "projection": [] - } - }, - { - "Move": { - "local": 34, - "projection": [] - } - }, - { - "Copy": { - "local": 1, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 54, - "kind": "ZeroSized", - "ty": 98 - }, - "span": 542, - "user_ty": null - } - }, - "target": 22, - "unwind": { - "Cleanup": 18 - } - } - }, - "span": 543 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 545 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 1, - [ - { - "Type": 52 - }, - { - "Type": 70 - } - ], - null, - null - ] - }, - [ - { - "Constant": { - "const_": { - "id": 55, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 70 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 550 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 551 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 15 - } - }, - "span": 32 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 7, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 63 - ] - } - ] - } - } - } - ] - }, - "span": 553 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [] - } - } - } - ] - }, - "span": 554 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 551 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 555 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 556 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 6, - "projection": [] - } - ] - } - ] - }, - "span": 556 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 372 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 557 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 558 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 559 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Discriminant": { - "local": 2, - "projection": [] - } - } - ] - }, - "span": 560 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 13, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 8 - ], - [ - 1, - 7 - ] - ], - "otherwise": 4 - } - } - }, - "span": 552 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 15 - }, - "span": 563 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 563 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 15, - "projection": [] - } - }, - { - "Copy": { - "local": 9, - "projection": [] - } - } - ], - "destination": { - "local": 12, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 56, - "kind": "ZeroSized", - "ty": 99 - }, - "span": 561, - "user_ty": null - } - }, - "target": 10, - "unwind": { - "Cleanup": 18 - } - } - }, - "span": 562 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 14 - }, - "span": 566 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 566 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 14, - "projection": [] - } - }, - { - "Copy": { - "local": 9, - "projection": [] - } - } - ], - "destination": { - "local": 12, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 57, - "kind": "ZeroSized", - "ty": 100 - }, - "span": 564, - "user_ty": null - } - }, - "target": 9, - "unwind": { - "Cleanup": 18 - } - } - }, - "span": 565 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 14 - }, - "span": 567 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 11 - } - }, - "span": 567 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 15 - }, - "span": 568 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 11 - } - }, - "span": 568 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Discriminant": { - "local": 12, - "projection": [] - } - } - ] - }, - "span": 570 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 16, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 13 - ], - [ - 1, - 12 - ] - ], - "otherwise": 4 - } - } - }, - "span": 569 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 18 - }, - "span": 571 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 572 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 29, - 1, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 9, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 572 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 30, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 19, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 573 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 574 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 1, - [ - { - "Type": 52 - }, - { - "Type": 70 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 18, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 575 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 576 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 577 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 15 - } - }, - "span": 32 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 12, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 86 - ] - } - ] - } - } - } - ] - }, - "span": 579 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 580 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 581 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 582 - }, - { - "kind": { - "StorageLive": 37 - }, - "span": 583 - }, - { - "kind": { - "StorageLive": 36 - }, - "span": 513 - }, - { - "kind": { - "Assign": [ - { - "local": 37, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [ - { - "Field": [ - 0, - 75 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 36, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 37, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 513 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 36, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 514 - }, - { - "kind": { - "StorageDead": 36 - }, - "span": 515 - }, - { - "kind": { - "StorageDead": 37 - }, - "span": 583 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 31, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 22, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 584 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 585 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 586 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 32, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 587 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 588 - }, - { - "kind": { - "Assign": [ - { - "local": 24, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 588 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 33, - 0, - [ - { - "Type": 9 - }, - { - "Type": 22 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 21, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - }, - { - "Move": { - "local": 24, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 580 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 589 - }, - { - "kind": { - "StorageDead": 23 - }, - "span": 589 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 589 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 52 - }, - { - "Type": 70 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 20, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 590 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 591 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 577 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 577 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 14 - } - }, - "span": 578 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 16 - } - }, - "span": 592 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 577 - } - ], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 3, - "projection": [] - }, - "target": 16, - "unwind": "Continue" - } - }, - "span": 592 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 593 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 594 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 3, - "projection": [] - }, - "target": 17, - "unwind": "Terminate" - } - }, - "span": 592 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 31 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 31, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 27, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 31, - "projection": [] - } - } - ], - "destination": { - "local": 30, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 20, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 31 - }, - "span": 426 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 21 - } - }, - "span": 435 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 29 - }, - "span": 453 - }, - { - "kind": { - "Assign": [ - { - "local": 32, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 27, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 26, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 32, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 32 - }, - "span": 541 - }, - { - "kind": { - "StorageDead": 27 - }, - "span": 538 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 31, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 26, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 595 - }, - { - "kind": { - "StorageDead": 26 - }, - "span": 596 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 33, - 0, - [ - { - "Type": 9 - }, - { - "Type": 22 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 25, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 58, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 95 - }, - "span": 597, - "user_ty": null - } - }, - { - "Copy": { - "local": 5, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 598 - }, - { - "kind": { - "StorageDead": 25 - }, - "span": 599 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 600 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 52 - }, - { - "Type": 70 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 4, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 601 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 602 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 14 - } - }, - "span": 578 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 34 - }, - "span": 604 - }, - { - "kind": { - "StorageDead": 33 - }, - "span": 604 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Discriminant": { - "local": 7, - "projection": [] - } - } - ] - }, - "span": 545 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 8, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 6 - ], - [ - 1, - 5 - ] - ], - "otherwise": 4 - } - } - }, - "span": 603 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 605, - "ty": 74 - }, - { - "mutability": "Not", - "span": 606, - "ty": 28 - }, - { - "mutability": "Not", - "span": 607, - "ty": 68 - }, - { - "mutability": "Not", - "span": 608, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 535, - "ty": 52 - }, - { - "mutability": "Mut", - "span": 536, - "ty": 22 - }, - { - "mutability": "Not", - "span": 544, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 545, - "ty": 60 - }, - { - "mutability": "Mut", - "span": 609, - "ty": 6 - }, - { - "mutability": "Not", - "span": 553, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 555, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 556, - "ty": 81 - }, - { - "mutability": "Not", - "span": 559, - "ty": 90 - }, - { - "mutability": "Mut", - "span": 610, - "ty": 6 - }, - { - "mutability": "Mut", - "span": 566, - "ty": 92 - }, - { - "mutability": "Mut", - "span": 563, - "ty": 92 - }, - { - "mutability": "Mut", - "span": 611, - "ty": 6 - }, - { - "mutability": "Not", - "span": 579, - "ty": 86 - }, - { - "mutability": "Mut", - "span": 571, - "ty": 70 - }, - { - "mutability": "Mut", - "span": 572, - "ty": 101 - }, - { - "mutability": "Mut", - "span": 580, - "ty": 52 - }, - { - "mutability": "Mut", - "span": 581, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 582, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 586, - "ty": 95 - }, - { - "mutability": "Mut", - "span": 588, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 537, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 538, - "ty": 72 - }, - { - "mutability": "Not", - "span": 612, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 539, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 40 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 546, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 547, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 548, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 513, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 75 - } - ], - "span": 594, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "capacity", - "source_info": { - "scope": 0, - "span": 606 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "init", - "source_info": { - "scope": 0, - "span": 607 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 0, - "span": 608 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 1, - "span": 544 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 2, - "span": 553 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "err", - "source_info": { - "scope": 3, - "span": 613 - }, - "value": { - "Const": { - "const_": { - "id": 59, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 128, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 70 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 4, - "span": 559 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 5, - "span": 614 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 6, - "span": 579 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 7, - "span": 615 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 10, - "span": 612 - }, - "value": { - "Place": { - "local": 27, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "addr", - "source_info": { - "scope": 13, - "span": 474 - }, - "value": { - "Place": { - "local": 28, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 14, - "span": 475 - }, - "value": { - "Place": { - "local": 27, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "n", - "source_info": { - "scope": 17, - "span": 616 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 21, - "span": 213 - }, - "value": { - "Place": { - "local": 35, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 22, - "span": 529 - }, - "value": { - "Const": { - "const_": { - "id": 60, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 101 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "kind", - "source_info": { - "scope": 23, - "span": 617 - }, - "value": { - "Const": { - "const_": { - "id": 60, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 101 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 392 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "alloc_size", - "source_info": { - "scope": 25, - "span": 618 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 26, - "span": 529 - }, - "value": { - "Const": { - "const_": { - "id": 61, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 101 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "kind", - "source_info": { - "scope": 27, - "span": 617 - }, - "value": { - "Const": { - "const_": { - "id": 61, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 101 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 28, - "span": 529 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "kind", - "source_info": { - "scope": 29, - "span": 617 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 30, - "span": 528 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 31, - "span": 346 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pointer", - "source_info": { - "scope": 32, - "span": 619 - }, - "value": { - "Place": { - "local": 22, - "projection": [] - } - } - } - ] - } - ], - "id": 28, - "name": "alloc::raw_vec::RawVec::::try_allocate_in" - } - }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 621 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 621 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 372 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 622 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 620 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 625 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Move": { - "local": 8, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 626 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 627 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 627 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 628 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 7, - "projection": [] - } - ] - } - ] - }, - "span": 628 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 629 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 630 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 631 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 7, - "projection": [] - } - ] - } - ] - }, - "span": 631 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [ - { - "Field": [ - 1, - 62 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 12, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Discriminant": { - "local": 13, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 15, - "projection": [] - } - }, - { - "Move": { - "local": 16, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 17, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 378 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 632 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 10, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 62, - "kind": "ZeroSized", - "ty": 102 - }, - "span": 623, - "user_ty": null - } - }, - "target": 3, - "unwind": "Unreachable" - } - }, - "span": 624 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 633 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 635 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 636 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 636 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 2 - } - }, - "span": 634 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 637, - "ty": 1 - }, - { - "mutability": "Not", - "span": 638, - "ty": 92 - }, - { - "mutability": "Not", - "span": 639, - "ty": 72 - }, - { - "mutability": "Not", - "span": 640, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 641, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 621, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 625, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 627, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 628, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 630, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 631, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 376, - "ty": 62 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - } - ], - "span": 644, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 638 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 0, - "span": 639 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 640 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 392 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 346 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 3, - "span": 642 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 3, - "span": 643 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 392 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 393 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 208 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - } - ] - } - ], - "id": 34, - "name": "::deallocate" - } - }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 64, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 1 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 646, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 63, - "kind": "ZeroSized", - "ty": 103 - }, - "span": 645, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 647 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 648 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 649, - "ty": 90 - }, - { - "mutability": "Not", - "span": 650, - "ty": 92 - }, - { - "mutability": "Not", - "span": 651, - "ty": 63 - } - ], - "span": 652, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 650 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 651 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 35, - "name": "::allocate_zeroed" - } - }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 53, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 654, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 63, - "kind": "ZeroSized", - "ty": 103 - }, - "span": 653, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 655 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 656 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 657, - "ty": 90 - }, - { - "mutability": "Not", - "span": 658, - "ty": 92 - }, - { - "mutability": "Not", - "span": 659, - "ty": 63 - } - ], - "span": 660, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 658 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 659 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 36, - "name": "::allocate" - } - }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 75, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 27, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 10 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 771, - "user_ty": null - } - } - } - ] - }, - "span": 771 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 74, - "kind": "ZeroSized", - "ty": 116 - }, - "span": 769, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 770 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 772 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 773, - "ty": 24 - }, - { - "mutability": "Not", - "span": 774, - "ty": 117 - }, - { - "mutability": "Mut", - "span": 771, - "ty": 25 - } - ], - "span": 775, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 774 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - } - ], - "id": 41, - "name": "::summarise" - } - }, - "symbol_name": "_ZN67_$LT$defined_trait..Container$u20$as$u20$defined_trait..Summary$GT$9summarise17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 663 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 664 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 306 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 52 - ] - } - ] - } - ] - } - ] - }, - "span": 306 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 307 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 52 - ] - }, - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 308 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 7, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 626 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 307 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 311 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 665 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 665 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Copy": { - "local": 4, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 432 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 666 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 666 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 65, - "kind": "ZeroSized", - "ty": 104 - }, - "span": 661, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 662 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 668 - } - ], - "terminator": { - "kind": "Return", - "span": 667 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 669, - "ty": 1 - }, - { - "mutability": "Not", - "span": 670, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 663, - "ty": 94 - }, - { - "mutability": "Mut", - "span": 664, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 665, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 306, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 308, - "ty": 72 - } - ], - "span": 671, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 670 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 343 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 344 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 3, - "span": 345 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 3, - "span": 345 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 346 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 5, - "span": 479 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 5, - "span": 480 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 6, - "span": 481 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 6, - "span": 482 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - } - ] - } - ], - "id": 37, - "name": " as std::ops::Drop>::drop" - } - }, - "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 672 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 673 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 673 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 674 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - } - ] - }, - "span": 674 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "Ne", - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 672 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 672 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 676 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 676 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 53, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 677, - "user_ty": null - } - } - } - ] - }, - "span": 677 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 678 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 675 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 676 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 676 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 678 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 681 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 681 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 10, - "projection": [] - } - } - ], - "destination": { - "local": 6, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 66, - "kind": "ZeroSized", - "ty": 105 - }, - "span": 679, - "user_ty": null - } - }, - "target": 5, - "unwind": "Unreachable" - } - }, - "span": 680 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 682 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 682 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 67, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 16 - }, - "span": 683, - "user_ty": null - } - } - ] - } - ] - }, - "span": 684 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 683 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 675 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 675 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 687 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 686 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 688 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 302 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 11, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 688 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 689 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 2, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 302 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 689 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 68, - "kind": "ZeroSized", - "ty": 106 - }, - "span": 685, - "user_ty": null - } - }, - "target": 3, - "unwind": "Unreachable" - } - }, - "span": 686 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 690, - "ty": 40 - }, - { - "mutability": "Not", - "span": 691, - "ty": 23 - }, - { - "mutability": "Not", - "span": 692, - "ty": 23 - }, - { - "mutability": "Mut", - "span": 672, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 673, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 674, - "ty": 28 - }, - { - "mutability": "Not", - "span": 693, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 686, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 688, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 689, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 681, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 75 - } - ], - "span": 695, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 691 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 0, - "span": 692 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 1, - "span": 693 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "val", - "source_info": { - "scope": 2, - "span": 694 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 342 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 342 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 38, - "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" - } - }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 697 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 698 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 698 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 69, - "kind": "ZeroSized", - "ty": 107 - }, - "span": 696, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 697 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 700 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Discriminant": { - "local": 2, - "projection": [] - } - } - ] - }, - "span": 697 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 2 - ], - [ - 0, - 4 - ] - ], - "otherwise": 5 - } - } - }, - "span": 699 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 96 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 703 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 96 - ] - }, - { - "Field": [ - 1, - 63 - ] - } - ] - } - } - } - ] - }, - "span": 704 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 705 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 2, - 22 - ] - } - ] - } - ] - } - ] - }, - "span": 705 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 70, - "kind": "ZeroSized", - "ty": 108 - }, - "span": 701, - "user_ty": null - } - }, - "target": 3, - "unwind": "Continue" - } - }, - "span": 702 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 707 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 706 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 709 - } - ], - "terminator": { - "kind": "Return", - "span": 708 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 710 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 711, - "ty": 1 - }, - { - "mutability": "Not", - "span": 712, - "ty": 57 - }, - { - "mutability": "Mut", - "span": 697, - "ty": 97 - }, - { - "mutability": "Mut", - "span": 698, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 699, - "ty": 6 - }, - { - "mutability": "Not", - "span": 703, - "ty": 72 - }, - { - "mutability": "Not", - "span": 704, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 705, - "ty": 92 - } - ], - "span": 710, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 712 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 703 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 1, - "span": 704 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - } - ] - } - ], - "id": 39, - "name": " as std::ops::Drop>::drop" - } - }, - "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 14 - }, - "span": 714 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 715 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 715 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - } - ] - } - ] - } - ] - }, - "span": 715 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 716 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 717 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - }, - { - "Field": [ - 0, - 52 - ] - } - ] - } - ] - } - ] - }, - "span": 717 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 718 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - }, - { - "Field": [ - 0, - 52 - ] - }, - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 308 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 10, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 718 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 719 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 720 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - }, - { - "Field": [ - 1, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 720 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 713 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 11, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 1 - } - } - }, - "span": 713 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 13 - }, - "span": 723 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 723 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 13, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - }, - { - "Copy": { - "local": 8, - "projection": [] - } - } - ], - "destination": { - "local": 12, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 71, - "kind": "ZeroSized", - "ty": 109 - }, - "span": 721, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 722 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 13 - }, - "span": 725 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 3 - } - }, - "span": 724 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 11 - }, - "span": 728 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Not" - ] - }, - [ - { - "Copy": { - "local": 7, - "projection": [] - } - }, - { - "Copy": { - "local": 8, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 729 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 730 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 730 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 14, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 715 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 731 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - 25 - ] - } - ] - }, - "span": 732 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 733 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 714 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref" - ] - } - } - } - ] - }, - "span": 734 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 735 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 735 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 736 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - 23 - ] - } - ] - }, - "span": 47 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 16, - "projection": [] - } - ] - } - ] - }, - "span": 736 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 737 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - 23 - ] - } - ] - }, - "span": 47 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 18, - "projection": [] - } - ] - } - ] - }, - "span": 737 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 16, - "projection": [] - } - }, - { - "Copy": { - "local": 18, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 72, - "kind": "ZeroSized", - "ty": 110 - }, - "span": 726, - "user_ty": null - } - }, - "target": 4, - "unwind": "Continue" - } - }, - "span": 727 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 17 - }, - "span": 739 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 739 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 735 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 735 - } - ], - "terminator": { - "kind": "Return", - "span": 738 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 740, - "ty": 40 - }, - { - "mutability": "Not", - "span": 741, - "ty": 111 - }, - { - "mutability": "Not", - "span": 742, - "ty": 112 - }, - { - "mutability": "Mut", - "span": 742, - "ty": 25 - }, - { - "mutability": "Not", - "span": 743, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 715, - "ty": 23 - }, - { - "mutability": "Mut", - "span": 715, - "ty": 113 - }, - { - "mutability": "Mut", - "span": 716, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 720, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 717, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 308, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 713, - "ty": 40 - }, - { - "mutability": "Not", - "span": 722, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 723, - "ty": 39 - }, - { - "mutability": "Not", - "span": 744, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 736, - "ty": 114 - }, - { - "mutability": "Not", - "span": 736, - "ty": 23 - }, - { - "mutability": "Mut", - "span": 737, - "ty": 114 - }, - { - "mutability": "Not", - "span": 737, - "ty": 23 - } - ], - "span": 768, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 741 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 0, - "span": 742 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 745 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "index", - "source_info": { - "scope": 1, - "span": 746 - }, - "value": { - "Const": { - "const_": { - "id": 73, - "kind": "ZeroSized", - "ty": 115 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 747 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 748 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 749 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 750 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 344 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 7, - "span": 345 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 7, - "span": 345 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 346 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 9, - "span": 751 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 9, - "span": 752 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 14, - "span": 753 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 14, - "span": 754 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 15, - "span": 755 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 15, - "span": 756 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "v", - "source_info": { - "scope": 16, - "span": 757 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 758 - }, - "value": { - "Const": { - "const_": { - "id": 73, - "kind": "ZeroSized", - "ty": 115 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "slice", - "source_info": { - "scope": 17, - "span": 759 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 18, - "span": 760 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "index", - "source_info": { - "scope": 18, - "span": 761 - }, - "value": { - "Const": { - "const_": { - "id": 73, - "kind": "ZeroSized", - "ty": 115 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 19, - "span": 758 - }, - "value": { - "Const": { - "const_": { - "id": 73, - "kind": "ZeroSized", - "ty": 115 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "slice", - "source_info": { - "scope": 19, - "span": 759 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 20, - "span": 762 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 20, - "span": 763 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 21, - "span": 56 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 22, - "span": 56 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 23, - "span": 764 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 23, - "span": 765 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 766 - }, - "value": { - "Place": { - "local": 16, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 24, - "span": 767 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - } - ] - } - ], - "id": 40, - "name": ">::eq" - } - }, - "symbol_name": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" - } - ] -} diff --git a/tests/integration/failing/derive-copy-struct.smir.json.expected b/tests/integration/failing/derive-copy-struct.smir.json.expected index f1437af..479a4e4 100644 --- a/tests/integration/failing/derive-copy-struct.smir.json.expected +++ b/tests/integration/failing/derive-copy-struct.smir.json.expected @@ -139,7 +139,7 @@ "Use": { "Constant": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -159,16 +159,16 @@ } } }, - "ty": 30 + "ty": 29 }, - "span": 73, + "span": 69, "user_ty": null } } } ] }, - "span": 73 + "span": 69 }, { "kind": { @@ -178,16 +178,19 @@ "projection": [] }, { - "Len": { - "local": 1, - "projection": [ - "Deref" - ] - } + "UnaryOp": [ + "PtrMetadata", + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] } ] }, - "span": 72 + "span": 68 }, { "kind": { @@ -215,7 +218,7 @@ } ] }, - "span": 72 + "span": 68 } ], "terminator": { @@ -248,7 +251,7 @@ "unwind": "Continue" } }, - "span": 72 + "span": 68 } }, { @@ -275,43 +278,43 @@ } ] }, - "span": 72 + "span": 68 } ], "terminator": { "kind": "Return", - "span": 74 + "span": 70 } } ], "locals": [ { "mutability": "Mut", - "span": 75, - "ty": 31 + "span": 71, + "ty": 30 }, { "mutability": "Not", - "span": 76, - "ty": 26 + "span": 72, + "ty": 25 }, { "mutability": "Not", - "span": 73, - "ty": 30 + "span": 69, + "ty": 29 }, { "mutability": "Mut", - "span": 72, - "ty": 30 + "span": 68, + "ty": 29 }, { "mutability": "Mut", - "span": 72, - "ty": 32 + "span": 68, + "ty": 31 } ], - "span": 77, + "span": 73, "spread_arg": null, "var_debug_info": [ { @@ -320,7 +323,7 @@ "name": "containers", "source_info": { "scope": 0, - "span": 76 + "span": 72 }, "value": { "Place": { @@ -386,9 +389,9 @@ } } }, - "ty": 34 + "ty": 33 }, - "span": 79, + "span": 75, "user_ty": null } } @@ -397,7 +400,7 @@ } ] }, - "span": 80 + "span": 76 }, { "kind": { @@ -437,9 +440,9 @@ } } }, - "ty": 34 + "ty": 33 }, - "span": 81, + "span": 77, "user_ty": null } } @@ -448,7 +451,7 @@ } ] }, - "span": 82 + "span": 78 }, { "kind": { @@ -460,7 +463,7 @@ { "Aggregate": [ { - "Array": 31 + "Array": 30 }, [ { @@ -480,7 +483,7 @@ } ] }, - "span": 83 + "span": 79 }, { "kind": { @@ -503,7 +506,7 @@ } ] }, - "span": 84 + "span": 80 } ], "terminator": { @@ -519,11 +522,11 @@ { "Constant": { "const_": { - "id": 11, + "id": 13, "kind": "ZeroSized", - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -535,11 +538,11 @@ "func": { "Constant": { "const_": { - "id": 13, + "id": 12, "kind": "ZeroSized", - "ty": 33 + "ty": 32 }, - "span": 78, + "span": 74, "user_ty": null } }, @@ -547,7 +550,7 @@ "unwind": "Continue" } }, - "span": 78 + "span": 74 } }, { @@ -572,9 +575,9 @@ "const_": { "id": 16, "kind": "ZeroSized", - "ty": 35 + "ty": 34 }, - "span": 85, + "span": 81, "user_ty": null } }, @@ -582,7 +585,7 @@ "unwind": "Continue" } }, - "span": 86 + "span": 82 } }, { @@ -602,7 +605,7 @@ { "Field": [ 0, - 34 + 33 ] } ] @@ -611,7 +614,7 @@ } ] }, - "span": 88 + "span": 84 } ], "terminator": { @@ -634,14 +637,14 @@ } } }, - "span": 87 + "span": 83 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 89 + "span": 85 } }, { @@ -686,9 +689,9 @@ } } }, - "ty": 37 + "ty": 36 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -702,9 +705,9 @@ "const_": { "id": 17, "kind": "ZeroSized", - "ty": 36 + "ty": 35 }, - "span": 90, + "span": 86, "user_ty": null } }, @@ -712,58 +715,58 @@ "unwind": "Continue" } }, - "span": 90 + "span": 86 } } ], "locals": [ { "mutability": "Mut", - "span": 91, + "span": 87, "ty": 1 }, { "mutability": "Not", - "span": 92, - "ty": 31 + "span": 88, + "ty": 30 }, { "mutability": "Not", - "span": 93, - "ty": 31 + "span": 89, + "ty": 30 }, { "mutability": "Not", - "span": 94, - "ty": 38 + "span": 90, + "ty": 37 }, { "mutability": "Not", - "span": 95, - "ty": 31 + "span": 91, + "ty": 30 }, { "mutability": "Not", - "span": 78, - "ty": 26 + "span": 74, + "ty": 25 }, { "mutability": "Mut", - "span": 84, - "ty": 27 + "span": 80, + "ty": 26 }, { "mutability": "Mut", - "span": 88, - "ty": 34 + "span": 84, + "ty": 33 }, { "mutability": "Mut", - "span": 90, - "ty": 39 + "span": 86, + "ty": 38 } ], - "span": 96, + "span": 92, "spread_arg": null, "var_debug_info": [ { @@ -772,7 +775,7 @@ "name": "con1", "source_info": { "scope": 1, - "span": 92 + "span": 88 }, "value": { "Place": { @@ -787,7 +790,7 @@ "name": "con2", "source_info": { "scope": 2, - "span": 93 + "span": 89 }, "value": { "Place": { @@ -802,7 +805,7 @@ "name": "cons", "source_info": { "scope": 3, - "span": 94 + "span": 90 }, "value": { "Place": { @@ -817,7 +820,7 @@ "name": "first", "source_info": { "scope": 4, - "span": 95 + "span": 91 }, "value": { "Place": { @@ -857,12 +860,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -947,7 +944,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -958,12 +955,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -1023,7 +1014,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -1052,51 +1043,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -1110,7 +1101,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -1120,7 +1111,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -1129,7 +1120,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1144,7 +1135,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -1159,7 +1150,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -1174,7 +1165,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -1189,7 +1180,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -1221,19 +1212,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1260,7 +1251,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1285,7 +1276,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1293,7 +1284,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1302,7 +1293,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1327,7 +1318,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1335,7 +1326,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1344,13 +1335,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1359,42 +1350,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1418,7 +1373,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1432,7 +1387,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1441,37 +1396,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1481,27 +1430,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1514,7 +1458,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1537,7 +1481,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1545,21 +1489,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1597,7 +1526,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1611,9 +1540,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1621,7 +1550,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1637,7 +1566,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1651,9 +1580,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1661,35 +1590,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1698,7 +1627,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1713,7 +1642,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1728,7 +1657,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1737,7 +1666,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1789,9 +1718,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1799,35 +1728,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1838,6 +1767,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1873,7 +1869,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1902,9 +1898,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1914,7 +1910,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1930,14 +1926,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1953,40 +1949,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1997,73 +1993,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -2076,23 +2005,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -2131,12 +2060,12 @@ "projection": [] } }, - 26 + 25 ] } ] }, - "span": 47 + "span": 44 } ], "terminator": { @@ -2165,9 +2094,9 @@ "const_": { "id": 8, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 45, + "span": 42, "user_ty": null } }, @@ -2175,40 +2104,40 @@ "unwind": "Continue" } }, - "span": 46 + "span": 43 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 48 + "span": 45 } } ], "locals": [ { "mutability": "Mut", - "span": 49, - "ty": 26 + "span": 46, + "ty": 25 }, { "mutability": "Not", - "span": 50, - "ty": 27 + "span": 47, + "ty": 26 }, { "mutability": "Not", - "span": 51, - "ty": 28 + "span": 48, + "ty": 27 }, { "mutability": "Not", - "span": 52, - "ty": 26 + "span": 44, + "ty": 25 } ], - "span": 53, + "span": 49, "spread_arg": null, "var_debug_info": [ { @@ -2217,7 +2146,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -2232,7 +2161,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 51 + "span": 48 }, "value": { "Place": { @@ -2286,9 +2215,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 54, + "span": 50, "user_ty": null } }, @@ -2296,35 +2225,35 @@ "unwind": "Continue" } }, - "span": 55 + "span": 51 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 56 + "span": 52 } } ], "locals": [ { "mutability": "Mut", - "span": 57, - "ty": 26 + "span": 53, + "ty": 25 }, { "mutability": "Not", - "span": 58, - "ty": 26 + "span": 54, + "ty": 25 }, { "mutability": "Not", - "span": 59, - "ty": 28 + "span": 55, + "ty": 27 } ], - "span": 60, + "span": 56, "spread_arg": null, "var_debug_info": [ { @@ -2333,7 +2262,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 58 + "span": 54 }, "value": { "Place": { @@ -2348,7 +2277,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 59 + "span": 55 }, "value": { "Place": { @@ -2402,58 +2331,37 @@ }, "ty": 17 }, - "span": 62, + "span": 58, "user_ty": null } } } ] }, - "span": 62 + "span": 58 } ], "terminator": { "kind": "Return", - "span": 61 + "span": 57 } } ], "locals": [ { "mutability": "Mut", - "span": 63, + "span": 59, "ty": 17 }, { "mutability": "Not", - "span": 64, + "span": 60, "ty": 1 } ], - "span": 65, + "span": 61, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 64 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 7, @@ -2489,62 +2397,42 @@ } ] }, - "span": 67 + "span": 63 } ], "terminator": { "kind": "Return", - "span": 66 + "span": 62 } } ], "locals": [ { "mutability": "Mut", - "span": 68, - "ty": 26 + "span": 64, + "ty": 25 }, { "mutability": "Not", - "span": 69, - "ty": 28 + "span": 65, + "ty": 27 }, { "mutability": "Not", - "span": 70, - "ty": 26 + "span": 66, + "ty": 25 } ], - "span": 71, + "span": 67, "spread_arg": null, "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 69 - }, - "value": { - "Const": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - }, { "argument_index": 2, "composite": null, "name": "slice", "source_info": { "scope": 0, - "span": 70 + "span": 66 }, "value": { "Place": { diff --git a/tests/integration/failing/generic.smir.json.expected b/tests/integration/failing/generic.smir.json.expected index b294055..d186217 100644 --- a/tests/integration/failing/generic.smir.json.expected +++ b/tests/integration/failing/generic.smir.json.expected @@ -213,12 +213,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -303,7 +297,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -314,12 +308,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -379,7 +367,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -408,51 +396,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -466,7 +454,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -476,7 +464,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -485,7 +473,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -500,7 +488,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -515,7 +503,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -530,7 +518,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -545,7 +533,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -577,19 +565,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -616,7 +604,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -641,7 +629,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -649,7 +637,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -658,7 +646,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -683,7 +671,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -691,7 +679,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -700,13 +688,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -715,42 +703,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -774,7 +726,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -788,7 +740,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -797,37 +749,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -837,27 +783,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -870,7 +811,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -893,7 +834,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -901,21 +842,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -953,7 +879,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -967,9 +893,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -977,7 +903,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -993,7 +919,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1007,9 +933,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1017,35 +943,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1054,7 +980,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1069,7 +995,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1084,7 +1010,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1093,7 +1019,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1145,9 +1071,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1155,35 +1081,35 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, - "ty": 22 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1194,6 +1120,73 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, { "details": null, "mono_item_kind": { @@ -1229,7 +1222,7 @@ } ] }, - "span": 43 + "span": 40 } ], "terminator": { @@ -1258,9 +1251,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1270,7 +1263,7 @@ } } }, - "span": 43 + "span": 40 } }, { @@ -1286,14 +1279,14 @@ "unwind": "Continue" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 43 + "span": 40 } }, { @@ -1309,40 +1302,40 @@ "unwind": "Terminate" } }, - "span": 43 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 43 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 43, + "span": 40, "ty": 16 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 12 }, { "mutability": "Not", - "span": 43, + "span": 40, "ty": 1 }, { "mutability": "Not", - "span": 43, - "ty": 24 + "span": 40, + "ty": 23 } ], - "span": 43, + "span": 40, "spread_arg": 2, "var_debug_info": [] } @@ -1353,73 +1346,6 @@ }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 43 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 43 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 43, - "ty": 1 - }, - { - "mutability": "Not", - "span": 43, - "ty": 7 - }, - { - "mutability": "Not", - "span": 43, - "ty": 1 - } - ], - "span": 43, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 3, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -1432,23 +1358,23 @@ "statements": [], "terminator": { "kind": "Return", - "span": 44 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 44, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 44, - "ty": 22 + "span": 41, + "ty": 21 } ], - "span": 44, + "span": 41, "spread_arg": null, "var_debug_info": [] } @@ -1487,12 +1413,12 @@ "projection": [] } }, - 26 + 29 ] } ] }, - "span": 47 + "span": 44 } ], "terminator": { @@ -1519,11 +1445,11 @@ "func": { "Constant": { "const_": { - "id": 8, + "id": 9, "kind": "ZeroSized", - "ty": 25 + "ty": 28 }, - "span": 45, + "span": 42, "user_ty": null } }, @@ -1531,40 +1457,40 @@ "unwind": "Continue" } }, - "span": 46 + "span": 43 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 48 + "span": 45 } } ], "locals": [ { "mutability": "Mut", - "span": 49, - "ty": 26 + "span": 46, + "ty": 29 }, { "mutability": "Not", - "span": 50, - "ty": 27 + "span": 47, + "ty": 30 }, { "mutability": "Not", - "span": 51, - "ty": 28 + "span": 48, + "ty": 27 }, { "mutability": "Not", - "span": 52, - "ty": 26 + "span": 44, + "ty": 29 } ], - "span": 53, + "span": 49, "spread_arg": null, "var_debug_info": [ { @@ -1573,7 +1499,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -1588,7 +1514,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 51 + "span": 48 }, "value": { "Place": { @@ -1601,7 +1527,7 @@ } ], "id": 5, - "name": "std::array:: for [i32; 5]>::index" + "name": "std::array:: for [char; 5]>::index" } }, "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" @@ -1634,12 +1560,12 @@ "projection": [] } }, - 30 + 25 ] } ] }, - "span": 47 + "span": 44 } ], "terminator": { @@ -1666,11 +1592,11 @@ "func": { "Constant": { "const_": { - "id": 9, + "id": 8, "kind": "ZeroSized", - "ty": 29 + "ty": 24 }, - "span": 45, + "span": 42, "user_ty": null } }, @@ -1678,40 +1604,40 @@ "unwind": "Continue" } }, - "span": 46 + "span": 43 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 48 + "span": 45 } } ], "locals": [ { "mutability": "Mut", - "span": 49, - "ty": 30 + "span": 46, + "ty": 25 }, { "mutability": "Not", - "span": 50, - "ty": 31 + "span": 47, + "ty": 26 }, { "mutability": "Not", - "span": 51, - "ty": 28 + "span": 48, + "ty": 27 }, { "mutability": "Not", - "span": 52, - "ty": 30 + "span": 44, + "ty": 25 } ], - "span": 53, + "span": 49, "spread_arg": null, "var_debug_info": [ { @@ -1720,7 +1646,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -1735,7 +1661,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 51 + "span": 48 }, "value": { "Place": { @@ -1748,7 +1674,7 @@ } ], "id": 5, - "name": "std::array:: for [char; 5]>::index" + "name": "std::array:: for [i32; 5]>::index" } }, "symbol_name": "_ZN4core5array85_$LT$impl$u20$core..ops..index..Index$LT$I$GT$$u20$for$u20$$u5b$T$u3b$$u20$N$u5d$$GT$5index17h" @@ -1787,11 +1713,11 @@ "func": { "Constant": { "const_": { - "id": 10, + "id": 11, "kind": "ZeroSized", "ty": 32 }, - "span": 54, + "span": 50, "user_ty": null } }, @@ -1799,35 +1725,35 @@ "unwind": "Continue" } }, - "span": 55 + "span": 51 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 56 + "span": 52 } } ], "locals": [ { "mutability": "Mut", - "span": 57, - "ty": 30 + "span": 53, + "ty": 29 }, { "mutability": "Not", - "span": 58, - "ty": 30 + "span": 54, + "ty": 29 }, { "mutability": "Not", - "span": 59, - "ty": 28 + "span": 55, + "ty": 27 } ], - "span": 60, + "span": 56, "spread_arg": null, "var_debug_info": [ { @@ -1836,7 +1762,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 58 + "span": 54 }, "value": { "Place": { @@ -1851,7 +1777,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 59 + "span": 55 }, "value": { "Place": { @@ -1903,11 +1829,11 @@ "func": { "Constant": { "const_": { - "id": 11, + "id": 10, "kind": "ZeroSized", - "ty": 33 + "ty": 31 }, - "span": 54, + "span": 50, "user_ty": null } }, @@ -1915,35 +1841,35 @@ "unwind": "Continue" } }, - "span": 55 + "span": 51 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 56 + "span": 52 } } ], "locals": [ { "mutability": "Mut", - "span": 57, - "ty": 26 + "span": 53, + "ty": 25 }, { "mutability": "Not", - "span": 58, - "ty": 26 + "span": 54, + "ty": 25 }, { "mutability": "Not", - "span": 59, - "ty": 28 + "span": 55, + "ty": 27 } ], - "span": 60, + "span": 56, "spread_arg": null, "var_debug_info": [ { @@ -1952,7 +1878,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 58 + "span": 54 }, "value": { "Place": { @@ -1967,7 +1893,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 59 + "span": 55 }, "value": { "Place": { @@ -2021,58 +1947,37 @@ }, "ty": 17 }, - "span": 62, + "span": 58, "user_ty": null } } } ] }, - "span": 62 + "span": 58 } ], "terminator": { "kind": "Return", - "span": 61 + "span": 57 } } ], "locals": [ { "mutability": "Mut", - "span": 63, + "span": 59, "ty": 17 }, { "mutability": "Not", - "span": 64, + "span": 60, "ty": 1 } ], - "span": 65, + "span": 61, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 64 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], "id": 7, @@ -2099,16 +2004,19 @@ "projection": [] }, { - "Len": { - "local": 1, - "projection": [ - "Deref" - ] - } + "UnaryOp": [ + "PtrMetadata", + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] } ] }, - "span": 72 + "span": 68 }, { "kind": { @@ -2136,7 +2044,7 @@ } ] }, - "span": 72 + "span": 68 } ], "terminator": { @@ -2169,7 +2077,7 @@ "unwind": "Continue" } }, - "span": 72 + "span": 68 } }, { @@ -2200,43 +2108,43 @@ } ] }, - "span": 74 + "span": 70 } ], "terminator": { "kind": "Return", - "span": 73 + "span": 69 } } ], "locals": [ { "mutability": "Mut", - "span": 75, - "ty": 34 + "span": 71, + "ty": 36 }, { "mutability": "Not", - "span": 76, - "ty": 30 + "span": 72, + "ty": 29 }, { "mutability": "Not", - "span": 77, - "ty": 35 + "span": 73, + "ty": 34 }, { "mutability": "Mut", - "span": 72, - "ty": 35 + "span": 68, + "ty": 34 }, { "mutability": "Mut", - "span": 72, - "ty": 36 + "span": 68, + "ty": 35 } ], - "span": 78, + "span": 74, "spread_arg": null, "var_debug_info": [ { @@ -2245,7 +2153,7 @@ "name": "slice", "source_info": { "scope": 0, - "span": 76 + "span": 72 }, "value": { "Place": { @@ -2260,7 +2168,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 77 + "span": 73 }, "value": { "Place": { @@ -2296,16 +2204,19 @@ "projection": [] }, { - "Len": { - "local": 1, - "projection": [ - "Deref" - ] - } + "UnaryOp": [ + "PtrMetadata", + { + "Copy": { + "local": 1, + "projection": [] + } + } + ] } ] }, - "span": 72 + "span": 68 }, { "kind": { @@ -2333,7 +2244,7 @@ } ] }, - "span": 72 + "span": 68 } ], "terminator": { @@ -2366,7 +2277,7 @@ "unwind": "Continue" } }, - "span": 72 + "span": 68 } }, { @@ -2397,43 +2308,43 @@ } ] }, - "span": 74 + "span": 70 } ], "terminator": { "kind": "Return", - "span": 73 + "span": 69 } } ], "locals": [ { "mutability": "Mut", - "span": 75, - "ty": 37 + "span": 71, + "ty": 33 }, { "mutability": "Not", - "span": 76, - "ty": 26 + "span": 72, + "ty": 25 }, { "mutability": "Not", - "span": 77, - "ty": 35 + "span": 73, + "ty": 34 }, { "mutability": "Mut", - "span": 72, - "ty": 35 + "span": 68, + "ty": 34 }, { "mutability": "Mut", - "span": 72, - "ty": 36 + "span": 68, + "ty": 35 } ], - "span": 78, + "span": 74, "spread_arg": null, "var_debug_info": [ { @@ -2442,7 +2353,7 @@ "name": "slice", "source_info": { "scope": 0, - "span": 76 + "span": 72 }, "value": { "Place": { @@ -2457,7 +2368,7 @@ "name": "index", "source_info": { "scope": 0, - "span": 77 + "span": 73 }, "value": { "Place": { @@ -2519,7 +2430,7 @@ }, "ty": 16 }, - "span": 80, + "span": 76, "user_ty": null } }, @@ -2544,7 +2455,7 @@ }, "ty": 16 }, - "span": 81, + "span": 77, "user_ty": null } }, @@ -2569,7 +2480,7 @@ }, "ty": 16 }, - "span": 82, + "span": 78, "user_ty": null } }, @@ -2594,7 +2505,7 @@ }, "ty": 16 }, - "span": 83, + "span": 79, "user_ty": null } }, @@ -2619,7 +2530,7 @@ }, "ty": 16 }, - "span": 84, + "span": 80, "user_ty": null } } @@ -2628,7 +2539,7 @@ } ] }, - "span": 85 + "span": 81 }, { "kind": { @@ -2640,7 +2551,7 @@ { "Aggregate": [ { - "Array": 39 + "Array": 38 }, [ { @@ -2662,9 +2573,9 @@ } } }, - "ty": 39 + "ty": 38 }, - "span": 86, + "span": 82, "user_ty": null } }, @@ -2687,9 +2598,9 @@ } } }, - "ty": 39 + "ty": 38 }, - "span": 87, + "span": 83, "user_ty": null } }, @@ -2712,9 +2623,9 @@ } } }, - "ty": 39 + "ty": 38 }, - "span": 88, + "span": 84, "user_ty": null } }, @@ -2737,9 +2648,9 @@ } } }, - "ty": 39 + "ty": 38 }, - "span": 89, + "span": 85, "user_ty": null } }, @@ -2762,9 +2673,9 @@ } } }, - "ty": 39 + "ty": 38 }, - "span": 90, + "span": 86, "user_ty": null } } @@ -2773,7 +2684,7 @@ } ] }, - "span": 91 + "span": 87 }, { "kind": { @@ -2796,7 +2707,7 @@ } ] }, - "span": 92 + "span": 88 } ], "terminator": { @@ -2812,11 +2723,11 @@ { "Constant": { "const_": { - "id": 13, + "id": 14, "kind": "ZeroSized", - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2828,11 +2739,11 @@ "func": { "Constant": { "const_": { - "id": 14, + "id": 13, "kind": "ZeroSized", - "ty": 38 + "ty": 37 }, - "span": 79, + "span": 75, "user_ty": null } }, @@ -2840,7 +2751,7 @@ "unwind": "Continue" } }, - "span": 79 + "span": 75 } }, { @@ -2878,9 +2789,9 @@ } } }, - "ty": 35 + "ty": 34 }, - "span": 94, + "span": 90, "user_ty": null } } @@ -2894,9 +2805,9 @@ "const_": { "id": 25, "kind": "ZeroSized", - "ty": 40 + "ty": 39 }, - "span": 93, + "span": 89, "user_ty": null } }, @@ -2904,7 +2815,7 @@ "unwind": "Continue" } }, - "span": 95 + "span": 91 } }, { @@ -2930,7 +2841,7 @@ } ] }, - "span": 97 + "span": 93 } ], "terminator": { @@ -2946,11 +2857,11 @@ { "Constant": { "const_": { - "id": 13, + "id": 14, "kind": "ZeroSized", - "ty": 28 + "ty": 27 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2964,9 +2875,9 @@ "const_": { "id": 27, "kind": "ZeroSized", - "ty": 41 + "ty": 40 }, - "span": 96, + "span": 92, "user_ty": null } }, @@ -2974,7 +2885,7 @@ "unwind": "Continue" } }, - "span": 96 + "span": 92 } }, { @@ -3012,9 +2923,9 @@ } } }, - "ty": 35 + "ty": 34 }, - "span": 99, + "span": 95, "user_ty": null } } @@ -3028,9 +2939,9 @@ "const_": { "id": 28, "kind": "ZeroSized", - "ty": 42 + "ty": 41 }, - "span": 98, + "span": 94, "user_ty": null } }, @@ -3038,7 +2949,7 @@ "unwind": "Continue" } }, - "span": 100 + "span": 96 } }, { @@ -3062,7 +2973,7 @@ } ] }, - "span": 102 + "span": 98 } ], "terminator": { @@ -3085,7 +2996,7 @@ } } }, - "span": 101 + "span": 97 } }, { @@ -3109,7 +3020,7 @@ } ] }, - "span": 104 + "span": 100 } ], "terminator": { @@ -3132,7 +3043,7 @@ } } }, - "span": 103 + "span": 99 } }, { @@ -3177,9 +3088,9 @@ } } }, - "ty": 44 + "ty": 43 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3193,9 +3104,9 @@ "const_": { "id": 29, "kind": "ZeroSized", - "ty": 43 + "ty": 42 }, - "span": 105, + "span": 101, "user_ty": null } }, @@ -3203,14 +3114,14 @@ "unwind": "Continue" } }, - "span": 105 + "span": 101 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 106 + "span": 102 } }, { @@ -3255,9 +3166,9 @@ } } }, - "ty": 44 + "ty": 43 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3271,9 +3182,9 @@ "const_": { "id": 29, "kind": "ZeroSized", - "ty": 43 + "ty": 42 }, - "span": 107, + "span": 103, "user_ty": null } }, @@ -3281,78 +3192,78 @@ "unwind": "Continue" } }, - "span": 107 + "span": 103 } } ], "locals": [ { "mutability": "Mut", - "span": 108, + "span": 104, "ty": 1 }, { "mutability": "Not", - "span": 109, - "ty": 45 + "span": 105, + "ty": 44 }, { "mutability": "Not", - "span": 110, - "ty": 46 + "span": 106, + "ty": 45 }, { "mutability": "Not", - "span": 95, - "ty": 37 + "span": 91, + "ty": 33 }, { "mutability": "Not", - "span": 79, - "ty": 26 + "span": 75, + "ty": 25 }, { "mutability": "Mut", - "span": 92, - "ty": 27 + "span": 88, + "ty": 26 }, { "mutability": "Not", - "span": 100, - "ty": 34 + "span": 96, + "ty": 36 }, { "mutability": "Not", - "span": 96, - "ty": 30 + "span": 92, + "ty": 29 }, { "mutability": "Mut", - "span": 97, - "ty": 31 + "span": 93, + "ty": 30 }, { "mutability": "Mut", - "span": 102, + "span": 98, "ty": 16 }, { "mutability": "Mut", - "span": 105, - "ty": 47 + "span": 101, + "ty": 46 }, { "mutability": "Mut", - "span": 104, - "ty": 39 + "span": 100, + "ty": 38 }, { "mutability": "Mut", - "span": 107, - "ty": 47 + "span": 103, + "ty": 46 } ], - "span": 113, + "span": 109, "spread_arg": null, "var_debug_info": [ { @@ -3361,7 +3272,7 @@ "name": "numbers", "source_info": { "scope": 1, - "span": 109 + "span": 105 }, "value": { "Place": { @@ -3376,7 +3287,7 @@ "name": "letters", "source_info": { "scope": 2, - "span": 110 + "span": 106 }, "value": { "Place": { @@ -3391,7 +3302,7 @@ "name": "middle_number", "source_info": { "scope": 3, - "span": 111 + "span": 107 }, "value": { "Place": { @@ -3406,7 +3317,7 @@ "name": "middle_letter", "source_info": { "scope": 4, - "span": 112 + "span": 108 }, "value": { "Place": { @@ -3451,62 +3362,42 @@ } ] }, - "span": 67 + "span": 63 } ], "terminator": { "kind": "Return", - "span": 66 + "span": 62 } } ], "locals": [ { "mutability": "Mut", - "span": 68, - "ty": 26 + "span": 64, + "ty": 29 }, { "mutability": "Not", - "span": 69, - "ty": 28 + "span": 65, + "ty": 27 }, { "mutability": "Not", - "span": 70, - "ty": 26 + "span": 66, + "ty": 29 } ], - "span": 71, + "span": 67, "spread_arg": null, "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 69 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": "ZeroSized", - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - }, { "argument_index": 2, "composite": null, "name": "slice", "source_info": { "scope": 0, - "span": 70 + "span": 66 }, "value": { "Place": { @@ -3519,7 +3410,7 @@ } ], "id": 8, - "name": ">::index" + "name": ">::index" } }, "symbol_name": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" @@ -3551,62 +3442,42 @@ } ] }, - "span": 67 + "span": 63 } ], "terminator": { "kind": "Return", - "span": 66 + "span": 62 } } ], "locals": [ { "mutability": "Mut", - "span": 68, - "ty": 30 + "span": 64, + "ty": 25 }, { "mutability": "Not", - "span": 69, - "ty": 28 + "span": 65, + "ty": 27 }, { "mutability": "Not", - "span": 70, - "ty": 30 + "span": 66, + "ty": 25 } ], - "span": 71, + "span": 67, "spread_arg": null, "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 69 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": "ZeroSized", - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - }, { "argument_index": 2, "composite": null, "name": "slice", "source_info": { "scope": 0, - "span": 70 + "span": 66 }, "value": { "Place": { @@ -3619,7 +3490,7 @@ } ], "id": 8, - "name": ">::index" + "name": ">::index" } }, "symbol_name": "_ZN97_$LT$core..ops..range..RangeFull$u20$as$u20$core..slice..index..SliceIndex$LT$$u5b$T$u5d$$GT$$GT$5index17h" diff --git a/tests/integration/failing/panic_example.smir.json.expected b/tests/integration/failing/panic_example.smir.json.expected index b107652..6e1e773 100644 --- a/tests/integration/failing/panic_example.smir.json.expected +++ b/tests/integration/failing/panic_example.smir.json.expected @@ -5,116 +5,20 @@ "Memory": { "align": 1, "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, 101, - 100, - 58, - 32, + 120, 112, - 116, - 114, - 58, - 58, - 114, - 101, - 97, - 100, - 95, - 118, - 111, 108, - 97, - 116, 105, - 108, - 101, - 32, - 114, - 101, - 113, - 117, + 99, 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, 116, - 104, - 101, 32, 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, 97, - 114, - 103, - 117, - 109, - 101, 110, - 116, - 32, - 105, - 115, - 32, - 97, - 108, 105, - 103, - 110, - 101, - 100, - 32, - 97, - 110, - 100, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108 + 99 ], "mutability": "Not", "provenance": { @@ -122,519 +26,52 @@ } } } - ], + ] + ], + "functions": [ [ { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 12 - ] - ] - } - } + "NormalSym": "_ZN3std2rt19lang_start_internal17h" } ], [ { - "Memory": { - "align": 8, - "bytes": [], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } + "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" } ], [ { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 13 - ] - ] - } - } + "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ], [ { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 78, - 111, - 110, - 78, - 117, - 108, - 108, - 58, - 58, - 110, - 101, - 119, - 95, - 117, - 110, - 99, - 104, - 101, - 99, - 107, - 101, - 100, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, - 116, - 104, - 101, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 105, - 115, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ { - "Memory": { - "align": 1, - "bytes": [], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } + "IntrinsicSym": "black_box" } ], [ { - "Memory": { - "align": 1, - "bytes": [], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } + "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" } ], [ { - "Static": 115 + "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" } ], [ { - "Memory": { - "align": 1, - "bytes": [ - 101, - 120, - 112, - 108, - 105, - 99, - 105, - 116, - 32, - 112, - 97, - 110, - 105, - 99 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } + "NormalSym": "_ZN3std9panicking11begin_panic17h" } ], [ { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 95, - 116, - 111, - 58, - 32, - 97, - 108, - 105, - 103, - 110, - 32, - 105, - 115, - 32, - 110, - 111, - 116, - 32, - 97, - 32, - 112, - 111, - 119, - 101, - 114, - 45, - 111, - 102, - 45, - 116, - 119, - 111 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 95, - 116, - 111, - 58, - 32, - 97, - 108, - 105, - 103, - 110, - 32, - 105, - 115, - 32, - 110, - 111, - 116, - 32, - 97, - 32, - 112, - 111, - 119, - 101, - 114, - 45, - 111, - 102, - 45, - 116, - 119, - 111 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ] - ], - "functions": [ - [ - { - "IntrinsicSym": "type_id" - } - ], - [ - { - "NormalSym": "_ZN3std2rt19lang_start_internal17h" - } - ], - [ - { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - } - ], - [ - { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - } - ], - [ - { - "NormalSym": "_ZN3std9panicking11begin_panic28_$u7b$$u7b$closure$u7d$$u7d$17h" - } - ], - [ - { - "IntrinsicSym": "black_box" - } - ], - [ - { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" - } - ], - [ - { - "IntrinsicSym": "caller_location" - } - ], - [ - { - "NormalSym": "_ZN3std3sys9backtrace26__rust_end_short_backtrace17h" - } - ], - [ - { - "NormalSym": "_ZN3std9panicking20rust_panic_with_hook17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" - } - ], - [ - { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" - } - ], - [ - { - "NormalSym": "_ZN4core9panicking14panic_nounwind17h" - } - ], - [ - { - "IntrinsicSym": "ctpop" - } - ], - [ - { - "NormalSym": "_ZN4core9panicking9panic_fmt17h" - } - ], - [ - { - "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" - } - ], - [ - { - "NormalSym": "_ZN5alloc5alloc18handle_alloc_error17h" - } - ], - [ - { - "NormalSym": "" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" - } - ], - [ - { - "IntrinsicSym": "volatile_load" - } - ], - [ - { - "NormalSym": "__" - } - ], - [ - { - "NormalSym": "_ZN5alloc5alloc5alloc17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" - } - ], - [ - { - "NormalSym": "_ZN5alloc5alloc15exchange_malloc17h" - } - ], - [ - { - "NormalSym": "_ZN3std7process5abort17h" - } - ], - [ - { - "NormalSym": "_ZN3std9panicking14payload_as_str17h" - } - ], - [ - { - "NormalSym": "_ZN4core3fmt9Formatter9write_str17h" - } - ], - [ - { - "NormalSym": "_ZN5alloc5boxed12Box$LT$T$GT$3new17h" - } - ], - [ - { - "NormalSym": "_ZN3std9panicking11begin_panic17h" - } - ], - [ - { - "NoOpSym": "" - } - ], - [ - { - "NoOpSym": "" - } - ], - [ - { - "NoOpSym": "" + "NoOpSym": "" } ] ], @@ -656,7 +93,7 @@ { "Constant": { "const_": { - "id": 54, + "id": 10, "kind": { "Allocated": { "align": 8, @@ -683,15 +120,15 @@ "ptrs": [ [ 0, - 8 + 0 ] ] } } }, - "ty": 32 + "ty": 25 }, - "span": 418, + "span": 48, "user_ty": null } } @@ -703,11 +140,11 @@ "func": { "Constant": { "const_": { - "id": 53, + "id": 9, "kind": "ZeroSized", - "ty": 112 + "ty": 24 }, - "span": 417, + "span": 47, "user_ty": null } }, @@ -715,28 +152,28 @@ "unwind": "Continue" } }, - "span": 419 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 420, - "ty": 8 + "span": 50, + "ty": 1 }, { "mutability": "Mut", - "span": 419, - "ty": 27 + "span": 49, + "ty": 26 } ], - "span": 421, + "span": 51, "spread_arg": null, "var_debug_info": [] } ], - "id": 31, + "id": 6, "name": "main" } }, @@ -748,197 +185,177 @@ "MonoItemFn": { "body": [ { - "arg_count": 1, + "arg_count": 4, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 2 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 3 + "StorageLive": 5 }, - "span": 2 + "span": 1 }, { "kind": { - "StorageLive": 5 + "StorageLive": 6 }, "span": 2 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized", - "ty": 0 - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } }, - "span": 1 - } - }, - { - "statements": [ { "kind": { - "StorageLive": 4 + "StorageLive": 8 }, - "span": 4 + "span": 3 }, { "kind": { "Assign": [ { - "local": 4, + "local": 8, "projection": [] }, { - "BinaryOp": [ - "Shr", - { - "Copy": { - "local": 2, - "projection": [] - } - }, + "Aggregate": [ { - "Constant": { - "const_": { - "id": 1, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 64, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } + "Closure": [ + 1, + [ + { + "Type": 1 }, - "ty": 1 - }, - "span": 5, - "user_ty": null + { + "Type": 2 + }, + { + "Type": 3 + }, + { + "Type": 4 + } + ] + ] + }, + [ + { + "Copy": { + "local": 1, + "projection": [] + } } - } + ] ] } ] }, - "span": 4 + "span": 3 }, { "kind": { "Assign": [ { - "local": 3, + "local": 7, "projection": [] }, { - "Cast": [ - "IntToInt", + "Ref": [ { - "Move": { - "local": 4, - "projection": [] - } + "kind": "ReErased" }, - 2 + "Shared", + { + "local": 8, + "projection": [] + } ] } ] }, - "span": 6 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 7 + "span": 2 }, { "kind": { "Assign": [ { - "local": 5, + "local": 6, "projection": [] }, { "Cast": [ - "IntToInt", { - "Copy": { - "local": 2, + "PointerCoercion": "Unsize" + }, + { + "Copy": { + "local": 7, "projection": [] } }, - 2 + 5 ] } ] }, - "span": 8 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 9 - }, - { - "kind": { - "Assign": [ + "span": 2 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { - "local": 6, - "projection": [] + "Move": { + "local": 6, + "projection": [] + } }, { - "Aggregate": [ - "Tuple", - [ - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Copy": { - "local": 5, - "projection": [] - } - } - ] - ] + "Move": { + "local": 2, + "projection": [] + } + }, + { + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 4, + "projection": [] + } } - ] + ], + "destination": { + "local": 5, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 0, + "kind": "ZeroSized", + "ty": 0 + }, + "span": 0, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 1 + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 6 }, - "span": 9 + "span": 5 }, { "kind": { @@ -948,108 +365,103 @@ "projection": [] }, { - "Aggregate": [ - { - "Adt": [ - 1, - 0, - [], - null, - null - ] - }, - [ - { - "Move": { - "local": 6, - "projection": [] + "Use": { + "Copy": { + "local": 5, + "projection": [ + { + "Downcast": 0 + }, + { + "Field": [ + 0, + 6 + ] } - } - ] - ] + ] + } + } } ] }, - "span": 10 + "span": 6 }, { "kind": { - "StorageDead": 6 + "StorageDead": 8 }, - "span": 11 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 2 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 2 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 2 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 3 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 12, - "ty": 3 + "span": 8, + "ty": 6 }, { "mutability": "Not", - "span": 13, - "ty": 4 + "span": 9, + "ty": 7 }, { "mutability": "Not", - "span": 14, - "ty": 5 + "span": 10, + "ty": 6 }, { "mutability": "Not", - "span": 15, - "ty": 2 + "span": 11, + "ty": 8 + }, + { + "mutability": "Not", + "span": 12, + "ty": 9 + }, + { + "mutability": "Mut", + "span": 1, + "ty": 10 }, { "mutability": "Mut", - "span": 4, + "span": 2, "ty": 5 }, { "mutability": "Not", - "span": 16, - "ty": 2 + "span": 2, + "ty": 11 }, { - "mutability": "Mut", - "span": 9, - "ty": 6 + "mutability": "Not", + "span": 3, + "ty": 12 } ], - "span": 17, + "span": 13, "spread_arg": null, "var_debug_info": [ { "argument_index": 1, "composite": null, - "name": "self", + "name": "main", "source_info": { "scope": 0, - "span": 13 + "span": 9 }, "value": { "Place": { @@ -1059,12 +471,12 @@ } }, { - "argument_index": null, + "argument_index": 2, "composite": null, - "name": "t", + "name": "argc", "source_info": { - "scope": 2, - "span": 14 + "scope": 0, + "span": 10 }, "value": { "Place": { @@ -1074,12 +486,12 @@ } }, { - "argument_index": null, + "argument_index": 3, "composite": null, - "name": "t1", + "name": "argv", "source_info": { - "scope": 3, - "span": 15 + "scope": 0, + "span": 11 }, "value": { "Place": { @@ -1088,17 +500,32 @@ } } }, + { + "argument_index": 4, + "composite": null, + "name": "sigpipe", + "source_info": { + "scope": 0, + "span": 12 + }, + "value": { + "Place": { + "local": 4, + "projection": [] + } + } + }, { "argument_index": null, "composite": null, - "name": "t2", + "name": "v", "source_info": { - "scope": 4, - "span": 16 + "scope": 1, + "span": 6 }, "value": { "Place": { - "local": 5, + "local": 0, "projection": [] } } @@ -1107,10 +534,10 @@ } ], "id": 0, - "name": "<&str as std::any::Any>::type_id" + "name": "std::rt::lang_start::<()>" } }, - "symbol_name": "_ZN36_$LT$T$u20$as$u20$core..any..Any$GT$7type_id17h" + "symbol_name": "_ZN3std2rt10lang_start17h" }, { "details": null, @@ -1118,162 +545,111 @@ "MonoItemFn": { "body": [ { - "arg_count": 4, + "arg_count": 1, "blocks": [ { "statements": [ { "kind": { - "StorageLive": 5 - }, - "span": 19 - }, - { - "kind": { - "StorageLive": 6 + "StorageLive": 2 }, - "span": 20 + "span": 16 }, { "kind": { - "StorageLive": 7 + "StorageLive": 3 }, - "span": 20 + "span": 15 }, { "kind": { - "StorageLive": 8 + "StorageLive": 4 }, - "span": 21 + "span": 17 }, { "kind": { "Assign": [ { - "local": 8, + "local": 4, "projection": [] }, { - "Aggregate": [ - { - "Closure": [ - 3, - [ - { - "Type": 8 - }, - { - "Type": 9 - }, - { - "Type": 10 - }, - { - "Type": 11 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] + "Use": { + "Copy": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 7 + ] } - } - ] - ] - } - ] - }, - "span": 21 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] + ] } - ] + } } ] }, - "span": 20 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, + "span": 17 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Move": { - "local": 7, - "projection": [] - } - }, - 12 - ] + "Move": { + "local": 4, + "projection": [] + } } - ] - }, - "span": 20 + ], + "destination": { + "local": 3, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 1, + "kind": "ZeroSized", + "ty": 13 + }, + "span": 14, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } }, + "span": 15 + } + }, + { + "statements": [ { "kind": { - "StorageDead": 7 + "StorageDead": 4 }, - "span": 22 + "span": 19 } ], "terminator": { "kind": { "Call": { "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, { "Move": { "local": 3, "projection": [] } - }, - { - "Move": { - "local": 4, - "projection": [] - } } ], "destination": { - "local": 5, + "local": 2, "projection": [] }, "func": { @@ -1281,46 +657,55 @@ "const_": { "id": 2, "kind": "ZeroSized", - "ty": 7 + "ty": 14 }, "span": 18, "user_ty": null } }, - "target": 1, + "target": 2, "unwind": "Continue" } }, - "span": 19 + "span": 16 } }, { "statements": [ { "kind": { - "StorageDead": 6 + "StorageDead": 3 }, - "span": 24 + "span": 21 + }, + { + "kind": { + "StorageLive": 5 + }, + "span": 22 }, { "kind": { "Assign": [ { - "local": 0, + "local": 5, "projection": [] }, { "Use": { "Copy": { - "local": 5, + "local": 2, "projection": [ { - "Downcast": 0 + "Field": [ + 0, + 15 + ] }, { "Field": [ 0, - 13 + 9 ] } ] @@ -1329,148 +714,119 @@ } ] }, - "span": 25 + "span": 22 }, { "kind": { - "StorageDead": 8 + "Assign": [ + { + "local": 0, + "projection": [] + }, + { + "Cast": [ + "IntToInt", + { + "Move": { + "local": 5, + "projection": [] + } + }, + 16 + ] + } + ] }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 26 + "span": 24 + }, + { + "kind": { + "StorageDead": 2 + }, + "span": 25 } ], "terminator": { "kind": "Return", - "span": 23 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 27, - "ty": 13 - }, - { - "mutability": "Not", - "span": 28, - "ty": 14 - }, - { - "mutability": "Not", - "span": 29, - "ty": 13 - }, - { - "mutability": "Not", - "span": 30, - "ty": 15 + "span": 26, + "ty": 16 }, { - "mutability": "Not", - "span": 31, - "ty": 16 + "mutability": "Mut", + "span": 3, + "ty": 11 }, { "mutability": "Mut", - "span": 19, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 20, - "ty": 12 + "span": 15, + "ty": 1 }, { "mutability": "Mut", - "span": 20, - "ty": 18 + "span": 17, + "ty": 7 }, { - "mutability": "Not", - "span": 21, - "ty": 19 + "mutability": "Mut", + "span": 22, + "ty": 9 } ], - "span": 32, + "span": 3, "spread_arg": null, "var_debug_info": [ { - "argument_index": 1, + "argument_index": null, "composite": null, "name": "main", "source_info": { "scope": 0, - "span": 28 + "span": 9 }, "value": { "Place": { "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 30 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 31 - }, - "value": { - "Place": { - "local": 4, - "projection": [] + "projection": [ + "Deref", + { + "Field": [ + 0, + 7 + ] + } + ] } } }, { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "v", + "name": "self", "source_info": { "scope": 1, - "span": 25 + "span": 27 }, "value": { "Place": { - "local": 0, + "local": 2, "projection": [] } } @@ -1478,11 +834,11 @@ ] } ], - "id": 2, - "name": "std::rt::lang_start::<()>" + "id": 1, + "name": "std::rt::lang_start::<()>::{closure#0}" } }, - "symbol_name": "_ZN3std2rt10lang_start17h" + "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" }, { "details": null, @@ -1493,76 +849,41 @@ "arg_count": 1, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 35 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 34 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 36 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 14 - ] - } - ] - } - } - } - ] - }, - "span": 36 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { "Move": { - "local": 4, + "local": 1, "projection": [] } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { + }, + { + "Constant": { + "const_": { + "id": 4, + "kind": "ZeroSized", + "ty": 1 + }, + "span": 29, + "user_ty": null + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { "Constant": { "const_": { "id": 3, "kind": "ZeroSized", - "ty": 20 + "ty": 18 }, - "span": 33, + "span": 28, "user_ty": null } }, @@ -1570,26 +891,24 @@ "unwind": "Continue" } }, - "span": 34 + "span": 30 } }, { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 38 - } - ], + "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Move": { - "local": 3, - "projection": [] + "Constant": { + "const_": { + "id": 4, + "kind": "ZeroSized", + "ty": 1 + }, + "span": 29, + "user_ty": null } } ], @@ -1600,225 +919,75 @@ "func": { "Constant": { "const_": { - "id": 4, + "id": 5, "kind": "ZeroSized", - "ty": 21 + "ty": 19 }, - "span": 37, + "span": 31, "user_ty": null } }, "target": 2, - "unwind": "Continue" + "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 40 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 41 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 22 - ] - } - ] - } - ] - } - ] - }, - "span": 41 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 42 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 22 - ] - }, - { - "Field": [ - 0, - 16 - ] - } - ] - } - } - } - ] - }, - "span": 42 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 1 - ] - } - ] - }, - "span": 43 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 44 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 45 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 22 - } - ], + "statements": [], "terminator": { "kind": "Return", - "span": 39 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 46, + "span": 34, "ty": 1 }, { - "mutability": "Mut", - "span": 21, - "ty": 18 - }, - { - "mutability": "Mut", + "mutability": "Not", "span": 35, - "ty": 23 - }, - { - "mutability": "Mut", - "span": 34, - "ty": 8 + "ty": 7 }, { - "mutability": "Mut", + "mutability": "Not", "span": 36, - "ty": 14 - }, - { - "mutability": "Mut", - "span": 41, - "ty": 24 - }, - { - "mutability": "Mut", - "span": 42, - "ty": 16 + "ty": 1 } ], - "span": 21, + "span": 39, "spread_arg": null, "var_debug_info": [ { - "argument_index": null, + "argument_index": 1, "composite": null, - "name": "main", + "name": "f", "source_info": { "scope": 0, - "span": 28 + "span": 35 }, "value": { "Place": { "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 14 - ] - } - ] + "projection": [] } } }, { - "argument_index": 1, + "argument_index": null, "composite": null, - "name": "self", + "name": "result", "source_info": { "scope": 1, - "span": 47 + "span": 37 }, "value": { "Place": { - "local": 2, + "local": 0, "projection": [] } } @@ -1826,26 +995,31 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "dummy", "source_info": { "scope": 2, - "span": 48 + "span": 38 }, "value": { - "Place": { - "local": 5, - "projection": [] + "Const": { + "const_": { + "id": 4, + "kind": "ZeroSized", + "ty": 1 + }, + "span": 29, + "user_ty": null } } } ] } ], - "id": 3, - "name": "std::rt::lang_start::<()>::{closure#0}" + "id": 2, + "name": "std::sys::backtrace::__rust_begin_short_backtrace::" } }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" + "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, { "details": null, @@ -1853,7 +1027,7 @@ "MonoItemFn": { "body": [ { - "arg_count": 1, + "arg_count": 2, "blocks": [ { "statements": [], @@ -1864,18 +1038,15 @@ { "Move": { "local": 1, - "projection": [] + "projection": [ + "Deref" + ] } }, { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 8 - }, - "span": 50, - "user_ty": null + "Move": { + "local": 2, + "projection": [] } } ], @@ -1886,11 +1057,11 @@ "func": { "Constant": { "const_": { - "id": 5, + "id": 6, "kind": "ZeroSized", - "ty": 25 + "ty": 20 }, - "span": 49, + "span": 40, "user_ty": null } }, @@ -1898,135 +1069,44 @@ "unwind": "Continue" } }, - "span": 51 + "span": 40 } }, { "statements": [], "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 8 - }, - "span": 50, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 7, - "kind": "ZeroSized", - "ty": 26 - }, - "span": 52, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 53 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 54 + "kind": "Return", + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 55, - "ty": 27 + "span": 40, + "ty": 16 }, { "mutability": "Not", - "span": 56, - "ty": 28 + "span": 40, + "ty": 21 }, { "mutability": "Not", - "span": 57, - "ty": 8 + "span": 40, + "ty": 1 } ], - "span": 60, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 56 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 58 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 59 - }, - "value": { - "Const": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 8 - }, - "span": 50, - "user_ty": null - } - } - } - ] + "span": 40, + "spread_arg": 2, + "var_debug_info": [] } ], - "id": 4, - "name": "std::sys::backtrace::__rust_end_short_backtrace::<{closure@std::rt::begin_panic<&str>::{closure#0}}, !>" + "id": 3, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN3std3sys9backtrace26__rust_end_short_backtrace17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -2034,180 +1114,66 @@ "MonoItemFn": { "body": [ { - "arg_count": 1, + "arg_count": 2, "blocks": [ { "statements": [], "terminator": { "kind": { "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 8 - }, - "span": 50, - "user_ty": null - } - } - ], + "args": [], "destination": { "local": 0, "projection": [] }, "func": { - "Constant": { - "const_": { - "id": 8, - "kind": "ZeroSized", - "ty": 29 - }, - "span": 61, - "user_ty": null + "Move": { + "local": 1, + "projection": [] } }, "target": 1, "unwind": "Continue" } }, - "span": 62 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 8 - }, - "span": 50, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 7, - "kind": "ZeroSized", - "ty": 26 - }, - "span": 52, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 53 + "span": 40 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 63 + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 64, - "ty": 8 + "span": 40, + "ty": 1 }, { "mutability": "Not", - "span": 65, - "ty": 14 + "span": 40, + "ty": 7 }, { "mutability": "Not", - "span": 66, - "ty": 8 + "span": 40, + "ty": 1 } ], - "span": 68, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 65 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 67 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 59 - }, - "value": { - "Const": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 8 - }, - "span": 50, - "user_ty": null - } - } - } - ] + "span": 40, + "spread_arg": 2, + "var_debug_info": [] } ], - "id": 5, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" + "id": 3, + "name": ">::call_once" } }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2215,51 +1181,10 @@ "MonoItemFn": { "body": [ { - "arg_count": 1, + "arg_count": 2, "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 71 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 30 - }, - "span": 69, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } - }, - "span": 70 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 74 - }, { "kind": { "Assign": [ @@ -2268,45 +1193,24 @@ "projection": [] }, { - "Aggregate": [ + "Ref": [ { - "Closure": [ - 7, - [ - { - "Type": 32 - }, - { - "Type": 1 - }, - { - "Type": 33 - }, - { - "Type": 34 - } - ] - ] + "kind": "ReErased" }, - [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Copy": { - "local": 2, - "projection": [] - } + { + "Mut": { + "kind": "Default" } - ] + }, + { + "local": 1, + "projection": [] + } ] } ] }, - "span": 74 + "span": 40 } ], "terminator": { @@ -2318,8 +1222,14 @@ "local": 3, "projection": [] } - } - ], + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], "destination": { "local": 0, "projection": [] @@ -2327,85 +1237,141 @@ "func": { "Constant": { "const_": { - "id": 10, + "id": 7, "kind": "ZeroSized", - "ty": 31 + "ty": 22 }, - "span": 72, + "span": 40, "user_ty": null } }, - "target": null, + "target": 1, + "unwind": { + "Cleanup": 3 + } + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, "unwind": "Continue" } }, - "span": 73 + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Resume", + "span": 40 } } ], "locals": [ { "mutability": "Mut", - "span": 75, - "ty": 27 + "span": 40, + "ty": 16 }, { "mutability": "Not", - "span": 76, - "ty": 32 + "span": 40, + "ty": 12 }, { "mutability": "Not", - "span": 71, - "ty": 35 + "span": 40, + "ty": 1 }, { - "mutability": "Mut", - "span": 74, - "ty": 28 + "mutability": "Not", + "span": 40, + "ty": 23 } ], - "span": 77, - "spread_arg": null, - "var_debug_info": [ + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 1, + "blocks": [ { - "argument_index": 1, - "composite": null, - "name": "msg", - "source_info": { - "scope": 0, - "span": 76 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } + "statements": [], + "terminator": { + "kind": "Return", + "span": 41 } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 41, + "ty": 1 }, { - "argument_index": null, - "composite": null, - "name": "loc", - "source_info": { - "scope": 1, - "span": 71 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } + "mutability": "Not", + "span": 41, + "ty": 21 } - ] + ], + "span": 41, + "spread_arg": null, + "var_debug_info": [] } ], - "id": 6, - "name": "std::rt::begin_panic::<&str>" + "id": 4, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, - "symbol_name": "_ZN3std9panicking11begin_panic17h" + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" }, { "details": null, @@ -2417,10319 +1383,70 @@ "blocks": [ { "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 82 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 82 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 85 - }, { "kind": { "Assign": [ { - "local": 6, + "local": 0, "projection": [] }, { "Use": { - "Move": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 32 - ] - } - ] + "Constant": { + "const_": { + "id": 8, + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 17 + }, + "span": 43, + "user_ty": null } } } ] }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 8, - 1, - [ - { - "Type": 32 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 6, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 86 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 9, - 0, - [ - { - "Type": 32 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 83 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 4, - "projection": [] - } - ] - } - ] - }, - "span": 82 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - 38 - ] - } - ] - }, - "span": 82 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 1, - 35 - ] - } - ] - } - } - } - ] - }, - "span": 88 + "span": 43 } ], "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 1 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 37 - }, - "span": 79, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 37 - }, - "span": 80, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 36 - }, - "span": 78, - "user_ty": null - } - }, - "target": null, - "unwind": { - "Cleanup": 1 - } - } - }, - "span": 81 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 4, - "projection": [] - }, - "target": 2, - "unwind": "Terminate" - } - }, - "span": 89 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 74 + "kind": "Return", + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 90, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 74, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 38 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 83, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 32 + "span": 44, + "ty": 17 }, { - "mutability": "Mut", - "span": 74, - "ty": 35 + "mutability": "Not", + "span": 45, + "ty": 1 } ], - "span": 74, + "span": 46, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "msg", - "source_info": { - "scope": 0, - "span": 76 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 32 - ] - } - ] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "loc", - "source_info": { - "scope": 0, - "span": 71 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - { - "Field": [ - 1, - 35 - ] - } - ] - } - } - } - ] + "var_debug_info": [] } ], - "id": 7, - "name": "std::rt::begin_panic::<&str>::{closure#0}" - } - }, - "symbol_name": "_ZN3std9panicking11begin_panic28_$u7b$$u7b$closure$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [], - "id": 10, - "name": "std::intrinsics::type_id::<&str>" + "id": 5, + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN4core10intrinsics7type_id17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 42 - }, - "span": 91, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 91 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 91, - "ty": 1 - }, - { - "mutability": "Not", - "span": 91, - "ty": 43 - }, - { - "mutability": "Not", - "span": 91, - "ty": 8 - } - ], - "span": 91, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 11, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 91 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 91, - "ty": 8 - }, - { - "mutability": "Not", - "span": 91, - "ty": 14 - }, - { - "mutability": "Not", - "span": 91, - "ty": 8 - } - ], - "span": 91, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 11, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 91 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 15, - "kind": "ZeroSized", - "ty": 44 - }, - "span": 91, - "user_ty": null - } - }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 91 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 91, - "ty": 1 - }, - { - "mutability": "Not", - "span": 91, - "ty": 19 - }, - { - "mutability": "Not", - "span": 91, - "ty": 8 - }, - { - "mutability": "Not", - "span": 91, - "ty": 45 - } - ], - "span": 91, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 11, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 46 - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 47 - ] - } - ] - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 94 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 6, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 4 - } - } - }, - "span": 92 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 98 - } - ], - "terminator": { - "kind": "Return", - "span": 97 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 110, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - }, - "ty": 32 - }, - "span": 100, - "user_ty": null - } - } - ], - "destination": { - "local": 4, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 16, - "kind": "ZeroSized", - "ty": 48 - }, - "span": 99, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 101 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 93 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 2 - } - }, - "span": 93 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 104 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 18, - "kind": "ZeroSized", - "ty": 49 - }, - "span": 102, - "user_ty": null - } - }, - "target": 7, - "unwind": "Unreachable" - } - }, - "span": 103 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 105 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 106 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 107 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 19, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 47 - }, - "span": 108, - "user_ty": null - } - } - ] - } - ] - }, - "span": 107 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 13, - "projection": [] - } - } - ] - } - ] - }, - "span": 106 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 109 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 47 - }, - "span": 110, - "user_ty": null - } - } - ] - } - ] - }, - "span": 111 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 110 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 93 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 93 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 105 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 114 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 115 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 22, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 51 - }, - "span": 50, - "user_ty": null - } - }, - 52 - ] - } - ] - }, - "span": 115 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 116 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 23, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 53 - }, - "span": 50, - "user_ty": null - } - }, - 54 - ] - } - ] - }, - "span": 116 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 13, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 10, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 24, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 55 - }, - "span": 50, - "user_ty": null - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 117 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 118 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 118 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 8, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 21, - "kind": "ZeroSized", - "ty": 50 - }, - "span": 112, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 113 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 5 - ] - ], - "otherwise": 6 - } - } - }, - "span": 105 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 119, - "ty": 8 - }, - { - "mutability": "Not", - "span": 120, - "ty": 56 - }, - { - "mutability": "Not", - "span": 120, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 37 - }, - { - "mutability": "Not", - "span": 101, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 95, - "ty": 46 - }, - { - "mutability": "Mut", - "span": 121, - "ty": 47 - }, - { - "mutability": "Not", - "span": 113, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 114, - "ty": 57 - }, - { - "mutability": "Mut", - "span": 104, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 115, - "ty": 52 - }, - { - "mutability": "Mut", - "span": 116, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 106, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 107, - "ty": 47 - } - ], - "span": 136, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "addr", - "source_info": { - "scope": 0, - "span": 120 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 120 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 122 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 123 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 124 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 125 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 126 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 127 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 128 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 7, - "span": 129 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 130 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 131 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 127 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 11, - "span": 132 - }, - "value": { - "Const": { - "const_": { - "id": 25, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 51 - }, - "span": 133, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 134 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 135 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 126 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 127 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - } - ], - "id": 12, - "name": "std::ptr::read_volatile::precondition_check" - } - }, - "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 137 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 137, - "ty": 8 - }, - { - "mutability": "Not", - "span": 137, - "ty": 59 - } - ], - "span": 137, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 14, - "name": "std::ptr::drop_in_place::<&str>" - } - }, - "symbol_name": "_ZN4core3ptr28drop_in_place$LT$$RF$str$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 137 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 137, - "ty": 8 - }, - { - "mutability": "Not", - "span": 137, - "ty": 60 - } - ], - "span": 137, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 14, - "name": "std::ptr::drop_in_place::>" - } - }, - "symbol_name": "_ZN4core3ptr72drop_in_place$LT$std..panicking..begin_panic..Payload$LT$$RF$str$GT$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 137 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 137, - "ty": 8 - }, - { - "mutability": "Not", - "span": 137, - "ty": 43 - } - ], - "span": 137, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 14, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 139 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 61 - ] - } - ] - }, - "span": 140 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 141 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 47 - ] - } - ] - }, - "span": 142 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 139 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 1 - ] - ], - "otherwise": 2 - } - } - }, - "span": 138 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 138 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 93, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 4 - ] - ] - } - } - }, - "ty": 32 - }, - "span": 144, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 16, - "kind": "ZeroSized", - "ty": 48 - }, - "span": 143, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 145 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 138 - } - ], - "terminator": { - "kind": "Return", - "span": 146 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 147, - "ty": 8 - }, - { - "mutability": "Not", - "span": 148, - "ty": 62 - }, - { - "mutability": "Not", - "span": 145, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 140, - "ty": 61 - }, - { - "mutability": "Mut", - "span": 141, - "ty": 47 - } - ], - "span": 153, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 0, - "span": 148 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 149 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 2, - "span": 150 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 151 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 152 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - } - ] - } - ], - "id": 15, - "name": "std::ptr::NonNull::::new_unchecked::precondition_check" - } - }, - "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 41 - }, - "span": 50, - "user_ty": null - } - } - } - ] - }, - "span": 155 - } - ], - "terminator": { - "kind": "Return", - "span": 154 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 156, - "ty": 41 - }, - { - "mutability": "Not", - "span": 157, - "ty": 39 - } - ], - "span": 158, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 157 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - } - ], - "id": 16, - "name": " as core::panic::PanicPayload>::as_str" - } - }, - "symbol_name": "_ZN4core5panic12PanicPayload6as_str17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 23 - }, - "span": 160, - "user_ty": null - } - } - } - ] - }, - "span": 160 - } - ], - "terminator": { - "kind": "Return", - "span": 159 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 161, - "ty": 23 - }, - { - "mutability": "Not", - "span": 162, - "ty": 8 - } - ], - "span": 163, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 162 - }, - "value": { - "Const": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 8 - }, - "span": 50, - "user_ty": null - } - } - } - ] - } - ], - "id": 17, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 8 - }, - "span": 167 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 65 - ] - } - ] - }, - "span": 168 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 8, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 169 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 170 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 171 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 30, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 5 - ] - ] - } - } - }, - "ty": 64 - }, - "span": 50, - "user_ty": null - } - }, - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 37 - }, - "span": 165, - "user_ty": null - } - } - ], - "destination": { - "local": 4, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 29, - "kind": "ZeroSized", - "ty": 63 - }, - "span": 164, - "user_ty": null - } - }, - "target": 4, - "unwind": "Continue" - } - }, - "span": 166 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 171 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 31, - "kind": "ZeroSized", - "ty": 66 - }, - "span": 172, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 173 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 4, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 67 - ] - } - ] - } - } - } - ] - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 176 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 176 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 6, - "projection": [ - { - "Field": [ - 0, - 68 - ] - } - ] - } - } - } - ] - }, - "span": 178 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 11, - "projection": [] - } - }, - 46 - ] - } - ] - }, - "span": 179 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 20, - 0, - [ - { - "Type": 16 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 10, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 180 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 11, - "projection": [] - } - }, - 61 - ] - } - ] - }, - "span": 181 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 182 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 176 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 176 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 183 - } - ], - "terminator": { - "kind": "Return", - "span": 174 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Discriminant": { - "local": 4, - "projection": [] - } - } - ] - }, - "span": 171 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ], - [ - 1, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 184 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 185, - "ty": 61 - }, - { - "mutability": "Not", - "span": 186, - "ty": 47 - }, - { - "mutability": "Not", - "span": 187, - "ty": 47 - }, - { - "mutability": "Not", - "span": 188, - "ty": 69 - }, - { - "mutability": "Mut", - "span": 171, - "ty": 70 - }, - { - "mutability": "Mut", - "span": 189, - "ty": 13 - }, - { - "mutability": "Not", - "span": 175, - "ty": 67 - }, - { - "mutability": "Mut", - "span": 173, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 167, - "ty": 65 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 179, - "ty": 46 - }, - { - "mutability": "Mut", - "span": 178, - "ty": 68 - } - ], - "span": 200, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 0, - "span": 186 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 187 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 1, - "span": 188 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 2, - "span": 175 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 3, - "span": 190 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 3, - "span": 191 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 4, - "span": 192 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 193 - }, - "value": { - "Const": { - "const_": { - "id": 32, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 6 - ] - ] - } - } - }, - "ty": 64 - }, - "span": 194, - "user_ty": null - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 5, - "span": 195 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 196 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 197 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 198 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 199 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 199 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - } - ] - }, - { - "arg_count": 0, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 1, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 21, - 0, - [], - null, - null - ] - }, - [] - ] - } - ] - }, - "span": 194 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 194 - } - ], - "terminator": { - "kind": "Return", - "span": 194 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 194, - "ty": 64 - }, - { - "mutability": "Mut", - "span": 194, - "ty": 72 - } - ], - "span": 194, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 18, - "name": "alloc::alloc::exchange_malloc" - } - }, - "symbol_name": "_ZN5alloc5alloc15exchange_malloc17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 202 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 201 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 37 - ] - } - ] - }, - "span": 203 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 3 - } - } - }, - "span": 201 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 205 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 205 - } - ], - "terminator": { - "kind": "Return", - "span": 204 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 208 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 209 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 210 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 210 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 47 - ] - } - ] - } - } - } - ] - }, - "span": 211 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 212 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 213 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 214 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 214 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 215 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 1, - 65 - ] - } - ] - } - } - } - ] - }, - "span": 215 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 217 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 10, - "projection": [ - { - "Field": [ - 0, - 74 - ] - } - ] - } - } - } - ] - }, - "span": 217 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Discriminant": { - "local": 11, - "projection": [] - } - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 34, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 2 - }, - "span": 218, - "user_ty": null - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 35, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 2 - }, - "span": 218, - "user_ty": null - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 13, - "projection": [] - } - }, - { - "Move": { - "local": 14, - "projection": [] - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 15, - "projection": [] - } - } - } - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 47 - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 219 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 220 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 221 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 33, - "kind": "ZeroSized", - "ty": 73 - }, - "span": 206, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } - }, - "span": 207 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 224 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Constant": { - "const_": { - "id": 37, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 7 - ] - ] - } - } - }, - "ty": 46 - }, - "span": 50, - "user_ty": null - } - }, - 56 - ] - } - ] - }, - "span": 224 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 19, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 47 - }, - "span": 50, - "user_ty": null - } - } - ], - "destination": { - "local": 8, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 36, - "kind": "ZeroSized", - "ty": 75 - }, - "span": 222, - "user_ty": null - } - }, - "target": 4, - "unwind": "Unreachable" - } - }, - "span": 223 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 226 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 225 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 229 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 37, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 7 - ] - ] - } - } - }, - "ty": 46 - }, - "span": 50, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 38, - "kind": "ZeroSized", - "ty": 76 - }, - "span": 227, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 228 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 230, - "ty": 61 - }, - { - "mutability": "Not", - "span": 231, - "ty": 69 - }, - { - "mutability": "Not", - "span": 202, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 209, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 210, - "ty": 77 - }, - { - "mutability": "Mut", - "span": 213, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 214, - "ty": 77 - }, - { - "mutability": "Mut", - "span": 201, - "ty": 37 - }, - { - "mutability": "Not", - "span": 223, - "ty": 8 - }, - { - "mutability": "Mut", - "span": 224, - "ty": 56 - }, - { - "mutability": "Mut", - "span": 215, - "ty": 65 - }, - { - "mutability": "Not", - "span": 217, - "ty": 74 - }, - { - "mutability": "Mut", - "span": 217, - "ty": 2 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - } - ], - "span": 237, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 231 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 1, - "span": 232 - }, - "value": { - "Const": { - "const_": { - "id": 37, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 7 - ] - ] - } - } - }, - "ty": 46 - }, - "span": 233, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 234 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 235 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 236 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - } - ] - } - ], - "id": 22, - "name": "std::alloc::alloc" - } - }, - "symbol_name": "_ZN5alloc5alloc5alloc17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 239 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [] - } - ] - } - ] - }, - "span": 239 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 47 - ] - } - ] - } - } - } - ] - }, - "span": 211 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 240 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 238 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 242 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 241 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 244 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 245 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 246 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [] - } - ] - } - ] - }, - "span": 246 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 247 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 215 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 1, - 65 - ] - } - ] - } - } - } - ] - }, - "span": 215 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 217 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 19, - "projection": [ - { - "Field": [ - 0, - 74 - ] - } - ] - } - } - } - ] - }, - "span": 217 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Discriminant": { - "local": 20, - "projection": [] - } - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 34, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 2 - }, - "span": 218, - "user_ty": null - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 35, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 2 - }, - "span": 218, - "user_ty": null - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 24, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 22, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 24, - "projection": [] - } - } - } - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - 47 - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 219 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 23 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 220 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 18, - "projection": [] - } - }, - 61 - ] - } - ] - }, - "span": 248 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 249 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 37 - ] - } - ] - }, - "span": 203 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 25, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 9 - ] - ], - "otherwise": 7 - } - } - }, - "span": 243 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 10 - }, - "span": 252 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [] - } - } - } - ] - }, - "span": 252 - }, - { - "kind": { - "StorageLive": 34 - }, - "span": 253 - }, - { - "kind": { - "Assign": [ - { - "local": 34, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 10, - "projection": [] - } - ] - } - ] - }, - "span": 253 - }, - { - "kind": { - "StorageDead": 34 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 35 - }, - "span": 255 - }, - { - "kind": { - "StorageLive": 36 - }, - "span": 256 - }, - { - "kind": { - "Assign": [ - { - "local": 36, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 10, - "projection": [] - } - ] - } - ] - }, - "span": 256 - }, - { - "kind": { - "StorageLive": 37 - }, - "span": 215 - }, - { - "kind": { - "Assign": [ - { - "local": 37, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 1, - 65 - ] - } - ] - } - } - } - ] - }, - "span": 215 - }, - { - "kind": { - "StorageLive": 39 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 40 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 41 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 42 - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 38 - }, - "span": 217 - }, - { - "kind": { - "Assign": [ - { - "local": 38, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 37, - "projection": [ - { - "Field": [ - 0, - 74 - ] - } - ] - } - } - } - ] - }, - "span": 217 - }, - { - "kind": { - "Assign": [ - { - "local": 39, - "projection": [] - }, - { - "Discriminant": { - "local": 38, - "projection": [] - } - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 40, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 34, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 2 - }, - "span": 218, - "user_ty": null - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 41, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 35, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 2 - }, - "span": 218, - "user_ty": null - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 42, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 40, - "projection": [] - } - }, - { - "Move": { - "local": 41, - "projection": [] - } - } - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 42, - "projection": [] - } - } - } - }, - "span": 218 - }, - { - "kind": { - "Assign": [ - { - "local": 35, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - 47 - ] - } - ] - }, - "span": 218 - }, - { - "kind": { - "StorageDead": 38 - }, - "span": 219 - }, - { - "kind": { - "StorageDead": 42 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 41 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 40 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 39 - }, - "span": 216 - }, - { - "kind": { - "StorageDead": 37 - }, - "span": 220 - }, - { - "kind": { - "StorageDead": 36 - }, - "span": 257 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 35, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 78 - }, - "span": 250, - "user_ty": null - } - }, - "target": 13, - "unwind": "Unreachable" - } - }, - "span": 251 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 40, - "kind": "ZeroSized", - "ty": 79 - }, - "span": 258, - "user_ty": null - } - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 259 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 11 - }, - "span": 261 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 262 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 263 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [] - } - } - } - ] - }, - "span": 264 - }, - { - "kind": { - "StorageLive": 44 - }, - "span": 141 - }, - { - "kind": { - "Assign": [ - { - "local": 44, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 47 - ] - } - ] - }, - "span": 142 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 44, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 14 - ] - ], - "otherwise": 15 - } - } - }, - "span": 260 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 265 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 27 - }, - "span": 268 - }, - { - "kind": { - "Assign": [ - { - "local": 27, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 268 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 27, - "projection": [] - } - } - ], - "destination": { - "local": 26, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 41, - "kind": "ZeroSized", - "ty": 80 - }, - "span": 266, - "user_ty": null - } - }, - "target": 8, - "unwind": "Unreachable" - } - }, - "span": 267 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 27 - }, - "span": 269 - }, - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 46 - ] - } - ] - }, - "span": 270 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 20, - 0, - [ - { - "Type": 16 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 28, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 271 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 272 - }, - { - "kind": { - "StorageLive": 29 - }, - "span": 273 - }, - { - "kind": { - "StorageLive": 30 - }, - "span": 274 - }, - { - "kind": { - "Assign": [ - { - "local": 30, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [] - } - } - } - ] - }, - "span": 181 - }, - { - "kind": { - "Assign": [ - { - "local": 29, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 81, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 17, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 47 - }, - "span": 50, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 275 - }, - { - "kind": { - "StorageDead": 30 - }, - "span": 276 - }, - { - "kind": { - "StorageLive": 33 - }, - "span": 277 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 10 - } - }, - "span": 243 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 46 - ] - } - ] - }, - "span": 270 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 20, - 0, - [ - { - "Type": 16 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 28, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 271 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 272 - }, - { - "kind": { - "StorageLive": 29 - }, - "span": 273 - }, - { - "kind": { - "StorageLive": 30 - }, - "span": 274 - }, - { - "kind": { - "Assign": [ - { - "local": 30, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [] - } - } - } - ] - }, - "span": 181 - }, - { - "kind": { - "Assign": [ - { - "local": 29, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 81, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 17, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 47 - }, - "span": 50, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 275 - }, - { - "kind": { - "StorageDead": 30 - }, - "span": 276 - }, - { - "kind": { - "StorageLive": 33 - }, - "span": 277 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 25, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 12 - ] - ], - "otherwise": 10 - } - } - }, - "span": 243 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 32 - }, - "span": 268 - }, - { - "kind": { - "Assign": [ - { - "local": 32, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 268 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 32, - "projection": [] - } - } - ], - "destination": { - "local": 31, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 41, - "kind": "ZeroSized", - "ty": 80 - }, - "span": 266, - "user_ty": null - } - }, - "target": 11, - "unwind": "Unreachable" - } - }, - "span": 267 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 32 - }, - "span": 269 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 12 - } - }, - "span": 278 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 33, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 29, - "projection": [] - } - }, - 68 - ] - } - ] - }, - "span": 270 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 20, - 0, - [ - { - "Type": 81 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 33, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 271 - }, - { - "kind": { - "StorageDead": 33 - }, - "span": 277 - }, - { - "kind": { - "StorageDead": 29 - }, - "span": 280 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 281 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 24, - 0, - [ - { - "Type": 67 - }, - { - "Type": 82 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 6, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 282 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 279 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 279 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 35 - }, - "span": 284 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 285 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 283 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 44 - }, - "span": 260 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 42, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 83 - }, - "span": 50, - "user_ty": null - } - } - } - ] - }, - "span": 286 - }, - { - "kind": { - "StorageLive": 49 - }, - "span": 287 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 84 - }, - "span": 50, - "user_ty": null - } - } - } - ] - }, - "span": 288 - }, - { - "kind": { - "StorageDead": 49 - }, - "span": 287 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 289 - }, - { - "kind": { - "StorageLive": 50 - }, - "span": 261 - }, - { - "kind": { - "StorageDead": 50 - }, - "span": 261 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 290 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 44, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 70 - }, - "span": 50, - "user_ty": null - } - } - } - ] - }, - "span": 291 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 292 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 293 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 265 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 44 - }, - "span": 260 - }, - { - "kind": { - "StorageLive": 43 - }, - "span": 294 - }, - { - "kind": { - "StorageLive": 48 - }, - "span": 295 - }, - { - "kind": { - "StorageLive": 45 - }, - "span": 243 - }, - { - "kind": { - "Assign": [ - { - "local": 45, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 37 - ] - } - ] - }, - "span": 203 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 45, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 18 - ] - ], - "otherwise": 16 - } - } - }, - "span": 243 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 47 - }, - "span": 268 - }, - { - "kind": { - "Assign": [ - { - "local": 47, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 268 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 47, - "projection": [] - } - } - ], - "destination": { - "local": 46, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 41, - "kind": "ZeroSized", - "ty": 80 - }, - "span": 266, - "user_ty": null - } - }, - "target": 17, - "unwind": "Unreachable" - } - }, - "span": 267 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 47 - }, - "span": 269 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 18 - } - }, - "span": 278 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 45 - }, - "span": 296 - }, - { - "kind": { - "Assign": [ - { - "local": 48, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 46 - ] - } - ] - }, - "span": 270 - }, - { - "kind": { - "Assign": [ - { - "local": 43, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 20, - 0, - [ - { - "Type": 16 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 48, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 271 - }, - { - "kind": { - "StorageDead": 48 - }, - "span": 295 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 8, - 1, - [ - { - "Type": 71 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 43, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 297 - }, - { - "kind": { - "StorageDead": 43 - }, - "span": 298 - }, - { - "kind": { - "StorageLive": 49 - }, - "span": 287 - }, - { - "kind": { - "Assign": [ - { - "local": 49, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 13, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 71 - ] - } - ] - } - } - } - ] - }, - "span": 299 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 24, - 0, - [ - { - "Type": 71 - }, - { - "Type": 82 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 49, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 300 - }, - { - "kind": { - "StorageDead": 49 - }, - "span": 287 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 289 - }, - { - "kind": { - "StorageLive": 50 - }, - "span": 261 - }, - { - "kind": { - "Assign": [ - { - "local": 50, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 12, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 71 - ] - } - ] - } - } - } - ] - }, - "span": 301 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 85 - }, - { - "Type": 71 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 50, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 302 - }, - { - "kind": { - "StorageDead": 50 - }, - "span": 261 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 290 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 11, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 71 - ] - } - ] - } - } - } - ] - }, - "span": 303 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 292 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 304 - }, - { - "kind": { - "StorageLive": 53 - }, - "span": 304 - }, - { - "kind": { - "StorageLive": 51 - }, - "span": 273 - }, - { - "kind": { - "StorageLive": 52 - }, - "span": 274 - }, - { - "kind": { - "Assign": [ - { - "local": 53, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 46 - ] - } - ] - } - } - } - ] - }, - "span": 178 - }, - { - "kind": { - "Assign": [ - { - "local": 52, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 53, - "projection": [] - } - }, - 61 - ] - } - ] - }, - "span": 181 - }, - { - "kind": { - "Assign": [ - { - "local": 51, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 81, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 52, - "projection": [] - } - }, - { - "Copy": { - "local": 4, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 275 - }, - { - "kind": { - "StorageDead": 52 - }, - "span": 276 - }, - { - "kind": { - "StorageLive": 57 - }, - "span": 277 - }, - { - "kind": { - "StorageLive": 54 - }, - "span": 243 - }, - { - "kind": { - "Assign": [ - { - "local": 54, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 37 - ] - } - ] - }, - "span": 203 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 54, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 21 - ] - ], - "otherwise": 19 - } - } - }, - "span": 243 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 56 - }, - "span": 268 - }, - { - "kind": { - "Assign": [ - { - "local": 56, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 53, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 268 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 56, - "projection": [] - } - } - ], - "destination": { - "local": 55, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 41, - "kind": "ZeroSized", - "ty": 80 - }, - "span": 266, - "user_ty": null - } - }, - "target": 20, - "unwind": "Unreachable" - } - }, - "span": 267 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 56 - }, - "span": 269 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 21 - } - }, - "span": 278 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 54 - }, - "span": 296 - }, - { - "kind": { - "Assign": [ - { - "local": 57, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 51, - "projection": [] - } - }, - 68 - ] - } - ] - }, - "span": 270 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 20, - 0, - [ - { - "Type": 81 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 57, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 271 - }, - { - "kind": { - "StorageDead": 57 - }, - "span": 277 - }, - { - "kind": { - "StorageDead": 51 - }, - "span": 280 - }, - { - "kind": { - "StorageDead": 53 - }, - "span": 304 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 24, - 0, - [ - { - "Type": 67 - }, - { - "Type": 82 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 16, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 305 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 306 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 293 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 293 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 307, - "ty": 70 - }, - { - "mutability": "Not", - "span": 308, - "ty": 64 - }, - { - "mutability": "Not", - "span": 309, - "ty": 69 - }, - { - "mutability": "Not", - "span": 310, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 311, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 239, - "ty": 77 - }, - { - "mutability": "Mut", - "span": 244, - "ty": 67 - }, - { - "mutability": "Mut", - "span": 245, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 246, - "ty": 77 - }, - { - "mutability": "Not", - "span": 242, - "ty": 61 - }, - { - "mutability": "Mut", - "span": 252, - "ty": 69 - }, - { - "mutability": "Mut", - "span": 261, - "ty": 86 - }, - { - "mutability": "Mut", - "span": 262, - "ty": 84 - }, - { - "mutability": "Mut", - "span": 263, - "ty": 83 - }, - { - "mutability": "Mut", - "span": 264, - "ty": 61 - }, - { - "mutability": "Not", - "span": 303, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 304, - "ty": 67 - }, - { - "mutability": "Mut", - "span": 312, - "ty": 61 - }, - { - "mutability": "Mut", - "span": 247, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 215, - "ty": 65 - }, - { - "mutability": "Not", - "span": 217, - "ty": 74 - }, - { - "mutability": "Mut", - "span": 217, - "ty": 2 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 243, - "ty": 37 - }, - { - "mutability": "Not", - "span": 267, - "ty": 8 - }, - { - "mutability": "Mut", - "span": 268, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 270, - "ty": 46 - }, - { - "mutability": "Mut", - "span": 273, - "ty": 87 - }, - { - "mutability": "Mut", - "span": 274, - "ty": 61 - }, - { - "mutability": "Not", - "span": 267, - "ty": 8 - }, - { - "mutability": "Mut", - "span": 268, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 270, - "ty": 68 - }, - { - "mutability": "Mut", - "span": 253, - "ty": 77 - }, - { - "mutability": "Mut", - "span": 255, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 256, - "ty": 77 - }, - { - "mutability": "Mut", - "span": 215, - "ty": 65 - }, - { - "mutability": "Not", - "span": 217, - "ty": 74 - }, - { - "mutability": "Mut", - "span": 217, - "ty": 2 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 218, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 294, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 141, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 243, - "ty": 37 - }, - { - "mutability": "Not", - "span": 267, - "ty": 8 - }, - { - "mutability": "Mut", - "span": 268, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 270, - "ty": 46 - }, - { - "mutability": "Not", - "span": 299, - "ty": 71 - }, - { - "mutability": "Not", - "span": 301, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 273, - "ty": 87 - }, - { - "mutability": "Mut", - "span": 274, - "ty": 61 - }, - { - "mutability": "Mut", - "span": 178, - "ty": 46 - }, - { - "mutability": "Mut", - "span": 243, - "ty": 37 - }, - { - "mutability": "Not", - "span": 267, - "ty": 8 - }, - { - "mutability": "Mut", - "span": 268, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 270, - "ty": 68 - } - ], - "span": 335, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 308 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 309 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "zeroed", - "source_info": { - "scope": 0, - "span": 310 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 1, - "span": 313 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "raw_ptr", - "source_info": { - "scope": 2, - "span": 242 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 3, - "span": 314 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "residual", - "source_info": { - "scope": 4, - "span": 315 - }, - "value": { - "Const": { - "const_": { - "id": 45, - "kind": "ZeroSized", - "ty": 85 - }, - "span": 50, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "val", - "source_info": { - "scope": 6, - "span": 303 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 234 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 316 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 235 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 11, - "span": 236 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "addr", - "source_info": { - "scope": 12, - "span": 317 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 13, - "span": 318 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 16, - "span": 319 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 16, - "span": 320 - }, - "value": { - "Const": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 47 - }, - "span": 321, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 199 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 18, - "span": 322 - }, - "value": { - "Place": { - "local": 30, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 18, - "span": 323 - }, - "value": { - "Const": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 47 - }, - "span": 321, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 19, - "span": 324 - }, - "value": { - "Place": { - "local": 30, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 19, - "span": 325 - }, - "value": { - "Const": { - "const_": { - "id": 20, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 47 - }, - "span": 321, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 20, - "span": 318 - }, - "value": { - "Place": { - "local": 29, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "layout", - "source_info": { - "scope": 23, - "span": 326 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 234 - }, - "value": { - "Place": { - "local": 34, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 25, - "span": 235 - }, - "value": { - "Place": { - "local": 36, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 26, - "span": 236 - }, - "value": { - "Place": { - "local": 37, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 27, - "span": 327 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 28, - "span": 149 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 29, - "span": 150 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 30, - "span": 151 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 31, - "span": 152 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 32, - "span": 318 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 35, - "span": 328 - }, - "value": { - "Place": { - "local": 13, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "err", - "source_info": { - "scope": 35, - "span": 329 - }, - "value": { - "Const": { - "const_": { - "id": 46, - "kind": "ZeroSized", - "ty": 82 - }, - "span": 50, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 36, - "span": 299 - }, - "value": { - "Place": { - "local": 49, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 37, - "span": 330 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 38, - "span": 301 - }, - "value": { - "Place": { - "local": 50, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "e", - "source_info": { - "scope": 39, - "span": 331 - }, - "value": { - "Const": { - "const_": { - "id": 46, - "kind": "ZeroSized", - "ty": 82 - }, - "span": 50, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 40, - "span": 319 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 40, - "span": 320 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 41, - "span": 199 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 42, - "span": 322 - }, - "value": { - "Place": { - "local": 52, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 42, - "span": 323 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 43, - "span": 324 - }, - "value": { - "Place": { - "local": 52, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 43, - "span": 325 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 44, - "span": 318 - }, - "value": { - "Place": { - "local": 51, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "residual", - "source_info": { - "scope": 47, - "span": 332 - }, - "value": { - "Const": { - "const_": { - "id": 45, - "kind": "ZeroSized", - "ty": 85 - }, - "span": 50, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "e", - "source_info": { - "scope": 48, - "span": 333 - }, - "value": { - "Const": { - "const_": { - "id": 46, - "kind": "ZeroSized", - "ty": 82 - }, - "span": 50, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "t", - "source_info": { - "scope": 49, - "span": 334 - }, - "value": { - "Const": { - "const_": { - "id": 46, - "kind": "ZeroSized", - "ty": 82 - }, - "span": 50, - "user_ty": null - } - } - } - ] - } - ], - "id": 23, - "name": "std::alloc::Global::alloc_impl" - } - }, - "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "NullaryOp": [ - "SizeOf", - 32 - ] - } - ] - }, - "span": 336 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 32 - ] - } - ] - }, - "span": 336 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 4, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 88 - }, - "span": 336, - "user_ty": null - } - }, - "target": 1, - "unwind": { - "Cleanup": 2 - } - } - }, - "span": 336 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "ShallowInitBox": [ - { - "Move": { - "local": 4, - "projection": [] - } - }, - 32 - ] - } - ] - }, - "span": 336 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 0, - "projection": [ - { - "Field": [ - 0, - 89 - ] - }, - { - "Field": [ - 0, - 90 - ] - }, - { - "Field": [ - 0, - 91 - ] - } - ] - } - } - } - ] - }, - "span": 338 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [ - "Deref" - ] - }, - { - "Use": { - "Move": { - "local": 1, - "projection": [] - } - } - } - ] - }, - "span": 338 - } - ], - "terminator": { - "kind": "Return", - "span": 337 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 3, - "unwind": "Terminate" - } - }, - "span": 339 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 340 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 341, - "ty": 92 - }, - { - "mutability": "Not", - "span": 342, - "ty": 32 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 47 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 61 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 91 - } - ], - "span": 340, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "x", - "source_info": { - "scope": 0, - "span": 342 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - } - ], - "id": 26, - "name": "std::boxed::Box::<&str>::new" - } - }, - "symbol_name": "_ZN5alloc5boxed12Box$LT$T$GT$3new17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Discriminant": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - } - ] - } - } - ] - }, - "span": 344 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ], - [ - 1, - 3 - ] - ], - "otherwise": 1 - } - } - }, - "span": 343 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 344 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 8, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 48, - "kind": "ZeroSized", - "ty": 93 - }, - "span": 345, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 346 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 349 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - }, - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 32 - ] - } - ] - } - ] - } - ] - }, - "span": 349 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 350 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 350 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - }, - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 32 - ] - } - ] - } - ] - } - ] - }, - "span": 350 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Move": { - "local": 7, - "projection": [] - } - }, - 95 - ] - } - ] - }, - "span": 350 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 350 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 49, - "kind": "ZeroSized", - "ty": 94 - }, - "span": 347, - "user_ty": null - } - }, - "target": 4, - "unwind": "Continue" - } - }, - "span": 348 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 353 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 50, - "kind": "ZeroSized", - "ty": 96 - }, - "span": 351, - "user_ty": null - } - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 352 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 355 - } - ], - "terminator": { - "kind": "Return", - "span": 354 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 356, - "ty": 97 - }, - { - "mutability": "Not", - "span": 357, - "ty": 98 - }, - { - "mutability": "Not", - "span": 358, - "ty": 99 - }, - { - "mutability": "Mut", - "span": 359, - "ty": 13 - }, - { - "mutability": "Not", - "span": 349, - "ty": 4 - }, - { - "mutability": "Not", - "span": 348, - "ty": 32 - }, - { - "mutability": "Mut", - "span": 350, - "ty": 95 - }, - { - "mutability": "Mut", - "span": 350, - "ty": 4 - }, - { - "mutability": "Mut", - "span": 346, - "ty": 27 - } - ], - "span": 360, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 357 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 358 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 1, - "span": 349 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - } - ] - } - ], - "id": 27, - "name": " as std::fmt::Display>::fmt" - } - }, - "symbol_name": "_ZN84_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..fmt..Display$GT$3fmt17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Discriminant": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - } - ] - } - } - ] - }, - "span": 362 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ], - [ - 1, - 3 - ] - ], - "otherwise": 1 - } - } - }, - "span": 361 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 362 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 48, - "kind": "ZeroSized", - "ty": 93 - }, - "span": 363, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 364 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 366 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - }, - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 32 - ] - } - ] - } - ] - } - ] - }, - "span": 366 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 367 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - }, - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 32 - ] - } - ] - } - ] - } - ] - }, - "span": 367 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Move": { - "local": 4, - "projection": [] - } - }, - 100 - ] - } - ] - }, - "span": 367 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 367 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 367 - } - ], - "terminator": { - "kind": "Return", - "span": 365 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 368, - "ty": 100 - }, - { - "mutability": "Not", - "span": 369, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 370, - "ty": 13 - }, - { - "mutability": "Not", - "span": 366, - "ty": 4 - }, - { - "mutability": "Mut", - "span": 367, - "ty": 4 - }, - { - "mutability": "Mut", - "span": 364, - "ty": 27 - } - ], - "span": 371, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 369 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 1, - "span": 366 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - } - ] - } - ], - "id": 28, - "name": " as core::panic::PanicPayload>::get" - } - }, - "symbol_name": "_ZN91_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..panic..PanicPayload$GT$3get17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 373 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 374 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "TwoPhaseBorrow" - } - }, - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - } - ] - } - ] - } - ] - }, - "span": 374 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 8, - 0, - [ - { - "Type": 32 - } - ], - null, - null - ] - }, - [] - ] - } - ] - }, - "span": 375 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 41 - ] - } - ] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [] - } - } - } - ] - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 378 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Discriminant": { - "local": 2, - "projection": [] - } - } - ] - }, - "span": 373 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ], - [ - 1, - 3 - ] - ], - "otherwise": 1 - } - } - }, - "span": 372 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 373 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 8, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 48, - "kind": "ZeroSized", - "ty": 93 - }, - "span": 379, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 380 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 2, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 32 - ] - } - ] - } - } - } - ] - }, - "span": 383 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 382 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 51, - "kind": "ZeroSized", - "ty": 101 - }, - "span": 381, - "user_ty": 0 - } - }, - "target": 4, - "unwind": "Continue" - } - }, - "span": 382 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Move": { - "local": 7, - "projection": [] - } - }, - 102 - ] - } - ] - }, - "span": 382 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 385 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 386 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 387 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 387 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 387 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 388 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 30, - 0, - [ - { - "Type": 102 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 389 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 10, - "projection": [] - } - ] - } - ] - }, - "span": 390 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 10, - "projection": [ - { - "Field": [ - 0, - 102 - ] - }, - { - "Field": [ - 0, - 103 - ] - }, - { - "Field": [ - 0, - 104 - ] - } - ] - } - } - } - ] - }, - "span": 391 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 105 - ] - } - ] - } - } - } - ] - }, - "span": 391 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "AddressOf": [ - "Mut", - { - "local": 14, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 391 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 392 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 393 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 10, - "projection": [] - } - ] - } - ] - }, - "span": 393 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 393 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 10, - "projection": [ - { - "Field": [ - 0, - 102 - ] - }, - { - "Field": [ - 1, - 72 - ] - } - ] - } - ] - } - ] - }, - "span": 392 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 394 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 395 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 387 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 387 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 387 - } - ], - "terminator": { - "kind": "Return", - "span": 384 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 396, - "ty": 106 - }, - { - "mutability": "Not", - "span": 397, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 373, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 374, - "ty": 107 - }, - { - "mutability": "Mut", - "span": 398, - "ty": 13 - }, - { - "mutability": "Not", - "span": 383, - "ty": 32 - }, - { - "mutability": "Mut", - "span": 399, - "ty": 102 - }, - { - "mutability": "Mut", - "span": 382, - "ty": 92 - }, - { - "mutability": "Mut", - "span": 380, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 375, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 388, - "ty": 108 - }, - { - "mutability": "Mut", - "span": 390, - "ty": 109 - }, - { - "mutability": "Mut", - "span": 392, - "ty": 110 - }, - { - "mutability": "Mut", - "span": 393, - "ty": 111 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 105 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 104 - } - ], - "span": 416, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 397 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "data", - "source_info": { - "scope": 1, - "span": 401 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 2, - "span": 383 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 402 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dest", - "source_info": { - "scope": 4, - "span": 403 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "src", - "source_info": { - "scope": 4, - "span": 404 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 5, - "span": 405 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 6, - "span": 406 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dst", - "source_info": { - "scope": 7, - "span": 407 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "src", - "source_info": { - "scope": 7, - "span": 408 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "b", - "source_info": { - "scope": 8, - "span": 409 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "b", - "source_info": { - "scope": 9, - "span": 410 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 10, - "span": 388 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 11, - "span": 411 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 12, - "span": 412 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 72 - }, - "span": 50, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "value", - "source_info": { - "scope": 13, - "span": 413 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 414 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 15, - "span": 415 - }, - "value": { - "Place": { - "local": 13, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 16, - "span": 406 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - } - ] - } - ], - "id": 29, - "name": " as core::panic::PanicPayload>::take_box" - } - }, - "symbol_name": "_ZN91_$LT$std..panicking..begin_panic..Payload$LT$A$GT$$u20$as$u20$core..panic..PanicPayload$GT$8take_box17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" } ] } diff --git a/tests/integration/failing/std-string-empty.smir.json.expected b/tests/integration/failing/std-string-empty.smir.json.expected index 37d1426..dd2d670 100644 --- a/tests/integration/failing/std-string-empty.smir.json.expected +++ b/tests/integration/failing/std-string-empty.smir.json.expected @@ -3,85 +3,83 @@ [ { "Memory": { - "align": 1, + "align": 8, "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 117, - 115, - 105, - 122, - 101, - 58, - 58, - 117, - 110, - 99, - 104, - 101, - 99, - 107, - 101, - 100, - 95, - 109, - 117, - 108, - 32, - 99, - 97, - 110, - 110, - 111, - 116, - 32, - 111, - 118, - 101, - 114, - 102, - 108, - 111, - 119 + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 42, + 0, + 0, + 0, + 0, + 0, + 0, + 0 ], "mutability": "Not", + "provenance": { + "ptrs": [ + [ + 0, + 7 + ] + ] + } + } + } + ], + [ + { + "Memory": { + "align": 8, + "bytes": [], + "mutability": "Not", "provenance": { "ptrs": [] } } } ], + [ + { + "Memory": { + "align": 8, + "bytes": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ], + "mutability": "Not", + "provenance": { + "ptrs": [ + [ + 0, + 10 + ] + ] + } + } + } + ], [ { "Memory": { @@ -260,33 +258,54 @@ [ { "Memory": { - "align": 8, + "align": 1, "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 + 105, + 115, + 95, + 97, + 108, + 105, + 103, + 110, + 101, + 100, + 95, + 116, + 111, + 58, + 32, + 97, + 108, + 105, + 103, + 110, + 32, + 105, + 115, + 32, + 110, + 111, + 116, + 32, + 97, + 32, + 112, + 111, + 119, + 101, + 114, + 45, + 111, + 102, + 45, + 116, + 119, + 111 ], "mutability": "Not", "provenance": { - "ptrs": [ - [ - 0, - 13 - ] - ] + "ptrs": [] } } } @@ -294,8 +313,34 @@ [ { "Memory": { - "align": 8, - "bytes": [], + "align": 1, + "bytes": [ + 97, + 115, + 115, + 101, + 114, + 116, + 105, + 111, + 110, + 32, + 102, + 97, + 105, + 108, + 101, + 100, + 58, + 32, + 97, + 32, + 61, + 61, + 32, + 34, + 34 + ], "mutability": "Not", "provenance": { "ptrs": [] @@ -306,114 +351,8 @@ [ { "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 14 - ] - ] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 12 - ] - ] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 97, - 115, - 115, - 101, - 114, - 116, - 105, - 111, - 110, - 32, - 102, - 97, - 105, - 108, - 101, - 100, - 58, - 32, - 97, - 32, - 61, - 61, - 32, - 34, - 34 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [], + "align": 1, + "bytes": [], "mutability": "Not", "provenance": { "ptrs": [] @@ -432,116 +371,6 @@ } } } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 95, - 116, - 111, - 58, - 32, - 97, - 108, - 105, - 103, - 110, - 32, - 105, - 115, - 32, - 110, - 111, - 116, - 32, - 97, - 32, - 112, - 111, - 119, - 101, - 114, - 45, - 111, - 102, - 45, - 116, - 119, - 111 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 95, - 116, - 111, - 58, - 32, - 97, - 108, - 105, - 103, - 110, - 32, - 105, - 115, - 32, - 110, - 111, - 116, - 32, - 97, - 32, - 112, - 111, - 119, - 101, - 114, - 45, - 111, - 102, - 45, - 116, - 119, - 111 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } ] ], "functions": [ @@ -570,11 +399,6 @@ "IntrinsicSym": "black_box" } ], - [ - { - "NormalSym": "_ZN4core9panicking14panic_nounwind17h" - } - ], [ { "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" @@ -602,47 +426,27 @@ ], [ { - "NormalSym": "_ZN4core9panicking9panic_fmt17h" - } - ], - [ - { - "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" - } - ], - [ - { - "NormalSym": "" - } - ], - [ - { - "NoOpSym": "" - } - ], - [ - { - "IntrinsicSym": "size_of_val" + "NormalSym": "_ZN4core9panicking14panic_nounwind17h" } ], [ { - "IntrinsicSym": "compare_bytes" + "NormalSym": "_ZN4core9panicking9panic_fmt17h" } ], [ { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" + "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" } ], [ { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" + "NormalSym": "_ZN4core3str6traits99_$LT$impl$u20$core..slice..index..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFull$GT$5index17h" } ], [ { - "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" + "NormalSym": "_ZN74_$LT$alloc..string..String$u20$as$u20$core..ops..index..Index$LT$I$GT$$GT$5index17h" } ], [ @@ -667,22 +471,22 @@ ], [ { - "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" + "NoOpSym": "" } ], [ { - "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" + "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" } ], [ { - "NoOpSym": "" + "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" } ], [ { - "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" + "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" } ] ], @@ -708,11 +512,11 @@ "func": { "Constant": { "const_": { - "id": 40, + "id": 29, "kind": "ZeroSized", - "ty": 86 + "ty": 68 }, - "span": 349, + "span": 195, "user_ty": null } }, @@ -720,7 +524,7 @@ "unwind": "Continue" } }, - "span": 350 + "span": 196 } }, { @@ -746,7 +550,7 @@ } ] }, - "span": 352 + "span": 198 }, { "kind": { @@ -759,7 +563,7 @@ "Use": { "Constant": { "const_": { - "id": 42, + "id": 31, "kind": { "Allocated": { "align": 8, @@ -778,22 +582,22 @@ "ptrs": [ [ 0, - 5 + 3 ] ] } } }, - "ty": 82 + "ty": 66 }, - "span": 353, + "span": 199, "user_ty": null } } } ] }, - "span": 353 + "span": 199 } ], "terminator": { @@ -820,11 +624,11 @@ "func": { "Constant": { "const_": { - "id": 41, + "id": 30, "kind": "ZeroSized", - "ty": 87 + "ty": 69 }, - "span": 351, + "span": 197, "user_ty": null } }, @@ -834,7 +638,7 @@ } } }, - "span": 351 + "span": 197 } }, { @@ -859,7 +663,7 @@ } } }, - "span": 351 + "span": 197 } }, { @@ -875,7 +679,7 @@ "unwind": "Continue" } }, - "span": 354 + "span": 200 } }, { @@ -887,7 +691,7 @@ { "Constant": { "const_": { - "id": 44, + "id": 33, "kind": { "Allocated": { "align": 8, @@ -914,15 +718,15 @@ "ptrs": [ [ 0, - 6 + 4 ] ] } } }, - "ty": 24 + "ty": 33 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -934,11 +738,11 @@ "func": { "Constant": { "const_": { - "id": 43, + "id": 32, "kind": "ZeroSized", - "ty": 88 + "ty": 70 }, - "span": 355, + "span": 201, "user_ty": null } }, @@ -948,14 +752,14 @@ } } }, - "span": 355 + "span": 201 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 356 + "span": 202 } }, { @@ -971,50 +775,50 @@ "unwind": "Terminate" } }, - "span": 354 + "span": 200 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 357 + "span": 203 } } ], "locals": [ { "mutability": "Mut", - "span": 358, + "span": 204, "ty": 1 }, { "mutability": "Not", - "span": 359, - "ty": 54 + "span": 205, + "ty": 51 }, { "mutability": "Mut", - "span": 351, - "ty": 22 + "span": 197, + "ty": 46 }, { "mutability": "Mut", - "span": 352, - "ty": 81 + "span": 198, + "ty": 60 }, { "mutability": "Mut", - "span": 353, - "ty": 82 + "span": 199, + "ty": 66 }, { "mutability": "Mut", - "span": 355, - "ty": 26 + "span": 201, + "ty": 47 } ], - "span": 357, + "span": 203, "spread_arg": null, "var_debug_info": [ { @@ -1023,7 +827,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 359 + "span": 205 }, "value": { "Place": { @@ -1050,7 +854,7 @@ "Use": { "Constant": { "const_": { - "id": 45, + "id": 34, "kind": { "Allocated": { "align": 8, @@ -1077,22 +881,22 @@ "ptrs": [ [ 0, - 7 + 5 ] ] } } }, - "ty": 24 + "ty": 33 }, - "span": 353, + "span": 199, "user_ty": null } } } ] }, - "span": 353 + "span": 199 }, { "kind": { @@ -1115,33 +919,33 @@ } ] }, - "span": 353 + "span": 199 } ], "terminator": { "kind": "Return", - "span": 353 + "span": 199 } } ], "locals": [ { "mutability": "Mut", - "span": 353, - "ty": 82 + "span": 199, + "ty": 66 }, { "mutability": "Mut", - "span": 353, - "ty": 24 + "span": 199, + "ty": 33 } ], - "span": 353, + "span": 199, "spread_arg": null, "var_debug_info": [] } ], - "id": 22, + "id": 15, "name": "main" } }, @@ -1169,12 +973,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -1259,7 +1057,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -1270,12 +1068,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -1335,7 +1127,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -1364,51 +1156,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -1422,7 +1214,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -1432,7 +1224,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -1441,7 +1233,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1456,7 +1248,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -1471,7 +1263,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -1486,7 +1278,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -1501,7 +1293,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -1533,19 +1325,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1572,7 +1364,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1597,7 +1389,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1605,7 +1397,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1614,7 +1406,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1639,7 +1431,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1647,7 +1439,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1656,13 +1448,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1671,42 +1463,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1730,7 +1486,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1744,7 +1500,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1753,37 +1509,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1793,27 +1543,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1826,7 +1571,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1849,7 +1594,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1857,21 +1602,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1909,7 +1639,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1923,9 +1653,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1933,7 +1663,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1949,7 +1679,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1963,9 +1693,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1973,35 +1703,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -2010,7 +1740,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -2025,7 +1755,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -2040,7 +1770,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -2049,7 +1779,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -2067,12 +1797,88 @@ "details": null, "mono_item_kind": { "MonoItemFn": { - "body": [], + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [ + "Deref" + ] + } + }, + { + "Move": { + "local": 2, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 6, + "kind": "ZeroSized", + "ty": 20 + }, + "span": 40, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 16 + }, + { + "mutability": "Not", + "span": 40, + "ty": 21 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], "id": 3, - "name": "std::intrinsics::size_of_val::<[u8]>" + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17h" + "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" }, { "details": null, @@ -2083,432 +1889,222 @@ "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 44 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 45 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 46 - }, - { - "kind": { - "Assign": [ - { - "local": 7, + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 21 - ] } - ] - }, - "span": 46 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 47 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 21 - ] - } - ] - }, - "span": 47 + }, + "target": 1, + "unwind": "Continue" + } }, + "span": 40 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 40, + "ty": 1 + }, + { + "mutability": "Not", + "span": 40, + "ty": 7 + }, + { + "mutability": "Not", + "span": 40, + "ty": 1 + } + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 3, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 6, + "local": 3, "projection": [] }, { - "CheckedBinaryOp": [ - "Mul", + "Ref": [ { - "Move": { - "local": 7, - "projection": [] - } + "kind": "ReErased" }, { - "Move": { - "local": 8, - "projection": [] + "Mut": { + "kind": "Default" } + }, + { + "local": 1, + "projection": [] } ] } ] }, - "span": 45 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 48 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 48 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 6, - "projection": [ - { - "Field": [ - 0, - 21 - ] - } - ] - } - } - } - ] - }, - "span": 49 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 6, - "projection": [ - { - "Field": [ - 1, - 22 - ] - } - ] - } - } - } - ] - }, - "span": 50 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 51 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 44 + "span": 40 } ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 43 - } - }, - { - "statements": [], "terminator": { "kind": { "Call": { "args": [ { - "Constant": { - "const_": { - "id": 7, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 69, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - }, - "ty": 24 - }, - "span": 53, - "user_ty": null + "Move": { + "local": 3, + "projection": [] + } + }, + { + "Move": { + "local": 2, + "projection": [] } } ], "destination": { - "local": 3, + "local": 0, "projection": [] }, "func": { "Constant": { "const_": { - "id": 6, + "id": 7, "kind": "ZeroSized", - "ty": 23 + "ty": 22 }, - "span": 52, + "span": 40, "user_ty": null } }, - "target": null, - "unwind": "Unreachable" + "target": 1, + "unwind": { + "Cleanup": 3 + } } }, - "span": 54 + "span": 40 } }, { "statements": [], "terminator": { - "kind": "Return", - "span": 55 + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 2, + "unwind": "Continue" + } + }, + "span": 40 } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 56, - "ty": 1 }, { - "mutability": "Not", - "span": 57, - "ty": 25 + "statements": [], + "terminator": { + "kind": "Return", + "span": 40 + } }, { - "mutability": "Not", - "span": 57, - "ty": 25 - }, - { - "mutability": "Not", - "span": 54, - "ty": 26 - }, - { - "mutability": "Not", - "span": 49, - "ty": 21 - }, - { - "mutability": "Not", - "span": 50, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 45, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 46, - "ty": 21 - }, - { - "mutability": "Mut", - "span": 47, - "ty": 21 - } - ], - "span": 60, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "lhs", - "source_info": { - "scope": 0, - "span": 57 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } + "statements": [], + "terminator": { + "kind": { + "Drop": { + "place": { + "local": 1, + "projection": [] + }, + "target": 4, + "unwind": "Terminate" + } + }, + "span": 40 } }, { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 0, - "span": 57 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } + "statements": [], + "terminator": { + "kind": "Resume", + "span": 40 } - }, + } + ], + "locals": [ { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 58 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } + "mutability": "Mut", + "span": 40, + "ty": 16 }, { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 1, - "span": 59 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } + "mutability": "Not", + "span": 40, + "ty": 12 }, { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 2, - "span": 49 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } + "mutability": "Not", + "span": 40, + "ty": 1 }, { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 2, - "span": 50 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } + "mutability": "Not", + "span": 40, + "ty": 23 } - ] + ], + "span": 40, + "spread_arg": 2, + "var_debug_info": [] } ], - "id": 4, - "name": "core::num::::unchecked_mul::precondition_check" + "id": 3, + "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, - "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, { "details": null, @@ -2516,86 +2112,62 @@ "MonoItemFn": { "body": [ { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [], "terminator": { "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" + "Drop": { + "place": { + "local": 1, + "projection": [ + "Deref", + { + "Field": [ + 0, + 24 ] } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 8, - "kind": "ZeroSized", - "ty": 28 - }, - "span": 61, - "user_ty": null - } + ] }, "target": 1, "unwind": "Continue" } }, - "span": 61 + "span": 41 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 61 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 61, - "ty": 16 - }, - { - "mutability": "Not", - "span": 61, - "ty": 29 + "span": 41, + "ty": 1 }, { "mutability": "Not", - "span": 61, - "ty": 1 + "span": 41, + "ty": 25 } ], - "span": 61, - "spread_arg": 2, + "span": 41, + "spread_arg": null, "var_debug_info": [] } ], - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" + "id": 4, + "name": "std::ptr::drop_in_place::" } }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" + "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" }, { "details": null, @@ -2603,7 +2175,7 @@ "MonoItemFn": { "body": [ { - "arg_count": 2, + "arg_count": 1, "blocks": [ { "statements": [ @@ -2611,7 +2183,7 @@ "kind": { "Assign": [ { - "local": 3, + "local": 2, "projection": [] }, { @@ -2626,25 +2198,21 @@ }, { "local": 1, - "projection": [] + "projection": [ + "Deref" + ] } ] } ] }, - "span": 61 + "span": 41 } ], "terminator": { "kind": { "Call": { "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, { "Move": { "local": 2, @@ -2653,50 +2221,41 @@ } ], "destination": { - "local": 0, + "local": 3, "projection": [] }, "func": { "Constant": { "const_": { - "id": 9, + "id": 8, "kind": "ZeroSized", - "ty": 30 + "ty": 26 }, - "span": 61, + "span": 41, "user_ty": null } }, - "target": 1, + "target": 4, "unwind": { "Cleanup": 3 } } }, - "span": 61 + "span": 41 } }, { "statements": [], "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 61 + "kind": "Resume", + "span": 41 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 61 + "span": 41 } }, { @@ -2706,131 +2265,23 @@ "Drop": { "place": { "local": 1, - "projection": [] + "projection": [ + "Deref", + { + "Field": [ + 0, + 27 + ] + } + ] }, - "target": 4, + "target": 1, "unwind": "Terminate" } }, - "span": 61 + "span": 41 } }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 61 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 61, - "ty": 16 - }, - { - "mutability": "Not", - "span": 61, - "ty": 12 - }, - { - "mutability": "Not", - "span": 61, - "ty": 1 - }, - { - "mutability": "Not", - "span": 61, - "ty": 31 - } - ], - "span": 61, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 5, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 61 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 61 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 61, - "ty": 1 - }, - { - "mutability": "Not", - "span": 61, - "ty": 7 - }, - { - "mutability": "Not", - "span": 61, - "ty": 1 - } - ], - "span": 61, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 5, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ { "statements": [], "terminator": { @@ -2843,48 +2294,51 @@ { "Field": [ 0, - 32 + 27 ] } ] }, - "target": 1, + "target": 2, "unwind": "Continue" } }, - "span": 62 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 62 + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 62, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 62, - "ty": 33 + "span": 41, + "ty": 28 + }, + { + "mutability": "Mut", + "span": 41, + "ty": 29 + }, + { + "mutability": "Mut", + "span": 41, + "ty": 1 } ], - "span": 62, + "span": 41, "spread_arg": null, "var_debug_info": [] } ], - "id": 6, - "name": "std::ptr::drop_in_place::" + "id": 4, + "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" + "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" }, { "details": null, @@ -2923,7 +2377,7 @@ } ] }, - "span": 62 + "span": 41 } ], "terminator": { @@ -2944,118 +2398,61 @@ "func": { "Constant": { "const_": { - "id": 10, + "id": 9, "kind": "ZeroSized", - "ty": 34 + "ty": 30 }, - "span": 62, + "span": 41, "user_ty": null } }, - "target": 4, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 62 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 62 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 62 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 35 - ] - } - ] - }, "target": 1, - "unwind": "Terminate" + "unwind": "Continue" } }, - "span": 62 + "span": 41 } }, { "statements": [], "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 35 - ] - } - ] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 62 + "kind": "Return", + "span": 41 } } ], "locals": [ { "mutability": "Mut", - "span": 62, + "span": 41, "ty": 1 }, { "mutability": "Not", - "span": 62, - "ty": 36 + "span": 41, + "ty": 31 }, { "mutability": "Mut", - "span": 62, - "ty": 37 + "span": 41, + "ty": 32 }, { "mutability": "Mut", - "span": 62, + "span": 41, "ty": 1 } ], - "span": 62, + "span": 41, "spread_arg": null, "var_debug_info": [] } ], - "id": 6, - "name": "std::ptr::drop_in_place::>" + "id": 4, + "name": "std::ptr::drop_in_place::>" } }, - "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" + "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" }, { "details": null, @@ -3064,6 +2461,45 @@ "body": [ { "arg_count": 1, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 41 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 41, + "ty": 1 + }, + { + "mutability": "Not", + "span": 41, + "ty": 21 + } + ], + "span": 41, + "spread_arg": null, + "var_debug_info": [] + } + ], + "id": 4, + "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + } + }, + "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, "blocks": [ { "statements": [ @@ -3071,144 +2507,71 @@ "kind": { "Assign": [ { - "local": 2, + "local": 0, "projection": [] }, { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [ - "Deref" - ] + "Use": { + "Copy": { + "local": 2, + "projection": [] } - ] + } } ] }, - "span": 62 + "span": 43 } ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 38 - }, - "span": 62, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 62 - } - }, - { - "statements": [], "terminator": { "kind": "Return", - "span": 62 + "span": 42 } } ], "locals": [ { "mutability": "Mut", - "span": 62, - "ty": 1 + "span": 44, + "ty": 33 }, { "mutability": "Not", - "span": 62, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 62, - "ty": 40 + "span": 45, + "ty": 34 }, { - "mutability": "Mut", - "span": 62, - "ty": 1 + "mutability": "Not", + "span": 46, + "ty": 33 } ], - "span": 62, + "span": 47, "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 6, - "name": "std::ptr::drop_in_place::>" - } - }, - "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ + "var_debug_info": [ { - "statements": [], - "terminator": { - "kind": "Return", - "span": 62 + "argument_index": 2, + "composite": null, + "name": "slice", + "source_info": { + "scope": 0, + "span": 46 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } } } - ], - "locals": [ - { - "mutability": "Mut", - "span": 62, - "ty": 1 - }, - { - "mutability": "Not", - "span": 62, - "ty": 29 - } - ], - "span": 62, - "spread_arg": null, - "var_debug_info": [] + ] } ], - "id": 6, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" + "id": 5, + "name": "core::str::traits:: for std::ops::RangeFull>::index" } }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" + "symbol_name": "_ZN4core3str6traits99_$LT$impl$u20$core..slice..index..SliceIndex$LT$str$GT$$u20$for$u20$core..ops..range..RangeFull$GT$5index17h" }, { "details": null, @@ -3224,13 +2587,13 @@ "kind": { "StorageLive": 5 }, - "span": 64 + "span": 50 }, { "kind": { "StorageLive": 6 }, - "span": 65 + "span": 51 }, { "kind": { @@ -3248,99 +2611,57 @@ "projection": [] } }, - 41 - ] - } - ] - }, - "span": 65 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 64 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 66 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 42 + 36 ] } ] }, - "span": 67 + "span": 51 }, { "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 25 - ] - } - ] + "StorageLive": 13 }, - "span": 68 + "span": 52 }, { "kind": { - "StorageDead": 9 + "StorageLive": 15 }, - "span": 66 + "span": 53 } ], "terminator": { "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 10, - "projection": [] + "Call": { + "args": [ + { + "Copy": { + "local": 3, + "projection": [] + } } + ], + "destination": { + "local": 15, + "projection": [] }, - "targets": { - "branches": [ - [ - 0, - 6 - ] - ], - "otherwise": 7 - } + "func": { + "Constant": { + "const_": { + "id": 10, + "kind": "ZeroSized", + "ty": 35 + }, + "span": 48, + "user_ty": null + } + }, + "target": 10, + "unwind": "Unreachable" } }, - "span": 63 + "span": 49 } }, { @@ -3349,25 +2670,25 @@ "kind": { "StorageDead": 6 }, - "span": 70 + "span": 55 }, { "kind": { "StorageLive": 7 }, - "span": 71 + "span": 56 }, { "kind": { "StorageLive": 19 }, - "span": 71 + "span": 56 }, { "kind": { "StorageLive": 18 }, - "span": 72 + "span": 57 }, { "kind": { @@ -3388,7 +2709,7 @@ { "Constant": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -3408,9 +2729,9 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 73, + "span": 58, "user_ty": null } } @@ -3418,7 +2739,7 @@ } ] }, - "span": 69 + "span": 54 } ], "terminator": { @@ -3441,7 +2762,7 @@ } } }, - "span": 69 + "span": 54 } }, { @@ -3450,18 +2771,18 @@ "kind": { "StorageDead": 7 }, - "span": 75 + "span": 60 }, { "kind": { "StorageDead": 5 }, - "span": 75 + "span": 60 } ], "terminator": { "kind": "Return", - "span": 74 + "span": 59 } }, { @@ -3472,7 +2793,7 @@ "target": 5 } }, - "span": 32 + "span": 29 } }, { @@ -3481,7 +2802,7 @@ "kind": { "StorageDead": 6 }, - "span": 70 + "span": 55 } ], "terminator": { @@ -3490,7 +2811,7 @@ "target": 5 } }, - "span": 32 + "span": 29 } }, { @@ -3529,15 +2850,15 @@ "ptrs": [ [ 0, - 1 + 0 ] ] } } }, - "ty": 24 + "ty": 33 }, - "span": 77, + "span": 62, "user_ty": null } } @@ -3549,11 +2870,11 @@ "func": { "Constant": { "const_": { - "id": 6, + "id": 12, "kind": "ZeroSized", - "ty": 23 + "ty": 38 }, - "span": 76, + "span": 61, "user_ty": null } }, @@ -3561,114 +2882,48 @@ "unwind": "Unreachable" } }, - "span": 78 + "span": 63 } }, { "statements": [ { "kind": { - "StorageDead": 10 + "StorageDead": 12 }, "span": 64 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 64 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 13 - }, - "span": 81 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 13, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 43 - }, - "span": 79, - "user_ty": null - } - }, - "target": 10, - "unwind": "Unreachable" - } }, - "span": 80 - } - }, - { - "statements": [ { "kind": { - "StorageDead": 13 + "StorageLive": 9 }, - "span": 82 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 84 + "span": 65 }, { "kind": { "Assign": [ { - "local": 17, + "local": 9, "projection": [] }, { "BinaryOp": [ - "Sub", + "Eq", { "Copy": { - "local": 3, + "local": 13, "projection": [] } }, { "Constant": { "const_": { - "id": 15, + "id": 11, "kind": { "Allocated": { "align": 8, "bytes": [ - 1, + 0, 0, 0, 0, @@ -3683,9 +2938,9 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 85, + "span": 66, "user_ty": null } } @@ -3693,67 +2948,158 @@ } ] }, - "span": 84 + "span": 67 }, { "kind": { "Assign": [ { - "local": 16, + "local": 5, "projection": [] }, { - "BinaryOp": [ - "BitAnd", + "UnaryOp": [ + "Not", { - "Copy": { - "local": 10, + "Move": { + "local": 9, "projection": [] } - }, + } + ] + } + ] + }, + "span": 68 + }, + { + "kind": { + "StorageDead": 9 + }, + "span": 69 + }, + { + "kind": { + "StorageDead": 13 + }, + "span": 52 + } + ], + "terminator": { + "kind": { + "SwitchInt": { + "discr": { + "Move": { + "local": 5, + "projection": [] + } + }, + "targets": { + "branches": [ + [ + 0, + 4 + ] + ], + "otherwise": 1 + } + } + }, + "span": 50 + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 12 + }, + "span": 64 + }, + { + "kind": { + "StorageDead": 13 + }, + "span": 52 + } + ], + "terminator": { + "kind": { + "Goto": { + "target": 4 + } + }, + "span": 50 + } + }, + { + "statements": [ + { + "kind": { + "StorageDead": 15 + }, + "span": 70 + }, + { + "kind": { + "StorageLive": 12 + }, + "span": 71 + }, + { + "kind": { + "Assign": [ + { + "local": 13, + "projection": [] + }, + { + "Cast": [ + "Transmute", { - "Move": { - "local": 17, + "Copy": { + "local": 1, "projection": [] } - } + }, + 37 ] } ] }, - "span": 83 + "span": 72 }, { "kind": { - "StorageDead": 17 + "StorageLive": 14 }, - "span": 86 + "span": 73 }, { "kind": { "Assign": [ { - "local": 5, + "local": 14, "projection": [] }, { "BinaryOp": [ - "Eq", + "Sub", { - "Move": { - "local": 16, + "Copy": { + "local": 3, "projection": [] } }, { "Constant": { "const_": { - "id": 12, + "id": 14, "kind": { "Allocated": { "align": 8, "bytes": [ - 0, + 1, 0, 0, 0, @@ -3768,9 +3114,9 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 87, + "span": 74, "user_ty": null } } @@ -3778,19 +3124,41 @@ } ] }, - "span": 88 + "span": 73 }, { "kind": { - "StorageDead": 16 + "Assign": [ + { + "local": 12, + "projection": [] + }, + { + "BinaryOp": [ + "BitAnd", + { + "Copy": { + "local": 13, + "projection": [] + } + }, + { + "Move": { + "local": 14, + "projection": [] + } + } + ] + } + ] }, - "span": 87 + "span": 71 }, { "kind": { - "StorageDead": 10 + "StorageDead": 14 }, - "span": 64 + "span": 75 } ], "terminator": { @@ -3798,7 +3166,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 5, + "local": 12, "projection": [] } }, @@ -3806,10 +3174,10 @@ "branches": [ [ 0, - 4 + 6 ] ], - "otherwise": 1 + "otherwise": 7 } } }, @@ -3820,27 +3188,27 @@ "statements": [ { "kind": { - "StorageDead": 13 + "StorageDead": 15 }, - "span": 82 + "span": 70 }, { "kind": { - "StorageLive": 12 + "StorageLive": 11 }, - "span": 91 + "span": 78 }, { "kind": { - "StorageLive": 14 + "StorageLive": 16 }, - "span": 92 + "span": 79 }, { "kind": { "Assign": [ { - "local": 14, + "local": 16, "projection": [] }, { @@ -3851,7 +3219,7 @@ { "Constant": { "const_": { - "id": 17, + "id": 16, "kind": { "Allocated": { "align": 8, @@ -3870,36 +3238,36 @@ "ptrs": [ [ 0, - 2 + 1 ] ] } } }, - "ty": 45 + "ty": 40 }, - "span": 32, + "span": 80, "user_ty": null } }, - 46 + 41 ] } ] }, - "span": 92 + "span": 79 }, { "kind": { - "StorageLive": 15 + "StorageLive": 17 }, - "span": 93 + "span": 81 }, { "kind": { "Assign": [ { - "local": 15, + "local": 17, "projection": [] }, { @@ -3910,7 +3278,7 @@ { "Constant": { "const_": { - "id": 18, + "id": 17, "kind": { "Allocated": { "align": 8, @@ -3929,37 +3297,37 @@ "ptrs": [ [ 0, - 3 + 2 ] ] } } }, - "ty": 47 + "ty": 42 }, - "span": 32, + "span": 81, "user_ty": null } }, - 48 + 43 ] } ] }, - "span": 93 + "span": 81 }, { "kind": { "Assign": [ { - "local": 12, + "local": 11, "projection": [] }, { "Aggregate": [ { "Adt": [ - 8, + 7, 0, [ { @@ -3975,14 +3343,14 @@ [ { "Move": { - "local": 14, + "local": 16, "projection": [] } }, { "Constant": { "const_": { - "id": 19, + "id": 18, "kind": { "Allocated": { "align": 8, @@ -4010,15 +3378,15 @@ } } }, - "ty": 49 + "ty": 44 }, - "span": 32, + "span": 29, "user_ty": null } }, { "Move": { - "local": 15, + "local": 17, "projection": [] } } @@ -4027,19 +3395,19 @@ } ] }, - "span": 94 + "span": 82 }, { "kind": { - "StorageDead": 15 + "StorageDead": 17 }, - "span": 95 + "span": 83 }, { "kind": { - "StorageDead": 14 + "StorageDead": 16 }, - "span": 95 + "span": 83 } ], "terminator": { @@ -4048,23 +3416,23 @@ "args": [ { "Move": { - "local": 12, + "local": 11, "projection": [] } } ], "destination": { - "local": 11, + "local": 10, "projection": [] }, "func": { "Constant": { "const_": { - "id": 16, + "id": 15, "kind": "ZeroSized", - "ty": 44 + "ty": 39 }, - "span": 89, + "span": 76, "user_ty": null } }, @@ -4072,7 +3440,7 @@ "unwind": "Terminate" } }, - "span": 90 + "span": 77 } }, { @@ -4082,7 +3450,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 13, + "local": 15, "projection": [] } }, @@ -4097,7 +3465,7 @@ } } }, - "span": 82 + "span": 70 } }, { @@ -4113,7 +3481,7 @@ "Use": { "Constant": { "const_": { - "id": 20, + "id": 19, "kind": { "Allocated": { "align": 8, @@ -4133,16 +3501,16 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 97, + "span": 85, "user_ty": null } } } ] }, - "span": 97 + "span": 85 } ], "terminator": { @@ -4151,7 +3519,7 @@ "target": 14 } }, - "span": 96 + "span": 84 } }, { @@ -4170,7 +3538,7 @@ "DivisionByZero": { "Constant": { "const_": { - "id": 21, + "id": 20, "kind": { "Allocated": { "align": 8, @@ -4190,9 +3558,9 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -4201,7 +3569,7 @@ "unwind": "Terminate" } }, - "span": 98 + "span": 86 } }, { @@ -4219,7 +3587,7 @@ { "Constant": { "const_": { - "id": 21, + "id": 20, "kind": { "Allocated": { "align": 8, @@ -4239,9 +3607,9 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 32, + "span": 29, "user_ty": null } }, @@ -4255,7 +3623,7 @@ } ] }, - "span": 98 + "span": 86 } ], "terminator": { @@ -4264,7 +3632,7 @@ "target": 14 } }, - "span": 96 + "span": 84 } }, { @@ -4273,7 +3641,7 @@ "kind": { "StorageLive": 20 }, - "span": 99 + "span": 87 }, { "kind": { @@ -4292,7 +3660,7 @@ } ] }, - "span": 99 + "span": 87 }, { "kind": { @@ -4320,25 +3688,25 @@ } ] }, - "span": 100 + "span": 88 }, { "kind": { "StorageDead": 20 }, - "span": 101 + "span": 89 }, { "kind": { "StorageDead": 18 }, - "span": 102 + "span": 90 }, { "kind": { "StorageDead": 19 }, - "span": 71 + "span": 56 } ], "terminator": { @@ -4361,118 +3729,118 @@ } } }, - "span": 71 + "span": 56 } } ], "locals": [ { "mutability": "Mut", - "span": 103, + "span": 91, "ty": 1 }, { "mutability": "Not", - "span": 104, - "ty": 50 + "span": 92, + "ty": 45 }, { "mutability": "Not", - "span": 104, - "ty": 25 + "span": 92, + "ty": 37 }, { "mutability": "Not", - "span": 104, - "ty": 25 + "span": 92, + "ty": 37 }, { "mutability": "Not", - "span": 104, - "ty": 25 + "span": 92, + "ty": 37 }, { "mutability": "Mut", - "span": 64, - "ty": 22 + "span": 50, + "ty": 46 }, { "mutability": "Mut", - "span": 65, - "ty": 41 + "span": 51, + "ty": 36 }, { "mutability": "Mut", - "span": 71, - "ty": 22 + "span": 56, + "ty": 46 }, { "mutability": "Not", - "span": 78, - "ty": 26 - }, - { - "mutability": "Mut", - "span": 67, - "ty": 42 + "span": 63, + "ty": 47 }, { "mutability": "Mut", - "span": 105, - "ty": 25 + "span": 65, + "ty": 46 }, { "mutability": "Not", - "span": 90, - "ty": 26 + "span": 77, + "ty": 47 }, { "mutability": "Mut", - "span": 91, - "ty": 51 + "span": 78, + "ty": 48 }, { "mutability": "Mut", - "span": 81, - "ty": 52 + "span": 71, + "ty": 37 }, { "mutability": "Mut", - "span": 92, - "ty": 46 + "span": 93, + "ty": 37 }, { "mutability": "Mut", - "span": 93, - "ty": 48 + "span": 73, + "ty": 37 }, { "mutability": "Mut", - "span": 83, - "ty": 25 + "span": 53, + "ty": 49 }, { "mutability": "Mut", - "span": 84, - "ty": 25 + "span": 79, + "ty": 41 + }, + { + "mutability": "Mut", + "span": 81, + "ty": 43 }, { "mutability": "Not", - "span": 72, - "ty": 25 + "span": 57, + "ty": 37 }, { "mutability": "Mut", - "span": 69, - "ty": 22 + "span": 54, + "ty": 46 }, { "mutability": "Mut", - "span": 99, - "ty": 25 + "span": 87, + "ty": 37 } ], - "span": 122, + "span": 109, "spread_arg": null, "var_debug_info": [ { @@ -4481,7 +3849,7 @@ "name": "data", "source_info": { "scope": 0, - "span": 104 + "span": 92 }, "value": { "Place": { @@ -4496,7 +3864,7 @@ "name": "size", "source_info": { "scope": 0, - "span": 104 + "span": 92 }, "value": { "Place": { @@ -4511,7 +3879,7 @@ "name": "align", "source_info": { "scope": 0, - "span": 104 + "span": 92 }, "value": { "Place": { @@ -4526,7 +3894,7 @@ "name": "len", "source_info": { "scope": 0, - "span": 104 + "span": 92 }, "value": { "Place": { @@ -4541,7 +3909,7 @@ "name": "ptr", "source_info": { "scope": 1, - "span": 106 + "span": 94 }, "value": { "Place": { @@ -4556,7 +3924,7 @@ "name": "align", "source_info": { "scope": 1, - "span": 107 + "span": 95 }, "value": { "Place": { @@ -4566,17 +3934,33 @@ } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "self", + "name": "is_zst", "source_info": { - "scope": 2, - "span": 108 + "scope": 1, + "span": 96 }, "value": { - "Place": { - "local": 6, - "projection": [] + "Const": { + "const_": { + "id": 21, + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 46 + }, + "span": 97, + "user_ty": null } } }, @@ -4585,43 +3969,59 @@ "composite": null, "name": "ptr", "source_info": { - "scope": 4, - "span": 109 + "scope": 2, + "span": 98 }, "value": { "Place": { - "local": 9, + "local": 6, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "self", + "name": "align", "source_info": { - "scope": 5, - "span": 110 + "scope": 2, + "span": 98 }, "value": { "Place": { - "local": 9, + "local": 3, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 3, "composite": null, - "name": "self", + "name": "is_zst", "source_info": { - "scope": 6, - "span": 111 + "scope": 2, + "span": 98 }, "value": { - "Place": { - "local": 9, - "projection": [] + "Const": { + "const_": { + "id": 21, + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 46 + }, + "span": 97, + "user_ty": null } } }, @@ -4630,8 +4030,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 7, - "span": 112 + "scope": 3, + "span": 99 }, "value": { "Place": { @@ -4645,8 +4045,8 @@ "composite": null, "name": "align", "source_info": { - "scope": 7, - "span": 113 + "scope": 3, + "span": 100 }, "value": { "Place": { @@ -4660,8 +4060,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 8, - "span": 114 + "scope": 4, + "span": 101 }, "value": { "Place": { @@ -4675,8 +4075,8 @@ "composite": null, "name": "self", "source_info": { - "scope": 9, - "span": 115 + "scope": 5, + "span": 102 }, "value": { "Place": { @@ -4690,8 +4090,23 @@ "composite": null, "name": "self", "source_info": { - "scope": 10, - "span": 111 + "scope": 6, + "span": 103 + }, + "value": { + "Place": { + "local": 6, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 7, + "span": 104 }, "value": { "Place": { @@ -4705,13 +4120,13 @@ "composite": null, "name": "pieces", "source_info": { - "scope": 11, - "span": 116 + "scope": 8, + "span": 105 }, "value": { "Const": { "const_": { - "id": 22, + "id": 16, "kind": { "Allocated": { "align": 8, @@ -4730,71 +4145,26 @@ "ptrs": [ [ 0, - 4 + 1 ] ] } } }, - "ty": 45 + "ty": 40 }, - "span": 117, + "span": 80, "user_ty": null } } }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 118 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 119 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 110 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, { "argument_index": 1, "composite": null, "name": "self", "source_info": { - "scope": 14, - "span": 111 + "scope": 9, + "span": 106 }, "value": { "Place": { @@ -4808,8 +4178,8 @@ "composite": null, "name": "size", "source_info": { - "scope": 15, - "span": 120 + "scope": 14, + "span": 107 }, "value": { "Place": { @@ -4823,8 +4193,8 @@ "composite": null, "name": "len", "source_info": { - "scope": 15, - "span": 121 + "scope": 14, + "span": 108 }, "value": { "Place": { @@ -4838,8 +4208,8 @@ "composite": null, "name": "max_len", "source_info": { - "scope": 16, - "span": 72 + "scope": 15, + "span": 57 }, "value": { "Place": { @@ -4851,7 +4221,7 @@ ] } ], - "id": 7, + "id": 6, "name": "std::slice::from_raw_parts::precondition_check" } }, @@ -4878,7 +4248,7 @@ "Use": { "Constant": { "const_": { - "id": 23, + "id": 22, "kind": { "Allocated": { "align": 1, @@ -4893,61 +4263,40 @@ }, "ty": 17 }, - "span": 124, + "span": 111, "user_ty": null } } } ] }, - "span": 124 + "span": 111 } ], "terminator": { "kind": "Return", - "span": 123 + "span": 110 } } ], "locals": [ { "mutability": "Mut", - "span": 125, + "span": 112, "ty": 17 }, { "mutability": "Not", - "span": 126, + "span": 113, "ty": 1 } ], - "span": 127, + "span": 114, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 126 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], - "id": 9, + "id": 8, "name": "<() as std::process::Termination>::report" } }, @@ -4967,7 +4316,7 @@ "kind": { "StorageLive": 1 }, - "span": 129 + "span": 116 }, { "kind": { @@ -4980,14 +4329,14 @@ "Aggregate": [ { "Adt": [ - 11, + 10, 0, [ { "Type": 9 }, { - "Type": 53 + "Type": 50 } ], null, @@ -4998,7 +4347,7 @@ { "Constant": { "const_": { - "id": 24, + "id": 23, "kind": { "Allocated": { "align": 8, @@ -5026,16 +4375,16 @@ } } }, - "ty": 35 + "ty": 27 }, - "span": 130, - "user_ty": 0 + "span": 29, + "user_ty": null } }, { "Constant": { "const_": { - "id": 12, + "id": 11, "kind": { "Allocated": { "align": 8, @@ -5055,9 +4404,9 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 131, + "span": 117, "user_ty": null } } @@ -5066,7 +4415,7 @@ } ] }, - "span": 132 + "span": 118 }, { "kind": { @@ -5079,7 +4428,7 @@ "Aggregate": [ { "Adt": [ - 12, + 11, 0, [], null, @@ -5098,3834 +4447,43 @@ } ] }, - "span": 133 + "span": 119 }, { "kind": { "StorageDead": 1 }, - "span": 134 + "span": 120 } ], "terminator": { "kind": "Return", - "span": 128 + "span": 115 } } ], "locals": [ { "mutability": "Mut", - "span": 135, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 129, - "ty": 32 - } - ], - "span": 136, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 10, - "name": "std::string::String::new" - } - }, - "symbol_name": "_ZN5alloc6string6String3new17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Constant": { - "const_": { - "id": 25, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 22 - }, - "span": 137, - "user_ty": null - } - }, - "targets": { - "branches": [ - [ - 0, - 1 - ] - ], - "otherwise": 3 - } - } - }, - "span": 137 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 139 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 55 - ] - }, - { - "Field": [ - 0, - 25 - ] - } - ] - } - } - } - ] - }, - "span": 139 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 4 - } - } - }, - "span": 138 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 141 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 3 - } - }, - "span": 140 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 14, - 0, - [ - { - "Type": 56 - } - ], - null, - null - ] - }, - [] - ] - } - ] - }, - "span": 143 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 142 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 141 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 145 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 146 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "NullaryOp": [ - "SizeOf", - 9 - ] - } - ] - }, - "span": 147 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 148 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 55 - ] - }, - { - "Field": [ - 0, - 25 - ] - } - ] - } - } - } - ] - }, - "span": 148 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 144 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 22 - ] - } - ] - }, - "span": 149 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 7 - ] - ], - "otherwise": 6 - } - } - }, - "span": 144 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 150 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 10, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 26, - "kind": "ZeroSized", - "ty": 57 - }, - "span": 151, - "user_ty": null - } - }, - "target": 7, - "unwind": "Unreachable" - } - }, - "span": 152 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 153 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "BinaryOp": [ - "MulUnchecked", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 154 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 155 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 155 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 156 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 157 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 15, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 158 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 159 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 160 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 161 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 59 - ] - }, - { - "Field": [ - 0, - 60 - ] - } - ] - } - } - } - ] - }, - "span": 161 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 59 - ] - }, - { - "Field": [ - 1, - 61 - ] - } - ] - } - } - } - ] - }, - "span": 161 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 162 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 163 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 42 - ] - } - ] - } - } - } - ] - }, - "span": 164 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 42 - ] - } - ] - }, - "span": 163 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 13, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 165 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 166 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 162 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 167 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - "Tuple", - [ - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Copy": { - "local": 7, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 160 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 14, - 1, - [ - { - "Type": 56 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 8, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 168 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 169 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 142 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 170, - "ty": 62 - }, - { - "mutability": "Not", - "span": 171, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 139, - "ty": 25 - }, - { - "mutability": "Not", - "span": 172, - "ty": 25 - }, - { - "mutability": "Not", - "span": 173, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 146, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 148, - "ty": 25 - }, - { - "mutability": "Not", - "span": 174, - "ty": 64 - }, - { - "mutability": "Mut", - "span": 160, - "ty": 56 - }, - { - "mutability": "Mut", - "span": 144, - "ty": 22 - }, - { - "mutability": "Not", - "span": 152, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 156, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 175, - "ty": 60 - }, - { - "mutability": "Mut", - "span": 163, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 164, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 161, - "ty": 60 - }, - { - "mutability": "Mut", - "span": 161, - "ty": 61 - } - ], - "span": 187, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 171 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 172 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 2, - "span": 173 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 3, - "span": 174 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 176 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 6, - "span": 177 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 9, - "span": 178 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 9, - "span": 179 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 10, - "span": 180 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 60 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 11, - "span": 181 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 61 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 11, - "span": 181 - }, - "value": { - "Place": { - "local": 16, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 12, - "span": 182 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 183 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 60 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 14, - "span": 184 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 61 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 14, - "span": 184 - }, - "value": { - "Const": { - "const_": { - "id": 27, - "kind": "ZeroSized", - "ty": 61 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 60 - ] - } - ], - "ty": 59 - }, - "name": "unique", - "source_info": { - "scope": 15, - "span": 185 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 61 - ] - } - ], - "ty": 59 - }, - "name": "unique", - "source_info": { - "scope": 15, - "span": 185 - }, - "value": { - "Const": { - "const_": { - "id": 27, - "kind": "ZeroSized", - "ty": 61 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 60 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 16, - "span": 186 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 61 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 16, - "span": 186 - }, - "value": { - "Const": { - "const_": { - "id": 27, - "kind": "ZeroSized", - "ty": 61 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 13, - "name": "alloc::raw_vec::RawVec::::current_memory" - } - }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 189 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 189 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [ - { - "Field": [ - 0, - 25 - ] - } - ] - } - } - } - ] - }, - "span": 190 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 191 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 188 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 164 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 42 - ] - } - ] - } - } - } - ] - }, - "span": 164 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Move": { - "local": 8, - "projection": [] - } - }, - 66 - ] - } - ] - }, - "span": 195 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 196 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 197 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 197 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 198 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 7, - "projection": [] - } - ] - } - ] - }, - "span": 198 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 199 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 200 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 201 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 7, - "projection": [] - } - ] - } - ] - }, - "span": 201 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 202 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [ - { - "Field": [ - 1, - 58 - ] - } - ] - } - } - } - ] - }, - "span": 202 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 203 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 203 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 203 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 203 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 204 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 12, - "projection": [ - { - "Field": [ - 0, - 67 - ] - } - ] - } - } - } - ] - }, - "span": 204 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Discriminant": { - "local": 13, - "projection": [] - } - } - ] - }, - "span": 205 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 29, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 21 - }, - "span": 205, - "user_ty": null - } - } - ] - } - ] - }, - "span": 205 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 30, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 21 - }, - "span": 205, - "user_ty": null - } - } - ] - } - ] - }, - "span": 205 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 15, - "projection": [] - } - }, - { - "Move": { - "local": 16, - "projection": [] - } - } - ] - } - ] - }, - "span": 205 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 17, - "projection": [] - } - } - } - }, - "span": 205 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 25 - ] - } - ] - }, - "span": 205 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 206 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 203 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 203 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 203 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 203 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 207 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 208 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 10, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 28, - "kind": "ZeroSized", - "ty": 65 - }, - "span": 192, - "user_ty": null - } - }, - "target": 3, - "unwind": "Unreachable" - } - }, - "span": 193 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 209 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 211 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 212 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 212 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 2 - } - }, - "span": 210 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 213, - "ty": 1 - }, - { - "mutability": "Not", - "span": 214, - "ty": 68 - }, - { - "mutability": "Not", - "span": 215, - "ty": 60 - }, - { - "mutability": "Not", - "span": 216, - "ty": 64 - }, - { - "mutability": "Mut", - "span": 217, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 189, - "ty": 69 - }, - { - "mutability": "Mut", - "span": 194, - "ty": 66 - }, - { - "mutability": "Mut", - "span": 197, - "ty": 64 - }, - { - "mutability": "Mut", - "span": 164, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 198, - "ty": 69 - }, - { - "mutability": "Mut", - "span": 200, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 201, - "ty": 69 - }, - { - "mutability": "Mut", - "span": 202, - "ty": 58 - }, - { - "mutability": "Not", - "span": 204, - "ty": 67 - }, - { - "mutability": "Mut", - "span": 204, - "ty": 21 - }, - { - "mutability": "Mut", - "span": 205, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 205, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 205, - "ty": 22 - } - ], - "span": 223, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 214 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 0, - "span": 215 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 216 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 218 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 183 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 3, - "span": 219 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 3, - "span": 220 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 218 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 221 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 222 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - } - ] - } - ], - "id": 17, - "name": "::deallocate" - } - }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 226 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 227 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 228 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 35 - ] - } - ] - } - ] - } - ] - }, - "span": 228 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 229 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 35 - ] - }, - { - "Field": [ - 0, - 59 - ] - }, - { - "Field": [ - 0, - 60 - ] - } - ] - } - } - } - ] - }, - "span": 230 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 164 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 7, - "projection": [ - { - "Field": [ - 0, - 42 - ] - } - ] - } - } - } - ] - }, - "span": 164 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 66 - ] - } - ] - }, - "span": 195 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 196 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 229 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 231 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 232 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 25 - ] - } - ] - } - } - } - ] - }, - "span": 232 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 71, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Copy": { - "local": 4, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 233 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 234 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 234 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 31, - "kind": "ZeroSized", - "ty": 70 - }, - "span": 224, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 225 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 236 - } - ], - "terminator": { - "kind": "Return", - "span": 235 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 237, - "ty": 1 - }, - { - "mutability": "Not", - "span": 238, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 226, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 227, - "ty": 66 - }, - { - "mutability": "Mut", - "span": 232, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 228, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 164, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 230, - "ty": 60 - } - ], - "span": 246, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 238 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 239 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 240 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 60 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 3, - "span": 241 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 61 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 3, - "span": 241 - }, - "value": { - "Const": { - "const_": { - "id": 27, - "kind": "ZeroSized", - "ty": 61 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 183 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 5, - "span": 242 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 5, - "span": 243 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 6, - "span": 244 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 6, - "span": 245 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - } - ] - } - ], - "id": 18, - "name": " as std::ops::Drop>::drop" - } - }, - "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 247 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 248 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 248 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 249 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - } - ] - }, - "span": 249 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "Ne", - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 247 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 247 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 251 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 251 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 25, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 22 - }, - "span": 252, - "user_ty": null - } - } - } - ] - }, - "span": 252 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 253 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 250 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 251 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 251 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 253 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 256 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 256 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 10, - "projection": [] - } - } - ], - "destination": { - "local": 6, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 32, - "kind": "ZeroSized", - "ty": 73 - }, - "span": 254, - "user_ty": null - } - }, - "target": 5, - "unwind": "Unreachable" - } - }, - "span": 255 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 257 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 257 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 33, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 16 - }, - "span": 258, - "user_ty": null - } - } - ] - } - ] - }, - "span": 259 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 258 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 250 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 250 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 262 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 261 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 263 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 264 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 11, - "projection": [] - } - }, - 42 - ] - } - ] - }, - "span": 263 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 265 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 2, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 264 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 42 - ] - } - ] - }, - "span": 265 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 34, - "kind": "ZeroSized", - "ty": 74 - }, - "span": 260, - "user_ty": null - } - }, - "target": 3, - "unwind": "Unreachable" - } - }, - "span": 261 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 266, - "ty": 22 - }, - { - "mutability": "Not", - "span": 267, - "ty": 75 - }, - { - "mutability": "Not", - "span": 268, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 247, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 248, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 249, - "ty": 25 - }, - { - "mutability": "Not", - "span": 269, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 261, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 263, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 265, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 256, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 270, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 270, - "ty": 76 - } - ], - "span": 273, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 267 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 0, - "span": 268 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 1, - "span": 269 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "val", - "source_info": { - "scope": 2, - "span": 271 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 272 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 272 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 19, - "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" - } - }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 275 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 276 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 276 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 35, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 274, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 275 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 278 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Discriminant": { - "local": 2, - "projection": [] - } - } - ] - }, - "span": 275 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 2 - ], - [ - 0, - 4 - ] - ], - "otherwise": 5 - } - } - }, - "span": 277 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 56 - ] - }, - { - "Field": [ - 0, - 60 - ] - } - ] - } - } - } - ] - }, - "span": 281 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 56 - ] - }, - { - "Field": [ - 1, - 64 - ] - } - ] - } - } - } - ] - }, - "span": 282 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 283 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 2, - 53 - ] - } - ] - } - ] - } - ] - }, - "span": 283 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 36, - "kind": "ZeroSized", - "ty": 78 - }, - "span": 279, - "user_ty": null - } - }, - "target": 3, - "unwind": "Continue" - } - }, - "span": 280 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 285 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 284 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 287 - } - ], - "terminator": { - "kind": "Return", - "span": 286 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 288 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 289, - "ty": 1 - }, - { - "mutability": "Not", - "span": 290, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 275, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 276, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 277, - "ty": 6 - }, - { - "mutability": "Not", - "span": 281, - "ty": 60 - }, - { - "mutability": "Not", - "span": 282, - "ty": 64 - }, - { - "mutability": "Mut", - "span": 283, - "ty": 68 - } - ], - "span": 288, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 290 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 281 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } + "span": 121, + "ty": 51 }, { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 1, - "span": 282 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } + "mutability": "Mut", + "span": 116, + "ty": 24 } - ] + ], + "span": 122, + "spread_arg": null, + "var_debug_info": [] } ], - "id": 20, - "name": " as std::ops::Drop>::drop" + "id": 9, + "name": "std::string::String::new" } }, - "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" + "symbol_name": "_ZN5alloc6string6String3new17h" }, { "details": null, @@ -8939,27 +4497,21 @@ "statements": [ { "kind": { - "StorageLive": 14 + "StorageLive": 4 }, - "span": 292 + "span": 124 }, { "kind": { "StorageLive": 5 }, - "span": 293 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 293 + "span": 125 }, { "kind": { "Assign": [ { - "local": 6, + "local": 5, "projection": [] }, { @@ -8975,7 +4527,7 @@ { "Field": [ 0, - 32 + 24 ] } ] @@ -8984,68 +4536,37 @@ } ] }, - "span": 293 + "span": 125 }, { "kind": { - "StorageLive": 7 + "StorageLive": 8 }, - "span": 294 + "span": 126 }, { "kind": { - "StorageLive": 9 + "StorageLive": 6 }, - "span": 295 + "span": 127 }, { "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 32 - ] - }, - { - "Field": [ - 0, - 35 - ] - } - ] - } - ] - } - ] + "StorageLive": 9 }, - "span": 295 + "span": 128 }, { "kind": { - "StorageLive": 10 + "StorageLive": 12 }, - "span": 296 + "span": 129 }, { "kind": { "Assign": [ { - "local": 10, + "local": 12, "projection": [] }, { @@ -9057,25 +4578,31 @@ { "Field": [ 0, - 32 + 24 + ] + }, + { + "Field": [ + 0, + 27 ] }, { "Field": [ 0, - 35 + 52 ] }, { "Field": [ 0, - 59 + 53 ] }, { "Field": [ 0, - 60 + 54 ] } ] @@ -9084,51 +4611,119 @@ } ] }, - "span": 230 + "span": 130 + }, + { + "kind": { + "StorageLive": 11 + }, + "span": 131 + }, + { + "kind": { + "StorageLive": 10 + }, + "span": 132 }, { "kind": { "Assign": [ { - "local": 7, + "local": 11, "projection": [] }, { - "Use": { - "Copy": { - "local": 10, - "projection": [ - { - "Field": [ - 0, - 42 - ] - } + "Cast": [ + "Transmute", + { + "Copy": { + "local": 12, + "projection": [] + } + }, + 55 + ] + } + ] + }, + "span": 133 + }, + { + "kind": { + "Assign": [ + { + "local": 10, + "projection": [] + }, + { + "Cast": [ + "PtrToPtr", + { + "Copy": { + "local": 11, + "projection": [] + } + }, + 56 + ] + } + ] + }, + "span": 132 + }, + { + "kind": { + "Assign": [ + { + "local": 9, + "projection": [] + }, + { + "Aggregate": [ + { + "Adt": [ + 13, + 0, + [ + { + "Type": 9 + } + ], + null, + null ] - } - } + }, + [ + { + "Move": { + "local": 10, + "projection": [] + } + } + ] + ] } ] }, - "span": 164 + "span": 134 }, { "kind": { "StorageDead": 10 }, - "span": 296 + "span": 135 }, { "kind": { - "StorageDead": 9 + "StorageDead": 11 }, - "span": 297 + "span": 131 }, { "kind": { - "StorageLive": 8 + "StorageDead": 12 }, - "span": 298 + "span": 129 }, { "kind": { @@ -9137,6 +4732,64 @@ "local": 8, "projection": [] }, + { + "Cast": [ + "Transmute", + { + "Copy": { + "local": 9, + "projection": [] + } + }, + 55 + ] + } + ] + }, + "span": 133 + }, + { + "kind": { + "StorageDead": 9 + }, + "span": 136 + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Cast": [ + "PtrToPtr", + { + "Copy": { + "local": 8, + "projection": [] + } + }, + 56 + ] + } + ] + }, + "span": 137 + }, + { + "kind": { + "StorageLive": 7 + }, + "span": 138 + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, { "Use": { "Copy": { @@ -9146,13 +4799,13 @@ { "Field": [ 0, - 32 + 24 ] }, { "Field": [ 1, - 25 + 37 ] } ] @@ -9161,30 +4814,30 @@ } ] }, - "span": 298 + "span": 138 }, { "kind": { - "StorageLive": 11 + "StorageLive": 13 }, - "span": 291 + "span": 123 }, { "kind": { "Assign": [ { - "local": 11, + "local": 13, "projection": [] }, { "NullaryOp": [ "UbChecks", - 22 + 46 ] } ] }, - "span": 149 + "span": 139 } ], "terminator": { @@ -9192,7 +4845,7 @@ "SwitchInt": { "discr": { "Move": { - "local": 11, + "local": 13, "projection": [] } }, @@ -9200,29 +4853,36 @@ "branches": [ [ 0, - 3 + 4 ] ], - "otherwise": 1 + "otherwise": 2 } } }, - "span": 291 + "span": 123 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 140 } }, { "statements": [ { "kind": { - "StorageLive": 13 + "StorageLive": 15 }, - "span": 301 + "span": 143 }, { "kind": { "Assign": [ { - "local": 13, + "local": 15, "projection": [] }, { @@ -9230,16 +4890,16 @@ "PtrToPtr", { "Copy": { - "local": 7, + "local": 8, "projection": [] } }, - 50 + 45 ] } ] }, - "span": 301 + "span": 143 } ], "terminator": { @@ -9248,14 +4908,14 @@ "args": [ { "Move": { - "local": 13, + "local": 15, "projection": [] } }, { "Constant": { "const_": { - "id": 15, + "id": 14, "kind": { "Allocated": { "align": 8, @@ -9275,16 +4935,16 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 32, + "span": 29, "user_ty": null } }, { "Constant": { "const_": { - "id": 15, + "id": 14, "kind": { "Allocated": { "align": 8, @@ -9304,92 +4964,98 @@ } } }, - "ty": 25 + "ty": 37 }, - "span": 32, + "span": 29, "user_ty": null } }, { "Copy": { - "local": 8, + "local": 7, "projection": [] } } ], "destination": { - "local": 12, + "local": 14, "projection": [] }, "func": { "Constant": { "const_": { - "id": 37, + "id": 24, "kind": "ZeroSized", - "ty": 79 + "ty": 57 }, - "span": 299, + "span": 141, "user_ty": null } }, - "target": 2, + "target": 3, "unwind": "Unreachable" } }, - "span": 300 + "span": 142 } }, { "statements": [ { "kind": { - "StorageDead": 13 + "StorageDead": 15 }, - "span": 303 + "span": 145 } ], "terminator": { "kind": { "Goto": { - "target": 3 + "target": 4 } }, - "span": 302 + "span": 144 } }, { "statements": [ { "kind": { - "StorageDead": 11 + "StorageDead": 13 }, - "span": 306 + "span": 148 + }, + { + "kind": { + "StorageLive": 16 + }, + "span": 149 }, { "kind": { "Assign": [ { - "local": 14, + "local": 16, "projection": [] }, { "Aggregate": [ { "RawPtr": [ - 71, + 59, "Not" ] }, [ { "Copy": { - "local": 7, + "local": 6, "projection": [] } }, { "Copy": { - "local": 8, + "local": 7, "projection": [] } } @@ -9398,25 +5064,13 @@ } ] }, - "span": 307 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 308 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 308 + "span": 150 }, { "kind": { "Assign": [ { - "local": 5, + "local": 4, "projection": [] }, { @@ -9426,7 +5080,7 @@ }, "Shared", { - "local": 14, + "local": 16, "projection": [ "Deref" ] @@ -9435,93 +5089,43 @@ } ] }, - "span": 293 + "span": 151 }, { "kind": { - "StorageDead": 6 - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - 24 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 311 - }, - { - "kind": { - "StorageDead": 14 + "StorageDead": 16 }, - "span": 292 + "span": 152 }, { "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref" - ] - } - } - } - ] + "StorageDead": 7 }, - "span": 312 + "span": 153 }, { "kind": { - "StorageLive": 16 + "StorageDead": 6 }, - "span": 313 + "span": 153 }, { "kind": { - "StorageLive": 18 + "StorageDead": 8 }, - "span": 313 + "span": 126 }, { "kind": { - "StorageLive": 15 + "StorageDead": 5 }, - "span": 314 + "span": 154 }, { "kind": { "Assign": [ { - "local": 16, + "local": 3, "projection": [] }, { @@ -9533,87 +5137,18 @@ "projection": [] } }, - 75 - ] - } - ] - }, - "span": 315 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 16, - "projection": [] - } - ] - } - ] - }, - "span": 314 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 316 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - 75 + 33 ] } ] }, - "span": 315 + "span": 155 }, { "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 18, - "projection": [] - } - ] - } - ] + "StorageDead": 4 }, - "span": 316 + "span": 124 } ], "terminator": { @@ -9621,14 +5156,14 @@ "Call": { "args": [ { - "Copy": { - "local": 16, + "Move": { + "local": 2, "projection": [] } }, { - "Copy": { - "local": 18, + "Move": { + "local": 3, "projection": [] } } @@ -9640,152 +5175,110 @@ "func": { "Constant": { "const_": { - "id": 38, + "id": 25, "kind": "ZeroSized", - "ty": 80 + "ty": 58 }, - "span": 304, + "span": 146, "user_ty": null } }, - "target": 4, + "target": 1, "unwind": "Continue" } }, - "span": 305 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 17 - }, - "span": 318 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 318 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 313 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 313 - } - ], - "terminator": { - "kind": "Return", - "span": 317 + "span": 147 } } ], "locals": [ { "mutability": "Mut", - "span": 319, - "ty": 22 + "span": 156, + "ty": 33 }, { "mutability": "Not", - "span": 320, - "ty": 81 + "span": 157, + "ty": 60 }, { "mutability": "Not", - "span": 321, - "ty": 82 + "span": 158, + "ty": 34 }, { - "mutability": "Mut", - "span": 321, - "ty": 24 + "mutability": "Not", + "span": 159, + "ty": 33 }, { "mutability": "Not", - "span": 322, - "ty": 24 + "span": 160, + "ty": 61 }, { "mutability": "Mut", - "span": 293, - "ty": 75 + "span": 125, + "ty": 62 }, { "mutability": "Mut", - "span": 293, - "ty": 83 + "span": 127, + "ty": 56 }, { "mutability": "Mut", - "span": 294, - "ty": 42 + "span": 138, + "ty": 37 }, { "mutability": "Mut", - "span": 298, - "ty": 25 + "span": 137, + "ty": 55 }, { "mutability": "Mut", - "span": 295, - "ty": 63 + "span": 128, + "ty": 54 }, { "mutability": "Mut", - "span": 230, - "ty": 60 + "span": 132, + "ty": 56 }, { "mutability": "Mut", - "span": 291, - "ty": 22 - }, - { - "mutability": "Not", - "span": 300, - "ty": 1 + "span": 161, + "ty": 55 }, { "mutability": "Mut", - "span": 301, - "ty": 50 - }, - { - "mutability": "Not", - "span": 323, - "ty": 76 + "span": 130, + "ty": 54 }, { "mutability": "Mut", - "span": 314, - "ty": 84 + "span": 123, + "ty": 46 }, { "mutability": "Not", - "span": 314, - "ty": 75 + "span": 142, + "ty": 1 }, { "mutability": "Mut", - "span": 316, - "ty": 84 + "span": 143, + "ty": 45 }, { "mutability": "Not", - "span": 316, - "ty": 75 + "span": 149, + "ty": 63 } ], - "span": 348, + "span": 171, "spread_arg": null, "var_debug_info": [ { @@ -9794,7 +5287,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 320 + "span": 157 }, "value": { "Place": { @@ -9806,14 +5299,44 @@ { "argument_index": 2, "composite": null, - "name": "other", + "name": "index", + "source_info": { + "scope": 0, + "span": 158 + }, + "value": { + "Place": { + "local": 2, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", + "source_info": { + "scope": 1, + "span": 162 + }, + "value": { + "Place": { + "local": 1, + "projection": [] + } + } + }, + { + "argument_index": 1, + "composite": null, + "name": "self", "source_info": { - "scope": 0, - "span": 321 + "scope": 2, + "span": 163 }, "value": { "Place": { - "local": 2, + "local": 5, "projection": [] } } @@ -9823,47 +5346,42 @@ "composite": null, "name": "self", "source_info": { - "scope": 1, - "span": 324 + "scope": 3, + "span": 164 }, "value": { "Place": { - "local": 1, + "local": 5, "projection": [] } } }, { - "argument_index": 2, + "argument_index": 1, "composite": null, - "name": "index", + "name": "data", "source_info": { - "scope": 1, - "span": 325 + "scope": 12, + "span": 165 }, "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 85 - }, - "span": 32, - "user_ty": null + "Place": { + "local": 6, + "projection": [] } } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "self", + "name": "len", "source_info": { - "scope": 2, - "span": 326 + "scope": 12, + "span": 166 }, "value": { "Place": { - "local": 1, + "local": 7, "projection": [] } } @@ -9871,29 +5389,29 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "data", "source_info": { - "scope": 3, - "span": 327 + "scope": 17, + "span": 167 }, "value": { "Place": { - "local": 1, + "local": 6, "projection": [] } } }, { - "argument_index": 1, + "argument_index": 2, "composite": null, - "name": "self", + "name": "len", "source_info": { - "scope": 4, - "span": 328 + "scope": 17, + "span": 168 }, "value": { "Place": { - "local": 6, + "local": 7, "projection": [] } } @@ -9901,10 +5419,10 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "data_pointer", "source_info": { - "scope": 5, - "span": 329 + "scope": 18, + "span": 169 }, "value": { "Place": { @@ -9916,224 +5434,369 @@ { "argument_index": 1, "composite": null, - "name": "self", + "name": "v", "source_info": { - "scope": 6, - "span": 240 + "scope": 19, + "span": 170 }, "value": { "Place": { - "local": 9, + "local": 16, "projection": [] } } + } + ] + } + ], + "id": 12, + "name": ">::index" + } + }, + "symbol_name": "_ZN74_$LT$alloc..string..String$u20$as$u20$core..ops..index..Index$LT$I$GT$$GT$5index17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Move": { + "local": 1, + "projection": [] + } + }, + { + "Constant": { + "const_": { + "id": 27, + "kind": "ZeroSized", + "ty": 34 + }, + "span": 29, + "user_ty": null + } + } + ], + "destination": { + "local": 3, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 26, + "kind": "ZeroSized", + "ty": 64 + }, + "span": 172, + "user_ty": null + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 172 + } }, { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 60 + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 4, + "projection": [] + }, + { + "Use": { + "Copy": { + "local": 2, + "projection": [ + "Deref" + ] + } + } + } + ] + }, + "span": 175 + }, + { + "kind": { + "StorageLive": 6 + }, + "span": 176 + }, + { + "kind": { + "StorageLive": 8 + }, + "span": 176 + }, + { + "kind": { + "StorageLive": 5 + }, + "span": 177 + }, + { + "kind": { + "Assign": [ + { + "local": 6, + "projection": [] + }, + { + "Cast": [ + "Transmute", + { + "Copy": { + "local": 3, + "projection": [] + } + }, + 61 + ] + } + ] + }, + "span": 178 + }, + { + "kind": { + "Assign": [ + { + "local": 5, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 6, + "projection": [] + } + ] + } + ] + }, + "span": 177 + }, + { + "kind": { + "StorageLive": 7 + }, + "span": 179 + }, + { + "kind": { + "Assign": [ + { + "local": 8, + "projection": [] + }, + { + "Cast": [ + "Transmute", + { + "Copy": { + "local": 4, + "projection": [] + } + }, + 61 + ] + } + ] + }, + "span": 178 + }, + { + "kind": { + "Assign": [ + { + "local": 7, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + "Shared", + { + "local": 8, + "projection": [] + } + ] + } ] + }, + "span": 179 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { + "Copy": { + "local": 6, + "projection": [] + } + }, + { + "Copy": { + "local": 8, + "projection": [] + } + } + ], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Constant": { + "const_": { + "id": 28, + "kind": "ZeroSized", + "ty": 65 + }, + "span": 173, + "user_ty": null + } + }, + "target": 2, + "unwind": "Continue" } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 7, - "span": 241 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } + }, + "span": 174 } }, { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 61 - ] - } - ], - "ty": 59 - }, - "name": "self", - "source_info": { - "scope": 7, - "span": 241 - }, - "value": { - "Const": { - "const_": { - "id": 27, - "kind": "ZeroSized", - "ty": 61 + "statements": [ + { + "kind": { + "StorageDead": 7 }, - "span": 32, - "user_ty": null + "span": 181 + }, + { + "kind": { + "StorageDead": 5 + }, + "span": 181 + }, + { + "kind": { + "StorageDead": 8 + }, + "span": 176 + }, + { + "kind": { + "StorageDead": 6 + }, + "span": 176 } + ], + "terminator": { + "kind": "Return", + "span": 180 } - }, + } + ], + "locals": [ { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 183 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } + "mutability": "Mut", + "span": 182, + "ty": 46 }, { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 9, - "span": 330 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } + "mutability": "Not", + "span": 183, + "ty": 60 }, { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 9, - "span": 331 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } + "mutability": "Not", + "span": 184, + "ty": 66 }, { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 14, - "span": 332 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } + "mutability": "Not", + "span": 172, + "ty": 33 }, { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 14, - "span": 333 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } + "mutability": "Mut", + "span": 184, + "ty": 33 }, { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 15, - "span": 334 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } + "mutability": "Mut", + "span": 177, + "ty": 67 }, { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 15, - "span": 335 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } + "mutability": "Not", + "span": 177, + "ty": 61 }, { - "argument_index": 1, - "composite": null, - "name": "v", - "source_info": { - "scope": 16, - "span": 336 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } + "mutability": "Mut", + "span": 179, + "ty": 67 }, + { + "mutability": "Not", + "span": 179, + "ty": 61 + } + ], + "span": 194, + "spread_arg": null, + "var_debug_info": [ { "argument_index": 1, "composite": null, "name": "self", "source_info": { - "scope": 17, - "span": 337 + "scope": 0, + "span": 183 }, "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 85 - }, - "span": 32, - "user_ty": null + "Place": { + "local": 1, + "projection": [] } } }, { "argument_index": 2, "composite": null, - "name": "slice", + "name": "other", "source_info": { - "scope": 17, - "span": 338 + "scope": 0, + "span": 184 }, "value": { "Place": { - "local": 4, + "local": 2, "projection": [] } } @@ -10143,12 +5806,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 18, - "span": 339 + "scope": 1, + "span": 185 }, "value": { "Place": { - "local": 3, + "local": 4, "projection": [] } } @@ -10158,37 +5821,17 @@ "composite": null, "name": "index", "source_info": { - "scope": 18, - "span": 340 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 85 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 19, - "span": 337 + "scope": 1, + "span": 186 }, "value": { "Const": { "const_": { - "id": 39, + "id": 27, "kind": "ZeroSized", - "ty": 85 + "ty": 34 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -10198,12 +5841,12 @@ "composite": null, "name": "slice", "source_info": { - "scope": 19, - "span": 338 + "scope": 2, + "span": 46 }, "value": { "Place": { - "local": 3, + "local": 4, "projection": [] } } @@ -10213,12 +5856,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 20, - "span": 341 + "scope": 3, + "span": 187 }, "value": { "Place": { - "local": 4, + "local": 3, "projection": [] } } @@ -10228,12 +5871,12 @@ "composite": null, "name": "other", "source_info": { - "scope": 20, - "span": 342 + "scope": 3, + "span": 188 }, "value": { "Place": { - "local": 3, + "local": 4, "projection": [] } } @@ -10243,12 +5886,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 21, - "span": 343 + "scope": 4, + "span": 189 }, "value": { "Place": { - "local": 4, + "local": 3, "projection": [] } } @@ -10258,12 +5901,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 22, - "span": 343 + "scope": 5, + "span": 189 }, "value": { "Place": { - "local": 3, + "local": 4, "projection": [] } } @@ -10273,12 +5916,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 23, - "span": 344 + "scope": 6, + "span": 190 }, "value": { "Place": { - "local": 15, + "local": 5, "projection": [] } } @@ -10288,12 +5931,12 @@ "composite": null, "name": "other", "source_info": { - "scope": 23, - "span": 345 + "scope": 6, + "span": 191 }, "value": { "Place": { - "local": 17, + "local": 7, "projection": [] } } @@ -10303,12 +5946,12 @@ "composite": null, "name": "self", "source_info": { - "scope": 24, - "span": 346 + "scope": 7, + "span": 192 }, "value": { "Place": { - "local": 16, + "local": 6, "projection": [] } } @@ -10318,12 +5961,12 @@ "composite": null, "name": "other", "source_info": { - "scope": 24, - "span": 347 + "scope": 7, + "span": 193 }, "value": { "Place": { - "local": 18, + "local": 8, "projection": [] } } @@ -10331,7 +5974,7 @@ ] } ], - "id": 21, + "id": 14, "name": ">::eq" } }, diff --git a/tests/integration/failing/std-to-string.smir.json.expected b/tests/integration/failing/std-to-string.smir.json.expected index f7253a3..e69de29 100644 --- a/tests/integration/failing/std-to-string.smir.json.expected +++ b/tests/integration/failing/std-to-string.smir.json.expected @@ -1,27369 +0,0 @@ -{ - "allocs": [ - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 112, - 116, - 114, - 58, - 58, - 99, - 111, - 112, - 121, - 95, - 110, - 111, - 110, - 111, - 118, - 101, - 114, - 108, - 97, - 112, - 112, - 105, - 110, - 103, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, - 98, - 111, - 116, - 104, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 97, - 114, - 103, - 117, - 109, - 101, - 110, - 116, - 115, - 32, - 97, - 114, - 101, - 32, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 32, - 97, - 110, - 100, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108, - 32, - 97, - 110, - 100, - 32, - 116, - 104, - 101, - 32, - 115, - 112, - 101, - 99, - 105, - 102, - 105, - 101, - 100, - 32, - 109, - 101, - 109, - 111, - 114, - 121, - 32, - 114, - 97, - 110, - 103, - 101, - 115, - 32, - 100, - 111, - 32, - 110, - 111, - 116, - 32, - 111, - 118, - 101, - 114, - 108, - 97, - 112 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 23 - ] - ] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 42, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 24 - ] - ] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 117, - 115, - 105, - 122, - 101, - 58, - 58, - 117, - 110, - 99, - 104, - 101, - 99, - 107, - 101, - 100, - 95, - 109, - 117, - 108, - 32, - 99, - 97, - 110, - 110, - 111, - 116, - 32, - 111, - 118, - 101, - 114, - 102, - 108, - 111, - 119 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 112, - 116, - 114, - 58, - 58, - 114, - 101, - 97, - 100, - 95, - 118, - 111, - 108, - 97, - 116, - 105, - 108, - 101, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, - 116, - 104, - 101, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 97, - 114, - 103, - 117, - 109, - 101, - 110, - 116, - 32, - 105, - 115, - 32, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 32, - 97, - 110, - 100, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 78, - 111, - 110, - 78, - 117, - 108, - 108, - 58, - 58, - 110, - 101, - 119, - 95, - 117, - 110, - 99, - 104, - 101, - 99, - 107, - 101, - 100, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 97, - 116, - 32, - 116, - 104, - 101, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 105, - 115, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 117, - 110, - 115, - 97, - 102, - 101, - 32, - 112, - 114, - 101, - 99, - 111, - 110, - 100, - 105, - 116, - 105, - 111, - 110, - 40, - 115, - 41, - 32, - 118, - 105, - 111, - 108, - 97, - 116, - 101, - 100, - 58, - 32, - 115, - 108, - 105, - 99, - 101, - 58, - 58, - 102, - 114, - 111, - 109, - 95, - 114, - 97, - 119, - 95, - 112, - 97, - 114, - 116, - 115, - 32, - 114, - 101, - 113, - 117, - 105, - 114, - 101, - 115, - 32, - 116, - 104, - 101, - 32, - 112, - 111, - 105, - 110, - 116, - 101, - 114, - 32, - 116, - 111, - 32, - 98, - 101, - 32, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 32, - 97, - 110, - 100, - 32, - 110, - 111, - 110, - 45, - 110, - 117, - 108, - 108, - 44, - 32, - 97, - 110, - 100, - 32, - 116, - 104, - 101, - 32, - 116, - 111, - 116, - 97, - 108, - 32, - 115, - 105, - 122, - 101, - 32, - 111, - 102, - 32, - 116, - 104, - 101, - 32, - 115, - 108, - 105, - 99, - 101, - 32, - 110, - 111, - 116, - 32, - 116, - 111, - 32, - 101, - 120, - 99, - 101, - 101, - 100, - 32, - 96, - 105, - 115, - 105, - 122, - 101, - 58, - 58, - 77, - 65, - 88, - 96 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 110, - 111, - 110, - 111, - 118, - 101, - 114, - 108, - 97, - 112, - 112, - 105, - 110, - 103, - 58, - 32, - 96, - 115, - 105, - 122, - 101, - 95, - 111, - 102, - 58, - 58, - 60, - 84, - 62, - 40, - 41, - 32, - 42, - 32, - 99, - 111, - 117, - 110, - 116, - 96, - 32, - 111, - 118, - 101, - 114, - 102, - 108, - 111, - 119, - 115, - 32, - 97, - 32, - 117, - 115, - 105, - 122, - 101 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Static": 139 - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 97, - 98, - 99, - 100 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Not", - "provenance": { - "ptrs": [ - [ - 0, - 25 - ] - ] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 97, - 115, - 115, - 101, - 114, - 116, - 105, - 111, - 110, - 32, - 102, - 97, - 105, - 108, - 101, - 100, - 58, - 32, - 97, - 32, - 61, - 61, - 32, - 34, - 97, - 98, - 99, - 100, - 34 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 97, - 98, - 99, - 100 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 95, - 116, - 111, - 58, - 32, - 97, - 108, - 105, - 103, - 110, - 32, - 105, - 115, - 32, - 110, - 111, - 116, - 32, - 97, - 32, - 112, - 111, - 119, - 101, - 114, - 45, - 111, - 102, - 45, - 116, - 119, - 111 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 105, - 115, - 95, - 97, - 108, - 105, - 103, - 110, - 101, - 100, - 95, - 116, - 111, - 58, - 32, - 97, - 108, - 105, - 103, - 110, - 32, - 105, - 115, - 32, - 110, - 111, - 116, - 32, - 97, - 32, - 112, - 111, - 119, - 101, - 114, - 45, - 111, - 102, - 45, - 116, - 119, - 111 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], - [ - { - "Memory": { - "align": 1, - "bytes": [ - 97, - 98, - 99, - 100 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ] - ], - "functions": [ - [ - { - "NormalSym": "_ZN3std2rt19lang_start_internal17h" - } - ], - [ - { - "NormalSym": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - } - ], - [ - { - "NormalSym": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" - } - ], - [ - { - "IntrinsicSym": "black_box" - } - ], - [ - { - "NormalSym": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" - } - ], - [ - { - "NormalSym": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" - } - ], - [ - { - "NormalSym": "_ZN4core9panicking14panic_nounwind17h" - } - ], - [ - { - "IntrinsicSym": "ctpop" - } - ], - [ - { - "NormalSym": "_ZN4core9panicking9panic_fmt17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ops8function6FnOnce9call_once17h" - } - ], - [ - { - "NormalSym": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" - } - ], - [ - { - "NormalSym": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - } - ], - [ - { - "NormalSym": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - } - ], - [ - { - "NormalSym": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" - } - ], - [ - { - "IntrinsicSym": "unlikely" - } - ], - [ - { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" - } - ], - [ - { - "NormalSym": "_ZN5alloc7raw_vec12handle_error17h" - } - ], - [ - { - "NormalSym": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" - } - ], - [ - { - "NormalSym": "" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr13read_volatile18precondition_check17h" - } - ], - [ - { - "IntrinsicSym": "volatile_load" - } - ], - [ - { - "NormalSym": "__" - } - ], - [ - { - "NormalSym": "_ZN5alloc5alloc5alloc17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" - } - ], - [ - { - "NormalSym": "_ZN4core5alloc6layout6Layout5array5inner17h" - } - ], - [ - { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" - } - ], - [ - { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" - } - ], - [ - { - "NormalSym": "" - } - ], - [ - { - "NormalSym": "_ZN5alloc5alloc6Global10alloc_impl17h" - } - ], - [ - { - "NoOpSym": "" - } - ], - [ - { - "IntrinsicSym": "size_of_val" - } - ], - [ - { - "IntrinsicSym": "compare_bytes" - } - ], - [ - { - "NormalSym": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" - } - ], - [ - { - "NormalSym": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" - } - ], - [ - { - "NormalSym": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" - } - ], - [ - { - "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" - } - ], - [ - { - "NormalSym": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" - } - ], - [ - { - "NormalSym": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" - } - ], - [ - { - "NormalSym": "_ZN4core9panicking5panic17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" - } - ], - [ - { - "NoOpSym": "" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" - } - ], - [ - { - "NormalSym": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" - } - ], - [ - { - "NoOpSym": "" - } - ] - ], - "items": [ - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 0, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 75, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 10 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 771, - "user_ty": null - } - } - } - ] - }, - "span": 771 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 1, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 74, - "kind": "ZeroSized", - "ty": 116 - }, - "span": 769, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 770 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 773 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 77, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 11 - ] - ] - } - } - }, - "ty": 112 - }, - "span": 774, - "user_ty": null - } - } - } - ] - }, - "span": 774 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 76, - "kind": "ZeroSized", - "ty": 117 - }, - "span": 772, - "user_ty": null - } - }, - "target": 2, - "unwind": { - "Cleanup": 6 - } - } - }, - "span": 772 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 772 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 775 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 79, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 29, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 12 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 6, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 78, - "kind": "ZeroSized", - "ty": 118 - }, - "span": 776, - "user_ty": null - } - }, - "target": null, - "unwind": { - "Cleanup": 6 - } - } - }, - "span": 776 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 777 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 7, - "unwind": "Terminate" - } - }, - "span": 775 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 778 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 779, - "ty": 1 - }, - { - "mutability": "Not", - "span": 780, - "ty": 24 - }, - { - "mutability": "Mut", - "span": 771, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 772, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 773, - "ty": 111 - }, - { - "mutability": "Mut", - "span": 774, - "ty": 112 - }, - { - "mutability": "Mut", - "span": 776, - "ty": 41 - } - ], - "span": 778, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 1, - "span": 780 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - }, - { - "arg_count": 0, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 1, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 75, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 4, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 13 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 774, - "user_ty": null - } - } - } - ] - }, - "span": 774 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 774 - } - ], - "terminator": { - "kind": "Return", - "span": 774 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 774, - "ty": 112 - }, - { - "mutability": "Mut", - "span": 774, - "ty": 25 - } - ], - "span": 774, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 41, - "name": "main" - } - }, - "symbol_name": "_ZN13std_to_string4main17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 1 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Closure": [ - 1, - [ - { - "Type": 1 - }, - { - "Type": 2 - }, - { - "Type": 3 - }, - { - "Type": 4 - } - ] - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 3 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 8, - "projection": [] - } - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Move": { - "local": 7, - "projection": [] - } - }, - 5 - ] - } - ] - }, - "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 5, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 0, - "kind": "ZeroSized", - "ty": 0 - }, - "span": 0, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 1 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 6 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 5, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 6 - ] - } - ] - } - } - } - ] - }, - "span": 7 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 8 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 8 - } - ], - "terminator": { - "kind": "Return", - "span": 5 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 9, - "ty": 6 - }, - { - "mutability": "Not", - "span": 10, - "ty": 7 - }, - { - "mutability": "Not", - "span": 11, - "ty": 6 - }, - { - "mutability": "Not", - "span": 12, - "ty": 8 - }, - { - "mutability": "Not", - "span": 13, - "ty": 9 - }, - { - "mutability": "Mut", - "span": 1, - "ty": 10 - }, - { - "mutability": "Mut", - "span": 2, - "ty": 5 - }, - { - "mutability": "Mut", - "span": 2, - "ty": 11 - }, - { - "mutability": "Not", - "span": 3, - "ty": 12 - } - ], - "span": 14, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "argc", - "source_info": { - "scope": 0, - "span": 11 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "argv", - "source_info": { - "scope": 0, - "span": 12 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "sigpipe", - "source_info": { - "scope": 0, - "span": 13 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 7 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - } - ] - } - ], - "id": 0, - "name": "std::rt::lang_start::<()>" - } - }, - "symbol_name": "_ZN3std2rt10lang_start17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 17 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 16 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 18 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - } - ] - }, - "span": 18 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 1, - "kind": "ZeroSized", - "ty": 13 - }, - "span": 15, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 16 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 20 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 2, - "kind": "ZeroSized", - "ty": 14 - }, - "span": 19, - "user_ty": null - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 17 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 22 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 23 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - }, - { - "Field": [ - 0, - 9 - ] - } - ] - } - } - } - ] - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 16 - ] - } - ] - }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 27 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 4 - } - ], - "terminator": { - "kind": "Return", - "span": 21 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 28, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 3, - "ty": 11 - }, - { - "mutability": "Mut", - "span": 17, - "ty": 17 - }, - { - "mutability": "Mut", - "span": 16, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 18, - "ty": 7 - }, - { - "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, - "ty": 9 - } - ], - "span": 3, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": null, - "composite": null, - "name": "main", - "source_info": { - "scope": 0, - "span": 10 - }, - "value": { - "Place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 7 - ] - } - ] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 29 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] - } - ], - "id": 1, - "name": "std::rt::lang_start::<()>::{closure#0}" - } - }, - "symbol_name": "_ZN3std2rt10lang_start28_$u7b$$u7b$closure$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 3, - "kind": "ZeroSized", - "ty": 19 - }, - "span": 31, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 33 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 5, - "kind": "ZeroSized", - "ty": 20 - }, - "span": 34, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 35 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 36 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 37, - "ty": 1 - }, - { - "mutability": "Not", - "span": 38, - "ty": 7 - }, - { - "mutability": "Not", - "span": 39, - "ty": 1 - } - ], - "span": 42, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "f", - "source_info": { - "scope": 0, - "span": 38 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 1, - "span": 40 - }, - "value": { - "Place": { - "local": 0, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "dummy", - "source_info": { - "scope": 2, - "span": 41 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 2, - "name": "std::sys::backtrace::__rust_begin_short_backtrace::" - } - }, - "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 45 - }, - { - "kind": { - "StorageLive": 2 - }, - "span": 46 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 23 - ] - } - ] - }, - "span": 47 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 7, - "kind": "ZeroSized", - "ty": 22 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 6, - "kind": "ZeroSized", - "ty": 21 - }, - "span": 43, - "user_ty": 0 - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 44 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 4, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 49 - }, - { - "kind": { - "StorageDead": 2 - }, - "span": 50 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 45 - } - ], - "terminator": { - "kind": "Return", - "span": 48 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 51, - "ty": 24 - }, - { - "mutability": "Not", - "span": 52, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 46, - "ty": 26 - }, - { - "mutability": "Not", - "span": 53, - "ty": 23 - } - ], - "span": 64, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 52 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "s", - "source_info": { - "scope": 1, - "span": 54 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 55 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 56 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 57 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 58 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 59 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 6, - "span": 60 - }, - "value": { - "Const": { - "const_": { - "id": 7, - "kind": "ZeroSized", - "ty": 22 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "s", - "source_info": { - "scope": 7, - "span": 61 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 7, - "span": 62 - }, - "value": { - "Const": { - "const_": { - "id": 7, - "kind": "ZeroSized", - "ty": 22 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "bytes", - "source_info": { - "scope": 8, - "span": 63 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 3, - "name": "::to_string" - } - }, - "symbol_name": "_ZN47_$LT$str$u20$as$u20$alloc..string..ToString$GT$9to_string17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [], - "id": 5, - "name": "std::intrinsics::size_of_val::<[u8]>" - } - }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 5, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 66 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 66 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 67 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 68 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 12, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 8 - ] - ], - "otherwise": 9 - } - } - }, - "span": 65 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 7 - }, - "span": 70 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 29 - ] - } - ] - }, - "span": 71 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 70 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 67 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 68 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 21, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 13 - ] - ], - "otherwise": 14 - } - } - }, - "span": 65 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 74 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 8, - "kind": "ZeroSized", - "ty": 30 - }, - "span": 72, - "user_ty": null - } - }, - "target": 18, - "unwind": "Terminate" - } - }, - "span": 73 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 76 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 76 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 76 - } - ], - "terminator": { - "kind": "Return", - "span": 75 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 7 - } - }, - "span": 32 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 7 - } - }, - "span": 32 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 7 - } - }, - "span": 32 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 166, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 0 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 78, - "user_ty": null - } - } - ], - "destination": { - "local": 10, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 77, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 79 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 12 - }, - "span": 66 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 66 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 15 - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 15, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 12, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 15 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 86, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Move": { - "local": 19, - "projection": [] - } - } - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 18, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 88, - "user_ty": null - } - } - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 88 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 66 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 6, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 6 - ] - ], - "otherwise": 1 - } - } - }, - "span": 66 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 15 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 92 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 93 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 32, - "user_ty": null - } - }, - 35 - ] - } - ] - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 36 - }, - "span": 32, - "user_ty": null - } - }, - 37 - ] - } - ] - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 7, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 16, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 38 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 17, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 96 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 14, - "projection": [] - } - } - ], - "destination": { - "local": 13, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 90, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 15, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 10 - ] - ], - "otherwise": 11 - } - } - }, - "span": 83 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 21 - }, - "span": 70 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 70 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 24 - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 24, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 17, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 24 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 27 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 28 - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 86, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 27, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Move": { - "local": 28, - "projection": [] - } - } - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 28 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 27, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 88, - "user_ty": null - } - } - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageDead": 27 - }, - "span": 88 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 70 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 2 - } - } - }, - "span": 70 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 24 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 92 - }, - { - "kind": { - "StorageLive": 25 - }, - "span": 93 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 32, - "user_ty": null - } - }, - 35 - ] - } - ] - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 26 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 26, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 36 - }, - "span": 32, - "user_ty": null - } - }, - 37 - ] - } - ] - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 7, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 25, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 38 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 26, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "StorageDead": 26 - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 25 - }, - "span": 96 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 23, - "projection": [] - } - } - ], - "destination": { - "local": 22, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 90, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 24, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 15 - ] - ], - "otherwise": 16 - } - } - }, - "span": 83 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 74 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 97, - "ty": 1 - }, - { - "mutability": "Not", - "span": 98, - "ty": 29 - }, - { - "mutability": "Not", - "span": 98, - "ty": 39 - }, - { - "mutability": "Not", - "span": 98, - "ty": 28 - }, - { - "mutability": "Not", - "span": 98, - "ty": 28 - }, - { - "mutability": "Not", - "span": 98, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 66, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 70, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 71, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 74, - "ty": 40 - }, - { - "mutability": "Not", - "span": 79, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 68, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 99, - "ty": 28 - }, - { - "mutability": "Not", - "span": 91, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 92, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 43 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 94, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 68, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 99, - "ty": 28 - }, - { - "mutability": "Not", - "span": 91, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 92, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 43 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 94, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 28 - } - ], - "span": 118, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dst", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "size", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 5, - "composite": null, - "name": "count", - "source_info": { - "scope": 0, - "span": 98 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 100 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 101 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 102 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 103 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 104 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 105 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 106 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 7, - "span": 107 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 108 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 109 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 11, - "span": 110 - }, - "value": { - "Const": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 111, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 112 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 113 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 104 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 15, - "span": 100 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 15, - "span": 101 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 16, - "span": 102 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 18, - "span": 103 - }, - "value": { - "Place": { - "local": 20, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 19, - "span": 104 - }, - "value": { - "Place": { - "local": 20, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 20, - "span": 105 - }, - "value": { - "Place": { - "local": 20, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 21, - "span": 106 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 21, - "span": 107 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 22, - "span": 108 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 23, - "span": 109 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 105 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 25, - "span": 110 - }, - "value": { - "Const": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 111, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 26, - "span": 112 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 26, - "span": 113 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 27, - "span": 104 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 28, - "span": 105 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 29, - "span": 114 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dst", - "source_info": { - "scope": 29, - "span": 115 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "size", - "source_info": { - "scope": 29, - "span": 116 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "count", - "source_info": { - "scope": 29, - "span": 117 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] - } - ], - "id": 6, - "name": "std::intrinsics::copy_nonoverlapping::precondition_check" - } - }, - "symbol_name": "_ZN4core10intrinsics19copy_nonoverlapping18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [] - } - } - } - ] - }, - "span": 120 - } - ], - "terminator": { - "kind": "Return", - "span": 119 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 121, - "ty": 40 - }, - { - "mutability": "Not", - "span": 122, - "ty": 40 - } - ], - "span": 123, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "b", - "source_info": { - "scope": 0, - "span": 122 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - } - ], - "id": 8, - "name": "std::intrinsics::unlikely" - } - }, - "symbol_name": "_ZN4core10intrinsics8unlikely17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 125 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 126 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 127 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 44 - ] - } - ] - }, - "span": 127 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 128 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 44 - ] - } - ] - }, - "span": 128 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Mul", - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Move": { - "local": 8, - "projection": [] - } - } - ] - } - ] - }, - "span": 126 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 129 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 129 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 6, - "projection": [ - { - "Field": [ - 0, - 44 - ] - } - ] - } - } - } - ] - }, - "span": 130 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 6, - "projection": [ - { - "Field": [ - 1, - 40 - ] - } - ] - } - } - } - ] - }, - "span": 131 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 132 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 125 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 124 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 19, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 69, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 4 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 134, - "user_ty": null - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 133, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 135 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 136 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 137, - "ty": 1 - }, - { - "mutability": "Not", - "span": 138, - "ty": 28 - }, - { - "mutability": "Not", - "span": 138, - "ty": 28 - }, - { - "mutability": "Not", - "span": 135, - "ty": 41 - }, - { - "mutability": "Not", - "span": 130, - "ty": 44 - }, - { - "mutability": "Not", - "span": 131, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 126, - "ty": 45 - }, - { - "mutability": "Mut", - "span": 127, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 128, - "ty": 44 - } - ], - "span": 141, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "lhs", - "source_info": { - "scope": 0, - "span": 138 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 0, - "span": 138 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 139 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 1, - "span": 140 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 2, - "span": 130 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 2, - "span": 131 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - } - ] - } - ], - "id": 9, - "name": "core::num::::unchecked_mul::precondition_check" - } - }, - "symbol_name": "_ZN4core3num23_$LT$impl$u20$usize$GT$13unchecked_mul18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [ - "Deref" - ] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 20, - "kind": "ZeroSized", - "ty": 46 - }, - "span": 142, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 142 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 142, - "ty": 16 - }, - { - "mutability": "Not", - "span": 142, - "ty": 47 - }, - { - "mutability": "Not", - "span": 142, - "ty": 1 - } - ], - "span": 142, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 10, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce40call_once$u7b$$u7b$vtable.shim$u7d$$u7d$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 142 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 142, - "ty": 1 - }, - { - "mutability": "Not", - "span": 142, - "ty": 7 - }, - { - "mutability": "Not", - "span": 142, - "ty": 1 - } - ], - "span": 142, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 10, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 142 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 21, - "kind": "ZeroSized", - "ty": 48 - }, - "span": 142, - "user_ty": null - } - }, - "target": 1, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [] - }, - "target": 4, - "unwind": "Terminate" - } - }, - "span": 142 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 142 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 142, - "ty": 16 - }, - { - "mutability": "Not", - "span": 142, - "ty": 12 - }, - { - "mutability": "Not", - "span": 142, - "ty": 1 - }, - { - "mutability": "Not", - "span": 142, - "ty": 49 - } - ], - "span": 142, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 10, - "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 143 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 143 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 67 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 68 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 6, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 4 - } - } - }, - "span": 65 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 145 - } - ], - "terminator": { - "kind": "Return", - "span": 144 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 22, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 110, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 5 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 147, - "user_ty": null - } - } - ], - "destination": { - "local": 4, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 146, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 148 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 143 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 2 - } - }, - "span": 143 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 7, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 86, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 13, - "projection": [] - } - } - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 88, - "user_ty": null - } - } - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 88 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 143 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 143 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 92 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 93 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 32, - "user_ty": null - } - }, - 35 - ] - } - ] - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 36 - }, - "span": 32, - "user_ty": null - } - }, - 37 - ] - } - ] - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 7, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 10, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 38 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 96 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 8, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 90, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 5 - ] - ], - "otherwise": 6 - } - } - }, - "span": 83 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 149, - "ty": 1 - }, - { - "mutability": "Not", - "span": 150, - "ty": 29 - }, - { - "mutability": "Not", - "span": 150, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 143, - "ty": 40 - }, - { - "mutability": "Not", - "span": 148, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 68, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 99, - "ty": 28 - }, - { - "mutability": "Not", - "span": 91, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 92, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 43 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 94, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 28 - } - ], - "span": 151, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "addr", - "source_info": { - "scope": 0, - "span": 150 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 150 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 100 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 101 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 102 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 103 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 104 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 105 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 106 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 7, - "span": 107 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 108 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 109 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 11, - "span": 110 - }, - "value": { - "Const": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 111, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 112 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 113 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 104 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - } - ] - } - ], - "id": 11, - "name": "std::ptr::read_volatile::precondition_check" - } - }, - "symbol_name": "_ZN4core3ptr13read_volatile18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - } - ] - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 152 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 152, - "ty": 1 - }, - { - "mutability": "Not", - "span": 152, - "ty": 50 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "std::ptr::drop_in_place::" - } - }, - "symbol_name": "_ZN4core3ptr42drop_in_place$LT$alloc..string..String$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 152 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 23, - "kind": "ZeroSized", - "ty": 51 - }, - "span": 152, - "user_ty": null - } - }, - "target": 4, - "unwind": { - "Cleanup": 3 - } - } - }, - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 52 - ] - } - ] - }, - "target": 1, - "unwind": "Terminate" - } - }, - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 52 - ] - } - ] - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 152 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 152, - "ty": 1 - }, - { - "mutability": "Not", - "span": 152, - "ty": 53 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 1 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "std::ptr::drop_in_place::>" - } - }, - "symbol_name": "_ZN4core3ptr46drop_in_place$LT$alloc..vec..Vec$LT$u8$GT$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 152 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 3, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 24, - "kind": "ZeroSized", - "ty": 55 - }, - "span": 152, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 152 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 152 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 152, - "ty": 1 - }, - { - "mutability": "Not", - "span": 152, - "ty": 56 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 57 - }, - { - "mutability": "Mut", - "span": 152, - "ty": 1 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "std::ptr::drop_in_place::>" - } - }, - "symbol_name": "_ZN4core3ptr53drop_in_place$LT$alloc..raw_vec..RawVec$LT$u8$GT$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 152 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 152, - "ty": 1 - }, - { - "mutability": "Not", - "span": 152, - "ty": 47 - } - ], - "span": 152, - "spread_arg": null, - "var_debug_info": [] - } - ], - "id": 12, - "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" - } - }, - "symbol_name": "_ZN4core3ptr85drop_in_place$LT$std..rt..lang_start$LT$$LP$$RP$$GT$..$u7b$$u7b$closure$u7d$$u7d$$GT$17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 154 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 155 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 156 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 157 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 154 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 1 - ] - ], - "otherwise": 2 - } - } - }, - "span": 153 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 153 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 25, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 93, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 6 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 159, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 158, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 160 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 153 - } - ], - "terminator": { - "kind": "Return", - "span": 161 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 162, - "ty": 1 - }, - { - "mutability": "Not", - "span": 163, - "ty": 39 - }, - { - "mutability": "Not", - "span": 160, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 155, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 156, - "ty": 28 - } - ], - "span": 168, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 0, - "span": 163 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 164 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 2, - "span": 165 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 166 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 167 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - } - ] - } - ], - "id": 13, - "name": "std::ptr::NonNull::::new_unchecked::precondition_check" - } - }, - "symbol_name": "_ZN4core3ptr8non_null16NonNull$LT$T$GT$13new_unchecked18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 1 - } - } - }, - "span": 169 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 171 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 170 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 172 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 173 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 174 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 175 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Discriminant": { - "local": 13, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 15, - "projection": [] - } - }, - { - "Move": { - "local": 16, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 17, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 175 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 175 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 175 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 175 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Move": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 179, - "user_ty": null - } - } - ] - } - ] - }, - "span": 173 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 180 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 255, - 255, - 255, - 255, - 255, - 255, - 255, - 127 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - } - ] - }, - "span": 181 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 180 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 170, - "user_ty": null - } - } - ] - } - ] - }, - "span": 170 - } - ], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Move": { - "local": 7, - "projection": [] - } - }, - "expected": false, - "msg": { - "DivisionByZero": { - "Copy": { - "local": 6, - "projection": [] - } - } - }, - "target": 2, - "unwind": "Continue" - } - }, - "span": 170 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "BinaryOp": [ - "Div", - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 170 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 182 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "BinaryOp": [ - "Gt", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 171 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 171 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 182 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 29, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 60 - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 184 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 185 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 183 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 182 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 32 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 4 - }, - "span": 185 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 186 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 18, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 8 - ] - ], - "otherwise": 7 - } - } - }, - "span": 186 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 183 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Copy": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 19, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 30, - "kind": "ZeroSized", - "ty": 61 - }, - "span": 188, - "user_ty": null - } - }, - "target": 8, - "unwind": "Unreachable" - } - }, - "span": 189 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 18 - }, - "span": 190 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "BinaryOp": [ - "MulUnchecked", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - { - "Copy": { - "local": 3, - "projection": [] - } - } - ] - } - ] - }, - "span": 191 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 192 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 193 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Discriminant": { - "local": 20, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 24, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 22, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 24, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 194 - }, - { - "kind": { - "StorageDead": 23 - }, - "span": 194 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 194 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 194 - }, - { - "kind": { - "StorageLive": 25 - }, - "span": 195 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 10, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 196 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 15, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 25, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 197 - }, - { - "kind": { - "StorageDead": 25 - }, - "span": 198 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 199 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 63 - }, - { - "Type": 64 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 9, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 200 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 201 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 183 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 202, - "ty": 60 - }, - { - "mutability": "Not", - "span": 203, - "ty": 28 - }, - { - "mutability": "Not", - "span": 204, - "ty": 62 - }, - { - "mutability": "Not", - "span": 205, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 171, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 170, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 172, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 170, - "ty": 40 - }, - { - "mutability": "Not", - "span": 206, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 192, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 193, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 173, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 174, - "ty": 28 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 186, - "ty": 40 - }, - { - "mutability": "Not", - "span": 189, - "ty": 1 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 195, - "ty": 62 - } - ], - "span": 214, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "element_size", - "source_info": { - "scope": 0, - "span": 203 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 204 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "n", - "source_info": { - "scope": 0, - "span": 205 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "array_size", - "source_info": { - "scope": 1, - "span": 206 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 2, - "span": 207 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 208 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 209 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 4, - "span": 210 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 208 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 8, - "span": 211 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 8, - "span": 212 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 9, - "span": 213 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - } - ] - } - ], - "id": 14, - "name": "std::alloc::Layout::array::inner" - } - }, - "symbol_name": "_ZN4core5alloc6layout6Layout5array5inner17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 215 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 216 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 29 - ] - } - ] - }, - "span": 216 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 215 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 67 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 68 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 67 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 10, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 6 - ] - ], - "otherwise": 7 - } - } - }, - "span": 65 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 218 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 219 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 219 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 220 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 221, - "user_ty": null - } - } - ] - } - ] - }, - "span": 217 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 11 - ] - ], - "otherwise": 12 - } - } - }, - "span": 217 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 223 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 223 - } - ], - "terminator": { - "kind": "Return", - "span": 222 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 32 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 218 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 32 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 31, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 162, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 7 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 225, - "user_ty": null - } - } - ], - "destination": { - "local": 8, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 224, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 226 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 215 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 215 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 13 - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 13, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 11, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 10, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 13 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 84 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 86, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Copy": { - "local": 10, - "projection": [] - } - }, - { - "Move": { - "local": 17, - "projection": [] - } - } - ] - } - ] - }, - "span": 84 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 87 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 16, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 88, - "user_ty": null - } - } - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 88 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 215 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 5, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 1 - } - } - }, - "span": 215 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 13 - }, - "span": 83 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 92 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 93 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 15, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 1 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 32, - "user_ty": null - } - }, - 35 - ] - } - ] - }, - "span": 93 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Cast": [ - { - "PointerCoercion": "Unsize" - }, - { - "Constant": { - "const_": { - "id": 16, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 2 - ] - ] - } - } - }, - "ty": 36 - }, - "span": 32, - "user_ty": null - } - }, - 37 - ] - } - ] - }, - "span": 94 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 7, - 0, - [ - { - "Lifetime": { - "kind": "ReErased" - } - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 17, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 38 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 15, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 95 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 96 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 96 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 12, - "projection": [] - } - } - ], - "destination": { - "local": 11, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 90, - "user_ty": null - } - }, - "target": null, - "unwind": "Terminate" - } - }, - "span": 91 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 13, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 8 - ] - ], - "otherwise": 9 - } - } - }, - "span": 83 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 32, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 255, - 255, - 255, - 255, - 255, - 255, - 255, - 255 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 228, - "user_ty": null - } - } - } - ] - }, - "span": 228 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 14 - } - }, - "span": 227 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Assert": { - "cond": { - "Copy": { - "local": 19, - "projection": [] - } - }, - "expected": false, - "msg": { - "DivisionByZero": { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 255, - 255, - 255, - 255, - 255, - 255, - 255, - 127 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - }, - "target": 13, - "unwind": "Terminate" - } - }, - "span": 229 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "BinaryOp": [ - "Div", - { - "Constant": { - "const_": { - "id": 28, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 255, - 255, - 255, - 255, - 255, - 255, - 255, - 127 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - }, - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - } - ] - }, - "span": 229 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 14 - } - }, - "span": 227 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 20 - }, - "span": 230 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 18, - "projection": [] - } - } - } - ] - }, - "span": 230 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 20, - "projection": [] - } - } - ] - } - ] - }, - "span": 231 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 232 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 233 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 219 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 2 - } - } - }, - "span": 219 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 234, - "ty": 1 - }, - { - "mutability": "Not", - "span": 235, - "ty": 39 - }, - { - "mutability": "Not", - "span": 235, - "ty": 28 - }, - { - "mutability": "Not", - "span": 235, - "ty": 28 - }, - { - "mutability": "Not", - "span": 235, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 215, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 216, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 219, - "ty": 40 - }, - { - "mutability": "Not", - "span": 226, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 68, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 99, - "ty": 28 - }, - { - "mutability": "Not", - "span": 91, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 92, - "ty": 42 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 43 - }, - { - "mutability": "Mut", - "span": 93, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 94, - "ty": 37 - }, - { - "mutability": "Mut", - "span": 84, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 85, - "ty": 28 - }, - { - "mutability": "Not", - "span": 220, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 217, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 230, - "ty": 28 - } - ], - "span": 238, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 0, - "span": 235 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "size", - "source_info": { - "scope": 0, - "span": 235 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "align", - "source_info": { - "scope": 0, - "span": 235 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "len", - "source_info": { - "scope": 0, - "span": 235 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 100 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 101 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 102 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 4, - "span": 103 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 104 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 105 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 106 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 7, - "span": 107 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 108 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 109 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 105 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pieces", - "source_info": { - "scope": 11, - "span": 110 - }, - "value": { - "Const": { - "const_": { - "id": 18, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 3 - ] - ] - } - } - }, - "ty": 34 - }, - "span": 111, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 12, - "span": 112 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 12, - "span": 113 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 104 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 14, - "span": 105 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 15, - "span": 236 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 15, - "span": 237 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "max_len", - "source_info": { - "scope": 16, - "span": 220 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - } - ] - } - ], - "id": 17, - "name": "std::slice::from_raw_parts::precondition_check" - } - }, - "symbol_name": "_ZN4core5slice3raw14from_raw_parts18precondition_check17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 4, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 1, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 2, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 69 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 241 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 242 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 242 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 243 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 126 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 127 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - 44 - ] - } - ] - }, - "span": 127 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 128 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - 44 - ] - } - ] - }, - "span": 128 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "CheckedBinaryOp": [ - "Mul", - { - "Move": { - "local": 16, - "projection": [] - } - }, - { - "Move": { - "local": 17, - "projection": [] - } - } - ] - } - ] - }, - "span": 126 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 129 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 129 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 44 - ] - } - ] - } - } - } - ] - }, - "span": 130 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 1, - 40 - ] - } - ] - } - } - } - ] - }, - "span": 131 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 132 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 13, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 244 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 243 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 240 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 14, - "projection": [] - } - } - ], - "destination": { - "local": 12, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 33, - "kind": "ZeroSized", - "ty": 65 - }, - "span": 239, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } - }, - "span": 240 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 12, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 2 - } - } - }, - "span": 240 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 12 - }, - "span": 248 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 242 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 242 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 249 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 34, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 61, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 8 - ] - ] - } - } - }, - "ty": 25 - }, - "span": 246, - "user_ty": null - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 9, - "kind": "ZeroSized", - "ty": 31 - }, - "span": 245, - "user_ty": null - } - }, - "target": null, - "unwind": "Unreachable" - } - }, - "span": 247 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 1, - [ - { - "Type": 28 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 18, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 251 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 248 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 242 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 242 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 252 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 249 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 253 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 250 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "BinaryOp": [ - "Lt", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 250 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 22, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 4 - } - } - }, - "span": 250 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 6, - "projection": [] - } - }, - { - "Copy": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 256 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 255 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "BinaryOp": [ - "Sub", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 257 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 255 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 22 - }, - "span": 259 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 254 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 254 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 254 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 260 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 10, - "projection": [] - } - } - } - ] - }, - "span": 260 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Move": { - "local": 11, - "projection": [] - } - }, - { - "Copy": { - "local": 8, - "projection": [] - } - } - ] - } - ] - }, - "span": 261 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 262 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 263 - } - ], - "terminator": { - "kind": "Return", - "span": 258 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 264, - "ty": 40 - }, - { - "mutability": "Not", - "span": 265, - "ty": 29 - }, - { - "mutability": "Not", - "span": 266, - "ty": 29 - }, - { - "mutability": "Not", - "span": 267, - "ty": 28 - }, - { - "mutability": "Not", - "span": 268, - "ty": 28 - }, - { - "mutability": "Not", - "span": 269, - "ty": 28 - }, - { - "mutability": "Not", - "span": 270, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 271, - "ty": 41 - }, - { - "mutability": "Not", - "span": 252, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 241, - "ty": 66 - }, - { - "mutability": "Not", - "span": 253, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 260, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 240, - "ty": 40 - }, - { - "mutability": "Not", - "span": 130, - "ty": 44 - }, - { - "mutability": "Not", - "span": 131, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 126, - "ty": 45 - }, - { - "mutability": "Mut", - "span": 127, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 128, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 244, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 272, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 273, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 274, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 250, - "ty": 40 - } - ], - "span": 285, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 0, - "span": 265 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dst", - "source_info": { - "scope": 0, - "span": 266 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "size", - "source_info": { - "scope": 0, - "span": 267 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 4, - "composite": null, - "name": "count", - "source_info": { - "scope": 0, - "span": 268 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "src_usize", - "source_info": { - "scope": 1, - "span": 269 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "dst_usize", - "source_info": { - "scope": 2, - "span": 270 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 3, - "span": 252 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "diff", - "source_info": { - "scope": 4, - "span": 253 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 104 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 105 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 104 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 105 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 275 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 9, - "span": 276 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 10, - "span": 277 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 10, - "span": 278 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 11, - "span": 139 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 11, - "span": 140 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "a", - "source_info": { - "scope": 12, - "span": 130 - }, - "value": { - "Place": { - "local": 13, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "b", - "source_info": { - "scope": 12, - "span": 131 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 279 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 13, - "span": 280 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 15, - "span": 281 - }, - "value": { - "Place": { - "local": 20, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 15, - "span": 282 - }, - "value": { - "Place": { - "local": 21, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 16, - "span": 283 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 284 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - } - ] - } - ], - "id": 18, - "name": "core::ub_checks::is_nonoverlapping::runtime" - } - }, - "symbol_name": "_ZN4core9ub_checks17is_nonoverlapping7runtime17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 288 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 289 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 290 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 290 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 290 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 287 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 36, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 68 - }, - "span": 32, - "user_ty": null - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 10, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 35, - "kind": "ZeroSized", - "ty": 67 - }, - "span": 286, - "user_ty": 0 - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 287 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Discriminant": { - "local": 10, - "projection": [] - } - } - ] - }, - "span": 287 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 11, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ], - [ - 1, - 3 - ] - ], - "otherwise": 2 - } - } - }, - "span": 291 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 287 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 10, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 70 - ] - } - ] - } - } - } - ] - }, - "span": 294 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 12, - "projection": [] - } - } - ], - "destination": { - "local": 13, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 37, - "kind": "ZeroSized", - "ty": 69 - }, - "span": 292, - "user_ty": null - } - }, - "target": null, - "unwind": "Continue" - } - }, - "span": 293 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 10, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 52 - ] - } - ] - } - } - } - ] - }, - "span": 296 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 297 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 290 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 290 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 21, - 0, - [ - { - "Type": 9 - }, - { - "Type": 22 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 298, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 299 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 300 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 301 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 302 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 303 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 304 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 305 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "TwoPhaseBorrow" - } - }, - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 305 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 306 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [ - { - "Field": [ - 0, - 52 - ] - } - ] - } - ] - } - ] - }, - "span": 306 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 307 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [ - { - "Field": [ - 0, - 52 - ] - }, - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 308 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 16, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 307 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 311 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 312 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 295 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 18, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 7 - ] - ], - "otherwise": 5 - } - } - }, - "span": 295 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 20 - }, - "span": 315 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 29 - ] - } - ] - }, - "span": 315 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 316 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 16, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 316 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 317 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "NullaryOp": [ - "SizeOf", - 9 - ] - } - ] - }, - "span": 317 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 318 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 319 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 20, - "projection": [] - } - }, - { - "Move": { - "local": 21, - "projection": [] - } - }, - { - "Move": { - "local": 22, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - }, - { - "Copy": { - "local": 4, - "projection": [] - } - } - ], - "destination": { - "local": 19, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 38, - "kind": "ZeroSized", - "ty": 73 - }, - "span": 313, - "user_ty": null - } - }, - "target": 6, - "unwind": "Unreachable" - } - }, - "span": 314 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 23 - }, - "span": 321 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 321 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 321 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 321 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 7 - } - }, - "span": 320 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 18 - }, - "span": 323 - }, - { - "kind": { - "Intrinsic": { - "CopyNonOverlapping": { - "count": { - "Copy": { - "local": 4, - "projection": [] - } - }, - "dst": { - "Copy": { - "local": 6, - "projection": [] - } - }, - "src": { - "Copy": { - "local": 5, - "projection": [] - } - } - } - } - }, - "span": 324 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 325 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 325 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 326 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "TwoPhaseBorrow" - } - }, - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 326 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 327 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [ - { - "Field": [ - 1, - 28 - ] - } - ] - }, - { - "Use": { - "Copy": { - "local": 4, - "projection": [] - } - } - } - ] - }, - "span": 328 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 327 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 329 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 330 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 331 - } - ], - "terminator": { - "kind": "Return", - "span": 322 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 332, - "ty": 26 - }, - { - "mutability": "Not", - "span": 333, - "ty": 23 - }, - { - "mutability": "Not", - "span": 334, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 288, - "ty": 26 - }, - { - "mutability": "Mut", - "span": 289, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 301, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 304, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 305, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 326, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 290, - "ty": 52 - }, - { - "mutability": "Mut", - "span": 287, - "ty": 74 - }, - { - "mutability": "Mut", - "span": 335, - "ty": 6 - }, - { - "mutability": "Not", - "span": 294, - "ty": 70 - }, - { - "mutability": "Mut", - "span": 293, - "ty": 41 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 306, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 308, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 295, - "ty": 40 - }, - { - "mutability": "Not", - "span": 314, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 315, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 316, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 317, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 318, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 337, - "ty": 76 - } - ], - "span": 357, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "s", - "source_info": { - "scope": 0, - "span": 333 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 0, - "span": 334 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 1, - "span": 288 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "capacity", - "source_info": { - "scope": 2, - "span": 338 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 2, - "span": 339 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "capacity", - "source_info": { - "scope": 3, - "span": 340 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 3, - "span": 341 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "res", - "source_info": { - "scope": 4, - "span": 296 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "err", - "source_info": { - "scope": 5, - "span": 294 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 342 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 343 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 344 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 9, - "span": 345 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 9, - "span": 345 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 346 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 11, - "span": 347 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dest", - "source_info": { - "scope": 11, - "span": 348 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "count", - "source_info": { - "scope": 11, - "span": 349 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 12, - "span": 350 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "dst", - "source_info": { - "scope": 12, - "span": 351 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "count", - "source_info": { - "scope": 12, - "span": 352 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 16, - "span": 353 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "new_len", - "source_info": { - "scope": 16, - "span": 354 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 355 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 18, - "span": 356 - }, - "value": { - "Place": { - "local": 24, - "projection": [] - } - } - } - ] - } - ], - "id": 20, - "name": "::to_vec::" - } - }, - "symbol_name": "_ZN52_$LT$T$u20$as$u20$alloc..slice..hack..ConvertVec$GT$6to_vec17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 40, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 17 - }, - "span": 359, - "user_ty": null - } - } - } - ] - }, - "span": 359 - } - ], - "terminator": { - "kind": "Return", - "span": 358 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 360, - "ty": 17 - }, - { - "mutability": "Not", - "span": 361, - "ty": 1 - } - ], - "span": 362, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 361 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 22, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 364 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 363 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 7, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 5 - ] - ], - "otherwise": 3 - } - } - }, - "span": 363 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 366 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 366 - } - ], - "terminator": { - "kind": "Return", - "span": 365 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 369 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 370 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 371 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 371 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 372 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 373 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 374 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 375 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 375 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - { - "Field": [ - 1, - 62 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 10, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Discriminant": { - "local": 11, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 13, - "projection": [] - } - }, - { - "Move": { - "local": 14, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 15, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 378 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 379 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 41, - "kind": "ZeroSized", - "ty": 78 - }, - "span": 367, - "user_ty": null - } - }, - "target": 1, - "unwind": "Unreachable" - } - }, - "span": 368 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 382 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Constant": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 9 - ] - ] - } - } - }, - "ty": 27 - }, - "span": 32, - "user_ty": null - } - }, - 29 - ] - } - ] - }, - "span": 382 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 8, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 42, - "kind": "ZeroSized", - "ty": 79 - }, - "span": 380, - "user_ty": null - } - }, - "target": 4, - "unwind": "Unreachable" - } - }, - "span": 381 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 384 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 383 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 387 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Constant": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 9 - ] - ] - } - } - }, - "ty": 27 - }, - "span": 32, - "user_ty": null - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 44, - "kind": "ZeroSized", - "ty": 80 - }, - "span": 385, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 386 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 388, - "ty": 58 - }, - { - "mutability": "Not", - "span": 389, - "ty": 63 - }, - { - "mutability": "Not", - "span": 364, - "ty": 9 - }, - { - "mutability": "Mut", - "span": 370, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 371, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 374, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 375, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 363, - "ty": 40 - }, - { - "mutability": "Not", - "span": 381, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 382, - "ty": 29 - }, - { - "mutability": "Mut", - "span": 376, - "ty": 62 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - } - ], - "span": 394, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 389 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "src", - "source_info": { - "scope": 1, - "span": 390 - }, - "value": { - "Const": { - "const_": { - "id": 43, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [ - [ - 0, - 9 - ] - ] - } - } - }, - "ty": 27 - }, - "span": 391, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 392 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 393 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 7, - "span": 208 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - } - ] - } - ], - "id": 23, - "name": "std::alloc::alloc" - } - }, - "symbol_name": "_ZN5alloc5alloc5alloc17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 396 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [] - } - ] - } - ] - }, - "span": 396 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 372 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 397 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 395 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 9 - }, - "span": 399 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 4 - ] - ], - "otherwise": 3 - } - } - }, - "span": 398 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 401 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 402 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 403 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [] - } - ] - } - ] - }, - "span": 403 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 404 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 1, - 62 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 19, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Discriminant": { - "local": 20, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 24, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 22, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 24, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 21, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 23 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 378 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 18, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 405 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 406 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 25, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 9 - ] - ], - "otherwise": 7 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 10 - }, - "span": 409 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [] - } - } - } - ] - }, - "span": 409 - }, - { - "kind": { - "StorageLive": 34 - }, - "span": 410 - }, - { - "kind": { - "Assign": [ - { - "local": 34, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 10, - "projection": [] - } - ] - } - ] - }, - "span": 410 - }, - { - "kind": { - "StorageDead": 34 - }, - "span": 411 - }, - { - "kind": { - "StorageLive": 35 - }, - "span": 412 - }, - { - "kind": { - "StorageLive": 36 - }, - "span": 413 - }, - { - "kind": { - "Assign": [ - { - "local": 36, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 10, - "projection": [] - } - ] - } - ] - }, - "span": 413 - }, - { - "kind": { - "StorageLive": 37 - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 37, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 1, - 62 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "StorageLive": 39 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 40 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 41 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 42 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 38 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 38, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 37, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 39, - "projection": [] - }, - { - "Discriminant": { - "local": 38, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 40, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 41, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 42, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 40, - "projection": [] - } - }, - { - "Move": { - "local": 41, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 42, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 35, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 39, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 38 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 42 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 41 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 40 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 39 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 37 - }, - "span": 378 - }, - { - "kind": { - "StorageDead": 36 - }, - "span": 414 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 35, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 45, - "kind": "ZeroSized", - "ty": 82 - }, - "span": 407, - "user_ty": null - } - }, - "target": 13, - "unwind": "Unreachable" - } - }, - "span": 408 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 9, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 46, - "kind": "ZeroSized", - "ty": 83 - }, - "span": 415, - "user_ty": null - } - }, - "target": 5, - "unwind": "Continue" - } - }, - "span": 416 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 11 - }, - "span": 418 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 419 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 420 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [] - } - } - } - ] - }, - "span": 421 - }, - { - "kind": { - "StorageLive": 44 - }, - "span": 156 - }, - { - "kind": { - "Assign": [ - { - "local": 44, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 157 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 44, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 14 - ] - ], - "otherwise": 15 - } - } - }, - "span": 417 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 422 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 27 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 27, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 27, - "projection": [] - } - } - ], - "destination": { - "local": 26, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 8, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 27 - }, - "span": 426 - }, - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 28, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 429 - }, - { - "kind": { - "StorageLive": 29 - }, - "span": 430 - }, - { - "kind": { - "StorageLive": 30 - }, - "span": 431 - }, - { - "kind": { - "Assign": [ - { - "local": 30, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [] - } - } - } - ] - }, - "span": 310 - }, - { - "kind": { - "Assign": [ - { - "local": 29, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 17, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 432 - }, - { - "kind": { - "StorageDead": 30 - }, - "span": 433 - }, - { - "kind": { - "StorageLive": 33 - }, - "span": 434 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 10 - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 28, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 429 - }, - { - "kind": { - "StorageLive": 29 - }, - "span": 430 - }, - { - "kind": { - "StorageLive": 30 - }, - "span": 431 - }, - { - "kind": { - "Assign": [ - { - "local": 30, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [] - } - } - } - ] - }, - "span": 310 - }, - { - "kind": { - "Assign": [ - { - "local": 29, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 17, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 432 - }, - { - "kind": { - "StorageDead": 30 - }, - "span": 433 - }, - { - "kind": { - "StorageLive": 33 - }, - "span": 434 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 25, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 12 - ] - ], - "otherwise": 10 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 32 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 32, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 17, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 32, - "projection": [] - } - } - ], - "destination": { - "local": 31, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 11, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 32 - }, - "span": 426 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 12 - } - }, - "span": 435 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 33, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 29, - "projection": [] - } - }, - 75 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 85 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 33, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 33 - }, - "span": 434 - }, - { - "kind": { - "StorageDead": 29 - }, - "span": 437 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 438 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 86 - }, - { - "Type": 87 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 6, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 439 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 436 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 436 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 35 - }, - "span": 441 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 442 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 440 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 44 - }, - "span": 417 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 48, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 88 - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 443 - }, - { - "kind": { - "StorageLive": 49 - }, - "span": 444 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 49, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 89 - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 445 - }, - { - "kind": { - "StorageDead": 49 - }, - "span": 444 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 446 - }, - { - "kind": { - "StorageLive": 50 - }, - "span": 418 - }, - { - "kind": { - "StorageDead": 50 - }, - "span": 418 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 447 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 50, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 90 - }, - "span": 32, - "user_ty": null - } - } - } - ] - }, - "span": 448 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 449 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 450 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 422 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 44 - }, - "span": 417 - }, - { - "kind": { - "StorageLive": 43 - }, - "span": 451 - }, - { - "kind": { - "StorageLive": 48 - }, - "span": 452 - }, - { - "kind": { - "StorageLive": 45 - }, - "span": 400 - }, - { - "kind": { - "Assign": [ - { - "local": 45, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 45, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 18 - ] - ], - "otherwise": 16 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 47 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 47, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 47, - "projection": [] - } - } - ], - "destination": { - "local": 46, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 17, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 47 - }, - "span": 426 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 18 - } - }, - "span": 435 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 45 - }, - "span": 453 - }, - { - "kind": { - "Assign": [ - { - "local": 48, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 43, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 48, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 48 - }, - "span": 452 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 1, - [ - { - "Type": 72 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 43, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 454 - }, - { - "kind": { - "StorageDead": 43 - }, - "span": 455 - }, - { - "kind": { - "StorageLive": 49 - }, - "span": 444 - }, - { - "kind": { - "Assign": [ - { - "local": 49, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 13, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 456 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 72 - }, - { - "Type": 87 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 49, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 457 - }, - { - "kind": { - "StorageDead": 49 - }, - "span": 444 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 446 - }, - { - "kind": { - "StorageLive": 50 - }, - "span": 418 - }, - { - "kind": { - "Assign": [ - { - "local": 50, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 12, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 458 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 26, - 0, - [ - { - "Type": 91 - }, - { - "Type": 72 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 50, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 459 - }, - { - "kind": { - "StorageDead": 50 - }, - "span": 418 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 447 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 11, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 460 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 449 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 461 - }, - { - "kind": { - "StorageLive": 53 - }, - "span": 461 - }, - { - "kind": { - "StorageLive": 51 - }, - "span": 430 - }, - { - "kind": { - "StorageLive": 52 - }, - "span": 431 - }, - { - "kind": { - "Assign": [ - { - "local": 53, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 52, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 53, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "Assign": [ - { - "local": 51, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 52, - "projection": [] - } - }, - { - "Copy": { - "local": 4, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 432 - }, - { - "kind": { - "StorageDead": 52 - }, - "span": 433 - }, - { - "kind": { - "StorageLive": 57 - }, - "span": 434 - }, - { - "kind": { - "StorageLive": 54 - }, - "span": 400 - }, - { - "kind": { - "Assign": [ - { - "local": 54, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 54, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 21 - ] - ], - "otherwise": 19 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 56 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 56, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 53, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 56, - "projection": [] - } - } - ], - "destination": { - "local": 55, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 20, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 56 - }, - "span": 426 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 21 - } - }, - "span": 435 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 54 - }, - "span": 453 - }, - { - "kind": { - "Assign": [ - { - "local": 57, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 51, - "projection": [] - } - }, - 75 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 85 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 57, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 57 - }, - "span": 434 - }, - { - "kind": { - "StorageDead": 51 - }, - "span": 437 - }, - { - "kind": { - "StorageDead": 53 - }, - "span": 461 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 86 - }, - { - "Type": 87 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 16, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 462 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 463 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 450 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 6 - } - }, - "span": 450 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 464, - "ty": 90 - }, - { - "mutability": "Not", - "span": 465, - "ty": 92 - }, - { - "mutability": "Not", - "span": 466, - "ty": 63 - }, - { - "mutability": "Not", - "span": 467, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 468, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 396, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 401, - "ty": 86 - }, - { - "mutability": "Mut", - "span": 402, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 403, - "ty": 81 - }, - { - "mutability": "Not", - "span": 399, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 409, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 418, - "ty": 93 - }, - { - "mutability": "Mut", - "span": 419, - "ty": 89 - }, - { - "mutability": "Mut", - "span": 420, - "ty": 88 - }, - { - "mutability": "Mut", - "span": 421, - "ty": 58 - }, - { - "mutability": "Not", - "span": 460, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 461, - "ty": 86 - }, - { - "mutability": "Mut", - "span": 469, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 404, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 376, - "ty": 62 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 40 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 430, - "ty": 94 - }, - { - "mutability": "Mut", - "span": 431, - "ty": 58 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 410, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 412, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 413, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 376, - "ty": 62 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 451, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 156, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 40 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 27 - }, - { - "mutability": "Not", - "span": 456, - "ty": 72 - }, - { - "mutability": "Not", - "span": 458, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 430, - "ty": 94 - }, - { - "mutability": "Mut", - "span": 431, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 40 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 75 - } - ], - "span": 492, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 465 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 466 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "zeroed", - "source_info": { - "scope": 0, - "span": 467 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 1, - "span": 470 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "raw_ptr", - "source_info": { - "scope": 2, - "span": 399 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 3, - "span": 471 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "residual", - "source_info": { - "scope": 4, - "span": 472 - }, - "value": { - "Const": { - "const_": { - "id": 51, - "kind": "ZeroSized", - "ty": 91 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "val", - "source_info": { - "scope": 6, - "span": 460 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 392 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 9, - "span": 473 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 10, - "span": 393 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 11, - "span": 208 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "addr", - "source_info": { - "scope": 12, - "span": 474 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 13, - "span": 475 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 16, - "span": 476 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 16, - "span": 477 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 478, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 346 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 18, - "span": 479 - }, - "value": { - "Place": { - "local": 30, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 18, - "span": 480 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 478, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 19, - "span": 481 - }, - "value": { - "Place": { - "local": 30, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 19, - "span": 482 - }, - "value": { - "Const": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 478, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 20, - "span": 475 - }, - "value": { - "Place": { - "local": 29, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "layout", - "source_info": { - "scope": 23, - "span": 483 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 392 - }, - "value": { - "Place": { - "local": 34, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 25, - "span": 393 - }, - "value": { - "Place": { - "local": 36, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 26, - "span": 208 - }, - "value": { - "Place": { - "local": 37, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 27, - "span": 484 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 28, - "span": 164 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 29, - "span": 165 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 30, - "span": 166 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 31, - "span": 167 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 32, - "span": 475 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 35, - "span": 485 - }, - "value": { - "Place": { - "local": 13, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "err", - "source_info": { - "scope": 35, - "span": 486 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 87 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 36, - "span": 456 - }, - "value": { - "Place": { - "local": 49, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 37, - "span": 487 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "v", - "source_info": { - "scope": 38, - "span": 458 - }, - "value": { - "Place": { - "local": 50, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "e", - "source_info": { - "scope": 39, - "span": 488 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 87 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 40, - "span": 476 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 40, - "span": 477 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 41, - "span": 346 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 42, - "span": 479 - }, - "value": { - "Place": { - "local": 52, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 42, - "span": 480 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 43, - "span": 481 - }, - "value": { - "Place": { - "local": 52, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 43, - "span": 482 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 44, - "span": 475 - }, - "value": { - "Place": { - "local": 51, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "residual", - "source_info": { - "scope": 47, - "span": 489 - }, - "value": { - "Const": { - "const_": { - "id": 51, - "kind": "ZeroSized", - "ty": 91 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "e", - "source_info": { - "scope": 48, - "span": 490 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 87 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "t", - "source_info": { - "scope": 49, - "span": 491 - }, - "value": { - "Const": { - "const_": { - "id": 52, - "kind": "ZeroSized", - "ty": 87 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 24, - "name": "std::alloc::Global::alloc_impl" - } - }, - "symbol_name": "_ZN5alloc5alloc6Global10alloc_impl17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Constant": { - "const_": { - "id": 53, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 493, - "user_ty": null - } - }, - "targets": { - "branches": [ - [ - 0, - 1 - ] - ], - "otherwise": 3 - } - } - }, - "span": 493 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 495 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 95 - ] - }, - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 495 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 2, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 4 - } - } - }, - "span": 494 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 497 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 3 - } - }, - "span": 496 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 0, - [ - { - "Type": 96 - } - ], - null, - null - ] - }, - [] - ] - } - ] - }, - "span": 499 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 498 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 497 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 319 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 501 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "NullaryOp": [ - "SizeOf", - 9 - ] - } - ] - }, - "span": 502 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 503 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 95 - ] - }, - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 503 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 500 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 9, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 7 - ] - ], - "otherwise": 6 - } - } - }, - "span": 500 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 504 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 10, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 30, - "kind": "ZeroSized", - "ty": 61 - }, - "span": 505, - "user_ty": null - } - }, - "target": 7, - "unwind": "Unreachable" - } - }, - "span": 506 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 507 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "BinaryOp": [ - "MulUnchecked", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - { - "Copy": { - "local": 6, - "projection": [] - } - } - ] - } - ] - }, - "span": 508 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 509 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 509 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 195 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 196 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 15, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 11, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 197 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 198 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 510 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 511 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 511 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 1, - 77 - ] - } - ] - } - } - } - ] - }, - "span": 511 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 512 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 513 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 15, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 513 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 13, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 514 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 515 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 512 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 516 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Aggregate": [ - "Tuple", - [ - { - "Copy": { - "local": 12, - "projection": [] - } - }, - { - "Copy": { - "local": 7, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 510 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 19, - 1, - [ - { - "Type": 96 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 8, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 517 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 518 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 5 - } - }, - "span": 498 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 519, - "ty": 97 - }, - { - "mutability": "Not", - "span": 520, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 495, - "ty": 28 - }, - { - "mutability": "Not", - "span": 521, - "ty": 28 - }, - { - "mutability": "Not", - "span": 522, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 501, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 503, - "ty": 28 - }, - { - "mutability": "Not", - "span": 523, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 510, - "ty": 96 - }, - { - "mutability": "Mut", - "span": 500, - "ty": 40 - }, - { - "mutability": "Not", - "span": 506, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 195, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 524, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 513, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 511, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 511, - "ty": 77 - } - ], - "span": 532, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 520 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "align", - "source_info": { - "scope": 1, - "span": 521 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 2, - "span": 522 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 3, - "span": 523 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 525 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "rhs", - "source_info": { - "scope": 6, - "span": 526 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "size", - "source_info": { - "scope": 9, - "span": 211 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "align", - "source_info": { - "scope": 9, - "span": 212 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 10, - "span": 213 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 11, - "span": 527 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 11, - "span": 527 - }, - "value": { - "Place": { - "local": 16, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 12, - "span": 528 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 13, - "span": 346 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 14, - "span": 529 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 14, - "span": 529 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "unique", - "source_info": { - "scope": 15, - "span": 530 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "unique", - "source_info": { - "scope": 15, - "span": 530 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 16, - "span": 531 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 16, - "span": 531 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 27, - "name": "alloc::raw_vec::RawVec::::current_memory" - } - }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$14current_memory17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Constant": { - "const_": { - "id": 53, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 533, - "user_ty": null - } - }, - "targets": { - "branches": [ - [ - 0, - 1 - ] - ], - "otherwise": 2 - } - } - }, - "span": 533 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Copy": { - "local": 1, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 3 - } - } - }, - "span": 534 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 4 - }, - "span": 535 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 536 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 536 - }, - { - "kind": { - "StorageLive": 25 - }, - "span": 537 - }, - { - "kind": { - "StorageLive": 26 - }, - "span": 538 - }, - { - "kind": { - "StorageLive": 27 - }, - "span": 538 - }, - { - "kind": { - "StorageLive": 28 - }, - "span": 539 - }, - { - "kind": { - "Assign": [ - { - "local": 28, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 319 - }, - { - "kind": { - "Assign": [ - { - "local": 27, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 28, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 405 - }, - { - "kind": { - "StorageDead": 28 - }, - "span": 540 - }, - { - "kind": { - "StorageLive": 32 - }, - "span": 541 - }, - { - "kind": { - "StorageLive": 29 - }, - "span": 400 - }, - { - "kind": { - "Assign": [ - { - "local": 29, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 29, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 21 - ] - ], - "otherwise": 19 - } - } - }, - "span": 400 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 544 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 545 - }, - { - "kind": { - "StorageLive": 33 - }, - "span": 546 - }, - { - "kind": { - "Assign": [ - { - "local": 33, - "projection": [] - }, - { - "NullaryOp": [ - "SizeOf", - 9 - ] - } - ] - }, - "span": 502 - }, - { - "kind": { - "StorageLive": 34 - }, - "span": 547 - }, - { - "kind": { - "StorageLive": 35 - }, - "span": 548 - }, - { - "kind": { - "Assign": [ - { - "local": 35, - "projection": [] - }, - { - "NullaryOp": [ - "AlignOf", - 9 - ] - } - ] - }, - "span": 319 - }, - { - "kind": { - "Assign": [ - { - "local": 34, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 35, - "projection": [] - } - }, - 62 - ] - } - ] - }, - "span": 196 - }, - { - "kind": { - "StorageDead": 35 - }, - "span": 549 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 33, - "projection": [] - } - }, - { - "Move": { - "local": 34, - "projection": [] - } - }, - { - "Copy": { - "local": 1, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 54, - "kind": "ZeroSized", - "ty": 98 - }, - "span": 542, - "user_ty": null - } - }, - "target": 22, - "unwind": { - "Cleanup": 18 - } - } - }, - "span": 543 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 545 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 1, - [ - { - "Type": 52 - }, - { - "Type": 70 - } - ], - null, - null - ] - }, - [ - { - "Constant": { - "const_": { - "id": 55, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 70 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 550 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 551 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 15 - } - }, - "span": 32 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 7, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 63 - ] - } - ] - } - } - } - ] - }, - "span": 553 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [] - } - } - } - ] - }, - "span": 554 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 551 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 555 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 556 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 6, - "projection": [] - } - ] - } - ] - }, - "span": 556 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 9, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 372 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 557 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 558 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 559 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Discriminant": { - "local": 2, - "projection": [] - } - } - ] - }, - "span": 560 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 13, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 8 - ], - [ - 1, - 7 - ] - ], - "otherwise": 4 - } - } - }, - "span": 552 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 15 - }, - "span": 563 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 563 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 15, - "projection": [] - } - }, - { - "Copy": { - "local": 9, - "projection": [] - } - } - ], - "destination": { - "local": 12, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 56, - "kind": "ZeroSized", - "ty": 99 - }, - "span": 561, - "user_ty": null - } - }, - "target": 10, - "unwind": { - "Cleanup": 18 - } - } - }, - "span": 562 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 14 - }, - "span": 566 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 566 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 14, - "projection": [] - } - }, - { - "Copy": { - "local": 9, - "projection": [] - } - } - ], - "destination": { - "local": 12, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 57, - "kind": "ZeroSized", - "ty": 100 - }, - "span": 564, - "user_ty": null - } - }, - "target": 9, - "unwind": { - "Cleanup": 18 - } - } - }, - "span": 565 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 14 - }, - "span": 567 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 11 - } - }, - "span": 567 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 15 - }, - "span": 568 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 11 - } - }, - "span": 568 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Discriminant": { - "local": 12, - "projection": [] - } - } - ] - }, - "span": 570 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 16, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 13 - ], - [ - 1, - 12 - ] - ], - "otherwise": 4 - } - } - }, - "span": 569 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 18 - }, - "span": 571 - }, - { - "kind": { - "StorageLive": 19 - }, - "span": 572 - }, - { - "kind": { - "Assign": [ - { - "local": 19, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 29, - 1, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 9, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 572 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 30, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 19, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 573 - }, - { - "kind": { - "StorageDead": 19 - }, - "span": 574 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 1, - [ - { - "Type": 52 - }, - { - "Type": 70 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 18, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 575 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 576 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 577 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 15 - } - }, - "span": 32 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 12, - "projection": [ - { - "Downcast": 0 - }, - { - "Field": [ - 0, - 86 - ] - } - ] - } - } - } - ] - }, - "span": 579 - }, - { - "kind": { - "StorageLive": 20 - }, - "span": 580 - }, - { - "kind": { - "StorageLive": 21 - }, - "span": 581 - }, - { - "kind": { - "StorageLive": 22 - }, - "span": 582 - }, - { - "kind": { - "StorageLive": 37 - }, - "span": 583 - }, - { - "kind": { - "StorageLive": 36 - }, - "span": 513 - }, - { - "kind": { - "Assign": [ - { - "local": 37, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 17, - "projection": [ - { - "Field": [ - 0, - 75 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 36, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 37, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 513 - }, - { - "kind": { - "Assign": [ - { - "local": 22, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 36, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 514 - }, - { - "kind": { - "StorageDead": 36 - }, - "span": 515 - }, - { - "kind": { - "StorageDead": 37 - }, - "span": 583 - }, - { - "kind": { - "Assign": [ - { - "local": 21, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 31, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 22, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 584 - }, - { - "kind": { - "StorageDead": 22 - }, - "span": 585 - }, - { - "kind": { - "StorageLive": 23 - }, - "span": 586 - }, - { - "kind": { - "Assign": [ - { - "local": 23, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 32, - 0, - [], - null, - null - ] - }, - [ - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 587 - }, - { - "kind": { - "StorageLive": 24 - }, - "span": 588 - }, - { - "kind": { - "Assign": [ - { - "local": 24, - "projection": [] - }, - { - "Use": { - "Move": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 588 - }, - { - "kind": { - "Assign": [ - { - "local": 20, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 33, - 0, - [ - { - "Type": 9 - }, - { - "Type": 22 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 21, - "projection": [] - } - }, - { - "Move": { - "local": 23, - "projection": [] - } - }, - { - "Move": { - "local": 24, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 580 - }, - { - "kind": { - "StorageDead": 24 - }, - "span": 589 - }, - { - "kind": { - "StorageDead": 23 - }, - "span": 589 - }, - { - "kind": { - "StorageDead": 21 - }, - "span": 589 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 52 - }, - { - "Type": 70 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 20, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 590 - }, - { - "kind": { - "StorageDead": 20 - }, - "span": 591 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 577 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 577 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 14 - } - }, - "span": 578 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Goto": { - "target": 16 - } - }, - "span": 592 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 6 - }, - "span": 577 - } - ], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 3, - "projection": [] - }, - "target": 16, - "unwind": "Continue" - } - }, - "span": 592 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 593 - } - }, - { - "statements": [], - "terminator": { - "kind": "Resume", - "span": 594 - } - }, - { - "statements": [], - "terminator": { - "kind": { - "Drop": { - "place": { - "local": 3, - "projection": [] - }, - "target": 17, - "unwind": "Terminate" - } - }, - "span": 592 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 31 - }, - "span": 425 - }, - { - "kind": { - "Assign": [ - { - "local": 31, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 27, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 425 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 31, - "projection": [] - } - } - ], - "destination": { - "local": 30, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 47, - "kind": "ZeroSized", - "ty": 84 - }, - "span": 423, - "user_ty": null - } - }, - "target": 20, - "unwind": "Unreachable" - } - }, - "span": 424 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 31 - }, - "span": 426 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 21 - } - }, - "span": 435 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 29 - }, - "span": 453 - }, - { - "kind": { - "Assign": [ - { - "local": 32, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 27, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 427 - }, - { - "kind": { - "Assign": [ - { - "local": 26, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 25, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Copy": { - "local": 32, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 428 - }, - { - "kind": { - "StorageDead": 32 - }, - "span": 541 - }, - { - "kind": { - "StorageDead": 27 - }, - "span": 538 - }, - { - "kind": { - "Assign": [ - { - "local": 25, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 31, - 0, - [ - { - "Type": 9 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 26, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - ] - ] - } - ] - }, - "span": 595 - }, - { - "kind": { - "StorageDead": 26 - }, - "span": 596 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 33, - 0, - [ - { - "Type": 9 - }, - { - "Type": 22 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 25, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 58, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 95 - }, - "span": 597, - "user_ty": null - } - }, - { - "Copy": { - "local": 5, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 598 - }, - { - "kind": { - "StorageDead": 25 - }, - "span": 599 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 600 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Aggregate": [ - { - "Adt": [ - 16, - 0, - [ - { - "Type": 52 - }, - { - "Type": 70 - } - ], - null, - null - ] - }, - [ - { - "Move": { - "local": 4, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 601 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 602 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 14 - } - }, - "span": 578 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 34 - }, - "span": 604 - }, - { - "kind": { - "StorageDead": 33 - }, - "span": 604 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Discriminant": { - "local": 7, - "projection": [] - } - } - ] - }, - "span": 545 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 8, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 6 - ], - [ - 1, - 5 - ] - ], - "otherwise": 4 - } - } - }, - "span": 603 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 605, - "ty": 74 - }, - { - "mutability": "Not", - "span": 606, - "ty": 28 - }, - { - "mutability": "Not", - "span": 607, - "ty": 68 - }, - { - "mutability": "Not", - "span": 608, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 535, - "ty": 52 - }, - { - "mutability": "Mut", - "span": 536, - "ty": 22 - }, - { - "mutability": "Not", - "span": 544, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 545, - "ty": 60 - }, - { - "mutability": "Mut", - "span": 609, - "ty": 6 - }, - { - "mutability": "Not", - "span": 553, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 555, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 556, - "ty": 81 - }, - { - "mutability": "Not", - "span": 559, - "ty": 90 - }, - { - "mutability": "Mut", - "span": 610, - "ty": 6 - }, - { - "mutability": "Mut", - "span": 566, - "ty": 92 - }, - { - "mutability": "Mut", - "span": 563, - "ty": 92 - }, - { - "mutability": "Mut", - "span": 611, - "ty": 6 - }, - { - "mutability": "Not", - "span": 579, - "ty": 86 - }, - { - "mutability": "Mut", - "span": 571, - "ty": 70 - }, - { - "mutability": "Mut", - "span": 572, - "ty": 101 - }, - { - "mutability": "Mut", - "span": 580, - "ty": 52 - }, - { - "mutability": "Mut", - "span": 581, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 582, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 586, - "ty": 95 - }, - { - "mutability": "Mut", - "span": 588, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 537, - "ty": 71 - }, - { - "mutability": "Mut", - "span": 538, - "ty": 72 - }, - { - "mutability": "Not", - "span": 612, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 539, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 400, - "ty": 40 - }, - { - "mutability": "Not", - "span": 424, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 425, - "ty": 39 - }, - { - "mutability": "Mut", - "span": 427, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 546, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 547, - "ty": 62 - }, - { - "mutability": "Mut", - "span": 548, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 513, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 75 - } - ], - "span": 594, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "capacity", - "source_info": { - "scope": 0, - "span": 606 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "init", - "source_info": { - "scope": 0, - "span": 607 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 0, - "span": 608 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 1, - "span": 544 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 2, - "span": 553 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "err", - "source_info": { - "scope": 3, - "span": 613 - }, - "value": { - "Const": { - "const_": { - "id": 59, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 128, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 70 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "result", - "source_info": { - "scope": 4, - "span": 559 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 5, - "span": 614 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 6, - "span": 579 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "alloc", - "source_info": { - "scope": 7, - "span": 615 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 10, - "span": 612 - }, - "value": { - "Place": { - "local": 27, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "addr", - "source_info": { - "scope": 13, - "span": 474 - }, - "value": { - "Place": { - "local": 28, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 14, - "span": 475 - }, - "value": { - "Place": { - "local": 27, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "n", - "source_info": { - "scope": 17, - "span": 616 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "align", - "source_info": { - "scope": 21, - "span": 213 - }, - "value": { - "Place": { - "local": 35, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 22, - "span": 529 - }, - "value": { - "Const": { - "const_": { - "id": 60, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 101 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "kind", - "source_info": { - "scope": 23, - "span": 617 - }, - "value": { - "Const": { - "const_": { - "id": 60, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 101 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 392 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "alloc_size", - "source_info": { - "scope": 25, - "span": 618 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 26, - "span": 529 - }, - "value": { - "Const": { - "const_": { - "id": 61, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 101 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "kind", - "source_info": { - "scope": 27, - "span": 617 - }, - "value": { - "Const": { - "const_": { - "id": 61, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 0, - null, - null, - null, - null, - null, - null, - null, - null - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 101 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 28, - "span": 529 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "kind", - "source_info": { - "scope": 29, - "span": 617 - }, - "value": { - "Place": { - "local": 19, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 30, - "span": 528 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 31, - "span": 346 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "pointer", - "source_info": { - "scope": 32, - "span": 619 - }, - "value": { - "Place": { - "local": 22, - "projection": [] - } - } - } - ] - } - ], - "id": 28, - "name": "alloc::raw_vec::RawVec::::try_allocate_in" - } - }, - "symbol_name": "_ZN5alloc7raw_vec19RawVec$LT$T$C$A$GT$15try_allocate_in17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 3, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 5 - }, - "span": 621 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 3, - "projection": [] - } - ] - } - ] - }, - "span": 621 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [ - { - "Field": [ - 0, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 372 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 622 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 620 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 6 - }, - "span": 625 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Move": { - "local": 8, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 626 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 627 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [] - } - } - } - ] - }, - "span": 627 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 628 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 7, - "projection": [] - } - ] - } - ] - }, - "span": 628 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 629 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 630 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 631 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 7, - "projection": [] - } - ] - } - ] - }, - "span": 631 - }, - { - "kind": { - "StorageLive": 12 - }, - "span": 376 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 3, - "projection": [ - { - "Field": [ - 1, - 62 - ] - } - ] - } - } - } - ] - }, - "span": 376 - }, - { - "kind": { - "StorageLive": 14 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 377 - }, - { - "kind": { - "StorageLive": 13 - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 12, - "projection": [ - { - "Field": [ - 0, - 59 - ] - } - ] - } - } - } - ] - }, - "span": 176 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Discriminant": { - "local": 13, - "projection": [] - } - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "BinaryOp": [ - "Ge", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 26, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "BinaryOp": [ - "Le", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 27, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 0, - 0, - 0, - 0, - 0, - 0, - 0, - 128 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 44 - }, - "span": 177, - "user_ty": null - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "BinaryOp": [ - "BitAnd", - { - "Move": { - "local": 15, - "projection": [] - } - }, - { - "Move": { - "local": 16, - "projection": [] - } - } - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "Intrinsic": { - "Assume": { - "Move": { - "local": 17, - "projection": [] - } - } - } - }, - "span": 177 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Cast": [ - "IntToInt", - { - "Copy": { - "local": 14, - "projection": [] - } - }, - 28 - ] - } - ] - }, - "span": 177 - }, - { - "kind": { - "StorageDead": 13 - }, - "span": 178 - }, - { - "kind": { - "StorageDead": 17 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 377 - }, - { - "kind": { - "StorageDead": 12 - }, - "span": 378 - }, - { - "kind": { - "StorageDead": 11 - }, - "span": 632 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 6, - "projection": [] - } - }, - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 10, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 62, - "kind": "ZeroSized", - "ty": 102 - }, - "span": 623, - "user_ty": null - } - }, - "target": 3, - "unwind": "Unreachable" - } - }, - "span": 624 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 633 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 635 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 636 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 636 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 2 - } - }, - "span": 634 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 637, - "ty": 1 - }, - { - "mutability": "Not", - "span": 638, - "ty": 92 - }, - { - "mutability": "Not", - "span": 639, - "ty": 72 - }, - { - "mutability": "Not", - "span": 640, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 641, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 621, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 625, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 627, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 628, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 630, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 631, - "ty": 81 - }, - { - "mutability": "Mut", - "span": 376, - "ty": 62 - }, - { - "mutability": "Not", - "span": 176, - "ty": 59 - }, - { - "mutability": "Mut", - "span": 176, - "ty": 44 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 177, - "ty": 40 - } - ], - "span": 644, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 638 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 0, - "span": 639 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 3, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 640 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 392 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 346 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 3, - "span": 642 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 3, - "span": 643 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 392 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 393 - }, - "value": { - "Place": { - "local": 11, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 208 - }, - "value": { - "Place": { - "local": 12, - "projection": [] - } - } - } - ] - } - ], - "id": 34, - "name": "::deallocate" - } - }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$10deallocate17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 64, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 1 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 646, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 63, - "kind": "ZeroSized", - "ty": 103 - }, - "span": 645, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 647 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 648 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 649, - "ty": 90 - }, - { - "mutability": "Not", - "span": 650, - "ty": 92 - }, - { - "mutability": "Not", - "span": 651, - "ty": 63 - } - ], - "span": 652, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 650 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 651 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 35, - "name": "::allocate_zeroed" - } - }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$15allocate_zeroed17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 1, - "projection": [] - } - }, - { - "Move": { - "local": 2, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 53, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 654, - "user_ty": null - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 63, - "kind": "ZeroSized", - "ty": 103 - }, - "span": 653, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 655 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 656 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 657, - "ty": 90 - }, - { - "mutability": "Not", - "span": 658, - "ty": 92 - }, - { - "mutability": "Not", - "span": 659, - "ty": 63 - } - ], - "span": 660, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 658 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "layout", - "source_info": { - "scope": 0, - "span": 659 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 36, - "name": "::allocate" - } - }, - "symbol_name": "_ZN63_$LT$alloc..alloc..Global$u20$as$u20$core..alloc..Allocator$GT$8allocate17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 663 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 664 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 306 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 52 - ] - } - ] - } - ] - } - ] - }, - "span": 306 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 307 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 52 - ] - }, - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 308 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 7, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Move": { - "local": 6, - "projection": [] - } - }, - 58 - ] - } - ] - }, - "span": 310 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 626 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 307 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 311 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 665 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 1, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 665 - }, - { - "kind": { - "Assign": [ - { - "local": 2, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Mut" - ] - }, - [ - { - "Copy": { - "local": 3, - "projection": [] - } - }, - { - "Copy": { - "local": 4, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 432 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 666 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 666 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 2, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 65, - "kind": "ZeroSized", - "ty": 104 - }, - "span": 661, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 662 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 668 - } - ], - "terminator": { - "kind": "Return", - "span": 667 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 669, - "ty": 1 - }, - { - "mutability": "Not", - "span": 670, - "ty": 54 - }, - { - "mutability": "Mut", - "span": 663, - "ty": 94 - }, - { - "mutability": "Mut", - "span": 664, - "ty": 58 - }, - { - "mutability": "Mut", - "span": 665, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 306, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 309, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 308, - "ty": 72 - } - ], - "span": 671, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 670 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 343 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 344 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 3, - "span": 345 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 3, - "span": 345 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 346 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 5, - "span": 479 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 5, - "span": 480 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 6, - "span": 481 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 6, - "span": 482 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - } - ] - } - ], - "id": 37, - "name": " as std::ops::Drop>::drop" - } - }, - "symbol_name": "_ZN70_$LT$alloc..vec..Vec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 672 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 673 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 673 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 674 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - } - ] - }, - "span": 674 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "Ne", - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 672 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 672 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 676 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 676 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 53, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 40 - }, - "span": 677, - "user_ty": null - } - } - } - ] - }, - "span": 677 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 678 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 675 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 676 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 676 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 678 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 681 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 681 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 10, - "projection": [] - } - } - ], - "destination": { - "local": 6, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 66, - "kind": "ZeroSized", - "ty": 105 - }, - "span": 679, - "user_ty": null - } - }, - "target": 5, - "unwind": "Unreachable" - } - }, - "span": 680 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 682 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 682 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 67, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 16 - }, - "span": 683, - "user_ty": null - } - } - ] - } - ] - }, - "span": 684 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 683 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 675 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 675 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 687 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 686 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 688 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 302 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 11, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 688 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 689 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 2, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 302 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 27 - ] - } - ] - }, - "span": 689 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 68, - "kind": "ZeroSized", - "ty": 106 - }, - "span": 685, - "user_ty": null - } - }, - "target": 3, - "unwind": "Unreachable" - } - }, - "span": 686 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 690, - "ty": 40 - }, - { - "mutability": "Not", - "span": 691, - "ty": 23 - }, - { - "mutability": "Not", - "span": 692, - "ty": 23 - }, - { - "mutability": "Mut", - "span": 672, - "ty": 40 - }, - { - "mutability": "Mut", - "span": 673, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 674, - "ty": 28 - }, - { - "mutability": "Not", - "span": 693, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 686, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 688, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 689, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 681, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 336, - "ty": 75 - } - ], - "span": 695, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 691 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 0, - "span": 692 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 1, - "span": 693 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "val", - "source_info": { - "scope": 2, - "span": 694 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 342 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 342 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 38, - "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" - } - }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 2 - }, - "span": 697 - }, - { - "kind": { - "StorageLive": 3 - }, - "span": 698 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 698 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 3, - "projection": [] - } - } - ], - "destination": { - "local": 2, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 69, - "kind": "ZeroSized", - "ty": 107 - }, - "span": 696, - "user_ty": null - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 697 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 3 - }, - "span": 700 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Discriminant": { - "local": 2, - "projection": [] - } - } - ] - }, - "span": 697 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 4, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 1, - 2 - ], - [ - 0, - 4 - ] - ], - "otherwise": 5 - } - } - }, - "span": 699 - } - }, - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 96 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 703 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - { - "Downcast": 1 - }, - { - "Field": [ - 0, - 96 - ] - }, - { - "Field": [ - 1, - 63 - ] - } - ] - } - } - } - ] - }, - "span": 704 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 705 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 2, - 22 - ] - } - ] - } - ] - } - ] - }, - "span": 705 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 70, - "kind": "ZeroSized", - "ty": 108 - }, - "span": 701, - "user_ty": null - } - }, - "target": 3, - "unwind": "Continue" - } - }, - "span": 702 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 7 - }, - "span": 707 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 706 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 2 - }, - "span": 709 - } - ], - "terminator": { - "kind": "Return", - "span": 708 - } - }, - { - "statements": [], - "terminator": { - "kind": "Unreachable", - "span": 710 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 711, - "ty": 1 - }, - { - "mutability": "Not", - "span": 712, - "ty": 57 - }, - { - "mutability": "Mut", - "span": 697, - "ty": 97 - }, - { - "mutability": "Mut", - "span": 698, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 699, - "ty": 6 - }, - { - "mutability": "Not", - "span": 703, - "ty": 72 - }, - { - "mutability": "Not", - "span": 704, - "ty": 63 - }, - { - "mutability": "Mut", - "span": 705, - "ty": 92 - } - ], - "span": 710, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 712 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "ptr", - "source_info": { - "scope": 1, - "span": 703 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "layout", - "source_info": { - "scope": 1, - "span": 704 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - } - ] - } - ], - "id": 39, - "name": " as std::ops::Drop>::drop" - } - }, - "symbol_name": "_ZN77_$LT$alloc..raw_vec..RawVec$LT$T$C$A$GT$$u20$as$u20$core..ops..drop..Drop$GT$4drop17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 14 - }, - "span": 714 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 715 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 715 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - } - ] - } - ] - } - ] - }, - "span": 715 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 716 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 717 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - }, - { - "Field": [ - 0, - 52 - ] - } - ] - } - ] - } - ] - }, - "span": 717 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 718 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - }, - { - "Field": [ - 0, - 52 - ] - }, - { - "Field": [ - 0, - 71 - ] - }, - { - "Field": [ - 0, - 72 - ] - } - ] - } - } - } - ] - }, - "span": 308 - }, - { - "kind": { - "Assign": [ - { - "local": 7, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 10, - "projection": [ - { - "Field": [ - 0, - 27 - ] - } - ] - } - } - } - ] - }, - "span": 309 - }, - { - "kind": { - "StorageDead": 10 - }, - "span": 718 - }, - { - "kind": { - "StorageDead": 9 - }, - "span": 719 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 720 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 1, - "projection": [ - "Deref", - { - "Field": [ - 0, - 26 - ] - }, - { - "Field": [ - 1, - 28 - ] - } - ] - } - } - } - ] - }, - "span": 720 - }, - { - "kind": { - "StorageLive": 11 - }, - "span": 713 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "NullaryOp": [ - "UbChecks", - 40 - ] - } - ] - }, - "span": 187 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 11, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 3 - ] - ], - "otherwise": 1 - } - } - }, - "span": 713 - } - }, - { - "statements": [ - { - "kind": { - "StorageLive": 13 - }, - "span": 723 - }, - { - "kind": { - "Assign": [ - { - "local": 13, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 7, - "projection": [] - } - }, - 39 - ] - } - ] - }, - "span": 723 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 13, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - }, - { - "Constant": { - "const_": { - "id": 12, - "kind": { - "Allocated": { - "align": 8, - "bytes": [ - 1, - 0, - 0, - 0, - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 28 - }, - "span": 32, - "user_ty": null - } - }, - { - "Copy": { - "local": 8, - "projection": [] - } - } - ], - "destination": { - "local": 12, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 71, - "kind": "ZeroSized", - "ty": 109 - }, - "span": 721, - "user_ty": null - } - }, - "target": 2, - "unwind": "Unreachable" - } - }, - "span": 722 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 13 - }, - "span": 725 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 3 - } - }, - "span": 724 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 11 - }, - "span": 728 - }, - { - "kind": { - "Assign": [ - { - "local": 14, - "projection": [] - }, - { - "Aggregate": [ - { - "RawPtr": [ - 85, - "Not" - ] - }, - [ - { - "Copy": { - "local": 7, - "projection": [] - } - }, - { - "Copy": { - "local": 8, - "projection": [] - } - } - ] - ] - } - ] - }, - "span": 729 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 730 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 730 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 14, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 715 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 731 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 5, - "projection": [] - } - }, - 25 - ] - } - ] - }, - "span": 732 - }, - { - "kind": { - "StorageDead": 5 - }, - "span": 733 - }, - { - "kind": { - "StorageDead": 14 - }, - "span": 714 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Use": { - "Copy": { - "local": 2, - "projection": [ - "Deref" - ] - } - } - } - ] - }, - "span": 734 - }, - { - "kind": { - "StorageLive": 16 - }, - "span": 735 - }, - { - "kind": { - "StorageLive": 18 - }, - "span": 735 - }, - { - "kind": { - "StorageLive": 15 - }, - "span": 736 - }, - { - "kind": { - "Assign": [ - { - "local": 16, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 4, - "projection": [] - } - }, - 23 - ] - } - ] - }, - "span": 47 - }, - { - "kind": { - "Assign": [ - { - "local": 15, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 16, - "projection": [] - } - ] - } - ] - }, - "span": 736 - }, - { - "kind": { - "StorageLive": 17 - }, - "span": 737 - }, - { - "kind": { - "Assign": [ - { - "local": 18, - "projection": [] - }, - { - "Cast": [ - "Transmute", - { - "Copy": { - "local": 3, - "projection": [] - } - }, - 23 - ] - } - ] - }, - "span": 47 - }, - { - "kind": { - "Assign": [ - { - "local": 17, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 18, - "projection": [] - } - ] - } - ] - }, - "span": 737 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Copy": { - "local": 16, - "projection": [] - } - }, - { - "Copy": { - "local": 18, - "projection": [] - } - } - ], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 72, - "kind": "ZeroSized", - "ty": 110 - }, - "span": 726, - "user_ty": null - } - }, - "target": 4, - "unwind": "Continue" - } - }, - "span": 727 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 17 - }, - "span": 739 - }, - { - "kind": { - "StorageDead": 15 - }, - "span": 739 - }, - { - "kind": { - "StorageDead": 18 - }, - "span": 735 - }, - { - "kind": { - "StorageDead": 16 - }, - "span": 735 - } - ], - "terminator": { - "kind": "Return", - "span": 738 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 740, - "ty": 40 - }, - { - "mutability": "Not", - "span": 741, - "ty": 111 - }, - { - "mutability": "Not", - "span": 742, - "ty": 112 - }, - { - "mutability": "Mut", - "span": 742, - "ty": 25 - }, - { - "mutability": "Not", - "span": 743, - "ty": 25 - }, - { - "mutability": "Mut", - "span": 715, - "ty": 23 - }, - { - "mutability": "Mut", - "span": 715, - "ty": 113 - }, - { - "mutability": "Mut", - "span": 716, - "ty": 27 - }, - { - "mutability": "Mut", - "span": 720, - "ty": 28 - }, - { - "mutability": "Mut", - "span": 717, - "ty": 76 - }, - { - "mutability": "Mut", - "span": 308, - "ty": 72 - }, - { - "mutability": "Mut", - "span": 713, - "ty": 40 - }, - { - "mutability": "Not", - "span": 722, - "ty": 1 - }, - { - "mutability": "Mut", - "span": 723, - "ty": 39 - }, - { - "mutability": "Not", - "span": 744, - "ty": 75 - }, - { - "mutability": "Mut", - "span": 736, - "ty": 114 - }, - { - "mutability": "Not", - "span": 736, - "ty": 23 - }, - { - "mutability": "Mut", - "span": 737, - "ty": 114 - }, - { - "mutability": "Not", - "span": 737, - "ty": 23 - } - ], - "span": 768, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 741 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 0, - "span": 742 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 1, - "span": 745 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "index", - "source_info": { - "scope": 1, - "span": 746 - }, - "value": { - "Const": { - "const_": { - "id": 73, - "kind": "ZeroSized", - "ty": 115 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 747 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 748 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 749 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 5, - "span": 750 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 6, - "span": 344 - }, - "value": { - "Place": { - "local": 9, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 0, - 72 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 7, - "span": 345 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": { - "projection": [ - { - "Field": [ - 1, - 77 - ] - } - ], - "ty": 71 - }, - "name": "self", - "source_info": { - "scope": 7, - "span": 345 - }, - "value": { - "Const": { - "const_": { - "id": 39, - "kind": "ZeroSized", - "ty": 77 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 8, - "span": 346 - }, - "value": { - "Place": { - "local": 10, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 9, - "span": 751 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 9, - "span": 752 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data", - "source_info": { - "scope": 14, - "span": 753 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "len", - "source_info": { - "scope": 14, - "span": 754 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "data_pointer", - "source_info": { - "scope": 15, - "span": 755 - }, - "value": { - "Place": { - "local": 7, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "metadata", - "source_info": { - "scope": 15, - "span": 756 - }, - "value": { - "Place": { - "local": 8, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "v", - "source_info": { - "scope": 16, - "span": 757 - }, - "value": { - "Place": { - "local": 14, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 17, - "span": 758 - }, - "value": { - "Const": { - "const_": { - "id": 73, - "kind": "ZeroSized", - "ty": 115 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "slice", - "source_info": { - "scope": 17, - "span": 759 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 18, - "span": 760 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "index", - "source_info": { - "scope": 18, - "span": 761 - }, - "value": { - "Const": { - "const_": { - "id": 73, - "kind": "ZeroSized", - "ty": 115 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 19, - "span": 758 - }, - "value": { - "Const": { - "const_": { - "id": 73, - "kind": "ZeroSized", - "ty": 115 - }, - "span": 32, - "user_ty": null - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "slice", - "source_info": { - "scope": 19, - "span": 759 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 20, - "span": 762 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 20, - "span": 763 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 21, - "span": 56 - }, - "value": { - "Place": { - "local": 4, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 22, - "span": 56 - }, - "value": { - "Place": { - "local": 3, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 23, - "span": 764 - }, - "value": { - "Place": { - "local": 15, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 23, - "span": 765 - }, - "value": { - "Place": { - "local": 17, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 24, - "span": 766 - }, - "value": { - "Place": { - "local": 16, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 24, - "span": 767 - }, - "value": { - "Place": { - "local": 18, - "projection": [] - } - } - } - ] - } - ], - "id": 40, - "name": ">::eq" - } - }, - "symbol_name": "_ZN77_$LT$alloc..string..String$u20$as$u20$core..cmp..PartialEq$LT$$RF$str$GT$$GT$2eq17h" - } - ] -} diff --git a/tests/integration/failing/str-empty.smir.json.expected b/tests/integration/failing/str-empty.smir.json.expected index ee57346..4bba89e 100644 --- a/tests/integration/failing/str-empty.smir.json.expected +++ b/tests/integration/failing/str-empty.smir.json.expected @@ -1,17 +1,5 @@ { "allocs": [ - [ - { - "Memory": { - "align": 1, - "bytes": [], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], [ { "Memory": { @@ -46,6 +34,18 @@ } } ], + [ + { + "Memory": { + "align": 1, + "bytes": [], + "mutability": "Not", + "provenance": { + "ptrs": [] + } + } + } + ], [ { "Memory": { @@ -155,16 +155,6 @@ "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], - [ - { - "IntrinsicSym": "size_of_val" - } - ], - [ - { - "IntrinsicSym": "compare_bytes" - } - ], [ { "NormalSym": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h" @@ -204,12 +194,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -294,7 +278,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -305,12 +289,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -370,7 +348,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -399,51 +377,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -457,7 +435,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -467,7 +445,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -476,7 +454,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -491,7 +469,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -506,7 +484,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -521,7 +499,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -536,7 +514,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -568,19 +546,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -607,7 +585,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -632,7 +610,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -640,7 +618,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -649,7 +627,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -674,7 +652,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -682,7 +660,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -691,13 +669,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -706,42 +684,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -765,7 +707,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -779,7 +721,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -788,37 +730,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -828,27 +764,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -861,7 +792,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -884,7 +815,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -892,21 +823,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -944,7 +860,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -958,9 +874,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -968,7 +884,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -984,7 +900,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -998,9 +914,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1008,35 +924,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1045,7 +961,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1060,7 +976,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1075,7 +991,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1084,7 +1000,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1098,17 +1014,6 @@ }, "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [], - "id": 3, - "name": "std::intrinsics::size_of_val::<[u8]>" - } - }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17h" - }, { "details": null, "mono_item_kind": { @@ -1138,7 +1043,7 @@ } ] }, - "span": 45 + "span": 42 }, { "kind": { @@ -1159,7 +1064,7 @@ } ] }, - "span": 46 + "span": 43 } ], "terminator": { @@ -1188,9 +1093,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1198,45 +1103,45 @@ "unwind": "Continue" } }, - "span": 44 + "span": 41 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 47 + "span": 44 } } ], "locals": [ { "mutability": "Mut", - "span": 48, - "ty": 22 + "span": 45, + "ty": 21 }, { "mutability": "Not", - "span": 49, - "ty": 23 + "span": 46, + "ty": 22 }, { "mutability": "Not", - "span": 50, - "ty": 23 + "span": 47, + "ty": 22 }, { "mutability": "Mut", - "span": 49, - "ty": 24 + "span": 46, + "ty": 23 }, { "mutability": "Mut", - "span": 50, - "ty": 24 + "span": 47, + "ty": 23 } ], - "span": 51, + "span": 48, "spread_arg": null, "var_debug_info": [ { @@ -1245,7 +1150,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 49 + "span": 46 }, "value": { "Place": { @@ -1260,7 +1165,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -1272,7 +1177,7 @@ ] } ], - "id": 4, + "id": 3, "name": "std::cmp::impls::::eq" } }, @@ -1316,9 +1221,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1326,40 +1231,40 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 16 }, { "mutability": "Not", - "span": 52, - "ty": 26 + "span": 49, + "ty": 25 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } ], - "id": 5, + "id": 4, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1393,40 +1298,40 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 1 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 7 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } ], - "id": 5, + "id": 4, "name": ">::call_once" } }, @@ -1467,7 +1372,7 @@ } ] }, - "span": 52 + "span": 49 } ], "terminator": { @@ -1496,9 +1401,9 @@ "const_": { "id": 8, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1508,7 +1413,7 @@ } } }, - "span": 52 + "span": 49 } }, { @@ -1524,14 +1429,14 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } }, { @@ -1547,45 +1452,45 @@ "unwind": "Terminate" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 16 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 12 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 }, { "mutability": "Not", - "span": 52, - "ty": 28 + "span": 49, + "ty": 27 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } ], - "id": 5, + "id": 4, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1603,28 +1508,28 @@ "statements": [], "terminator": { "kind": "Return", - "span": 53 + "span": 50 } } ], "locals": [ { "mutability": "Mut", - "span": 53, + "span": 50, "ty": 1 }, { "mutability": "Not", - "span": 53, - "ty": 26 + "span": 50, + "ty": 25 } ], - "span": 53, + "span": 50, "spread_arg": null, "var_debug_info": [] } ], - "id": 6, + "id": 5, "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, @@ -1644,7 +1549,7 @@ "kind": { "StorageLive": 3 }, - "span": 56 + "span": 53 }, { "kind": { @@ -1662,12 +1567,12 @@ "projection": [] } }, - 30 + 29 ] } ] }, - "span": 57 + "span": 54 }, { "kind": { @@ -1690,13 +1595,13 @@ } ] }, - "span": 56 + "span": 53 }, { "kind": { "StorageLive": 5 }, - "span": 58 + "span": 55 }, { "kind": { @@ -1714,12 +1619,12 @@ "projection": [] } }, - 30 + 29 ] } ] }, - "span": 57 + "span": 54 }, { "kind": { @@ -1742,7 +1647,7 @@ } ] }, - "span": 58 + "span": 55 } ], "terminator": { @@ -1771,9 +1676,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -1781,7 +1686,7 @@ "unwind": "Continue" } }, - "span": 55 + "span": 52 } }, { @@ -1790,59 +1695,59 @@ "kind": { "StorageDead": 5 }, - "span": 60 + "span": 57 }, { "kind": { "StorageDead": 3 }, - "span": 60 + "span": 57 } ], "terminator": { "kind": "Return", - "span": 59 + "span": 56 } } ], "locals": [ { "mutability": "Mut", - "span": 61, - "ty": 22 + "span": 58, + "ty": 21 }, { "mutability": "Not", - "span": 62, - "ty": 24 + "span": 59, + "ty": 23 }, { "mutability": "Not", - "span": 63, - "ty": 24 + "span": 60, + "ty": 23 }, { "mutability": "Mut", - "span": 56, - "ty": 31 + "span": 53, + "ty": 30 }, { "mutability": "Not", - "span": 56, - "ty": 30 + "span": 53, + "ty": 29 }, { "mutability": "Mut", - "span": 58, - "ty": 31 + "span": 55, + "ty": 30 }, { "mutability": "Not", - "span": 58, - "ty": 30 + "span": 55, + "ty": 29 } ], - "span": 67, + "span": 64, "spread_arg": null, "var_debug_info": [ { @@ -1851,7 +1756,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 62 + "span": 59 }, "value": { "Place": { @@ -1866,7 +1771,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 63 + "span": 60 }, "value": { "Place": { @@ -1881,7 +1786,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 64 + "span": 61 }, "value": { "Place": { @@ -1896,7 +1801,7 @@ "name": "self", "source_info": { "scope": 2, - "span": 64 + "span": 61 }, "value": { "Place": { @@ -1911,7 +1816,7 @@ "name": "self", "source_info": { "scope": 3, - "span": 49 + "span": 46 }, "value": { "Place": { @@ -1926,7 +1831,7 @@ "name": "other", "source_info": { "scope": 3, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -1941,7 +1846,7 @@ "name": "self", "source_info": { "scope": 4, - "span": 65 + "span": 62 }, "value": { "Place": { @@ -1956,7 +1861,7 @@ "name": "other", "source_info": { "scope": 4, - "span": 66 + "span": 63 }, "value": { "Place": { @@ -1968,794 +1873,86 @@ ] } ], - "id": 7, - "name": "core::str::traits::::eq" - } - }, - "symbol_name": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 1, - "blocks": [ - { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 10, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 17 - }, - "span": 69, - "user_ty": null - } - } - } - ] - }, - "span": 69 - } - ], - "terminator": { - "kind": "Return", - "span": 68 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 70, - "ty": 17 - }, - { - "mutability": "Not", - "span": 71, - "ty": 1 - } - ], - "span": 72, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 71 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] - } - ], - "id": 8, - "name": "<() as std::process::Termination>::report" - } - }, - "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 73 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 74 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 74 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 75 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - } - ] - }, - "span": 75 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "Ne", - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 73 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 73 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 77 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 77 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 22 - }, - "span": 78, - "user_ty": null - } - } - } - ] - }, - "span": 78 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 79 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 76 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 77 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 77 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 79 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 82 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 10, - "projection": [] - } - } - ], - "destination": { - "local": 6, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 12, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 5, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 83 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 83 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 16 - }, - "span": 84, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 84 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 76 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 76 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 88 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 87 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 89 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 90 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 11, - "projection": [] - } - }, - 34 - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 91 - }, + "id": 6, + "name": "core::str::traits::::eq" + } + }, + "symbol_name": "_ZN4core3str6traits54_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$str$GT$2eq17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 1, + "blocks": [ + { + "statements": [ { "kind": { "Assign": [ { - "local": 12, + "local": 0, "projection": [] }, { - "AddressOf": [ - "Not", - { - "local": 2, - "projection": [ - "Deref" - ] + "Use": { + "Constant": { + "const_": { + "id": 10, + "kind": { + "Allocated": { + "align": 1, + "bytes": [ + 0 + ], + "mutability": "Mut", + "provenance": { + "ptrs": [] + } + } + }, + "ty": 17 + }, + "span": 66, + "user_ty": null } - ] - } - ] - }, - "span": 90 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 34 - ] + } } ] }, - "span": 91 + "span": 66 } ], "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 86, - "user_ty": null - } - }, - "target": 3, - "unwind": "Unreachable" - } - }, - "span": 87 + "kind": "Return", + "span": 65 } } ], "locals": [ { "mutability": "Mut", - "span": 92, - "ty": 22 - }, - { - "mutability": "Not", - "span": 93, - "ty": 30 - }, - { - "mutability": "Not", - "span": 94, - "ty": 30 - }, - { - "mutability": "Mut", - "span": 73, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 74, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 75, - "ty": 35 + "span": 67, + "ty": 17 }, { "mutability": "Not", - "span": 95, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 87, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 89, - "ty": 34 - }, - { - "mutability": "Mut", - "span": 91, - "ty": 34 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 36 - }, - { - "mutability": "Mut", - "span": 96, - "ty": 36 - }, - { - "mutability": "Mut", - "span": 96, - "ty": 36 + "span": 68, + "ty": 1 } ], - "span": 99, + "span": 69, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 93 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 0, - "span": 94 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 1, - "span": 95 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "val", - "source_info": { - "scope": 2, - "span": 97 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 98 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 98 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] + "var_debug_info": [] } ], - "id": 9, - "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" + "id": 7, + "name": "<() as std::process::Termination>::report" } }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" + "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" }, { "details": null, @@ -2778,7 +1975,7 @@ "Use": { "Constant": { "const_": { - "id": 16, + "id": 12, "kind": { "Allocated": { "align": 8, @@ -2811,16 +2008,16 @@ } } }, - "ty": 24 + "ty": 23 }, - "span": 101, + "span": 71, "user_ty": null } } } ] }, - "span": 101 + "span": 71 }, { "kind": { @@ -2843,7 +2040,7 @@ } ] }, - "span": 102 + "span": 72 }, { "kind": { @@ -2856,7 +2053,7 @@ "Use": { "Constant": { "const_": { - "id": 17, + "id": 13, "kind": { "Allocated": { "align": 8, @@ -2881,16 +2078,16 @@ } } }, - "ty": 23 + "ty": 22 }, - "span": 103, + "span": 73, "user_ty": null } } } ] }, - "span": 103 + "span": 73 } ], "terminator": { @@ -2917,11 +2114,11 @@ "func": { "Constant": { "const_": { - "id": 15, + "id": 11, "kind": "ZeroSized", - "ty": 37 + "ty": 31 }, - "span": 100, + "span": 70, "user_ty": null } }, @@ -2929,7 +2126,7 @@ "unwind": "Continue" } }, - "span": 100 + "span": 70 } }, { @@ -2954,14 +2151,14 @@ } } }, - "span": 100 + "span": 70 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 104 + "span": 74 } }, { @@ -2973,7 +2170,7 @@ { "Constant": { "const_": { - "id": 19, + "id": 15, "kind": { "Allocated": { "align": 8, @@ -3006,9 +2203,9 @@ } } }, - "ty": 24 + "ty": 23 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -3020,11 +2217,11 @@ "func": { "Constant": { "const_": { - "id": 18, + "id": 14, "kind": "ZeroSized", - "ty": 38 + "ty": 32 }, - "span": 105, + "span": 75, "user_ty": null } }, @@ -3032,43 +2229,43 @@ "unwind": "Continue" } }, - "span": 105 + "span": 75 } } ], "locals": [ { "mutability": "Mut", - "span": 106, + "span": 76, "ty": 1 }, { "mutability": "Not", - "span": 107, - "ty": 24 + "span": 77, + "ty": 23 }, { "mutability": "Mut", - "span": 100, - "ty": 22 + "span": 70, + "ty": 21 }, { "mutability": "Mut", - "span": 102, - "ty": 23 + "span": 72, + "ty": 22 }, { "mutability": "Mut", - "span": 103, - "ty": 23 + "span": 73, + "ty": 22 }, { "mutability": "Mut", - "span": 105, - "ty": 39 + "span": 75, + "ty": 33 } ], - "span": 108, + "span": 78, "spread_arg": null, "var_debug_info": [ { @@ -3077,7 +2274,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 107 + "span": 77 }, "value": { "Place": { @@ -3104,7 +2301,7 @@ "Use": { "Constant": { "const_": { - "id": 16, + "id": 12, "kind": { "Allocated": { "align": 8, @@ -3137,16 +2334,16 @@ } } }, - "ty": 24 + "ty": 23 }, - "span": 103, + "span": 73, "user_ty": null } } } ] }, - "span": 103 + "span": 73 }, { "kind": { @@ -3169,33 +2366,33 @@ } ] }, - "span": 103 + "span": 73 } ], "terminator": { "kind": "Return", - "span": 103 + "span": 73 } } ], "locals": [ { "mutability": "Mut", - "span": 103, - "ty": 23 + "span": 73, + "ty": 22 }, { "mutability": "Mut", - "span": 103, - "ty": 24 + "span": 73, + "ty": 23 } ], - "span": 103, + "span": 73, "spread_arg": null, "var_debug_info": [] } ], - "id": 10, + "id": 8, "name": "main" } }, diff --git a/tests/integration/failing/str-trivial.smir.json.expected b/tests/integration/failing/str-trivial.smir.json.expected index 58dd252..896b985 100644 --- a/tests/integration/failing/str-trivial.smir.json.expected +++ b/tests/integration/failing/str-trivial.smir.json.expected @@ -1,19 +1,5 @@ { "allocs": [ - [ - { - "Memory": { - "align": 1, - "bytes": [ - 97 - ], - "mutability": "Not", - "provenance": { - "ptrs": [] - } - } - } - ], [ { "Memory": { @@ -48,6 +34,20 @@ } } ], + [ + { + "Memory": { + "align": 1, + "bytes": [ + 97 + ], + "mutability": "Not", + "provenance": { + "ptrs": [] + } + } + } + ], [ { "Memory": { @@ -162,16 +162,6 @@ "NormalSym": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ], - [ - { - "IntrinsicSym": "size_of_val" - } - ], - [ - { - "IntrinsicSym": "compare_bytes" - } - ], [ { "NormalSym": "_ZN4core3cmp5impls69_$LT$impl$u20$core..cmp..PartialEq$LT$$RF$B$GT$$u20$for$u20$$RF$A$GT$2eq17h" @@ -210,7 +200,7 @@ "Use": { "Constant": { "const_": { - "id": 16, + "id": 12, "kind": { "Allocated": { "align": 8, @@ -243,16 +233,16 @@ } } }, - "ty": 24 + "ty": 23 }, - "span": 101, + "span": 71, "user_ty": null } } } ] }, - "span": 101 + "span": 71 }, { "kind": { @@ -275,7 +265,7 @@ } ] }, - "span": 102 + "span": 72 }, { "kind": { @@ -288,7 +278,7 @@ "Use": { "Constant": { "const_": { - "id": 17, + "id": 13, "kind": { "Allocated": { "align": 8, @@ -313,16 +303,16 @@ } } }, - "ty": 23 + "ty": 22 }, - "span": 103, + "span": 73, "user_ty": null } } } ] }, - "span": 103 + "span": 73 } ], "terminator": { @@ -349,11 +339,11 @@ "func": { "Constant": { "const_": { - "id": 15, + "id": 11, "kind": "ZeroSized", - "ty": 37 + "ty": 31 }, - "span": 100, + "span": 70, "user_ty": null } }, @@ -361,7 +351,7 @@ "unwind": "Continue" } }, - "span": 100 + "span": 70 } }, { @@ -386,14 +376,14 @@ } } }, - "span": 100 + "span": 70 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 104 + "span": 74 } }, { @@ -405,7 +395,7 @@ { "Constant": { "const_": { - "id": 19, + "id": 15, "kind": { "Allocated": { "align": 8, @@ -438,9 +428,9 @@ } } }, - "ty": 24 + "ty": 23 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -452,11 +442,11 @@ "func": { "Constant": { "const_": { - "id": 18, + "id": 14, "kind": "ZeroSized", - "ty": 38 + "ty": 32 }, - "span": 105, + "span": 75, "user_ty": null } }, @@ -464,43 +454,43 @@ "unwind": "Continue" } }, - "span": 105 + "span": 75 } } ], "locals": [ { "mutability": "Mut", - "span": 106, + "span": 76, "ty": 1 }, { "mutability": "Not", - "span": 107, - "ty": 24 + "span": 77, + "ty": 23 }, { "mutability": "Mut", - "span": 100, - "ty": 22 + "span": 70, + "ty": 21 }, { "mutability": "Mut", - "span": 102, - "ty": 23 + "span": 72, + "ty": 22 }, { "mutability": "Mut", - "span": 103, - "ty": 23 + "span": 73, + "ty": 22 }, { "mutability": "Mut", - "span": 105, - "ty": 39 + "span": 75, + "ty": 33 } ], - "span": 108, + "span": 78, "spread_arg": null, "var_debug_info": [ { @@ -509,7 +499,7 @@ "name": "a", "source_info": { "scope": 1, - "span": 107 + "span": 77 }, "value": { "Place": { @@ -536,7 +526,7 @@ "Use": { "Constant": { "const_": { - "id": 16, + "id": 12, "kind": { "Allocated": { "align": 8, @@ -569,16 +559,16 @@ } } }, - "ty": 24 + "ty": 23 }, - "span": 103, + "span": 73, "user_ty": null } } } ] }, - "span": 103 + "span": 73 }, { "kind": { @@ -601,33 +591,33 @@ } ] }, - "span": 103 + "span": 73 } ], "terminator": { "kind": "Return", - "span": 103 + "span": 73 } } ], "locals": [ { "mutability": "Mut", - "span": 103, - "ty": 23 + "span": 73, + "ty": 22 }, { "mutability": "Mut", - "span": 103, - "ty": 24 + "span": 73, + "ty": 23 } ], - "span": 103, + "span": 73, "spread_arg": null, "var_debug_info": [] } ], - "id": 10, + "id": 8, "name": "main" } }, @@ -655,12 +645,6 @@ }, "span": 2 }, - { - "kind": { - "StorageLive": 7 - }, - "span": 2 - }, { "kind": { "StorageLive": 8 @@ -745,7 +729,7 @@ "PointerCoercion": "Unsize" }, { - "Move": { + "Copy": { "local": 7, "projection": [] } @@ -756,12 +740,6 @@ ] }, "span": 2 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 4 } ], "terminator": { @@ -821,7 +799,7 @@ "kind": { "StorageDead": 6 }, - "span": 6 + "span": 5 }, { "kind": { @@ -850,51 +828,51 @@ } ] }, - "span": 7 + "span": 6 }, { "kind": { "StorageDead": 8 }, - "span": 8 + "span": 7 }, { "kind": { "StorageDead": 5 }, - "span": 8 + "span": 7 } ], "terminator": { "kind": "Return", - "span": 5 + "span": 4 } } ], "locals": [ { "mutability": "Mut", - "span": 9, + "span": 8, "ty": 6 }, { "mutability": "Not", - "span": 10, + "span": 9, "ty": 7 }, { "mutability": "Not", - "span": 11, + "span": 10, "ty": 6 }, { "mutability": "Not", - "span": 12, + "span": 11, "ty": 8 }, { "mutability": "Not", - "span": 13, + "span": 12, "ty": 9 }, { @@ -908,7 +886,7 @@ "ty": 5 }, { - "mutability": "Mut", + "mutability": "Not", "span": 2, "ty": 11 }, @@ -918,7 +896,7 @@ "ty": 12 } ], - "span": 14, + "span": 13, "spread_arg": null, "var_debug_info": [ { @@ -927,7 +905,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -942,7 +920,7 @@ "name": "argc", "source_info": { "scope": 0, - "span": 11 + "span": 10 }, "value": { "Place": { @@ -957,7 +935,7 @@ "name": "argv", "source_info": { "scope": 0, - "span": 12 + "span": 11 }, "value": { "Place": { @@ -972,7 +950,7 @@ "name": "sigpipe", "source_info": { "scope": 0, - "span": 13 + "span": 12 }, "value": { "Place": { @@ -987,7 +965,7 @@ "name": "v", "source_info": { "scope": 1, - "span": 7 + "span": 6 }, "value": { "Place": { @@ -1019,19 +997,19 @@ "kind": { "StorageLive": 2 }, - "span": 17 + "span": 16 }, { "kind": { "StorageLive": 3 }, - "span": 16 + "span": 15 }, { "kind": { "StorageLive": 4 }, - "span": 18 + "span": 17 }, { "kind": { @@ -1058,7 +1036,7 @@ } ] }, - "span": 18 + "span": 17 } ], "terminator": { @@ -1083,7 +1061,7 @@ "kind": "ZeroSized", "ty": 13 }, - "span": 15, + "span": 14, "user_ty": null } }, @@ -1091,7 +1069,7 @@ "unwind": "Continue" } }, - "span": 16 + "span": 15 } }, { @@ -1100,7 +1078,7 @@ "kind": { "StorageDead": 4 }, - "span": 20 + "span": 19 } ], "terminator": { @@ -1125,7 +1103,7 @@ "kind": "ZeroSized", "ty": 14 }, - "span": 19, + "span": 18, "user_ty": null } }, @@ -1133,7 +1111,7 @@ "unwind": "Continue" } }, - "span": 17 + "span": 16 } }, { @@ -1142,13 +1120,13 @@ "kind": { "StorageDead": 3 }, - "span": 22 + "span": 21 }, { "kind": { "StorageLive": 5 }, - "span": 23 + "span": 22 }, { "kind": { @@ -1157,42 +1135,6 @@ "local": 5, "projection": [] }, - { - "Ref": [ - { - "kind": "ReErased" - }, - "Shared", - { - "local": 2, - "projection": [ - { - "Field": [ - 0, - 15 - ] - } - ] - } - ] - } - ] - }, - "span": 23 - }, - { - "kind": { - "StorageLive": 6 - }, - "span": 24 - }, - { - "kind": { - "Assign": [ - { - "local": 6, - "projection": [] - }, { "Use": { "Copy": { @@ -1216,7 +1158,7 @@ } ] }, - "span": 24 + "span": 22 }, { "kind": { @@ -1230,7 +1172,7 @@ "IntToInt", { "Move": { - "local": 6, + "local": 5, "projection": [] } }, @@ -1239,37 +1181,31 @@ } ] }, - "span": 25 - }, - { - "kind": { - "StorageDead": 6 - }, - "span": 26 + "span": 23 }, { "kind": { "StorageDead": 5 }, - "span": 27 + "span": 24 }, { "kind": { "StorageDead": 2 }, - "span": 4 + "span": 25 } ], "terminator": { "kind": "Return", - "span": 21 + "span": 20 } } ], "locals": [ { "mutability": "Mut", - "span": 28, + "span": 26, "ty": 16 }, { @@ -1279,27 +1215,22 @@ }, { "mutability": "Mut", - "span": 17, + "span": 16, "ty": 17 }, { "mutability": "Mut", - "span": 16, + "span": 15, "ty": 1 }, { "mutability": "Mut", - "span": 18, + "span": 17, "ty": 7 }, { "mutability": "Mut", - "span": 23, - "ty": 18 - }, - { - "mutability": "Mut", - "span": 24, + "span": 22, "ty": 9 } ], @@ -1312,7 +1243,7 @@ "name": "main", "source_info": { "scope": 0, - "span": 10 + "span": 9 }, "value": { "Place": { @@ -1335,7 +1266,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 29 + "span": 27 }, "value": { "Place": { @@ -1343,21 +1274,6 @@ "projection": [] } } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 2, - "span": 30 - }, - "value": { - "Place": { - "local": 5, - "projection": [] - } - } } ] } @@ -1395,7 +1311,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1409,9 +1325,9 @@ "const_": { "id": 3, "kind": "ZeroSized", - "ty": 19 + "ty": 18 }, - "span": 31, + "span": 28, "user_ty": null } }, @@ -1419,7 +1335,7 @@ "unwind": "Continue" } }, - "span": 33 + "span": 30 } }, { @@ -1435,7 +1351,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1449,9 +1365,9 @@ "const_": { "id": 5, "kind": "ZeroSized", - "ty": 20 + "ty": 19 }, - "span": 34, + "span": 31, "user_ty": null } }, @@ -1459,35 +1375,35 @@ "unwind": "Unreachable" } }, - "span": 35 + "span": 32 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 36 + "span": 33 } } ], "locals": [ { "mutability": "Mut", - "span": 37, + "span": 34, "ty": 1 }, { "mutability": "Not", - "span": 38, + "span": 35, "ty": 7 }, { "mutability": "Not", - "span": 39, + "span": 36, "ty": 1 } ], - "span": 42, + "span": 39, "spread_arg": null, "var_debug_info": [ { @@ -1496,7 +1412,7 @@ "name": "f", "source_info": { "scope": 0, - "span": 38 + "span": 35 }, "value": { "Place": { @@ -1511,7 +1427,7 @@ "name": "result", "source_info": { "scope": 1, - "span": 40 + "span": 37 }, "value": { "Place": { @@ -1526,7 +1442,7 @@ "name": "dummy", "source_info": { "scope": 2, - "span": 41 + "span": 38 }, "value": { "Const": { @@ -1535,7 +1451,7 @@ "kind": "ZeroSized", "ty": 1 }, - "span": 32, + "span": 29, "user_ty": null } } @@ -1549,17 +1465,6 @@ }, "symbol_name": "_ZN3std3sys9backtrace28__rust_begin_short_backtrace17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [], - "id": 3, - "name": "std::intrinsics::size_of_val::<[u8]>" - } - }, - "symbol_name": "_ZN4core10intrinsics11size_of_val17h" - }, { "details": null, "mono_item_kind": { @@ -1589,7 +1494,7 @@ } ] }, - "span": 45 + "span": 42 }, { "kind": { @@ -1610,7 +1515,7 @@ } ] }, - "span": 46 + "span": 43 } ], "terminator": { @@ -1639,9 +1544,9 @@ "const_": { "id": 6, "kind": "ZeroSized", - "ty": 21 + "ty": 20 }, - "span": 43, + "span": 40, "user_ty": null } }, @@ -1649,45 +1554,45 @@ "unwind": "Continue" } }, - "span": 44 + "span": 41 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 47 + "span": 44 } } ], "locals": [ { "mutability": "Mut", - "span": 48, - "ty": 22 + "span": 45, + "ty": 21 }, { "mutability": "Not", - "span": 49, - "ty": 23 + "span": 46, + "ty": 22 }, { "mutability": "Not", - "span": 50, - "ty": 23 + "span": 47, + "ty": 22 }, { "mutability": "Mut", - "span": 49, - "ty": 24 + "span": 46, + "ty": 23 }, { "mutability": "Mut", - "span": 50, - "ty": 24 + "span": 47, + "ty": 23 } ], - "span": 51, + "span": 48, "spread_arg": null, "var_debug_info": [ { @@ -1696,7 +1601,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 49 + "span": 46 }, "value": { "Place": { @@ -1711,7 +1616,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -1723,7 +1628,7 @@ ] } ], - "id": 4, + "id": 3, "name": "std::cmp::impls::::eq" } }, @@ -1767,9 +1672,9 @@ "const_": { "id": 7, "kind": "ZeroSized", - "ty": 25 + "ty": 24 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1777,40 +1682,40 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 16 }, { "mutability": "Not", - "span": 52, - "ty": 26 + "span": 49, + "ty": 25 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } ], - "id": 5, + "id": 4, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, @@ -1825,40 +1730,107 @@ "arg_count": 2, "blocks": [ { - "statements": [ - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "Ref": [ - { - "kind": "ReErased" - }, - { - "Mut": { - "kind": "Default" - } - }, - { - "local": 1, - "projection": [] - } - ] - } - ] - }, - "span": 52 - } - ], + "statements": [], "terminator": { "kind": { "Call": { - "args": [ - { + "args": [], + "destination": { + "local": 0, + "projection": [] + }, + "func": { + "Move": { + "local": 1, + "projection": [] + } + }, + "target": 1, + "unwind": "Continue" + } + }, + "span": 49 + } + }, + { + "statements": [], + "terminator": { + "kind": "Return", + "span": 49 + } + } + ], + "locals": [ + { + "mutability": "Mut", + "span": 49, + "ty": 1 + }, + { + "mutability": "Not", + "span": 49, + "ty": 7 + }, + { + "mutability": "Not", + "span": 49, + "ty": 1 + } + ], + "span": 49, + "spread_arg": 2, + "var_debug_info": [] + } + ], + "id": 4, + "name": ">::call_once" + } + }, + "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" + }, + { + "details": null, + "mono_item_kind": { + "MonoItemFn": { + "body": [ + { + "arg_count": 2, + "blocks": [ + { + "statements": [ + { + "kind": { + "Assign": [ + { + "local": 3, + "projection": [] + }, + { + "Ref": [ + { + "kind": "ReErased" + }, + { + "Mut": { + "kind": "Default" + } + }, + { + "local": 1, + "projection": [] + } + ] + } + ] + }, + "span": 49 + } + ], + "terminator": { + "kind": { + "Call": { + "args": [ + { "Move": { "local": 3, "projection": [] @@ -1880,9 +1852,9 @@ "const_": { "id": 8, "kind": "ZeroSized", - "ty": 27 + "ty": 26 }, - "span": 52, + "span": 49, "user_ty": null } }, @@ -1892,7 +1864,7 @@ } } }, - "span": 52 + "span": 49 } }, { @@ -1908,14 +1880,14 @@ "unwind": "Continue" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Return", - "span": 52 + "span": 49 } }, { @@ -1931,117 +1903,50 @@ "unwind": "Terminate" } }, - "span": 52 + "span": 49 } }, { "statements": [], "terminator": { "kind": "Resume", - "span": 52 + "span": 49 } } ], "locals": [ { "mutability": "Mut", - "span": 52, + "span": 49, "ty": 16 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 12 }, { "mutability": "Not", - "span": 52, + "span": 49, "ty": 1 }, { "mutability": "Not", - "span": 52, - "ty": 28 + "span": 49, + "ty": 27 } ], - "span": 52, + "span": 49, "spread_arg": 2, "var_debug_info": [] } ], - "id": 5, + "id": 4, "name": "<{closure@std::rt::lang_start<()>::{closure#0}} as std::ops::FnOnce<()>>::call_once" } }, "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [], - "terminator": { - "kind": { - "Call": { - "args": [], - "destination": { - "local": 0, - "projection": [] - }, - "func": { - "Move": { - "local": 1, - "projection": [] - } - }, - "target": 1, - "unwind": "Continue" - } - }, - "span": 52 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 52 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 52, - "ty": 1 - }, - { - "mutability": "Not", - "span": 52, - "ty": 7 - }, - { - "mutability": "Not", - "span": 52, - "ty": 1 - } - ], - "span": 52, - "spread_arg": 2, - "var_debug_info": [] - } - ], - "id": 5, - "name": ">::call_once" - } - }, - "symbol_name": "_ZN4core3ops8function6FnOnce9call_once17h" - }, { "details": null, "mono_item_kind": { @@ -2054,28 +1959,28 @@ "statements": [], "terminator": { "kind": "Return", - "span": 53 + "span": 50 } } ], "locals": [ { "mutability": "Mut", - "span": 53, + "span": 50, "ty": 1 }, { "mutability": "Not", - "span": 53, - "ty": 26 + "span": 50, + "ty": 25 } ], - "span": 53, + "span": 50, "spread_arg": null, "var_debug_info": [] } ], - "id": 6, + "id": 5, "name": "std::ptr::drop_in_place::<{closure@std::rt::lang_start<()>::{closure#0}}>" } }, @@ -2095,7 +2000,7 @@ "kind": { "StorageLive": 3 }, - "span": 56 + "span": 53 }, { "kind": { @@ -2113,12 +2018,12 @@ "projection": [] } }, - 30 + 29 ] } ] }, - "span": 57 + "span": 54 }, { "kind": { @@ -2141,13 +2046,13 @@ } ] }, - "span": 56 + "span": 53 }, { "kind": { "StorageLive": 5 }, - "span": 58 + "span": 55 }, { "kind": { @@ -2165,12 +2070,12 @@ "projection": [] } }, - 30 + 29 ] } ] }, - "span": 57 + "span": 54 }, { "kind": { @@ -2193,7 +2098,7 @@ } ] }, - "span": 58 + "span": 55 } ], "terminator": { @@ -2222,9 +2127,9 @@ "const_": { "id": 9, "kind": "ZeroSized", - "ty": 29 + "ty": 28 }, - "span": 54, + "span": 51, "user_ty": null } }, @@ -2232,7 +2137,7 @@ "unwind": "Continue" } }, - "span": 55 + "span": 52 } }, { @@ -2241,59 +2146,59 @@ "kind": { "StorageDead": 5 }, - "span": 60 + "span": 57 }, { "kind": { "StorageDead": 3 }, - "span": 60 + "span": 57 } ], "terminator": { "kind": "Return", - "span": 59 + "span": 56 } } ], "locals": [ { "mutability": "Mut", - "span": 61, - "ty": 22 + "span": 58, + "ty": 21 }, { "mutability": "Not", - "span": 62, - "ty": 24 + "span": 59, + "ty": 23 }, { "mutability": "Not", - "span": 63, - "ty": 24 + "span": 60, + "ty": 23 }, { "mutability": "Mut", - "span": 56, - "ty": 31 + "span": 53, + "ty": 30 }, { "mutability": "Not", - "span": 56, - "ty": 30 + "span": 53, + "ty": 29 }, { "mutability": "Mut", - "span": 58, - "ty": 31 + "span": 55, + "ty": 30 }, { "mutability": "Not", - "span": 58, - "ty": 30 + "span": 55, + "ty": 29 } ], - "span": 67, + "span": 64, "spread_arg": null, "var_debug_info": [ { @@ -2302,7 +2207,7 @@ "name": "self", "source_info": { "scope": 0, - "span": 62 + "span": 59 }, "value": { "Place": { @@ -2317,7 +2222,7 @@ "name": "other", "source_info": { "scope": 0, - "span": 63 + "span": 60 }, "value": { "Place": { @@ -2332,7 +2237,7 @@ "name": "self", "source_info": { "scope": 1, - "span": 64 + "span": 61 }, "value": { "Place": { @@ -2347,7 +2252,7 @@ "name": "self", "source_info": { "scope": 2, - "span": 64 + "span": 61 }, "value": { "Place": { @@ -2362,7 +2267,7 @@ "name": "self", "source_info": { "scope": 3, - "span": 49 + "span": 46 }, "value": { "Place": { @@ -2377,7 +2282,7 @@ "name": "other", "source_info": { "scope": 3, - "span": 50 + "span": 47 }, "value": { "Place": { @@ -2392,7 +2297,7 @@ "name": "self", "source_info": { "scope": 4, - "span": 65 + "span": 62 }, "value": { "Place": { @@ -2407,7 +2312,7 @@ "name": "other", "source_info": { "scope": 4, - "span": 66 + "span": 63 }, "value": { "Place": { @@ -2419,7 +2324,7 @@ ] } ], - "id": 7, + "id": 6, "name": "core::str::traits::::eq" } }, @@ -2461,752 +2366,44 @@ }, "ty": 17 }, - "span": 69, + "span": 66, "user_ty": null } } } ] }, - "span": 69 + "span": 66 } ], "terminator": { "kind": "Return", - "span": 68 + "span": 65 } } ], "locals": [ { "mutability": "Mut", - "span": 70, + "span": 67, "ty": 17 }, { "mutability": "Not", - "span": 71, + "span": 68, "ty": 1 } ], - "span": 72, + "span": 69, "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 71 - }, - "value": { - "Const": { - "const_": { - "id": 4, - "kind": "ZeroSized", - "ty": 1 - }, - "span": 32, - "user_ty": null - } - } - } - ] + "var_debug_info": [] } ], - "id": 8, + "id": 7, "name": "<() as std::process::Termination>::report" } }, "symbol_name": "_ZN54_$LT$$LP$$RP$$u20$as$u20$std..process..Termination$GT$6report17h" - }, - { - "details": null, - "mono_item_kind": { - "MonoItemFn": { - "body": [ - { - "arg_count": 2, - "blocks": [ - { - "statements": [ - { - "kind": { - "StorageLive": 3 - }, - "span": 73 - }, - { - "kind": { - "StorageLive": 4 - }, - "span": 74 - }, - { - "kind": { - "Assign": [ - { - "local": 4, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 1, - "projection": [] - } - } - ] - } - ] - }, - "span": 74 - }, - { - "kind": { - "StorageLive": 5 - }, - "span": 75 - }, - { - "kind": { - "Assign": [ - { - "local": 5, - "projection": [] - }, - { - "UnaryOp": [ - "PtrMetadata", - { - "Copy": { - "local": 2, - "projection": [] - } - } - ] - } - ] - }, - "span": 75 - }, - { - "kind": { - "Assign": [ - { - "local": 3, - "projection": [] - }, - { - "BinaryOp": [ - "Ne", - { - "Move": { - "local": 4, - "projection": [] - } - }, - { - "Move": { - "local": 5, - "projection": [] - } - } - ] - } - ] - }, - "span": 73 - } - ], - "terminator": { - "kind": { - "SwitchInt": { - "discr": { - "Move": { - "local": 3, - "projection": [] - } - }, - "targets": { - "branches": [ - [ - 0, - 2 - ] - ], - "otherwise": 1 - } - } - }, - "span": 73 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 77 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 77 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "Use": { - "Constant": { - "const_": { - "id": 11, - "kind": { - "Allocated": { - "align": 1, - "bytes": [ - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 22 - }, - "span": 78, - "user_ty": null - } - } - } - ] - }, - "span": 78 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 79 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 76 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 5 - }, - "span": 77 - }, - { - "kind": { - "StorageDead": 4 - }, - "span": 77 - }, - { - "kind": { - "StorageDead": 3 - }, - "span": 79 - }, - { - "kind": { - "StorageLive": 10 - }, - "span": 82 - }, - { - "kind": { - "Assign": [ - { - "local": 10, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 82 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 10, - "projection": [] - } - } - ], - "destination": { - "local": 6, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 12, - "kind": "ZeroSized", - "ty": 32 - }, - "span": 80, - "user_ty": null - } - }, - "target": 5, - "unwind": "Unreachable" - } - }, - "span": 81 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 9 - }, - "span": 83 - }, - { - "kind": { - "StorageDead": 8 - }, - "span": 83 - }, - { - "kind": { - "Assign": [ - { - "local": 0, - "projection": [] - }, - { - "BinaryOp": [ - "Eq", - { - "Move": { - "local": 7, - "projection": [] - } - }, - { - "Constant": { - "const_": { - "id": 13, - "kind": { - "Allocated": { - "align": 4, - "bytes": [ - 0, - 0, - 0, - 0 - ], - "mutability": "Mut", - "provenance": { - "ptrs": [] - } - } - }, - "ty": 16 - }, - "span": 84, - "user_ty": null - } - } - ] - } - ] - }, - "span": 85 - }, - { - "kind": { - "StorageDead": 7 - }, - "span": 84 - } - ], - "terminator": { - "kind": { - "Goto": { - "target": 4 - } - }, - "span": 76 - } - }, - { - "statements": [], - "terminator": { - "kind": "Return", - "span": 76 - } - }, - { - "statements": [ - { - "kind": { - "StorageDead": 10 - }, - "span": 88 - }, - { - "kind": { - "StorageLive": 7 - }, - "span": 87 - }, - { - "kind": { - "StorageLive": 8 - }, - "span": 89 - }, - { - "kind": { - "Assign": [ - { - "local": 11, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 1, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 90 - }, - { - "kind": { - "Assign": [ - { - "local": 8, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 11, - "projection": [] - } - }, - 34 - ] - } - ] - }, - "span": 89 - }, - { - "kind": { - "StorageLive": 9 - }, - "span": 91 - }, - { - "kind": { - "Assign": [ - { - "local": 12, - "projection": [] - }, - { - "AddressOf": [ - "Not", - { - "local": 2, - "projection": [ - "Deref" - ] - } - ] - } - ] - }, - "span": 90 - }, - { - "kind": { - "Assign": [ - { - "local": 9, - "projection": [] - }, - { - "Cast": [ - "PtrToPtr", - { - "Copy": { - "local": 12, - "projection": [] - } - }, - 34 - ] - } - ] - }, - "span": 91 - } - ], - "terminator": { - "kind": { - "Call": { - "args": [ - { - "Move": { - "local": 8, - "projection": [] - } - }, - { - "Move": { - "local": 9, - "projection": [] - } - }, - { - "Move": { - "local": 6, - "projection": [] - } - } - ], - "destination": { - "local": 7, - "projection": [] - }, - "func": { - "Constant": { - "const_": { - "id": 14, - "kind": "ZeroSized", - "ty": 33 - }, - "span": 86, - "user_ty": null - } - }, - "target": 3, - "unwind": "Unreachable" - } - }, - "span": 87 - } - } - ], - "locals": [ - { - "mutability": "Mut", - "span": 92, - "ty": 22 - }, - { - "mutability": "Not", - "span": 93, - "ty": 30 - }, - { - "mutability": "Not", - "span": 94, - "ty": 30 - }, - { - "mutability": "Mut", - "span": 73, - "ty": 22 - }, - { - "mutability": "Mut", - "span": 74, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 75, - "ty": 35 - }, - { - "mutability": "Not", - "span": 95, - "ty": 35 - }, - { - "mutability": "Mut", - "span": 87, - "ty": 16 - }, - { - "mutability": "Mut", - "span": 89, - "ty": 34 - }, - { - "mutability": "Mut", - "span": 91, - "ty": 34 - }, - { - "mutability": "Mut", - "span": 82, - "ty": 36 - }, - { - "mutability": "Mut", - "span": 96, - "ty": 36 - }, - { - "mutability": "Mut", - "span": 96, - "ty": 36 - } - ], - "span": 99, - "spread_arg": null, - "var_debug_info": [ - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 0, - "span": 93 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 2, - "composite": null, - "name": "other", - "source_info": { - "scope": 0, - "span": 94 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - }, - { - "argument_index": null, - "composite": null, - "name": "size", - "source_info": { - "scope": 1, - "span": 95 - }, - "value": { - "Place": { - "local": 6, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "val", - "source_info": { - "scope": 2, - "span": 97 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 3, - "span": 98 - }, - "value": { - "Place": { - "local": 1, - "projection": [] - } - } - }, - { - "argument_index": 1, - "composite": null, - "name": "self", - "source_info": { - "scope": 4, - "span": 98 - }, - "value": { - "Place": { - "local": 2, - "projection": [] - } - } - } - ] - } - ], - "id": 9, - "name": "<[u8] as core::slice::cmp::SlicePartialEq>::equal" - } - }, - "symbol_name": "_ZN73_$LT$$u5b$A$u5d$$u20$as$u20$core..slice..cmp..SlicePartialEq$LT$B$GT$$GT$5equal17h" } ] }