Skip to content

Instantly share code, notes, and snippets.

@bluss
Created October 1, 2016 14:55
Show Gist options
  • Save bluss/0da98648be9ee1f6b78e75d457364084 to your computer and use it in GitHub Desktop.
Save bluss/0da98648be9ee1f6b78e75d457364084 to your computer and use it in GitHub Desktop.
This file has been truncated, but you can view the full file.
; ModuleID = 'quickcheck.cgu-0.rs'
source_filename = "quickcheck.cgu-0.rs"
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
%str_slice = type { i8*, i64 }
%"3.std::string::String" = type { %"3.std::vec::Vec<u8>" }
%"3.std::vec::Vec<u8>" = type { %"5.alloc::raw_vec::RawVec<u8>", i64 }
%"5.alloc::raw_vec::RawVec<u8>" = type { %"2.std::ptr::Unique<u8>", i64 }
%"2.std::ptr::Unique<u8>" = type { %"2.core::nonzero::NonZero<*const u8>", %"2.std::marker::PhantomData<u8>" }
%"2.core::nonzero::NonZero<*const u8>" = type { i8* }
%"2.std::marker::PhantomData<u8>" = type {}
%"2.std::fmt::Formatter" = type { i32, i32, i8, %"2.std::option::Option<usize>", %"2.std::option::Option<usize>", { i8*, void (i8*)** }, %"2.std::slice::Iter<std::fmt::ArgumentV1>", { %"2.std::fmt::ArgumentV1"*, i64 } }
%"2.std::option::Option<usize>" = type { i64, [0 x i64], [1 x i64] }
%"2.std::slice::Iter<std::fmt::ArgumentV1>" = type { %"2.std::fmt::ArgumentV1"*, %"2.std::fmt::ArgumentV1"*, %"2.std::marker::PhantomData<&std::fmt::ArgumentV1>" }
%"2.std::fmt::ArgumentV1" = type { %"2.core::fmt::Void"*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* }
%"2.core::fmt::Void" = type {}
%"2.std::marker::PhantomData<&std::fmt::ArgumentV1>" = type {}
%"2.std::iter::Empty<i8>" = type { %"2.std::marker::PhantomData<i8>" }
%"2.std::marker::PhantomData<i8>" = type {}
%"2.std::option::Option<i64>" = type { i64, [0 x i64], [1 x i64] }
%"2.std::iter::Empty<i64>" = type { %"2.std::marker::PhantomData<i64>" }
%"2.std::marker::PhantomData<i64>" = type {}
%"2.std::iter::Empty<u8>" = type { %"2.std::marker::PhantomData<u8>" }
%"2.std::option::Option<u64>" = type { i64, [0 x i64], [1 x i64] }
%"2.std::iter::Empty<u64>" = type { %"2.std::marker::PhantomData<u64>" }
%"2.std::marker::PhantomData<u64>" = type {}
%"2.std::iter::Empty<usize>" = type { %"2.std::marker::PhantomData<usize>" }
%"2.std::marker::PhantomData<usize>" = type {}
%"2.std::option::Option<std::vec::Vec<char>>" = type { %"3.std::vec::Vec<char>" }
%"3.std::vec::Vec<char>" = type { %"5.alloc::raw_vec::RawVec<char>", i64 }
%"5.alloc::raw_vec::RawVec<char>" = type { %"2.std::ptr::Unique<char>", i64 }
%"2.std::ptr::Unique<char>" = type { %"2.core::nonzero::NonZero<*const char>", %"2.std::marker::PhantomData<char>" }
%"2.core::nonzero::NonZero<*const char>" = type { i32* }
%"2.std::marker::PhantomData<char>" = type {}
%"2.std::iter::Empty<std::vec::Vec<char>>" = type { %"2.std::marker::PhantomData<std::vec::Vec<char>>" }
%"2.std::marker::PhantomData<std::vec::Vec<char>>" = type {}
%"2.std::iter::Empty<i16>" = type { %"2.std::marker::PhantomData<i16>" }
%"2.std::marker::PhantomData<i16>" = type {}
%"2.std::iter::Empty<i32>" = type { %"2.std::marker::PhantomData<i32>" }
%"2.std::marker::PhantomData<i32>" = type {}
%"2.std::iter::Empty<()>" = type { %"2.std::marker::PhantomData<()>" }
%"2.std::marker::PhantomData<()>" = type {}
%"2.std::iter::Empty<u16>" = type { %"2.std::marker::PhantomData<u16>" }
%"2.std::marker::PhantomData<u16>" = type {}
%"2.std::iter::Empty<bool>" = type { %"2.std::marker::PhantomData<bool>" }
%"2.std::marker::PhantomData<bool>" = type {}
%"2.std::option::Option<isize>" = type { i64, [0 x i64], [1 x i64] }
%"2.std::iter::Empty<isize>" = type { %"2.std::marker::PhantomData<isize>" }
%"2.std::marker::PhantomData<isize>" = type {}
%"2.std::iter::Empty<u32>" = type { %"2.std::marker::PhantomData<u32>" }
%"2.std::marker::PhantomData<u32>" = type {}
%"2.std::iter::Once<bool>" = type { %"2.std::option::IntoIter<bool>" }
%"2.std::option::IntoIter<bool>" = type { %"2.std::option::Item<bool>" }
%"2.std::option::Item<bool>" = type { %"2.std::option::Option<bool>" }
%"2.std::option::Option<bool>" = type { i8, [0 x i8], [1 x i8] }
%"arbitrary::VecShrinker<char>" = type { %"3.std::vec::Vec<char>", i64, i64, { i8*, void (i8*)** } }
%"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>" = type { { i8*, void (i8*)** }, %closure.2 }
%closure.2 = type {}
%"2.std::option::Option<std::string::String>" = type { %"3.std::string::String" }
%"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>" = type { { i8*, void (i8*)** }, {} }
%"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>" = type { { i8*, void (i8*)** }, %closure.0 }
%closure.0 = type {}
%"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>" = type { { i8*, void (i8*)** }, %closure }
%closure = type {}
%"2.std::option::Option<f64>" = type { i64, [0 x i64], [1 x i64] }
%"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>" = type { { i8*, void (i8*)** }, %closure.6 }
%closure.6 = type {}
%"2.std::option::Option<std::time::Duration>" = type { i64, [0 x i64], [2 x i64] }
%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>" = type { %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>", i8 }
%"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>" = type { { i8*, void (i8*)** }, %closure.8, {} }
%closure.8 = type {}
%"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>" = type { { i8*, void (i8*)** }, %closure.14, i32 }
%closure.14 = type {}
%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>>" = type { %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>", i8 }
%"2.std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>" = type { { i8*, void (i8*)** }, %closure.10, { i32 } }
%closure.10 = type {}
%"2.std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>" = type { { i8*, void (i8*)** }, %closure.12, i64 }
%closure.12 = type {}
%"2.std::option::Option<(u64, u32)>" = type { i64, [0 x i64], [2 x i64] }
%"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>" = type { %"3.std::vec::IntoIter<usize>", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", i8 }
%"3.std::vec::IntoIter<usize>" = type { %"2.std::ptr::Shared<usize>", i64, i64*, i64* }
%"2.std::ptr::Shared<usize>" = type { %"2.core::nonzero::NonZero<*const usize>", %"2.std::marker::PhantomData<usize>" }
%"2.core::nonzero::NonZero<*const usize>" = type { i64* }
%"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker" = type { i64, i64 }
%"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>" = type { %"3.std::vec::IntoIter<u8>", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", i8 }
%"3.std::vec::IntoIter<u8>" = type { %"2.std::ptr::Shared<u8>", i64, i8*, i8* }
%"2.std::ptr::Shared<u8>" = type { %"2.core::nonzero::NonZero<*const u8>", %"2.std::marker::PhantomData<u8>" }
%"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker" = type { i8, i8 }
%"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>" = type { %"3.std::vec::IntoIter<u16>", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", i8 }
%"3.std::vec::IntoIter<u16>" = type { %"2.std::ptr::Shared<u16>", i64, i16*, i16* }
%"2.std::ptr::Shared<u16>" = type { %"2.core::nonzero::NonZero<*const u16>", %"2.std::marker::PhantomData<u16>" }
%"2.core::nonzero::NonZero<*const u16>" = type { i16* }
%"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker" = type { i16, i16 }
%"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>" = type { %"3.std::vec::IntoIter<u32>", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", i8 }
%"3.std::vec::IntoIter<u32>" = type { %"2.std::ptr::Shared<u32>", i64, i32*, i32* }
%"2.std::ptr::Shared<u32>" = type { %"2.core::nonzero::NonZero<*const u32>", %"2.std::marker::PhantomData<u32>" }
%"2.core::nonzero::NonZero<*const u32>" = type { i32* }
%"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker" = type { i32, i32 }
%"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>" = type { %"3.std::vec::IntoIter<u64>", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", i8 }
%"3.std::vec::IntoIter<u64>" = type { %"2.std::ptr::Shared<u64>", i64, i64*, i64* }
%"2.std::ptr::Shared<u64>" = type { %"2.core::nonzero::NonZero<*const u64>", %"2.std::marker::PhantomData<u64>" }
%"2.core::nonzero::NonZero<*const u64>" = type { i64* }
%"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker" = type { i64, i64 }
%"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>" = type { %"3.std::vec::IntoIter<isize>", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", i8 }
%"3.std::vec::IntoIter<isize>" = type { %"2.std::ptr::Shared<isize>", i64, i64*, i64* }
%"2.std::ptr::Shared<isize>" = type { %"2.core::nonzero::NonZero<*const isize>", %"2.std::marker::PhantomData<isize>" }
%"2.core::nonzero::NonZero<*const isize>" = type { i64* }
%"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker" = type { i64, i64 }
%"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>" = type { %"3.std::vec::IntoIter<i8>", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", i8 }
%"3.std::vec::IntoIter<i8>" = type { %"2.std::ptr::Shared<i8>", i64, i8*, i8* }
%"2.std::ptr::Shared<i8>" = type { %"2.core::nonzero::NonZero<*const i8>", %"2.std::marker::PhantomData<i8>" }
%"2.core::nonzero::NonZero<*const i8>" = type { i8* }
%"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker" = type { i8, i8 }
%"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>" = type { %"3.std::vec::IntoIter<i16>", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", i8 }
%"3.std::vec::IntoIter<i16>" = type { %"2.std::ptr::Shared<i16>", i64, i16*, i16* }
%"2.std::ptr::Shared<i16>" = type { %"2.core::nonzero::NonZero<*const i16>", %"2.std::marker::PhantomData<i16>" }
%"2.core::nonzero::NonZero<*const i16>" = type { i16* }
%"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker" = type { i16, i16 }
%"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>" = type { %"3.std::vec::IntoIter<i32>", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", i8 }
%"3.std::vec::IntoIter<i32>" = type { %"2.std::ptr::Shared<i32>", i64, i32*, i32* }
%"2.std::ptr::Shared<i32>" = type { %"2.core::nonzero::NonZero<*const i32>", %"2.std::marker::PhantomData<i32>" }
%"2.core::nonzero::NonZero<*const i32>" = type { i32* }
%"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker" = type { i32, i32 }
%"2.std::iter::Chain<std::vec::IntoIter<i64>, <i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>" = type { %"3.std::vec::IntoIter<i64>", %"<i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", i8 }
%"3.std::vec::IntoIter<i64>" = type { %"2.std::ptr::Shared<i64>", i64, i64*, i64* }
%"2.std::ptr::Shared<i64>" = type { %"2.core::nonzero::NonZero<*const i64>", %"2.std::marker::PhantomData<i64>" }
%"2.core::nonzero::NonZero<*const i64>" = type { i64* }
%"<i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker" = type { i64, i64 }
%"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>" = type { %"3.std::vec::IntoIter<i32>", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", i8 }
%"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker" = type { i32, i32 }
%"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>" = type { %"3.std::vec::IntoIter<i64>", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", i8 }
%"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker" = type { i64, i64 }
%"3.std::vec::Vec<std::string::String>" = type { %"5.alloc::raw_vec::RawVec<std::string::String>", i64 }
%"5.alloc::raw_vec::RawVec<std::string::String>" = type { %"2.std::ptr::Unique<std::string::String>", i64 }
%"2.std::ptr::Unique<std::string::String>" = type { %"2.core::nonzero::NonZero<*const std::string::String>", %"2.std::marker::PhantomData<std::string::String>" }
%"2.core::nonzero::NonZero<*const std::string::String>" = type { %"3.std::string::String"* }
%"2.std::marker::PhantomData<std::string::String>" = type {}
%"2.std::ops::RangeTo<usize>" = type { i64 }
%"2.std::ops::RangeFrom<usize>" = type { i64 }
%"2.std::str::Chars" = type { %"2.std::slice::Iter<u8>" }
%"2.std::slice::Iter<u8>" = type { i8*, i8*, %"2.std::marker::PhantomData<&u8>" }
%"2.std::marker::PhantomData<&u8>" = type {}
%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>" = type { %"2.std::slice::Iter<std::string::String>", %closure.5 }
%"2.std::slice::Iter<std::string::String>" = type { %"3.std::string::String"*, %"3.std::string::String"*, %"2.std::marker::PhantomData<&std::string::String>" }
%"2.std::marker::PhantomData<&std::string::String>" = type {}
%closure.5 = type {}
%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>" = type { %"2.std::slice::Iter<std::string::String>", %closure.1 }
%closure.1 = type {}
%"2.std::ops::RangeFull" = type {}
%"3.std::vec::SetLenOnDrop" = type { i64*, i64 }
%"2.std::slice::Iter<char>" = type { i32*, i32*, %"2.std::marker::PhantomData<&char>" }
%"2.std::marker::PhantomData<&char>" = type {}
%"3.std::vec::Vec<u32>" = type { %"5.alloc::raw_vec::RawVec<u32>", i64 }
%"5.alloc::raw_vec::RawVec<u32>" = type { %"2.std::ptr::Unique<u32>", i64 }
%"2.std::ptr::Unique<u32>" = type { %"2.core::nonzero::NonZero<*const u32>", %"2.std::marker::PhantomData<u32>" }
%"3.std::vec::Vec<isize>" = type { %"5.alloc::raw_vec::RawVec<isize>", i64 }
%"5.alloc::raw_vec::RawVec<isize>" = type { %"2.std::ptr::Unique<isize>", i64 }
%"2.std::ptr::Unique<isize>" = type { %"2.core::nonzero::NonZero<*const isize>", %"2.std::marker::PhantomData<isize>" }
%"3.std::vec::Vec<usize>" = type { %"5.alloc::raw_vec::RawVec<usize>", i64 }
%"5.alloc::raw_vec::RawVec<usize>" = type { %"2.std::ptr::Unique<usize>", i64 }
%"2.std::ptr::Unique<usize>" = type { %"2.core::nonzero::NonZero<*const usize>", %"2.std::marker::PhantomData<usize>" }
%"3.std::vec::Vec<i8>" = type { %"5.alloc::raw_vec::RawVec<i8>", i64 }
%"5.alloc::raw_vec::RawVec<i8>" = type { %"2.std::ptr::Unique<i8>", i64 }
%"2.std::ptr::Unique<i8>" = type { %"2.core::nonzero::NonZero<*const i8>", %"2.std::marker::PhantomData<i8>" }
%"3.std::vec::Vec<i16>" = type { %"5.alloc::raw_vec::RawVec<i16>", i64 }
%"5.alloc::raw_vec::RawVec<i16>" = type { %"2.std::ptr::Unique<i16>", i64 }
%"2.std::ptr::Unique<i16>" = type { %"2.core::nonzero::NonZero<*const i16>", %"2.std::marker::PhantomData<i16>" }
%"3.std::vec::Vec<u16>" = type { %"5.alloc::raw_vec::RawVec<u16>", i64 }
%"5.alloc::raw_vec::RawVec<u16>" = type { %"2.std::ptr::Unique<u16>", i64 }
%"2.std::ptr::Unique<u16>" = type { %"2.core::nonzero::NonZero<*const u16>", %"2.std::marker::PhantomData<u16>" }
%"3.std::vec::Vec<i32>" = type { %"5.alloc::raw_vec::RawVec<i32>", i64 }
%"5.alloc::raw_vec::RawVec<i32>" = type { %"2.std::ptr::Unique<i32>", i64 }
%"2.std::ptr::Unique<i32>" = type { %"2.core::nonzero::NonZero<*const i32>", %"2.std::marker::PhantomData<i32>" }
%"3.std::vec::Vec<i64>" = type { %"5.alloc::raw_vec::RawVec<i64>", i64 }
%"5.alloc::raw_vec::RawVec<i64>" = type { %"2.std::ptr::Unique<i64>", i64 }
%"2.std::ptr::Unique<i64>" = type { %"2.core::nonzero::NonZero<*const i64>", %"2.std::marker::PhantomData<i64>" }
%"3.std::vec::Vec<u64>" = type { %"5.alloc::raw_vec::RawVec<u64>", i64 }
%"5.alloc::raw_vec::RawVec<u64>" = type { %"2.std::ptr::Unique<u64>", i64 }
%"2.std::ptr::Unique<u64>" = type { %"2.core::nonzero::NonZero<*const u64>", %"2.std::marker::PhantomData<u64>" }
%"3.std::vec::IntoIter<char>" = type { %"2.std::ptr::Shared<char>", i64, i32*, i32* }
%"2.std::ptr::Shared<char>" = type { %"2.core::nonzero::NonZero<*const char>", %"2.std::marker::PhantomData<char>" }
%"2.std::option::Option<i32>" = type { i32, [0 x i32], [1 x i32] }
%"2.std::option::Option<f32>" = type { i32, [0 x i32], [1 x i32] }
%"2.std::option::Option<u32>" = type { i32, [0 x i32], [1 x i32] }
%"2.std::option::Option<char>" = type { i32, [0 x i32], [1 x i32] }
%"1.std::time::Duration" = type { i64, i32 }
%closure.7 = type { %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"** }
%"2.std::option::Option<(u32,)>" = type { i32, [0 x i32], [1 x i32] }
%closure.9 = type { %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>"** }
%closure.11 = type { %"2.std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>"** }
%"2.std::option::Option<()>" = type { i8, [0 x i8], [0 x i8] }
%closure.13 = type { %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"** }
%"2.std::iter::Cloned<std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>>" = type { %"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>" }
%"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>" = type { %"2.std::slice::Iter<char>", %"2.std::slice::Iter<char>", i8 }
%"2.std::iter::Chain<std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>, std::iter::Cloned<std::slice::Iter<char>>>" = type { %"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>", %"2.std::iter::Cloned<std::slice::Iter<char>>", i8 }
%"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>" = type { %"2.std::iter::Cloned<std::slice::Iter<char>>", %"2.std::option::IntoIter<char>", i8 }
%"2.std::option::IntoIter<char>" = type { %"2.std::option::Item<char>" }
%"2.std::option::Item<char>" = type { %"2.std::option::Option<char>" }
%"2.std::iter::Cloned<std::slice::Iter<char>>" = type { %"2.std::slice::Iter<char>" }
%"2.std::ops::Range<usize>" = type { i64, i64 }
%"2.std::fmt::Arguments" = type { { %str_slice*, i64 }, %"2.std::option::Option<&[std::fmt::rt::v1::Argument]>", { %"2.std::fmt::ArgumentV1"*, i64 } }
%"2.std::option::Option<&[std::fmt::rt::v1::Argument]>" = type { { %"2.std::fmt::rt::v1::Argument"*, i64 } }
%"2.std::fmt::rt::v1::Argument" = type { %"2.std::fmt::rt::v1::Position", %"2.std::fmt::rt::v1::FormatSpec" }
%"2.std::fmt::rt::v1::Position" = type { i64, [0 x i64], [1 x i64] }
%"2.std::fmt::rt::v1::FormatSpec" = type { i32, i8, i32, %"2.std::fmt::rt::v1::Count", %"2.std::fmt::rt::v1::Count" }
%"2.std::fmt::rt::v1::Count" = type { i64, [0 x i64], [1 x i64] }
%"2.std::result::Result<char, std::char::CharTryFromError>" = type { i32, [0 x i32], [1 x i32] }
%"2.std::result::Result<(), std::fmt::Error>" = type { i8, [0 x i8], [0 x i8] }
%"2.std::fmt::DebugList" = type { %"2.core::fmt::builders::DebugInner" }
%"2.core::fmt::builders::DebugInner" = type { %"2.std::fmt::Formatter"*, %"2.std::result::Result<(), std::fmt::Error>", i8 }
%"2.std::fmt::DebugTuple" = type { %"2.std::fmt::Formatter"*, %"2.std::result::Result<(), std::fmt::Error>", i64, i8 }
%"2.std::fmt::DebugStruct" = type { %"2.std::fmt::Formatter"*, %"2.std::result::Result<(), std::fmt::Error>", i8 }
%"2.std::char::CharTryFromError" = type { {} }
%"2.core::slice::Repr<u8>" = type { i8*, i64 }
%"2.core::slice::Repr<char>" = type { i32*, i64 }
%"2.core::slice::Repr<std::string::String>" = type { %"3.std::string::String"*, i64 }
%"2.core::slice::Repr<i64>" = type { i64*, i64 }
%"2.core::slice::Repr<i8>" = type { i8*, i64 }
%"2.core::slice::Repr<u16>" = type { i16*, i64 }
%"2.core::slice::Repr<i32>" = type { i32*, i64 }
%"2.core::slice::Repr<u32>" = type { i32*, i64 }
%"2.core::slice::Repr<isize>" = type { i64*, i64 }
%"2.core::slice::Repr<u64>" = type { i64*, i64 }
%"2.core::slice::Repr<usize>" = type { i64*, i64 }
%"2.core::slice::Repr<i16>" = type { i16*, i64 }
%closure.4 = type {}
%"2.std::option::Option<u16>" = type { i16, [0 x i16], [1 x i16] }
%"2.std::option::Option<i8>" = type { i8, [0 x i8], [1 x i8] }
%"2.std::option::Option<u8>" = type { i8, [0 x i8], [1 x i8] }
%"2.std::option::Option<i16>" = type { i16, [0 x i16], [1 x i16] }
%closure.3 = type {}
%"arbitrary::StdGen<rand::ThreadRng>" = type { %"22.rand::ThreadRng", i64 }
%"22.rand::ThreadRng" = type { %"5.std::rc::Rc<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>" }
%"5.std::rc::Rc<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>" = type { %"2.std::ptr::Shared<std::rc::RcBox<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>>" }
%"2.std::ptr::Shared<std::rc::RcBox<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>>" = type { %"2.core::nonzero::NonZero<*const std::rc::RcBox<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>>", %"2.std::marker::PhantomData<std::rc::RcBox<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>>" }
%"2.core::nonzero::NonZero<*const std::rc::RcBox<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>>" = type { %"5.std::rc::RcBox<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>"* }
%"5.std::rc::RcBox<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>" = type { %"2.std::cell::Cell<usize>", %"2.std::cell::Cell<usize>", %"2.std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>" }
%"2.std::cell::Cell<usize>" = type { %"2.std::cell::UnsafeCell<usize>" }
%"2.std::cell::UnsafeCell<usize>" = type { i64 }
%"2.std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>" = type { %"2.std::cell::Cell<usize>", %"2.std::cell::UnsafeCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>" }
%"2.std::cell::UnsafeCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>" = type { %"22.rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>" }
%"22.rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>" = type { %"22.rand::StdRng", i64, i64, %"22.rand::ThreadRngReseeder" }
%"22.rand::StdRng" = type { %"22.rand::Isaac64Rng" }
%"22.rand::Isaac64Rng" = type { i64, [256 x %"2.std::num::Wrapping<u64>"], [256 x %"2.std::num::Wrapping<u64>"], %"2.std::num::Wrapping<u64>", %"2.std::num::Wrapping<u64>", %"2.std::num::Wrapping<u64>" }
%"2.std::num::Wrapping<u64>" = type { i64 }
%"22.rand::ThreadRngReseeder" = type {}
%"2.std::marker::PhantomData<std::rc::RcBox<std::cell::RefCell<rand::reseeding::ReseedingRng<rand::StdRng, rand::ThreadRngReseeder>>>>" = type {}
%"tester::QuickCheck<arbitrary::StdGen<rand::ThreadRng>>" = type { i64, i64, %"arbitrary::StdGen<rand::ThreadRng>" }
%"tester::TestResult" = type { i8, %"3.std::vec::Vec<std::string::String>", %"2.std::option::Option<std::string::String>" }
%"8.unwind::libunwind::_Unwind_Exception" = type { i64, void (i32, %"8.unwind::libunwind::_Unwind_Exception"*)*, [6 x i64] }
%"8.unwind::libunwind::_Unwind_Context" = type {}
@"_ZN57_$LT$char$u20$as$u20$quickcheck..arbitrary..Arbitrary$GT$9arbitrary10_FILE_LINE17hfcf46a92a704e5a5E" = constant { %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 471 }, align 8
@"_ZN48_$LT$quickcheck..tester..QuickCheck$LT$G$GT$$GT$10quickcheck15__STATIC_FMTSTR17hb5b10d2745e82bc9E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([2 x %str_slice], [2 x %str_slice]* @ref12563, i32 0, i32 0), i64 2 }, align 8
@"_ZN48_$LT$quickcheck..tester..QuickCheck$LT$G$GT$$GT$10quickcheck10_FILE_LINE17h3d6ae09ce6ad594cE" = constant { %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([13 x i8], [13 x i8]* @str12560, i32 0, i32 0), i64 13 }, i32 118 }, align 8
@_ZN10quickcheck6tester10TestResult10failed_msg15__STATIC_FMTSTR17h2c3eac2501c4a57cE = internal constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([2 x %str_slice], [2 x %str_slice]* @ref12577, i32 0, i32 0), i64 2 }, align 8
@_ZN10quickcheck6tester10TestResult10failed_msg15__STATIC_FMTSTR17h92a4aa0d7e8cebc0E = internal constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([2 x %str_slice], [2 x %str_slice]* @ref12580, i32 0, i32 0), i64 2 }, align 8
@"_ZN87_$LT$core..result..Result$LT$A$C$$u20$E$GT$$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hd745cf5c3678fb8eE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN76_$LT$fn$LP$A$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hf43fc40ca939e6ecE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN76_$LT$fn$LP$A$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h23594e3b9263a96eE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN85_$LT$fn$LP$A$C$$u20$B$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hd1ec456c4f80a635E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN85_$LT$fn$LP$A$C$$u20$B$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hfe0dd93adbbe2f1dE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN85_$LT$fn$LP$A$C$$u20$B$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h27a2ea04196c3a3aE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN85_$LT$fn$LP$A$C$$u20$B$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hb18a4264db5f3325E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN94_$LT$fn$LP$A$C$$u20$B$C$$u20$C$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h207831f870fb1e39E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN94_$LT$fn$LP$A$C$$u20$B$C$$u20$C$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h0426a78bb49c8a4fE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN94_$LT$fn$LP$A$C$$u20$B$C$$u20$C$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h81a70f68c5d7878eE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN94_$LT$fn$LP$A$C$$u20$B$C$$u20$C$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h440749946ec832a7E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN94_$LT$fn$LP$A$C$$u20$B$C$$u20$C$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h77b3ecb8a2512d41E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN94_$LT$fn$LP$A$C$$u20$B$C$$u20$C$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hf69018346b053eaaE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN103_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h7555f61f7ae51110E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN103_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17he0b88a6ba36c37bdE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN103_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17haed75c40741cb487E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN103_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hc8eb88eda4fdf4ecE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN103_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h00542ce54d05ad2fE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN103_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hd55c801b484125c2E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN103_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h0ffab7cd03aff87bE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN103_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17ha617a4872d71694bE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h88f891e6369ac276E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h4c1e76e23ca4cf0fE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h8fcbfb483d28a423E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hb5b8c97f7572ae59E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h03824872860b2b4fE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h5bbf3c226e0d0683E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h3ff4c022055bb8f6E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h981d58b5376ce9ecE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h80aa35eeec370856E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN112_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h839e7d8891393757E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hee0e7859ad61035eE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hf93571adb264fb89E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h716c8db2e22b5071E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h1a26e6fc5d928dc5E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h3766b1b9cd3aef64E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hf22473d89f2a3171E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17he1b1b811800f9709E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hd0b3843ed894aea6E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hd7244b53ec70f6f4E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h6d88d18b22cb1e0cE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h90de980da8fa53b8E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN121_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17ha7fbf6638b5c0302E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h338e8f4f29578e80E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h88f7ab9f02f27264E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h3e77bc8862eb85a1E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h088dd05204cf6245E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h2bd963f2db300305E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hf28db799780681a1E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h47ae8454ec90f181E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h4a62fae95b81abf0E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hd18744aa252fb94eE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h3cca8b7358185239E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hc3f70ca17d3dbf89E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h97a09596a1d1e136E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hdc49a280190f6c57E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN130_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h6c5b160cd6804466E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hf2ce770140c59980E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17hccbffa996a74f0daE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h07ebf7c1aa7ad43fE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h1be266c9775a80a0E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h0b22c2d8917b76d8E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h11a0529b8a773c0eE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h317fc62cace082e1E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result14shrink_failure15__STATIC_FMTSTR17h956822e49219d47aE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h225bcd810a23f9adE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h6efe2ba3c4ea9074E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17ha96df1e42cb276c2E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hdbe28ae2ac7fbe13E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17he4609932908a24a2E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17hbbdca746093d6eb7E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17h0074b4e4e1c6a80dE" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@"_ZN139_$LT$fn$LP$A$C$$u20$B$C$$u20$C$C$$u20$D$C$$u20$E$C$$u20$F$C$$u20$G$C$$u20$H$RP$$u20$.$GT$$u20$T$u20$as$u20$quickcheck..tester..Testable$GT$6result15__STATIC_FMTSTR17heab5951fc7920ab5E" = constant { %str_slice*, i64 } { %str_slice* getelementptr inbounds ([1 x %str_slice], [1 x %str_slice]* @ref12582, i32 0, i32 0), i64 1 }, align 8
@str12452 = internal constant [25 x i8] c"overflow in Duration::new"
@str12453 = internal constant [17 x i8] c"capacity overflow"
@"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double14_MSG_FILE_LINE17ha7fbf0dbb03c645eE" = external global { %str_slice, %str_slice, i32 }
@str12458 = internal constant [21 x i8] c"../src/libcore/ops.rs"
@str12460 = internal constant [28 x i8] c"attempt to add with overflow"
@panic_loc12461 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([28 x i8], [28 x i8]* @str12460, i32 0, i32 0), i64 28 }, %str_slice { i8* getelementptr inbounds ([21 x i8], [21 x i8]* @str12458, i32 0, i32 0), i64 21 }, i32 311 }, align 8
@"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$11encode_utf815__STATIC_FMTSTR17ha2af189154156a1cE" = external global { %str_slice*, i64 }
@"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$11encode_utf810_FILE_LINE17h713284ebec095a44E" = external global { %str_slice, i32 }
@vtable12466 = internal unnamed_addr constant { void (i8*)*, i64, i64, i8 (%"3.std::string::String"**, %"2.std::fmt::Formatter"*)* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 8, i64 8, i8 (%"3.std::string::String"**, %"2.std::fmt::Formatter"*)* @"_ZN53_$LT$$RF$$u27$a$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h91aa84ad9e9d100fE" }, align 8
@str12469 = internal constant [25 x i8] c"../src/libcore/num/mod.rs"
@str12471 = internal constant [31 x i8] c"attempt to negate with overflow"
@panic_loc12472 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([31 x i8], [31 x i8]* @str12471, i32 0, i32 0), i64 31 }, %str_slice { i8* getelementptr inbounds ([25 x i8], [25 x i8]* @str12469, i32 0, i32 0), i64 25 }, i32 1213 }, align 8
@_ZN4core4iter6traits17ExactSizeIterator3len15__STATIC_FMTSTR17he2facd7440a446b8E = external global { %str_slice*, i64 }
@_ZN4core4iter6traits17ExactSizeIterator3len10_FILE_LINE17haedb039d2064178dE = external global { %str_slice, i32 }
@str12477 = internal constant [23 x i8] c"../src/libcore/slice.rs"
@panic_bounds_check_loc12478 = internal unnamed_addr constant { %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([23 x i8], [23 x i8]* @str12477, i32 0, i32 0), i64 23 }, i32 262 }, align 8
@_ZN5alloc7raw_vec11alloc_guard14_MSG_FILE_LINE17h9448403270d8ca7dE = external global { %str_slice, %str_slice, i32 }
@str12481 = internal constant [4 x i8] c"Some"
@vtable12482 = internal unnamed_addr constant { void (i8*)*, i64, i64, i8 (i64**, %"2.std::fmt::Formatter"*)* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 8, i64 8, i8 (i64**, %"2.std::fmt::Formatter"*)* @"_ZN53_$LT$$RF$$u27$a$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h22973f143158b40cE" }, align 8
@str12484 = internal constant [4 x i8] c"None"
@str12486 = internal constant [28 x i8] c"../src/libcollections/vec.rs"
@str12488 = internal constant [25 x i8] c"attempt to divide by zero"
@panic_loc12489 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([25 x i8], [25 x i8]* @str12488, i32 0, i32 0), i64 25 }, %str_slice { i8* getelementptr inbounds ([28 x i8], [28 x i8]* @str12486, i32 0, i32 0), i64 28 }, i32 1846 }, align 8
@panic_loc12490 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([25 x i8], [25 x i8]* @str12488, i32 0, i32 0), i64 25 }, %str_slice { i8* getelementptr inbounds ([23 x i8], [23 x i8]* @str12477, i32 0, i32 0), i64 23 }, i32 826 }, align 8
@vtable12491 = internal unnamed_addr constant { void (i8*)*, i64, i64, i16 (%"2.std::iter::Empty<i8>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<i8>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, i16 (%"2.std::iter::Empty<i8>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h3d8eb797822c025cE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<i8>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h48a7e0507dda7303E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12492 = internal unnamed_addr constant { void (i8*)*, i64, i64, void (%"2.std::option::Option<i64>"*, %"2.std::iter::Empty<i64>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<i64>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, void (%"2.std::option::Option<i64>"*, %"2.std::iter::Empty<i64>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h12767310444011c8E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<i64>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h61c2fd9ee44e522dE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12493 = internal unnamed_addr constant { void (i8*)*, i64, i64, i16 (%"2.std::iter::Empty<u8>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<u8>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, i16 (%"2.std::iter::Empty<u8>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17he4d44c95e7194bdcE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<u8>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h0810741539404a51E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12494 = internal unnamed_addr constant { void (i8*)*, i64, i64, void (%"2.std::option::Option<u64>"*, %"2.std::iter::Empty<u64>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<u64>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, void (%"2.std::option::Option<u64>"*, %"2.std::iter::Empty<u64>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h984f955484363dcaE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<u64>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hd7c7e7135bb407e4E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12495 = internal unnamed_addr constant { void (i8*)*, i64, i64, void (%"2.std::option::Option<usize>"*, %"2.std::iter::Empty<usize>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<usize>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, void (%"2.std::option::Option<usize>"*, %"2.std::iter::Empty<usize>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17he5dd94a6d1390ef8E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<usize>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h02bdb82c2605b436E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12496 = internal unnamed_addr constant { void (i8*)*, i64, i64, void (%"2.std::option::Option<std::vec::Vec<char>>"*, %"2.std::iter::Empty<std::vec::Vec<char>>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<std::vec::Vec<char>>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, void (%"2.std::option::Option<std::vec::Vec<char>>"*, %"2.std::iter::Empty<std::vec::Vec<char>>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h543ff01e54812461E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<std::vec::Vec<char>>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h68e0e93674f32eeeE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12497 = internal unnamed_addr constant { void (i8*)*, i64, i64, i32 (%"2.std::iter::Empty<i16>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<i16>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, i32 (%"2.std::iter::Empty<i16>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h985aaeae68bef5c9E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<i16>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h674e44c5e37845dbE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12498 = internal unnamed_addr constant { void (i8*)*, i64, i64, i64 (%"2.std::iter::Empty<i32>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<i32>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, i64 (%"2.std::iter::Empty<i32>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hcf57faf9d17fb9eaE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<i32>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17haf2993765df380c8E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12499 = internal unnamed_addr constant { void (i8*)*, i64, i64, i8 (%"2.std::iter::Empty<()>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<()>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, i8 (%"2.std::iter::Empty<()>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h59a9b11a569a516cE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<()>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h83eece98146bcc17E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12500 = internal unnamed_addr constant { void (i8*)*, i64, i64, i32 (%"2.std::iter::Empty<u16>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<u16>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, i32 (%"2.std::iter::Empty<u16>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h48156cd0fb471b8dE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<u16>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h0f8f349e46eb175bE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12501 = internal unnamed_addr constant { void (i8*)*, i64, i64, i16 (%"2.std::iter::Empty<bool>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<bool>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, i16 (%"2.std::iter::Empty<bool>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h5ff32abdadd534a7E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<bool>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h333f927667d765a6E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12502 = internal unnamed_addr constant { void (i8*)*, i64, i64, void (%"2.std::option::Option<isize>"*, %"2.std::iter::Empty<isize>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<isize>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, void (%"2.std::option::Option<isize>"*, %"2.std::iter::Empty<isize>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hc8a6c8057ed63c60E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<isize>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hcf25ec3fa2f79966E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12503 = internal unnamed_addr constant { void (i8*)*, i64, i64, i64 (%"2.std::iter::Empty<u32>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<u32>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 0, i64 1, i64 (%"2.std::iter::Empty<u32>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h641f1bb4b63972f3E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Empty<u32>"*)* @"_ZN86_$LT$core..iter..sources..Empty$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h63a0674898454641E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12504 = internal unnamed_addr constant { void (i8*)*, i64, i64, i16 (%"2.std::iter::Once<bool>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Once<bool>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 2, i64 1, i16 (%"2.std::iter::Once<bool>"*)* @"_ZN85_$LT$core..iter..sources..Once$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hc7169d84bf918ce4E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Once<bool>"*)* @"_ZN85_$LT$core..iter..sources..Once$LT$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h66396a4740031e37E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12505 = internal unnamed_addr constant { void (%"arbitrary::VecShrinker<char>"*)*, i64, i64, void (%"2.std::option::Option<std::vec::Vec<char>>"*, %"arbitrary::VecShrinker<char>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"arbitrary::VecShrinker<char>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"arbitrary::VecShrinker<char>"*)* @_ZN4drop17h551a1f4a8d678296E, i64 56, i64 8, void (%"2.std::option::Option<std::vec::Vec<char>>"*, %"arbitrary::VecShrinker<char>"*)* @"_ZN94_$LT$quickcheck..arbitrary..VecShrinker$LT$A$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h489100a8ab94620eE", void ({ i64, %"2.std::option::Option<usize>" }*, %"arbitrary::VecShrinker<char>"*)* @_ZN4core4iter8iterator8Iterator9size_hint17h35e3ccebe8f715f0E, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@str12506 = internal constant [16 x i8] c"src/arbitrary.rs"
@panic_loc12507 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([28 x i8], [28 x i8]* @str12460, i32 0, i32 0), i64 28 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 245 }, align 8
@str12509 = internal constant [33 x i8] c"attempt to subtract with overflow"
@panic_loc12510 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([33 x i8], [33 x i8]* @str12509, i32 0, i32 0), i64 33 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 292 }, align 8
@panic_loc12511 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([33 x i8], [33 x i8]* @str12509, i32 0, i32 0), i64 33 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 268 }, align 8
@panic_loc12512 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([28 x i8], [28 x i8]* @str12460, i32 0, i32 0), i64 28 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 272 }, align 8
@vtable12513 = internal unnamed_addr constant { void (%"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>"*)*, i64, i64, void (%"2.std::option::Option<std::string::String>"*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>"*)* @_ZN4drop17hdc661058eff1e185E, i64 16, i64 8, void (%"2.std::option::Option<std::string::String>"*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>"*)* @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h60d41eb6824bbb54E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>"*)* @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h4c266619b1bc40e1E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12514 = internal unnamed_addr constant { void (%"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>"*)*, i64, i64, i64 (%"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>"*)* @_ZN4drop17he6336d86d1701e48E, i64 16, i64 8, i64 (%"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>"*)* @"_ZN90_$LT$core..iter..FilterMap$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h5e7e6a9da4916fc2E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>"*)* @"_ZN90_$LT$core..iter..FilterMap$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h45fd1cf28b5be50bE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12515 = internal unnamed_addr constant { void (%"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>"*)*, i64, i64, i64 (%"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>"*)* @_ZN4drop17h937bc8c0d50379fdE, i64 16, i64 8, i64 (%"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>"*)* @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hb64057a348c0fe0eE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>"*)* @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h2ffaaccbc1f71d11E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12516 = internal unnamed_addr constant { void (%"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>"*)*, i64, i64, void (%"2.std::option::Option<f64>"*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>"*)* @_ZN4drop17hd11cb8ce451fc4abE, i64 16, i64 8, void (%"2.std::option::Option<f64>"*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>"*)* @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17he420749ba3361620E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>"*)* @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hf03da10aaefc43bcE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12517 = internal unnamed_addr constant { void (%"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>"*)*, i64, i64, void (%"2.std::option::Option<std::time::Duration>"*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>"*)* @_ZN4drop17hcf3ff826e1044813E, i64 16, i64 8, void (%"2.std::option::Option<std::time::Duration>"*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>"*)* @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h798d334a20f0bdbcE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>"*)* @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hfb45dfc7cbe81ae8E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@str12527 = internal constant [2 x i8] c", "
@ref12536 = internal unnamed_addr constant {} zeroinitializer, align 1
@vtable12537 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)*, i64, i64, i64 (%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)* @_ZN4drop17h54c6e7d3288ee4deE, i64 48, i64 8, i64 (%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h05f96a064e722febE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hc0c6ff0dbf494018E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12538 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)*, i64, i64, void (%"2.std::option::Option<(u64, u32)>"*, %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)* @_ZN4drop17h2cf9a1491d5ca117E, i64 56, i64 8, void (%"2.std::option::Option<(u64, u32)>"*, %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hfdc655db6a506723E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hd809a0280efc0083E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12539 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, i64, i64, void (%"2.std::option::Option<usize>"*, %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @_ZN4drop17h136c8719eb2e1c04E, i64 56, i64 8, void (%"2.std::option::Option<usize>"*, %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h2442031d047b4cd4E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h72ba033a6b83daecE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@panic_loc12540 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([33 x i8], [33 x i8]* @str12509, i32 0, i32 0), i64 33 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 506 }, align 8
@panic_loc12541 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([33 x i8], [33 x i8]* @str12509, i32 0, i32 0), i64 33 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 507 }, align 8
@vtable12542 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, i64, i64, i16 (%"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @_ZN4drop17h091ba1a3a45cddc1E, i64 40, i64 8, i16 (%"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h22cb5cb5ae72f20fE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h5874744f5608f02fE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12543 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, i64, i64, i32 (%"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @_ZN4drop17h76e0edbc54a153f5E, i64 40, i64 8, i32 (%"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17ha4ee2dd4a3a665a7E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h380b8dbdcd6ba3c4E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12544 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, i64, i64, i64 (%"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @_ZN4drop17h1f45ef7dd0041bddE, i64 48, i64 8, i64 (%"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h972142da10ac805dE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h9a750c882ae0512fE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12545 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, i64, i64, void (%"2.std::option::Option<u64>"*, %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @_ZN4drop17h1ea0d07fc47e325aE, i64 56, i64 8, void (%"2.std::option::Option<u64>"*, %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h6c0c0aa4664aec46E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h0bf23ba59762fa60E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@str12547 = internal constant [31 x i8] c"attempt to divide with overflow"
@panic_loc12548 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([31 x i8], [31 x i8]* @str12547, i32 0, i32 0), i64 31 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 559 }, align 8
@vtable12549 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, i64, i64, void (%"2.std::option::Option<isize>"*, %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @_ZN4drop17ha0dee0153b1d7da0E, i64 56, i64 8, void (%"2.std::option::Option<isize>"*, %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hee1d2d7629e942c7E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h15b757eb88c4c0c6E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@panic_loc12550 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([33 x i8], [33 x i8]* @str12509, i32 0, i32 0), i64 33 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 573 }, align 8
@panic_loc12551 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([33 x i8], [33 x i8]* @str12509, i32 0, i32 0), i64 33 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 574 }, align 8
@panic_loc12552 = internal unnamed_addr constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([31 x i8], [31 x i8]* @str12547, i32 0, i32 0), i64 31 }, %str_slice { i8* getelementptr inbounds ([16 x i8], [16 x i8]* @str12506, i32 0, i32 0), i64 16 }, i32 575 }, align 8
@vtable12553 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, i64, i64, i16 (%"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @_ZN4drop17hfd13f2e8d97a0b59E, i64 40, i64 8, i16 (%"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17he008ff8a96c06b9eE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h6537c8d45ad2ac66E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12554 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, i64, i64, i32 (%"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @_ZN4drop17he79f0f05f0754893E, i64 40, i64 8, i32 (%"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h38cd230988acacd7E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hd15305c5b2ec04a9E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12555 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, i64, i64, i64 (%"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @_ZN4drop17h09e97b67c903fef7E, i64 48, i64 8, i64 (%"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h9edb0989693a939fE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h19c539fbb034ca5aE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12556 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<i64>, <i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, i64, i64, void (%"2.std::option::Option<i64>"*, %"2.std::iter::Chain<std::vec::IntoIter<i64>, <i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i64>, <i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<i64>, <i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @_ZN4drop17h4e7938af18ee49ecE, i64 56, i64 8, void (%"2.std::option::Option<i64>"*, %"2.std::iter::Chain<std::vec::IntoIter<i64>, <i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h8d1487706112ae6eE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i64>, <i64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hae1df1fcabb727c3E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12557 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, i64, i64, i64 (%"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @_ZN4drop17h7f8a58b18d84a625E, i64 48, i64 8, i64 (%"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h97d5539258f70d7bE", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h508f1c3d5486ed81E", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@vtable12558 = internal unnamed_addr constant { void (%"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, i64, i64, void (%"2.std::option::Option<i64>"*, %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}*, {}* } { void (%"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @_ZN4drop17h360e2a6838e19bb8E, i64 56, i64 8, void (%"2.std::option::Option<i64>"*, %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h4cfc2cb20af644c3E", void ({ i64, %"2.std::option::Option<usize>" }*, %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"*)* @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h6dacb73fbfa1165eE", {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null, {}* null }, align 8
@str12559 = internal constant [18 x i8] c"quickcheck::tester"
@str12560 = internal constant [13 x i8] c"src/tester.rs"
@"_ZN48_$LT$quickcheck..tester..QuickCheck$LT$G$GT$$GT$10quickcheck4_LOC17h42ff38d9f181a974E" = constant { %str_slice, %str_slice, i32 } { %str_slice { i8* getelementptr inbounds ([18 x i8], [18 x i8]* @str12559, i32 0, i32 0), i64 18 }, %str_slice { i8* getelementptr inbounds ([13 x i8], [13 x i8]* @str12560, i32 0, i32 0), i64 13 }, i32 117 }, align 8
@str12561 = internal constant [8 x i8] c"(Passed "
@str12562 = internal constant [19 x i8] c" QuickCheck tests.)"
@ref12563 = internal unnamed_addr constant [2 x %str_slice] [%str_slice { i8* getelementptr inbounds ([8 x i8], [8 x i8]* @str12561, i32 0, i32 0), i64 8 }, %str_slice { i8* getelementptr inbounds ([19 x i8], [19 x i8]* @str12562, i32 0, i32 0), i64 19 }], align 8
@str12564 = internal constant [10 x i8] c"TestResult"
@str12565 = internal constant [6 x i8] c"status"
@vtable12566 = internal unnamed_addr constant { void (i8*)*, i64, i64, i8 (i8**, %"2.std::fmt::Formatter"*)* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 8, i64 8, i8 (i8**, %"2.std::fmt::Formatter"*)* @"_ZN53_$LT$$RF$$u27$a$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17heb4dbcd7004a7316E" }, align 8
@str12568 = internal constant [9 x i8] c"arguments"
@vtable12569 = internal unnamed_addr constant { void (i8*)*, i64, i64, i8 (%"3.std::vec::Vec<std::string::String>"**, %"2.std::fmt::Formatter"*)* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 8, i64 8, i8 (%"3.std::vec::Vec<std::string::String>"**, %"2.std::fmt::Formatter"*)* @"_ZN53_$LT$$RF$$u27$a$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h89bf9e0b80bde5bdE" }, align 8
@str12570 = internal constant [3 x i8] c"err"
@vtable12571 = internal unnamed_addr constant { void (i8*)*, i64, i64, i8 (%"2.std::option::Option<std::string::String>"**, %"2.std::fmt::Formatter"*)* } { void (i8*)* @_ZN4drop17h55f1364a23135fb4E, i64 8, i64 8, i8 (%"2.std::option::Option<std::string::String>"**, %"2.std::fmt::Formatter"*)* @"_ZN53_$LT$$RF$$u27$a$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17h72edab163e191005E" }, align 8
@str12572 = internal constant [7 x i8] c"Discard"
@str12573 = internal constant [4 x i8] c"Fail"
@str12574 = internal constant [4 x i8] c"Pass"
@str12575 = internal constant [38 x i8] c"[quickcheck] TEST FAILED. Arguments: ("
@str12576 = internal constant [1 x i8] c")"
@ref12577 = internal unnamed_addr constant [2 x %str_slice] [%str_slice { i8* getelementptr inbounds ([38 x i8], [38 x i8]* @str12575, i32 0, i32 0), i64 38 }, %str_slice { i8* getelementptr inbounds ([1 x i8], [1 x i8]* @str12576, i32 0, i32 0), i64 1 }], align 8
@str12578 = internal constant [54 x i8] c"[quickcheck] TEST FAILED (runtime error). Arguments: ("
@str12579 = internal constant [9 x i8] c")\0AError: "
@ref12580 = internal unnamed_addr constant [2 x %str_slice] [%str_slice { i8* getelementptr inbounds ([54 x i8], [54 x i8]* @str12578, i32 0, i32 0), i64 54 }, %str_slice { i8* getelementptr inbounds ([9 x i8], [9 x i8]* @str12579, i32 0, i32 0), i64 9 }], align 8
@str12581 = internal constant [0 x i8] zeroinitializer
@ref12582 = internal unnamed_addr constant [1 x %str_slice] [%str_slice { i8* getelementptr inbounds ([0 x i8], [0 x i8]* @str12581, i32 0, i32 0), i64 0 }], align 8
; Function Attrs: inlinehint uwtable
define internal { i32*, i64 } @"_ZN106_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..Index$LT$core..ops..RangeTo$LT$usize$GT$$GT$$GT$5index17h78ae8c15e9aaad3aE"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24), i64) unnamed_addr #0 {
entry-block:
%arg1 = alloca %"2.std::ops::RangeTo<usize>"
%abi_cast = alloca i64
%index = alloca %"2.std::ops::RangeTo<usize>"
%_10 = alloca %"2.std::ops::RangeTo<usize>"
%arg = alloca %"2.std::ops::RangeTo<usize>"
store i64 %1, i64* %abi_cast
%2 = bitcast %"2.std::ops::RangeTo<usize>"* %arg1 to i8*
%3 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %start
start: ; preds = %entry-block
%4 = load %"2.std::ops::RangeTo<usize>", %"2.std::ops::RangeTo<usize>"* %arg1
store %"2.std::ops::RangeTo<usize>" %4, %"2.std::ops::RangeTo<usize>"* %index
%5 = call { i32*, i64 } @"_ZN67_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17h694edbcc03658132E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
%6 = extractvalue { i32*, i64 } %5, 0
%7 = extractvalue { i32*, i64 } %5, 1
br label %bb1
bb1: ; preds = %start
%8 = load %"2.std::ops::RangeTo<usize>", %"2.std::ops::RangeTo<usize>"* %index
store %"2.std::ops::RangeTo<usize>" %8, %"2.std::ops::RangeTo<usize>"* %_10
%9 = load %"2.std::ops::RangeTo<usize>", %"2.std::ops::RangeTo<usize>"* %_10
store %"2.std::ops::RangeTo<usize>" %9, %"2.std::ops::RangeTo<usize>"* %arg
%10 = bitcast %"2.std::ops::RangeTo<usize>"* %arg to i64*
%11 = load i64, i64* %10, align 8
%12 = call { i32*, i64 } @"_ZN4core5slice97_$LT$impl$u20$core..ops..Index$LT$core..ops..RangeTo$LT$usize$GT$$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17hdbb3574c1d520a8aE"(i32* noalias nonnull readonly %6, i64 %7, i64 %11)
%13 = extractvalue { i32*, i64 } %12, 0
%14 = extractvalue { i32*, i64 } %12, 1
br label %bb2
bb2: ; preds = %bb1
%15 = insertvalue { i32*, i64 } undef, i32* %13, 0
%16 = insertvalue { i32*, i64 } %15, i64 %14, 1
ret { i32*, i64 } %16
}
; Function Attrs: inlinehint uwtable
define internal { i32*, i64 } @"_ZN108_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..Index$LT$core..ops..RangeFrom$LT$usize$GT$$GT$$GT$5index17hd6111d2ed8f80634E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24), i64) unnamed_addr #0 {
entry-block:
%arg1 = alloca %"2.std::ops::RangeFrom<usize>"
%abi_cast = alloca i64
%index = alloca %"2.std::ops::RangeFrom<usize>"
%_10 = alloca %"2.std::ops::RangeFrom<usize>"
%arg = alloca %"2.std::ops::RangeFrom<usize>"
store i64 %1, i64* %abi_cast
%2 = bitcast %"2.std::ops::RangeFrom<usize>"* %arg1 to i8*
%3 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %start
start: ; preds = %entry-block
%4 = load %"2.std::ops::RangeFrom<usize>", %"2.std::ops::RangeFrom<usize>"* %arg1
store %"2.std::ops::RangeFrom<usize>" %4, %"2.std::ops::RangeFrom<usize>"* %index
%5 = call { i32*, i64 } @"_ZN67_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17h694edbcc03658132E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
%6 = extractvalue { i32*, i64 } %5, 0
%7 = extractvalue { i32*, i64 } %5, 1
br label %bb1
bb1: ; preds = %start
%8 = load %"2.std::ops::RangeFrom<usize>", %"2.std::ops::RangeFrom<usize>"* %index
store %"2.std::ops::RangeFrom<usize>" %8, %"2.std::ops::RangeFrom<usize>"* %_10
%9 = load %"2.std::ops::RangeFrom<usize>", %"2.std::ops::RangeFrom<usize>"* %_10
store %"2.std::ops::RangeFrom<usize>" %9, %"2.std::ops::RangeFrom<usize>"* %arg
%10 = bitcast %"2.std::ops::RangeFrom<usize>"* %arg to i64*
%11 = load i64, i64* %10, align 8
%12 = call { i32*, i64 } @"_ZN4core5slice99_$LT$impl$u20$core..ops..Index$LT$core..ops..RangeFrom$LT$usize$GT$$GT$$u20$for$u20$$u5b$T$u5d$$GT$5index17h1e54b6f321eb99f9E"(i32* noalias nonnull readonly %6, i64 %7, i64 %11)
%13 = extractvalue { i32*, i64 } %12, 0
%14 = extractvalue { i32*, i64 } %12, 1
br label %bb2
bb2: ; preds = %bb1
%15 = insertvalue { i32*, i64 } undef, i32* %13, 0
%16 = insertvalue { i32*, i64 } %15, i64 %14, 1
ret { i32*, i64 } %16
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections3str21_$LT$impl$u20$str$GT$3len17h0fd16f961079c9c2E"(i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$3len17h224bb3d60e628bcdE"(i8* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections3str21_$LT$impl$u20$str$GT$5chars17he882231882225d47E"(%"2.std::str::Chars"* noalias nocapture sret dereferenceable(16), i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
call void @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$5chars17hb8ceaed3733e6147E"(%"2.std::str::Chars"* noalias nocapture sret dereferenceable(16) %0, i8* noalias nonnull readonly %1, i64 %2)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: alwaysinline uwtable
define internal { i8*, i64 } @"_ZN11collections3str21_$LT$impl$u20$str$GT$8as_bytes17h8280826069269f4aE"(i8* noalias nonnull readonly, i64) unnamed_addr #1 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call { i8*, i64 } @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8as_bytes17hd7221f0ab57906a8E"(i8* noalias nonnull readonly %0, i64 %1)
%3 = extractvalue { i8*, i64 } %2, 0
%4 = extractvalue { i8*, i64 } %2, 1
br label %bb1
bb1: ; preds = %start
%5 = insertvalue { i8*, i64 } undef, i8* %3, 0
%6 = insertvalue { i8*, i64 } %5, i64 %4, 1
ret { i8*, i64 } %6
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN11collections3str21_$LT$impl$u20$str$GT$8is_empty17h64cd8582598d40d3E"(i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call zeroext i1 @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8is_empty17hb09759392c83dfc7E"(i8* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i1 %2
}
; Function Attrs: uwtable
define internal void @"_ZN11collections3str87_$LT$impl$u20$collections..slice..SliceConcatExt$LT$str$GT$$u20$for$u20$$u5b$S$u5d$$GT$4join17hbf8d288439ae9aa7E"(%"3.std::string::String"* noalias nocapture sret dereferenceable(24), %"3.std::string::String"* noalias nonnull readonly, i64, i8* noalias nonnull readonly, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_5 = alloca {}
%_10 = alloca {}
%_11 = alloca {}
%_25 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%_26 = alloca %"2.std::slice::Iter<std::string::String>"
%_28 = alloca %closure.5
%result = alloca %"3.std::string::String"
%first = alloca i8
%_result = alloca {}
%_34 = alloca %"2.std::slice::Iter<std::string::String>"
%iter = alloca %"2.std::slice::Iter<std::string::String>"
%_37 = alloca i8*
%_41 = alloca {}
%_53 = alloca %"3.std::string::String"
%_54 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_54
%5 = call zeroext i1 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8is_empty17hc845b4d2c78a1c18E"(%"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
br label %bb1
bb1: ; preds = %start
br i1 %5, label %bb2, label %bb3
bb2: ; preds = %bb1
call void @_ZN11collections6string6String3new17h7d498d76bd1915b2E(%"3.std::string::String"* noalias nocapture sret dereferenceable(24) %0)
br label %bb5
bb3: ; preds = %bb1
%6 = call zeroext i1 @"_ZN11collections3str21_$LT$impl$u20$str$GT$8is_empty17h64cd8582598d40d3E"(i8* noalias nonnull readonly %3, i64 %4)
br label %bb7
bb4: ; preds = %bb6, %bb21
ret void
bb5: ; preds = %bb2
br label %bb6
bb6: ; preds = %bb5, %bb10
br label %bb4
bb7: ; preds = %bb3
br i1 %6, label %bb8, label %bb9
bb8: ; preds = %bb7
call void @"_ZN11collections3str87_$LT$impl$u20$collections..slice..SliceConcatExt$LT$str$GT$$u20$for$u20$$u5b$S$u5d$$GT$6concat17h211f94cfbf4f67eeE"(%"3.std::string::String"* noalias nocapture sret dereferenceable(24) %0, %"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
br label %bb10
bb9: ; preds = %bb7
%7 = call i64 @"_ZN11collections3str21_$LT$impl$u20$str$GT$3len17h0fd16f961079c9c2E"(i8* noalias nonnull readonly %3, i64 %4)
br label %bb11
bb10: ; preds = %bb8
br label %bb6
bb11: ; preds = %bb9
%8 = call i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17ha64adfad93e46d5bE"(%"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
br label %bb12
bb12: ; preds = %bb11
%9 = sub i64 %8, 1
%10 = mul i64 %7, %9
call void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h93bb98924032615dE"(%"2.std::slice::Iter<std::string::String>"* noalias nocapture sret dereferenceable(16) %_26, %"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
br label %bb13
bb13: ; preds = %bb12
call void @_ZN4core4iter8iterator8Iterator3map17h70f6a2c9ad4fa50bE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture sret dereferenceable(16) %_25, %"2.std::slice::Iter<std::string::String>"* noalias nocapture dereferenceable(16) %_26)
br label %bb14
bb14: ; preds = %bb13
%11 = call i64 @_ZN4core4iter8iterator8Iterator3sum17h916d8f63ab69c5beE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16) %_25)
br label %bb15
bb15: ; preds = %bb14
%12 = add i64 %10, %11
invoke void @_ZN11collections6string6String13with_capacity17h63cfb42ff605fec8E(%"3.std::string::String"* noalias nocapture sret dereferenceable(24) %result, i64 %12)
to label %bb17 unwind label %cleanup
bb16: ; preds = %bb29, %bb30
%13 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %13
bb17: ; preds = %bb15
store i8 1, i8* %_54
store i8 1, i8* %first
invoke void @"_ZN4core5slice89_$LT$impl$u20$core..iter..traits..IntoIterator$u20$for$u20$$RF$$u27$a$u20$$u5b$T$u5d$$GT$9into_iter17h7b0910cabded59a0E"(%"2.std::slice::Iter<std::string::String>"* noalias nocapture sret dereferenceable(16) %_34, %"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
to label %bb18 unwind label %cleanup
bb18: ; preds = %bb17
%14 = bitcast %"2.std::slice::Iter<std::string::String>"* %_34 to i8*
%15 = bitcast %"2.std::slice::Iter<std::string::String>"* %iter to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %15, i8* %14, i64 16, i32 8, i1 false)
br label %bb19
bb19: ; preds = %bb28, %bb18
%16 = invoke i8* @"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hbb65670e25c47ef6E"(%"2.std::slice::Iter<std::string::String>"* dereferenceable(16) %iter)
to label %bb20 unwind label %cleanup
bb20: ; preds = %bb19
store i8* %16, i8** %_37
%17 = load i8*, i8** %_37
%18 = icmp ne i8* %17, null
switch i1 %18, label %unreachable [
i1 false, label %bb21
i1 true, label %bb22
]
bb21: ; preds = %bb20
store i8 0, i8* %_54
%19 = bitcast %"3.std::string::String"* %result to i8*
%20 = bitcast %"3.std::string::String"* %_53 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %20, i8* %19, i64 24, i32 8, i1 false)
%21 = bitcast %"3.std::string::String"* %_53 to i8*
%22 = bitcast %"3.std::string::String"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %22, i8* %21, i64 24, i32 8, i1 false)
br label %bb4
bb22: ; preds = %bb20
%23 = bitcast i8** %_37 to %"3.std::string::String"**
%24 = load %"3.std::string::String"*, %"3.std::string::String"** %23, !nonnull !0
%25 = load i8, i8* %first, !range !1
%26 = trunc i8 %25 to i1
br i1 %26, label %bb23, label %bb24
bb23: ; preds = %bb22
store i8 0, i8* %first
br label %bb26
bb24: ; preds = %bb22
invoke void @_ZN11collections6string6String8push_str17h2d7fe4295e164077E(%"3.std::string::String"* dereferenceable(24) %result, i8* noalias nonnull readonly %3, i64 %4)
to label %bb25 unwind label %cleanup
bb25: ; preds = %bb24
br label %bb26
bb26: ; preds = %bb23, %bb25
%27 = invoke %str_slice @"_ZN11collections3str89_$LT$impl$u20$core..borrow..Borrow$LT$str$GT$$u20$for$u20$collections..string..String$GT$6borrow17h8a1662e912f55b18E"(%"3.std::string::String"* noalias readonly dereferenceable(24) %24)
to label %bb27 unwind label %cleanup
bb27: ; preds = %bb26
%28 = extractvalue %str_slice %27, 0
%29 = extractvalue %str_slice %27, 1
invoke void @_ZN11collections6string6String8push_str17h2d7fe4295e164077E(%"3.std::string::String"* dereferenceable(24) %result, i8* noalias nonnull readonly %28, i64 %29)
to label %bb28 unwind label %cleanup
bb28: ; preds = %bb27
br label %bb19
bb29: ; preds = %bb30
store i8 0, i8* %_54
call void @_ZN4drop17hb965eeb4af11cfd8E(%"3.std::string::String"* %result)
br label %bb16
bb30: ; preds = %cleanup
%30 = load i8, i8* %_54, !range !1
%31 = trunc i8 %30 to i1
br i1 %31, label %bb29, label %bb16
cleanup: ; preds = %bb27, %bb26, %bb24, %bb19, %bb17, %bb15
%32 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %32, { i8*, i32 }* %personalityslot
br label %bb30
unreachable: ; preds = %bb20
unreachable
}
; Function Attrs: uwtable
define internal void @"_ZN11collections3str87_$LT$impl$u20$collections..slice..SliceConcatExt$LT$str$GT$$u20$for$u20$$u5b$S$u5d$$GT$6concat17h211f94cfbf4f67eeE"(%"3.std::string::String"* noalias nocapture sret dereferenceable(24), %"3.std::string::String"* noalias nonnull readonly, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_3 = alloca {}
%_10 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%_11 = alloca %"2.std::slice::Iter<std::string::String>"
%_13 = alloca %closure.1
%result = alloca %"3.std::string::String"
%_result = alloca {}
%_18 = alloca %"2.std::slice::Iter<std::string::String>"
%iter = alloca %"2.std::slice::Iter<std::string::String>"
%_21 = alloca i8*
%_31 = alloca %"3.std::string::String"
%_32 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_32
%3 = call zeroext i1 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8is_empty17hc845b4d2c78a1c18E"(%"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
br label %bb1
bb1: ; preds = %start
br i1 %3, label %bb2, label %bb3
bb2: ; preds = %bb1
call void @_ZN11collections6string6String3new17h7d498d76bd1915b2E(%"3.std::string::String"* noalias nocapture sret dereferenceable(24) %0)
br label %bb5
bb3: ; preds = %bb1
call void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h93bb98924032615dE"(%"2.std::slice::Iter<std::string::String>"* noalias nocapture sret dereferenceable(16) %_11, %"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
br label %bb6
bb4: ; preds = %bb5, %bb14
ret void
bb5: ; preds = %bb2
br label %bb4
bb6: ; preds = %bb3
call void @_ZN4core4iter8iterator8Iterator3map17h7e2ff8bd731da6bbE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture sret dereferenceable(16) %_10, %"2.std::slice::Iter<std::string::String>"* noalias nocapture dereferenceable(16) %_11)
br label %bb7
bb7: ; preds = %bb6
%4 = call i64 @_ZN4core4iter8iterator8Iterator3sum17h688ccc8f1a287e7dE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16) %_10)
br label %bb8
bb8: ; preds = %bb7
invoke void @_ZN11collections6string6String13with_capacity17h63cfb42ff605fec8E(%"3.std::string::String"* noalias nocapture sret dereferenceable(24) %result, i64 %4)
to label %bb10 unwind label %cleanup
bb9: ; preds = %bb18, %bb19
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb10: ; preds = %bb8
store i8 1, i8* %_32
invoke void @"_ZN4core5slice89_$LT$impl$u20$core..iter..traits..IntoIterator$u20$for$u20$$RF$$u27$a$u20$$u5b$T$u5d$$GT$9into_iter17h7b0910cabded59a0E"(%"2.std::slice::Iter<std::string::String>"* noalias nocapture sret dereferenceable(16) %_18, %"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%6 = bitcast %"2.std::slice::Iter<std::string::String>"* %_18 to i8*
%7 = bitcast %"2.std::slice::Iter<std::string::String>"* %iter to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %7, i8* %6, i64 16, i32 8, i1 false)
br label %bb12
bb12: ; preds = %bb17, %bb11
%8 = invoke i8* @"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hbb65670e25c47ef6E"(%"2.std::slice::Iter<std::string::String>"* dereferenceable(16) %iter)
to label %bb13 unwind label %cleanup
bb13: ; preds = %bb12
store i8* %8, i8** %_21
%9 = load i8*, i8** %_21
%10 = icmp ne i8* %9, null
switch i1 %10, label %unreachable [
i1 false, label %bb14
i1 true, label %bb15
]
bb14: ; preds = %bb13
store i8 0, i8* %_32
%11 = bitcast %"3.std::string::String"* %result to i8*
%12 = bitcast %"3.std::string::String"* %_31 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 24, i32 8, i1 false)
%13 = bitcast %"3.std::string::String"* %_31 to i8*
%14 = bitcast %"3.std::string::String"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %14, i8* %13, i64 24, i32 8, i1 false)
br label %bb4
bb15: ; preds = %bb13
%15 = bitcast i8** %_21 to %"3.std::string::String"**
%16 = load %"3.std::string::String"*, %"3.std::string::String"** %15, !nonnull !0
%17 = invoke %str_slice @"_ZN11collections3str89_$LT$impl$u20$core..borrow..Borrow$LT$str$GT$$u20$for$u20$collections..string..String$GT$6borrow17h8a1662e912f55b18E"(%"3.std::string::String"* noalias readonly dereferenceable(24) %16)
to label %bb16 unwind label %cleanup
bb16: ; preds = %bb15
%18 = extractvalue %str_slice %17, 0
%19 = extractvalue %str_slice %17, 1
invoke void @_ZN11collections6string6String8push_str17h2d7fe4295e164077E(%"3.std::string::String"* dereferenceable(24) %result, i8* noalias nonnull readonly %18, i64 %19)
to label %bb17 unwind label %cleanup
bb17: ; preds = %bb16
br label %bb12
bb18: ; preds = %bb19
store i8 0, i8* %_32
call void @_ZN4drop17hb965eeb4af11cfd8E(%"3.std::string::String"* %result)
br label %bb9
bb19: ; preds = %cleanup
%20 = load i8, i8* %_32, !range !1
%21 = trunc i8 %20 to i1
br i1 %21, label %bb18, label %bb9
cleanup: ; preds = %bb16, %bb15, %bb12, %bb10, %bb8
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb19
unreachable: ; preds = %bb13
unreachable
}
; Function Attrs: uwtable
define internal void @"_ZN11collections3str87_$LT$impl$u20$collections..slice..SliceConcatExt$LT$str$GT$$u20$for$u20$$u5b$S$u5d$$GT$7connect17h4c0de6ae6d4410c5E"(%"3.std::string::String"* noalias nocapture sret dereferenceable(24), %"3.std::string::String"* noalias nonnull readonly, i64, i8* noalias nonnull readonly, i64) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
call void @"_ZN11collections3str87_$LT$impl$u20$collections..slice..SliceConcatExt$LT$str$GT$$u20$for$u20$$u5b$S$u5d$$GT$4join17hbf8d288439ae9aa7E"(%"3.std::string::String"* noalias nocapture sret dereferenceable(24) %0, %"3.std::string::String"* noalias nonnull readonly %1, i64 %2, i8* noalias nonnull readonly %3, i64 %4)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal %str_slice @"_ZN11collections3str89_$LT$impl$u20$core..borrow..Borrow$LT$str$GT$$u20$for$u20$collections..string..String$GT$6borrow17h8a1662e912f55b18E"(%"3.std::string::String"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
%_6 = alloca %"2.std::ops::RangeFull"
br label %start
start: ; preds = %entry-block
%1 = call %str_slice @"_ZN92_$LT$collections..string..String$u20$as$u20$core..ops..Index$LT$core..ops..RangeFull$GT$$GT$5index17h0c0904832f9840d5E"(%"3.std::string::String"* noalias readonly dereferenceable(24) %0)
%2 = extractvalue %str_slice %1, 0
%3 = extractvalue %str_slice %1, 1
br label %bb1
bb1: ; preds = %start
%4 = insertvalue %str_slice undef, i8* %2, 0
%5 = insertvalue %str_slice %4, i64 %3, 1
ret %str_slice %5
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN11collections3vec12SetLenOnDrop13increment_len17h4311f6ac9557fc9eE(%"3.std::vec::SetLenOnDrop"* dereferenceable(16), i64) unnamed_addr #0 {
entry-block:
%_0 = alloca {}
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds %"3.std::vec::SetLenOnDrop", %"3.std::vec::SetLenOnDrop"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::SetLenOnDrop", %"3.std::vec::SetLenOnDrop"* %0, i32 0, i32 1
%4 = load i64, i64* %3
%5 = add i64 %4, %1
store i64 %5, i64* %2
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN11collections3vec12SetLenOnDrop3new17heac3fbcea17ecb0eE(%"3.std::vec::SetLenOnDrop"* noalias nocapture sret dereferenceable(16), i64* dereferenceable(8)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = load i64, i64* %1
%3 = getelementptr inbounds %"3.std::vec::SetLenOnDrop", %"3.std::vec::SetLenOnDrop"* %0, i32 0, i32 0
store i64* %1, i64** %3
%4 = getelementptr inbounds %"3.std::vec::SetLenOnDrop", %"3.std::vec::SetLenOnDrop"* %0, i32 0, i32 1
store i64 %2, i64* %4
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal %"3.std::string::String"* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h01a5feec506b972fE"(%"3.std::string::String"* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call %"3.std::string::String"* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17hfcc8c7a705f1d877E"(%"3.std::string::String"* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret %"3.std::string::String"* %2
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h18ea3c4e1e7ef2faE"(i64* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h3102a55fc5681e88E"(i64* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64* %2
}
; Function Attrs: inlinehint uwtable
define internal i16* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h470d960a8b9decf3E"(i16* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i16* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h895985291021ff97E"(i16* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i16* %2
}
; Function Attrs: inlinehint uwtable
define internal i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h4fbadb907151c0f0E"(i8* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h3d8c643b70f52843E"(i8* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i8* %2
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h5938c52cc39bd5abE"(i64* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17hfd46288aabdfb0b4E"(i64* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64* %2
}
; Function Attrs: inlinehint uwtable
define internal i16* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h6460e90063ebdfd6E"(i16* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i16* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h5a6b16426f113df1E"(i16* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i16* %2
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h71e7765cffd970b6E"(i64* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h324fdbfd93eb7a48E"(i64* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64* %2
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h819010597e3b6109E"(i32* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i32* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17hbf866612dd4d0d4dE"(i32* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i32* %2
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h9f053a5507cb79eaE"(i32* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i32* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h61aad5df39d21cc1E"(i32* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i32* %2
}
; Function Attrs: inlinehint uwtable
define internal i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17hc1b537762bd4ebdeE"(i8* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h1640273ba7ae1504E"(i8* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i8* %2
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17hefef3deec89b87e6E"(i32* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i32* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17hb15ede43f13af40cE"(i32* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i32* %2
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17hf3704e8789f9f53eE"(i64* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h94f2b73a6f13b67dE"(i64* nonnull %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64* %2
}
; Function Attrs: inlinehint uwtable
define internal dereferenceable(4) i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$13get_unchecked17h6792dd39417f7392E"(i32* noalias nonnull readonly, i64, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = call dereferenceable(4) i32* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$13get_unchecked17h93cb634d77dfbb79E"(i32* noalias nonnull readonly %0, i64 %1, i64 %2)
br label %bb1
bb1: ; preds = %start
ret i32* %3
}
; Function Attrs: inlinehint uwtable
define internal dereferenceable(1) i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$13get_unchecked17hcfff7a6cc4533209E"(i8* noalias nonnull readonly, i64, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$13get_unchecked17he8b8d457dbda3760E"(i8* noalias nonnull readonly %0, i64 %1, i64 %2)
br label %bb1
bb1: ; preds = %start
ret i8* %3
}
; Function Attrs: inlinehint uwtable
define internal dereferenceable(4) i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$17get_unchecked_mut17h12c03b1bfbe4e7d5E"(i32* nonnull, i64, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = call dereferenceable(4) i32* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h0ae77bd4a7357114E"(i32* nonnull %0, i64 %1, i64 %2)
br label %bb1
bb1: ; preds = %start
ret i32* %3
}
; Function Attrs: inlinehint uwtable
define internal dereferenceable(1) i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$17get_unchecked_mut17h3f0dec373034dfdeE"(i8* nonnull, i64, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %0, i64 %1, i64 %2)
br label %bb1
bb1: ; preds = %start
ret i8* %3
}
; Function Attrs: inlinehint uwtable
define internal i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3get17hb8d75137fa5b47ebE"(i32* noalias nonnull readonly, i64, i64) unnamed_addr #0 {
entry-block:
%_0 = alloca i8*
br label %start
start: ; preds = %entry-block
%3 = call i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3get17h2c1209ef1aa2e85fE"(i32* noalias nonnull readonly %0, i64 %1, i64 %2)
store i8* %3, i8** %_0
br label %bb1
bb1: ; preds = %start
%4 = load i8*, i8** %_0
ret i8* %4
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h5d2ff7378d6cd9b3E"(i64* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h9460e95aa2a8aff7E"(i64* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h5d9b854f19a2a954E"(i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17hddb5a1066ede3302E"(i8* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h6af11fd56c168c13E"(i32* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h7c973920ea28e833E"(i32* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h6cfe42c3d7b7cd38E"(i64* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17he1ec38f67baf6c4eE"(i64* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h727bccfbea91010dE"(i64* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h2b6fa82f729fe074E"(i64* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h87f9717efce902aaE"(i16* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h78dfc233ca217c65E"(i16* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h9298345b09d787d7E"(i32* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h9a09c078bf62222eE"(i32* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17ha64adfad93e46d5bE"(%"3.std::string::String"* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h6cd3b18beb5fc80eE"(%"3.std::string::String"* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17had04d526590e7207E"(i16* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h58ff59474142dc88E"(i16* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hb36a1d40f34ad1adE"(i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17hbe72fc028233252cE"(i8* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hd364daab1838c67fE"(i64* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h643a36cea8086254E"(i64* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17he7263a64865df790E"(i32* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17h39085a6a3578d7dcE"(i32* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h1850ae62f89a5c28E"(%"2.std::slice::Iter<char>"* noalias nocapture sret dereferenceable(16), i32* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
call void @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$4iter17h69c1c84c7e505d81E"(%"2.std::slice::Iter<char>"* noalias nocapture sret dereferenceable(16) %0, i32* noalias nonnull readonly %1, i64 %2)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$4iter17h93bb98924032615dE"(%"2.std::slice::Iter<std::string::String>"* noalias nocapture sret dereferenceable(16), %"3.std::string::String"* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
call void @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$4iter17hebd9d4cf3487d76bE"(%"2.std::slice::Iter<std::string::String>"* noalias nocapture sret dereferenceable(16) %0, %"3.std::string::String"* noalias nonnull readonly %1, i64 %2)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$6to_vec17he7d8fe112f133adeE"(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24), i32* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
call void @_ZN11collections5slice4hack6to_vec17ha83155a5c9117f47E(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24) %0, i32* noalias nonnull readonly %1, i64 %2)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h1f5260fcd2691a6aE"(%"3.std::vec::Vec<u32>"* noalias nocapture sret dereferenceable(24), i32* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17h17c2333a7e4aefdbE(%"3.std::vec::Vec<u32>"* noalias nocapture sret dereferenceable(24) %0, i32* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h244380c9d80f29acE"(%"3.std::vec::Vec<isize>"* noalias nocapture sret dereferenceable(24), i64* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17heabdefc94b9e1bb1E(%"3.std::vec::Vec<isize>"* noalias nocapture sret dereferenceable(24) %0, i64* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h282d2207c5d7be65E"(%"3.std::vec::Vec<usize>"* noalias nocapture sret dereferenceable(24), i64* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17h3cbfce4d40bd1a7eE(%"3.std::vec::Vec<usize>"* noalias nocapture sret dereferenceable(24) %0, i64* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h40b5674d01431cb2E"(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24), i8* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17h5f50ae355248b47cE(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24) %0, i8* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h4e6eb248f77980ddE"(%"3.std::vec::Vec<std::string::String>"* noalias nocapture sret dereferenceable(24), %"3.std::string::String"* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17h81a1131cace3564bE(%"3.std::vec::Vec<std::string::String>"* noalias nocapture sret dereferenceable(24) %0, %"3.std::string::String"* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h63cf5d23f6592bb2E"(%"3.std::vec::Vec<i8>"* noalias nocapture sret dereferenceable(24), i8* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17h40e4d47dfe4d17b2E(%"3.std::vec::Vec<i8>"* noalias nocapture sret dereferenceable(24) %0, i8* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17h8b0e1361f55f3631E"(%"3.std::vec::Vec<i16>"* noalias nocapture sret dereferenceable(24), i16* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17hf424c2e1c1922078E(%"3.std::vec::Vec<i16>"* noalias nocapture sret dereferenceable(24) %0, i16* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17haa771a15f999befdE"(%"3.std::vec::Vec<u16>"* noalias nocapture sret dereferenceable(24), i16* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17h200b5a7c6d2f4ddbE(%"3.std::vec::Vec<u16>"* noalias nocapture sret dereferenceable(24) %0, i16* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17hac411099de220305E"(%"3.std::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24), i32* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17hb9f98ab6ec25567fE(%"3.std::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24) %0, i32* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17hbe5c3e622fe26794E"(%"3.std::vec::Vec<i64>"* noalias nocapture sret dereferenceable(24), i64* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17hc7234c33c99ac144E(%"3.std::vec::Vec<i64>"* noalias nocapture sret dereferenceable(24) %0, i64* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17hc228fe2f313327b4E"(%"3.std::vec::Vec<u64>"* noalias nocapture sret dereferenceable(24), i64* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17hfc6299cbe2d027baE(%"3.std::vec::Vec<u64>"* noalias nocapture sret dereferenceable(24) %0, i64* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8into_vec17hd87b2821d4005d8dE"(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24), i32* noalias nonnull, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
invoke void @_ZN11collections5slice4hack8into_vec17h3c7c606e08434985E(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24) %0, i32* noalias nonnull %1, i64 %2)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%4 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %4, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$8is_empty17hc845b4d2c78a1c18E"(%"3.std::string::String"* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call zeroext i1 @_ZN4core5slice8SliceExt8is_empty17hd04af0a2c29b4fcbE(%"3.std::string::String"* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN11collections5slice4hack6to_vec17ha83155a5c9117f47E(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24), i32* noalias nonnull readonly, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%vector = alloca %"3.std::vec::Vec<char>"
%_10 = alloca %"3.std::vec::Vec<char>"
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%3 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h9298345b09d787d7E"(i32* noalias nonnull readonly %1, i64 %2)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb6, %bb2
%4 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %4
bb2: ; preds = %cleanup
%5 = load i8, i8* %_11, !range !1
%6 = trunc i8 %5 to i1
br i1 %6, label %bb6, label %bb1
bb3: ; preds = %start
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$13with_capacity17hfc397c344bd5b657E"(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24) %vector, i64 %3)
to label %bb4 unwind label %cleanup
bb4: ; preds = %bb3
store i8 1, i8* %_11
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$17extend_from_slice17h5de3070332ef920eE"(%"3.std::vec::Vec<char>"* dereferenceable(24) %vector, i32* noalias nonnull readonly %1, i64 %2)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
store i8 0, i8* %_11
%7 = bitcast %"3.std::vec::Vec<char>"* %vector to i8*
%8 = bitcast %"3.std::vec::Vec<char>"* %_10 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %7, i64 24, i32 8, i1 false)
%9 = bitcast %"3.std::vec::Vec<char>"* %_10 to i8*
%10 = bitcast %"3.std::vec::Vec<char>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %9, i64 24, i32 8, i1 false)
ret void
bb6: ; preds = %bb2
store i8 0, i8* %_11
call void @_ZN4drop17h03a279da9cd88334E(%"3.std::vec::Vec<char>"* %vector)
br label %bb1
cleanup: ; preds = %bb4, %bb3, %start
%11 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %11, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17h17c2333a7e4aefdbE(%"3.std::vec::Vec<u32>"* noalias nocapture sret dereferenceable(24), i32* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i32*, i64 }
%xs = alloca %"3.std::vec::Vec<u32>"
%_13 = alloca %"3.std::vec::Vec<u32>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
store i32* %1, i32** %3
%4 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%7 = load i32*, i32** %5
%8 = load i64, i64* %6
%9 = invoke i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h819010597e3b6109E"(i32* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%17 = load i32*, i32** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h6af11fd56c168c13E"(i32* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%22 = load i32*, i32** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h6af11fd56c168c13E"(i32* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h013b202cd8cfeddcE"(%"3.std::vec::Vec<u32>"* noalias nocapture sret dereferenceable(24) %xs, i32* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%27 = load i32*, i32** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h9258f501af8f90d9E(i32* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<u32>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<u32>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<u32>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<u32>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h6da4d2e2a95ee3e7E({ i32*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17hd26f1bf2e0465ec8E(%"3.std::vec::Vec<u32>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17h200b5a7c6d2f4ddbE(%"3.std::vec::Vec<u16>"* noalias nocapture sret dereferenceable(24), i16* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i16*, i64 }
%xs = alloca %"3.std::vec::Vec<u16>"
%_13 = alloca %"3.std::vec::Vec<u16>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
store i16* %1, i16** %3
%4 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
%7 = load i16*, i16** %5
%8 = load i64, i64* %6
%9 = invoke i16* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h470d960a8b9decf3E"(i16* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
%17 = load i16*, i16** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17had04d526590e7207E"(i16* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
%22 = load i16*, i16** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17had04d526590e7207E"(i16* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h0e8fc40296d477d4E"(%"3.std::vec::Vec<u16>"* noalias nocapture sret dereferenceable(24) %xs, i16* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
%27 = load i16*, i16** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h4c586f0b08458086E(i16* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<u16>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<u16>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<u16>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<u16>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h34d02b034855de45E({ i16*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h19780757acb18376E(%"3.std::vec::Vec<u16>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17h3c7c606e08434985E(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24), i32* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i32*, i64 }
%xs = alloca %"3.std::vec::Vec<char>"
%_13 = alloca %"3.std::vec::Vec<char>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
store i32* %1, i32** %3
%4 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%7 = load i32*, i32** %5
%8 = load i64, i64* %6
%9 = invoke i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17hefef3deec89b87e6E"(i32* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%17 = load i32*, i32** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h9298345b09d787d7E"(i32* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%22 = load i32*, i32** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h9298345b09d787d7E"(i32* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h511fa15d352bfa8dE"(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24) %xs, i32* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%27 = load i32*, i32** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h542f504241c434afE(i32* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<char>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<char>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<char>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<char>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h134f9ff99786eabbE({ i32*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h03a279da9cd88334E(%"3.std::vec::Vec<char>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17h3cbfce4d40bd1a7eE(%"3.std::vec::Vec<usize>"* noalias nocapture sret dereferenceable(24), i64* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i64*, i64 }
%xs = alloca %"3.std::vec::Vec<usize>"
%_13 = alloca %"3.std::vec::Vec<usize>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
store i64* %1, i64** %3
%4 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%7 = load i64*, i64** %5
%8 = load i64, i64* %6
%9 = invoke i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h18ea3c4e1e7ef2faE"(i64* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%17 = load i64*, i64** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hd364daab1838c67fE"(i64* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%22 = load i64*, i64** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hd364daab1838c67fE"(i64* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h03ad7ac1e28f2b43E"(%"3.std::vec::Vec<usize>"* noalias nocapture sret dereferenceable(24) %xs, i64* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%27 = load i64*, i64** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h68bdae5c0918b004E(i64* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<usize>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<usize>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<usize>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<usize>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17ha9eaf6215ed8d16dE({ i64*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h85c171edfe805c9dE(%"3.std::vec::Vec<usize>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17h40e4d47dfe4d17b2E(%"3.std::vec::Vec<i8>"* noalias nocapture sret dereferenceable(24), i8* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i8*, i64 }
%xs = alloca %"3.std::vec::Vec<i8>"
%_13 = alloca %"3.std::vec::Vec<i8>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
store i8* %1, i8** %3
%4 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
%7 = load i8*, i8** %5
%8 = load i64, i64* %6
%9 = invoke i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h4fbadb907151c0f0E"(i8* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
%17 = load i8*, i8** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h5d9b854f19a2a954E"(i8* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
%22 = load i8*, i8** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h5d9b854f19a2a954E"(i8* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h34af255d25cb72c3E"(%"3.std::vec::Vec<i8>"* noalias nocapture sret dereferenceable(24) %xs, i8* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
%27 = load i8*, i8** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h45153ad572e6f78dE(i8* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<i8>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<i8>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<i8>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<i8>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h940749a0c745d055E({ i8*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17ha378a57757231950E(%"3.std::vec::Vec<i8>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17h5f50ae355248b47cE(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24), i8* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i8*, i64 }
%xs = alloca %"3.std::vec::Vec<u8>"
%_13 = alloca %"3.std::vec::Vec<u8>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
store i8* %1, i8** %3
%4 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
%7 = load i8*, i8** %5
%8 = load i64, i64* %6
%9 = invoke i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17hc1b537762bd4ebdeE"(i8* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
%17 = load i8*, i8** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hb36a1d40f34ad1adE"(i8* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
%22 = load i8*, i8** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hb36a1d40f34ad1adE"(i8* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17hddbc17ae541ffe1bE"(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24) %xs, i8* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %b, i32 0, i32 1
%27 = load i8*, i8** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17ha504bae31a1b1198E(i8* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<u8>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<u8>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<u8>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<u8>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17hd30a4e23b3f5f15aE({ i8*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h61c5454c1a6a0101E(%"3.std::vec::Vec<u8>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17h81a1131cace3564bE(%"3.std::vec::Vec<std::string::String>"* noalias nocapture sret dereferenceable(24), %"3.std::string::String"* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { %"3.std::string::String"*, i64 }
%xs = alloca %"3.std::vec::Vec<std::string::String>"
%_13 = alloca %"3.std::vec::Vec<std::string::String>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 0
store %"3.std::string::String"* %1, %"3.std::string::String"** %3
%4 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 1
%7 = load %"3.std::string::String"*, %"3.std::string::String"** %5
%8 = load i64, i64* %6
%9 = invoke %"3.std::string::String"* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h01a5feec506b972fE"(%"3.std::string::String"* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 1
%17 = load %"3.std::string::String"*, %"3.std::string::String"** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17ha64adfad93e46d5bE"(%"3.std::string::String"* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 1
%22 = load %"3.std::string::String"*, %"3.std::string::String"** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17ha64adfad93e46d5bE"(%"3.std::string::String"* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h156258d9a203f8a2E"(%"3.std::vec::Vec<std::string::String>"* noalias nocapture sret dereferenceable(24) %xs, %"3.std::string::String"* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { %"3.std::string::String"*, i64 }, { %"3.std::string::String"*, i64 }* %b, i32 0, i32 1
%27 = load %"3.std::string::String"*, %"3.std::string::String"** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h45a90bd9bfd2ac6eE(%"3.std::string::String"* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<std::string::String>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<std::string::String>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<std::string::String>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<std::string::String>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h148d87057cf2bc12E({ %"3.std::string::String"*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h9e57355a8f8bcc2bE(%"3.std::vec::Vec<std::string::String>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17hb9f98ab6ec25567fE(%"3.std::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24), i32* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i32*, i64 }
%xs = alloca %"3.std::vec::Vec<i32>"
%_13 = alloca %"3.std::vec::Vec<i32>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
store i32* %1, i32** %3
%4 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%7 = load i32*, i32** %5
%8 = load i64, i64* %6
%9 = invoke i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h9f053a5507cb79eaE"(i32* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%17 = load i32*, i32** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17he7263a64865df790E"(i32* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%22 = load i32*, i32** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17he7263a64865df790E"(i32* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17hfbc651ef6c72000fE"(%"3.std::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24) %xs, i32* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i32*, i64 }, { i32*, i64 }* %b, i32 0, i32 1
%27 = load i32*, i32** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h28320645fa01aac1E(i32* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<i32>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<i32>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<i32>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<i32>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h91dfcb5d7c80b31fE({ i32*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h8d344e90012e54e3E(%"3.std::vec::Vec<i32>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17hc7234c33c99ac144E(%"3.std::vec::Vec<i64>"* noalias nocapture sret dereferenceable(24), i64* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i64*, i64 }
%xs = alloca %"3.std::vec::Vec<i64>"
%_13 = alloca %"3.std::vec::Vec<i64>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
store i64* %1, i64** %3
%4 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%7 = load i64*, i64** %5
%8 = load i64, i64* %6
%9 = invoke i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h71e7765cffd970b6E"(i64* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%17 = load i64*, i64** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h6cfe42c3d7b7cd38E"(i64* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%22 = load i64*, i64** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h6cfe42c3d7b7cd38E"(i64* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17hf28fb389cc355196E"(%"3.std::vec::Vec<i64>"* noalias nocapture sret dereferenceable(24) %xs, i64* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%27 = load i64*, i64** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h1df2d13be8629d63E(i64* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<i64>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<i64>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<i64>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<i64>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h39fc75497778097bE({ i64*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h3bfda6e4ed8f33a1E(%"3.std::vec::Vec<i64>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17heabdefc94b9e1bb1E(%"3.std::vec::Vec<isize>"* noalias nocapture sret dereferenceable(24), i64* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i64*, i64 }
%xs = alloca %"3.std::vec::Vec<isize>"
%_13 = alloca %"3.std::vec::Vec<isize>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
store i64* %1, i64** %3
%4 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%7 = load i64*, i64** %5
%8 = load i64, i64* %6
%9 = invoke i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17hf3704e8789f9f53eE"(i64* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%17 = load i64*, i64** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h727bccfbea91010dE"(i64* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%22 = load i64*, i64** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h727bccfbea91010dE"(i64* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17hbeb15bbe76010a6bE"(%"3.std::vec::Vec<isize>"* noalias nocapture sret dereferenceable(24) %xs, i64* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%27 = load i64*, i64** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17h618ea8d5338626cdE(i64* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<isize>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<isize>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<isize>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<isize>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h15c7e10074214127E({ i64*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h2c97d7f98a5268b6E(%"3.std::vec::Vec<isize>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17hf424c2e1c1922078E(%"3.std::vec::Vec<i16>"* noalias nocapture sret dereferenceable(24), i16* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i16*, i64 }
%xs = alloca %"3.std::vec::Vec<i16>"
%_13 = alloca %"3.std::vec::Vec<i16>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
store i16* %1, i16** %3
%4 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
%7 = load i16*, i16** %5
%8 = load i64, i64* %6
%9 = invoke i16* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h6460e90063ebdfd6E"(i16* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
%17 = load i16*, i16** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h87f9717efce902aaE"(i16* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
%22 = load i16*, i16** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h87f9717efce902aaE"(i16* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h5c4736e5df82872fE"(%"3.std::vec::Vec<i16>"* noalias nocapture sret dereferenceable(24) %xs, i16* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i16*, i64 }, { i16*, i64 }* %b, i32 0, i32 1
%27 = load i16*, i16** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17hd67de4d2723f3e20E(i16* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<i16>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<i16>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<i16>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<i16>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17hc6a2aa1e518d793eE({ i16*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h954fd316b1ff8b04E(%"3.std::vec::Vec<i16>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: uwtable
define internal void @_ZN11collections5slice4hack8into_vec17hfc6299cbe2d027baE(%"3.std::vec::Vec<u64>"* noalias nocapture sret dereferenceable(24), i64* noalias nonnull, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%b = alloca { i64*, i64 }
%xs = alloca %"3.std::vec::Vec<u64>"
%_13 = alloca %"3.std::vec::Vec<u64>"
%_14 = alloca i8
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
store i8 0, i8* %_14
store i8 1, i8* %_14
%3 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
store i64* %1, i64** %3
%4 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
store i64 %2, i64* %4
%5 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%6 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%7 = load i64*, i64** %5
%8 = load i64, i64* %6
%9 = invoke i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h5938c52cc39bd5abE"(i64* nonnull %7, i64 %8)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb9, %bb2
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb10, %bb3
%11 = load i8, i8* %_14, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb9, label %bb1
bb3: ; preds = %cleanup
%13 = load i8, i8* %_15, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb10, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%16 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%17 = load i64*, i64** %15
%18 = load i64, i64* %16
%19 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h5d2ff7378d6cd9b3E"(i64* noalias nonnull readonly %17, i64 %18)
to label %bb5 unwind label %cleanup
bb5: ; preds = %bb4
%20 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%21 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%22 = load i64*, i64** %20
%23 = load i64, i64* %21
%24 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h5d2ff7378d6cd9b3E"(i64* noalias nonnull readonly %22, i64 %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h63f5c2c6d639eb69E"(%"3.std::vec::Vec<u64>"* noalias nocapture sret dereferenceable(24) %xs, i64* %9, i64 %19, i64 %24)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
store i8 1, i8* %_15
store i8 0, i8* %_14
%25 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 0
%26 = getelementptr inbounds { i64*, i64 }, { i64*, i64 }* %b, i32 0, i32 1
%27 = load i64*, i64** %25
%28 = load i64, i64* %26
invoke void @_ZN4core3mem6forget17hdedfcaa470381409E(i64* noalias nonnull %27, i64 %28)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
store i8 0, i8* %_15
%29 = bitcast %"3.std::vec::Vec<u64>"* %xs to i8*
%30 = bitcast %"3.std::vec::Vec<u64>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %30, i8* %29, i64 24, i32 8, i1 false)
%31 = bitcast %"3.std::vec::Vec<u64>"* %_13 to i8*
%32 = bitcast %"3.std::vec::Vec<u64>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %31, i64 24, i32 8, i1 false)
ret void
bb9: ; preds = %bb2
store i8 0, i8* %_14
call void @_ZN4drop17h4460401e30f0f813E({ i64*, i64 }* %b)
br label %bb1
bb10: ; preds = %bb3
store i8 0, i8* %_15
call void @_ZN4drop17h855d83e415a9be29E(%"3.std::vec::Vec<u64>"* %xs)
br label %bb2
cleanup: ; preds = %bb7, %bb6, %bb5, %bb4, %start
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN11collections6string6String13with_capacity17h63cfb42ff605fec8E(%"3.std::string::String"* noalias nocapture sret dereferenceable(24), i64) unnamed_addr #0 {
entry-block:
%_3 = alloca %"3.std::vec::Vec<u8>"
br label %start
start: ; preds = %entry-block
call void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$13with_capacity17h859f3ab4518f6501E"(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24) %_3, i64 %1)
br label %bb1
bb1: ; preds = %start
%2 = getelementptr inbounds %"3.std::string::String", %"3.std::string::String"* %0, i32 0, i32 0
%3 = bitcast %"3.std::vec::Vec<u8>"* %_3 to i8*
%4 = bitcast %"3.std::vec::Vec<u8>"* %2 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN11collections6string6String3new17h7d498d76bd1915b2E(%"3.std::string::String"* noalias nocapture sret dereferenceable(24)) unnamed_addr #0 {
entry-block:
%_1 = alloca %"3.std::vec::Vec<u8>"
br label %start
start: ; preds = %entry-block
call void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3new17hb0fd9c3ae7241fe6E"(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24) %_1)
br label %bb1
bb1: ; preds = %start
%1 = getelementptr inbounds %"3.std::string::String", %"3.std::string::String"* %0, i32 0, i32 0
%2 = bitcast %"3.std::vec::Vec<u8>"* %_1 to i8*
%3 = bitcast %"3.std::vec::Vec<u8>"* %1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 24, i32 8, i1 false)
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN11collections6string6String4push17hd69a107a942665b6E(%"3.std::string::String"* dereferenceable(24), i32) unnamed_addr #0 {
entry-block:
%_0 = alloca {}
%_5 = alloca i64
%_19 = alloca [4 x i8]
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN13rustc_unicode4char22_$LT$impl$u20$char$GT$8len_utf817h0c7de859bbe0a7aeE"(i32 %1)
store i64 %2, i64* %_5
br label %bb1
bb1: ; preds = %start
%3 = load i64, i64* %_5
switch i64 %3, label %bb3 [
i64 1, label %bb2
]
bb2: ; preds = %bb1
%4 = getelementptr inbounds %"3.std::string::String", %"3.std::string::String"* %0, i32 0, i32 0
%5 = trunc i32 %1 to i8
call void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$4push17hf67ad80bbdf5974aE"(%"3.std::vec::Vec<u8>"* dereferenceable(24) %4, i8 %5)
br label %bb5
bb3: ; preds = %bb1
%6 = getelementptr inbounds %"3.std::string::String", %"3.std::string::String"* %0, i32 0, i32 0
%7 = getelementptr inbounds [4 x i8], [4 x i8]* %_19, i32 0, i32 0
%8 = getelementptr inbounds i8, i8* %7, i64 4
br label %slice_loop_header
bb4: ; preds = %bb5, %bb8
ret void
bb5: ; preds = %bb2
br label %bb4
bb6: ; preds = %slice_loop_next
%9 = call { i8*, i64 } @"_ZN11collections3str21_$LT$impl$u20$str$GT$8as_bytes17h8280826069269f4aE"(i8* noalias nonnull readonly %17, i64 %18)
%10 = extractvalue { i8*, i64 } %9, 0
%11 = extractvalue { i8*, i64 } %9, 1
br label %bb7
bb7: ; preds = %bb6
call void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$17extend_from_slice17h620ddd6c0cca2cbdE"(%"3.std::vec::Vec<u8>"* dereferenceable(24) %6, i8* noalias nonnull readonly %10, i64 %11)
br label %bb8
bb8: ; preds = %bb7
br label %bb4
slice_loop_header: ; preds = %slice_loop_body, %bb3
%12 = phi i8* [ %7, %bb3 ], [ %14, %slice_loop_body ]
%13 = icmp ne i8* %12, %8
br i1 %13, label %slice_loop_body, label %slice_loop_next
slice_loop_body: ; preds = %slice_loop_header
store i8 0, i8* %12
%14 = getelementptr inbounds i8, i8* %12, i64 1
br label %slice_loop_header
slice_loop_next: ; preds = %slice_loop_header
%15 = bitcast [4 x i8]* %_19 to i8*
%16 = call %str_slice @"_ZN13rustc_unicode4char22_$LT$impl$u20$char$GT$11encode_utf817h1aac589e188048fbE"(i32 %1, i8* nonnull %15, i64 4)
%17 = extractvalue %str_slice %16, 0
%18 = extractvalue %str_slice %16, 1
br label %bb6
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN11collections6string6String7reserve17h7345ae5ff3cc3089E(%"3.std::string::String"* dereferenceable(24), i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds %"3.std::string::String", %"3.std::string::String"* %0, i32 0, i32 0
call void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7reserve17hc9dd30d68dc1c152E"(%"3.std::vec::Vec<u8>"* dereferenceable(24) %2, i64 %1)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN11collections6string6String8push_str17h2d7fe4295e164077E(%"3.std::string::String"* dereferenceable(24), i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = getelementptr inbounds %"3.std::string::String", %"3.std::string::String"* %0, i32 0, i32 0
%4 = call { i8*, i64 } @"_ZN11collections3str21_$LT$impl$u20$str$GT$8as_bytes17h8280826069269f4aE"(i8* noalias nonnull readonly %1, i64 %2)
%5 = extractvalue { i8*, i64 } %4, 0
%6 = extractvalue { i8*, i64 } %4, 1
br label %bb1
bb1: ; preds = %start
call void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$17extend_from_slice17h620ddd6c0cca2cbdE"(%"3.std::vec::Vec<u8>"* dereferenceable(24) %3, i8* noalias nonnull readonly %5, i64 %6)
br label %bb2
bb2: ; preds = %bb1
ret void
}
define internal void @_ZN13drop_contents17h03a279da9cd88334E(%"3.std::vec::Vec<char>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 0
call void @_ZN4drop17h31f0abf26f128c86E(%"5.alloc::raw_vec::RawVec<char>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h0d5ae135ebd6c489E(%"3.std::vec::IntoIter<i8>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<i8>", %"3.std::vec::IntoIter<i8>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<i8>", %"3.std::vec::IntoIter<i8>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<i8>", %"3.std::vec::IntoIter<i8>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<i8>", %"3.std::vec::IntoIter<i8>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h11bb2f29ee3ab8fcE(%"5.alloc::raw_vec::RawVec<isize>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h15a8080d5e208724E(%"5.alloc::raw_vec::RawVec<i8>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h19780757acb18376E(%"3.std::vec::Vec<u16>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<u16>", %"3.std::vec::Vec<u16>"* %0, i32 0, i32 0
call void @_ZN4drop17hcd1e50e0f989b524E(%"5.alloc::raw_vec::RawVec<u16>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<u16>", %"3.std::vec::Vec<u16>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h277f1e736aaa364aE(%"5.alloc::raw_vec::RawVec<u64>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h2c97d7f98a5268b6E(%"3.std::vec::Vec<isize>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 0
call void @_ZN4drop17h11bb2f29ee3ab8fcE(%"5.alloc::raw_vec::RawVec<isize>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h2f264afdd2c3a626E(%"3.std::vec::IntoIter<u32>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<u32>", %"3.std::vec::IntoIter<u32>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<u32>", %"3.std::vec::IntoIter<u32>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<u32>", %"3.std::vec::IntoIter<u32>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<u32>", %"3.std::vec::IntoIter<u32>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h31f0abf26f128c86E(%"5.alloc::raw_vec::RawVec<char>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h32eb70ab99d164d4E(%"3.std::vec::IntoIter<u64>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<u64>", %"3.std::vec::IntoIter<u64>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<u64>", %"3.std::vec::IntoIter<u64>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<u64>", %"3.std::vec::IntoIter<u64>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<u64>", %"3.std::vec::IntoIter<u64>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h381f1a54f81fabb3E(%"3.std::vec::IntoIter<i64>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<i64>", %"3.std::vec::IntoIter<i64>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<i64>", %"3.std::vec::IntoIter<i64>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<i64>", %"3.std::vec::IntoIter<i64>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<i64>", %"3.std::vec::IntoIter<i64>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h3bfda6e4ed8f33a1E(%"3.std::vec::Vec<i64>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 0
call void @_ZN4drop17hd7ab93131baa0b4aE(%"5.alloc::raw_vec::RawVec<i64>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h544ee22cc32bea1fE(%"3.std::vec::SetLenOnDrop"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::SetLenOnDrop", %"3.std::vec::SetLenOnDrop"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::SetLenOnDrop", %"3.std::vec::SetLenOnDrop"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h5c72ae9702e53bb2E(%"5.alloc::raw_vec::RawVec<u8>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h5ed0d2b77b3fb3e7E(%"3.std::vec::IntoIter<i32>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<i32>", %"3.std::vec::IntoIter<i32>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<i32>", %"3.std::vec::IntoIter<i32>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<i32>", %"3.std::vec::IntoIter<i32>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<i32>", %"3.std::vec::IntoIter<i32>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h61c5454c1a6a0101E(%"3.std::vec::Vec<u8>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 0
call void @_ZN4drop17h5c72ae9702e53bb2E(%"5.alloc::raw_vec::RawVec<u8>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h66c2871c13e75924E(%"3.std::vec::IntoIter<usize>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<usize>", %"3.std::vec::IntoIter<usize>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<usize>", %"3.std::vec::IntoIter<usize>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<usize>", %"3.std::vec::IntoIter<usize>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<usize>", %"3.std::vec::IntoIter<usize>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h72b207f3f776d83aE(%"3.std::vec::IntoIter<u16>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<u16>", %"3.std::vec::IntoIter<u16>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<u16>", %"3.std::vec::IntoIter<u16>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<u16>", %"3.std::vec::IntoIter<u16>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<u16>", %"3.std::vec::IntoIter<u16>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h7e88ab8adb93b68dE(%"3.std::vec::IntoIter<isize>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<isize>", %"3.std::vec::IntoIter<isize>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<isize>", %"3.std::vec::IntoIter<isize>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<isize>", %"3.std::vec::IntoIter<isize>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<isize>", %"3.std::vec::IntoIter<isize>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h855d83e415a9be29E(%"3.std::vec::Vec<u64>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<u64>", %"3.std::vec::Vec<u64>"* %0, i32 0, i32 0
call void @_ZN4drop17h277f1e736aaa364aE(%"5.alloc::raw_vec::RawVec<u64>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<u64>", %"3.std::vec::Vec<u64>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h85c171edfe805c9dE(%"3.std::vec::Vec<usize>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<usize>", %"3.std::vec::Vec<usize>"* %0, i32 0, i32 0
call void @_ZN4drop17h8941b7778bb073bbE(%"5.alloc::raw_vec::RawVec<usize>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<usize>", %"3.std::vec::Vec<usize>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h8941b7778bb073bbE(%"5.alloc::raw_vec::RawVec<usize>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h8d344e90012e54e3E(%"3.std::vec::Vec<i32>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 0
call void @_ZN4drop17hefeedad99e8fef5aE(%"5.alloc::raw_vec::RawVec<i32>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h8df8408326a52c7aE(%"5.alloc::raw_vec::RawVec<std::string::String>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h94b1dba6a522c490E(%"3.std::vec::IntoIter<char>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<char>", %"3.std::vec::IntoIter<char>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<char>", %"3.std::vec::IntoIter<char>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<char>", %"3.std::vec::IntoIter<char>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<char>", %"3.std::vec::IntoIter<char>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17h954fd316b1ff8b04E(%"3.std::vec::Vec<i16>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 0
call void @_ZN4drop17hc13b332a2e3bc042E(%"5.alloc::raw_vec::RawVec<i16>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17h9e57355a8f8bcc2bE(%"3.std::vec::Vec<std::string::String>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<std::string::String>", %"3.std::vec::Vec<std::string::String>"* %0, i32 0, i32 0
call void @_ZN4drop17h8df8408326a52c7aE(%"5.alloc::raw_vec::RawVec<std::string::String>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<std::string::String>", %"3.std::vec::Vec<std::string::String>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17ha378a57757231950E(%"3.std::vec::Vec<i8>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 0
call void @_ZN4drop17h15a8080d5e208724E(%"5.alloc::raw_vec::RawVec<i8>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17hc13b332a2e3bc042E(%"5.alloc::raw_vec::RawVec<i16>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17hcd1e50e0f989b524E(%"5.alloc::raw_vec::RawVec<u16>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17hcd84762860cd4633E(%"3.std::vec::IntoIter<i16>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<i16>", %"3.std::vec::IntoIter<i16>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<i16>", %"3.std::vec::IntoIter<i16>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<i16>", %"3.std::vec::IntoIter<i16>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<i16>", %"3.std::vec::IntoIter<i16>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17hd26f1bf2e0465ec8E(%"3.std::vec::Vec<u32>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::Vec<u32>", %"3.std::vec::Vec<u32>"* %0, i32 0, i32 0
call void @_ZN4drop17hda1b6ef2a8582a42E(%"5.alloc::raw_vec::RawVec<u32>"* %1)
%2 = getelementptr inbounds %"3.std::vec::Vec<u32>", %"3.std::vec::Vec<u32>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17hd7ab93131baa0b4aE(%"5.alloc::raw_vec::RawVec<i64>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17hda1b6ef2a8582a42E(%"5.alloc::raw_vec::RawVec<u32>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %0, i32 0, i32 1
ret void
}
define internal void @_ZN13drop_contents17hdcdc445cae104ff0E(%"3.std::vec::IntoIter<u8>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"3.std::vec::IntoIter<u8>", %"3.std::vec::IntoIter<u8>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"3.std::vec::IntoIter<u8>", %"3.std::vec::IntoIter<u8>"* %0, i32 0, i32 1
%3 = getelementptr inbounds %"3.std::vec::IntoIter<u8>", %"3.std::vec::IntoIter<u8>"* %0, i32 0, i32 2
%4 = getelementptr inbounds %"3.std::vec::IntoIter<u8>", %"3.std::vec::IntoIter<u8>"* %0, i32 0, i32 3
ret void
}
define internal void @_ZN13drop_contents17hefeedad99e8fef5aE(%"5.alloc::raw_vec::RawVec<i32>"*) unnamed_addr {
entry-block:
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 1
ret void
}
; Function Attrs: inlinehint uwtable
define internal %str_slice @"_ZN13rustc_unicode4char22_$LT$impl$u20$char$GT$11encode_utf817h1aac589e188048fbE"(i32, i8* nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = call %str_slice @"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$11encode_utf817h1d2884c23913080eE"(i32 %0, i8* nonnull %1, i64 %2)
%4 = extractvalue %str_slice %3, 0
%5 = extractvalue %str_slice %3, 1
br label %bb1
bb1: ; preds = %start
%6 = insertvalue %str_slice undef, i8* %4, 0
%7 = insertvalue %str_slice %6, i64 %5, 1
ret %str_slice %7
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN13rustc_unicode4char22_$LT$impl$u20$char$GT$8len_utf817h0c7de859bbe0a7aeE"(i32) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i64 @"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$8len_utf817ha1d2b0c6c615a34cE"(i32 %0)
br label %bb1
bb1: ; preds = %start
ret i64 %1
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17h0ecbb070b9dc15abE"(i32*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<char>"
%_3 = alloca %"2.core::nonzero::NonZero<*const char>"
%_6 = alloca %"2.std::marker::PhantomData<char>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hda4c51b91b897c40E"(i32* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const char>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const char>", %"2.core::nonzero::NonZero<*const char>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<char>", %"2.std::ptr::Shared<char>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const char>" %4, %"2.core::nonzero::NonZero<*const char>"* %5
%6 = bitcast %"2.std::ptr::Shared<char>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17h27185762ec149777E"(i8*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<i8>"
%_3 = alloca %"2.core::nonzero::NonZero<*const i8>"
%_6 = alloca %"2.std::marker::PhantomData<i8>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h65e5d72e04d898c8E"(i8* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const i8>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const i8>", %"2.core::nonzero::NonZero<*const i8>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<i8>", %"2.std::ptr::Shared<i8>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i8>" %4, %"2.core::nonzero::NonZero<*const i8>"* %5
%6 = bitcast %"2.std::ptr::Shared<i8>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17h283b7a66646e4796E"(i16*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<i16>"
%_3 = alloca %"2.core::nonzero::NonZero<*const i16>"
%_6 = alloca %"2.std::marker::PhantomData<i16>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h86f90f4f7195a53bE"(i16* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const i16>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const i16>", %"2.core::nonzero::NonZero<*const i16>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<i16>", %"2.std::ptr::Shared<i16>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i16>" %4, %"2.core::nonzero::NonZero<*const i16>"* %5
%6 = bitcast %"2.std::ptr::Shared<i16>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17h2dbc94966491bac9E"(i64*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<u64>"
%_3 = alloca %"2.core::nonzero::NonZero<*const u64>"
%_6 = alloca %"2.std::marker::PhantomData<u64>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h9ab6616eed31b964E"(i64* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const u64>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const u64>", %"2.core::nonzero::NonZero<*const u64>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<u64>", %"2.std::ptr::Shared<u64>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u64>" %4, %"2.core::nonzero::NonZero<*const u64>"* %5
%6 = bitcast %"2.std::ptr::Shared<u64>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17h34df0b240950a540E"(i32*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<i32>"
%_3 = alloca %"2.core::nonzero::NonZero<*const i32>"
%_6 = alloca %"2.std::marker::PhantomData<i32>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17he2c3ff8170a7dd5fE"(i32* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const i32>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const i32>", %"2.core::nonzero::NonZero<*const i32>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<i32>", %"2.std::ptr::Shared<i32>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i32>" %4, %"2.core::nonzero::NonZero<*const i32>"* %5
%6 = bitcast %"2.std::ptr::Shared<i32>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17h351daf89b85386eeE"(i16*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<u16>"
%_3 = alloca %"2.core::nonzero::NonZero<*const u16>"
%_6 = alloca %"2.std::marker::PhantomData<u16>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hbc597cabe572cb88E"(i16* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const u16>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const u16>", %"2.core::nonzero::NonZero<*const u16>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<u16>", %"2.std::ptr::Shared<u16>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u16>" %4, %"2.core::nonzero::NonZero<*const u16>"* %5
%6 = bitcast %"2.std::ptr::Shared<u16>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17h463884b05b04d179E"(i8*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<u8>"
%_3 = alloca %"2.core::nonzero::NonZero<*const u8>"
%_6 = alloca %"2.std::marker::PhantomData<u8>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h42bdd38325c80f8aE"(i8* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const u8>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const u8>", %"2.core::nonzero::NonZero<*const u8>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<u8>", %"2.std::ptr::Shared<u8>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u8>" %4, %"2.core::nonzero::NonZero<*const u8>"* %5
%6 = bitcast %"2.std::ptr::Shared<u8>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17h6af61fc1140d17c1E"(i32*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<u32>"
%_3 = alloca %"2.core::nonzero::NonZero<*const u32>"
%_6 = alloca %"2.std::marker::PhantomData<u32>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h0f1532dec12bad36E"(i32* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const u32>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const u32>", %"2.core::nonzero::NonZero<*const u32>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<u32>", %"2.std::ptr::Shared<u32>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u32>" %4, %"2.core::nonzero::NonZero<*const u32>"* %5
%6 = bitcast %"2.std::ptr::Shared<u32>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17ha1364c16a107847cE"(i64*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<usize>"
%_3 = alloca %"2.core::nonzero::NonZero<*const usize>"
%_6 = alloca %"2.std::marker::PhantomData<usize>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h7410f5d87cddf887E"(i64* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const usize>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const usize>", %"2.core::nonzero::NonZero<*const usize>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<usize>", %"2.std::ptr::Shared<usize>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const usize>" %4, %"2.core::nonzero::NonZero<*const usize>"* %5
%6 = bitcast %"2.std::ptr::Shared<usize>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17hd49216c9dfd8a63eE"(i64*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<i64>"
%_3 = alloca %"2.core::nonzero::NonZero<*const i64>"
%_6 = alloca %"2.std::marker::PhantomData<i64>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h24d217e1ac0198dcE"(i64* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const i64>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const i64>", %"2.core::nonzero::NonZero<*const i64>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<i64>", %"2.std::ptr::Shared<i64>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i64>" %4, %"2.core::nonzero::NonZero<*const i64>"* %5
%6 = bitcast %"2.std::ptr::Shared<i64>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Shared$LT$T$GT$$GT$3new17hd872c11b203ca085E"(i64*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Shared<isize>"
%_3 = alloca %"2.core::nonzero::NonZero<*const isize>"
%_6 = alloca %"2.std::marker::PhantomData<isize>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hf11e7e25efaf0fefE"(i64* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const isize>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const isize>", %"2.core::nonzero::NonZero<*const isize>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Shared<isize>", %"2.std::ptr::Shared<isize>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const isize>" %4, %"2.core::nonzero::NonZero<*const isize>"* %5
%6 = bitcast %"2.std::ptr::Shared<isize>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h0bc15130db527c8dE"(i32*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<i32>"
%_3 = alloca %"2.core::nonzero::NonZero<*const i32>"
%_6 = alloca %"2.std::marker::PhantomData<i32>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17he2c3ff8170a7dd5fE"(i32* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const i32>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const i32>", %"2.core::nonzero::NonZero<*const i32>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i32>" %4, %"2.core::nonzero::NonZero<*const i32>"* %5
%6 = bitcast %"2.std::ptr::Unique<i32>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h10c453592f8a28c7E"(%"3.std::string::String"*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<std::string::String>"
%_3 = alloca %"2.core::nonzero::NonZero<*const std::string::String>"
%_6 = alloca %"2.std::marker::PhantomData<std::string::String>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h06bae71c5adae41eE"(%"3.std::string::String"* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const std::string::String>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const std::string::String>", %"2.core::nonzero::NonZero<*const std::string::String>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<std::string::String>", %"2.std::ptr::Unique<std::string::String>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const std::string::String>" %4, %"2.core::nonzero::NonZero<*const std::string::String>"* %5
%6 = bitcast %"2.std::ptr::Unique<std::string::String>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h184553d29d628995E"(i16*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<u16>"
%_3 = alloca %"2.core::nonzero::NonZero<*const u16>"
%_6 = alloca %"2.std::marker::PhantomData<u16>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hbc597cabe572cb88E"(i16* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const u16>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const u16>", %"2.core::nonzero::NonZero<*const u16>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<u16>", %"2.std::ptr::Unique<u16>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u16>" %4, %"2.core::nonzero::NonZero<*const u16>"* %5
%6 = bitcast %"2.std::ptr::Unique<u16>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h7137133de8e5211fE"(i64*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<i64>"
%_3 = alloca %"2.core::nonzero::NonZero<*const i64>"
%_6 = alloca %"2.std::marker::PhantomData<i64>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h24d217e1ac0198dcE"(i64* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const i64>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const i64>", %"2.core::nonzero::NonZero<*const i64>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i64>" %4, %"2.core::nonzero::NonZero<*const i64>"* %5
%6 = bitcast %"2.std::ptr::Unique<i64>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h84b23b94fc550f5eE"(i64*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<usize>"
%_3 = alloca %"2.core::nonzero::NonZero<*const usize>"
%_6 = alloca %"2.std::marker::PhantomData<usize>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h7410f5d87cddf887E"(i64* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const usize>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const usize>", %"2.core::nonzero::NonZero<*const usize>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<usize>", %"2.std::ptr::Unique<usize>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const usize>" %4, %"2.core::nonzero::NonZero<*const usize>"* %5
%6 = bitcast %"2.std::ptr::Unique<usize>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h85196d13e57db7fcE"(i64*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<isize>"
%_3 = alloca %"2.core::nonzero::NonZero<*const isize>"
%_6 = alloca %"2.std::marker::PhantomData<isize>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hf11e7e25efaf0fefE"(i64* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const isize>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const isize>", %"2.core::nonzero::NonZero<*const isize>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const isize>" %4, %"2.core::nonzero::NonZero<*const isize>"* %5
%6 = bitcast %"2.std::ptr::Unique<isize>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h8e3b1dde44ff349dE"(i32*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<char>"
%_3 = alloca %"2.core::nonzero::NonZero<*const char>"
%_6 = alloca %"2.std::marker::PhantomData<char>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hda4c51b91b897c40E"(i32* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const char>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const char>", %"2.core::nonzero::NonZero<*const char>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const char>" %4, %"2.core::nonzero::NonZero<*const char>"* %5
%6 = bitcast %"2.std::ptr::Unique<char>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h9a15aaab6bb05b2eE"(i8*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<u8>"
%_3 = alloca %"2.core::nonzero::NonZero<*const u8>"
%_6 = alloca %"2.std::marker::PhantomData<u8>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h42bdd38325c80f8aE"(i8* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const u8>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const u8>", %"2.core::nonzero::NonZero<*const u8>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u8>" %4, %"2.core::nonzero::NonZero<*const u8>"* %5
%6 = bitcast %"2.std::ptr::Unique<u8>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17ha8f99503e9947f91E"(i32*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<u32>"
%_3 = alloca %"2.core::nonzero::NonZero<*const u32>"
%_6 = alloca %"2.std::marker::PhantomData<u32>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h0f1532dec12bad36E"(i32* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const u32>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const u32>", %"2.core::nonzero::NonZero<*const u32>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<u32>", %"2.std::ptr::Unique<u32>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u32>" %4, %"2.core::nonzero::NonZero<*const u32>"* %5
%6 = bitcast %"2.std::ptr::Unique<u32>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17habb8db760695a6a0E"(i16*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<i16>"
%_3 = alloca %"2.core::nonzero::NonZero<*const i16>"
%_6 = alloca %"2.std::marker::PhantomData<i16>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h86f90f4f7195a53bE"(i16* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const i16>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const i16>", %"2.core::nonzero::NonZero<*const i16>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i16>" %4, %"2.core::nonzero::NonZero<*const i16>"* %5
%6 = bitcast %"2.std::ptr::Unique<i16>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17hb9e9d1c66d10f970E"(i64*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<u64>"
%_3 = alloca %"2.core::nonzero::NonZero<*const u64>"
%_6 = alloca %"2.std::marker::PhantomData<u64>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h9ab6616eed31b964E"(i64* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const u64>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const u64>", %"2.core::nonzero::NonZero<*const u64>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<u64>", %"2.std::ptr::Unique<u64>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u64>" %4, %"2.core::nonzero::NonZero<*const u64>"* %5
%6 = bitcast %"2.std::ptr::Unique<u64>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: uwtable
define internal i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17hed4624f0fa51bee5E"(i8*) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::ptr::Unique<i8>"
%_3 = alloca %"2.core::nonzero::NonZero<*const i8>"
%_6 = alloca %"2.std::marker::PhantomData<i8>"
%abi_cast = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h65e5d72e04d898c8E"(i8* %0)
store i8* %1, i8** %abi_cast
%2 = bitcast %"2.core::nonzero::NonZero<*const i8>"* %_3 to i8*
%3 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.core::nonzero::NonZero<*const i8>", %"2.core::nonzero::NonZero<*const i8>"* %_3
%5 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %_0, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i8>" %4, %"2.core::nonzero::NonZero<*const i8>"* %5
%6 = bitcast %"2.std::ptr::Unique<i8>"* %_0 to i64*
%7 = load i64, i64* %6, align 8
ret i64 %7
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17h0399dc28e3b25b2fE"(%"2.std::option::Option<f64>"* noalias nocapture sret dereferenceable(16), %"2.std::option::Option<i64>"* noalias nocapture dereferenceable(16), %closure*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::option::Option<i64>"
%_9 = alloca { i64 }
%_11 = alloca i8
%_12 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
%3 = bitcast %"2.std::option::Option<i64>"* %1 to i8*
%4 = bitcast %"2.std::option::Option<i64>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 16, i32 8, i1 false)
store i8 1, i8* %_12
%5 = getelementptr inbounds %"2.std::option::Option<i64>", %"2.std::option::Option<i64>"* %self, i32 0, i32 0
%6 = load i64, i64* %5, !range !2
switch i64 %6, label %unreachable [
i64 0, label %bb4
i64 1, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%7 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %7
bb2: ; preds = %bb13, %bb3
%8 = getelementptr inbounds %"2.std::option::Option<i64>", %"2.std::option::Option<i64>"* %self, i32 0, i32 0
%9 = load i64, i64* %8, !range !2
switch i64 %9, label %unreachable [
i64 0, label %bb10
i64 1, label %bb11
]
bb3: ; preds = %cleanup
%10 = load i8, i8* %_12, !range !1
%11 = trunc i8 %10 to i1
br i1 %11, label %bb13, label %bb2
bb4: ; preds = %start
%12 = getelementptr inbounds %"2.std::option::Option<f64>", %"2.std::option::Option<f64>"* %0, i32 0, i32 0
store i64 0, i64* %12
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_11
%13 = bitcast %"2.std::option::Option<i64>"* %self to { i64, i64 }*
%14 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %13, i32 0, i32 1
%15 = load i64, i64* %14
store i8 0, i8* %_12
%16 = getelementptr inbounds { i64 }, { i64 }* %_9, i32 0, i32 0
store i64 %15, i64* %16
%17 = load { i64 }, { i64 }* %_9
%18 = extractvalue { i64 } %17, 0
%19 = invoke double @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h66f4f0de3c52efbfE"(%closure* %2, i64 %18)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%20 = getelementptr inbounds %"2.std::option::Option<f64>", %"2.std::option::Option<f64>"* %0, i32 0, i32 0
store i64 1, i64* %20
%21 = bitcast %"2.std::option::Option<f64>"* %0 to { i64, double }*
%22 = getelementptr inbounds { i64, double }, { i64, double }* %21, i32 0, i32 1
store double %19, double* %22
br label %bb7
bb7: ; preds = %bb4, %bb6
br label %bb15
bb8: ; preds = %bb14, %bb15
br label %bb19
bb9: ; preds = %bb16, %bb18, %bb17
ret void
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%23 = load i8, i8* %_11, !range !1
%24 = trunc i8 %23 to i1
br i1 %24, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_11
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb14: ; preds = %bb15
store i8 0, i8* %_12
br label %bb8
bb15: ; preds = %bb7
%25 = load i8, i8* %_12, !range !1
%26 = trunc i8 %25 to i1
br i1 %26, label %bb14, label %bb8
bb16: ; preds = %bb19
br label %bb9
bb17: ; preds = %bb19
%27 = load i8, i8* %_11, !range !1
%28 = trunc i8 %27 to i1
br i1 %28, label %bb18, label %bb9
bb18: ; preds = %bb17
store i8 0, i8* %_11
br label %bb9
bb19: ; preds = %bb8
%29 = getelementptr inbounds %"2.std::option::Option<i64>", %"2.std::option::Option<i64>"* %self, i32 0, i32 0
%30 = load i64, i64* %29, !range !2
switch i64 %30, label %unreachable [
i64 0, label %bb16
i64 1, label %bb17
]
unreachable: ; preds = %bb19, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%31 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %31, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17h756eb77a2b35c555E"(i64, %closure.0*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg0 = alloca %"2.std::option::Option<i32>"
%abi_cast = alloca i64
%_0 = alloca %"2.std::option::Option<f32>"
%self = alloca %"2.std::option::Option<i32>"
%_9 = alloca { i32 }
%_11 = alloca i8
%_12 = alloca i8
%personalityslot = alloca { i8*, i32 }
store i64 %0, i64* %abi_cast
%2 = bitcast %"2.std::option::Option<i32>"* %arg0 to i8*
%3 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
%4 = load %"2.std::option::Option<i32>", %"2.std::option::Option<i32>"* %arg0
store %"2.std::option::Option<i32>" %4, %"2.std::option::Option<i32>"* %self
store i8 1, i8* %_12
%5 = getelementptr inbounds %"2.std::option::Option<i32>", %"2.std::option::Option<i32>"* %self, i32 0, i32 0
%6 = load i32, i32* %5, !range !3
switch i32 %6, label %unreachable [
i32 0, label %bb4
i32 1, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%7 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %7
bb2: ; preds = %bb13, %bb3
%8 = getelementptr inbounds %"2.std::option::Option<i32>", %"2.std::option::Option<i32>"* %self, i32 0, i32 0
%9 = load i32, i32* %8, !range !3
switch i32 %9, label %unreachable [
i32 0, label %bb10
i32 1, label %bb11
]
bb3: ; preds = %cleanup
%10 = load i8, i8* %_12, !range !1
%11 = trunc i8 %10 to i1
br i1 %11, label %bb13, label %bb2
bb4: ; preds = %start
%12 = getelementptr inbounds %"2.std::option::Option<f32>", %"2.std::option::Option<f32>"* %_0, i32 0, i32 0
store i32 0, i32* %12
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_11
%13 = bitcast %"2.std::option::Option<i32>"* %self to { i32, i32 }*
%14 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %13, i32 0, i32 1
%15 = load i32, i32* %14
store i8 0, i8* %_12
%16 = getelementptr inbounds { i32 }, { i32 }* %_9, i32 0, i32 0
store i32 %15, i32* %16
%17 = load { i32 }, { i32 }* %_9
%18 = extractvalue { i32 } %17, 0
%19 = invoke float @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h53781920dc74ee31E"(%closure.0* %1, i32 %18)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%20 = getelementptr inbounds %"2.std::option::Option<f32>", %"2.std::option::Option<f32>"* %_0, i32 0, i32 0
store i32 1, i32* %20
%21 = bitcast %"2.std::option::Option<f32>"* %_0 to { i32, float }*
%22 = getelementptr inbounds { i32, float }, { i32, float }* %21, i32 0, i32 1
store float %19, float* %22
br label %bb7
bb7: ; preds = %bb4, %bb6
br label %bb15
bb8: ; preds = %bb14, %bb15
br label %bb19
bb9: ; preds = %bb16, %bb18, %bb17
%23 = bitcast %"2.std::option::Option<f32>"* %_0 to i64*
%24 = load i64, i64* %23, align 4
ret i64 %24
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%25 = load i8, i8* %_11, !range !1
%26 = trunc i8 %25 to i1
br i1 %26, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_11
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb14: ; preds = %bb15
store i8 0, i8* %_12
br label %bb8
bb15: ; preds = %bb7
%27 = load i8, i8* %_12, !range !1
%28 = trunc i8 %27 to i1
br i1 %28, label %bb14, label %bb8
bb16: ; preds = %bb19
br label %bb9
bb17: ; preds = %bb19
%29 = load i8, i8* %_11, !range !1
%30 = trunc i8 %29 to i1
br i1 %30, label %bb18, label %bb9
bb18: ; preds = %bb17
store i8 0, i8* %_11
br label %bb9
bb19: ; preds = %bb8
%31 = getelementptr inbounds %"2.std::option::Option<i32>", %"2.std::option::Option<i32>"* %self, i32 0, i32 0
%32 = load i32, i32* %31, !range !3
switch i32 %32, label %unreachable [
i32 0, label %bb16
i32 1, label %bb17
]
unreachable: ; preds = %bb19, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17h989c691334c3c2daE"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16), i8*, %closure.1*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca i8*
%_9 = alloca { %"3.std::string::String"* }
%_11 = alloca i8
%_12 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
store i8* %1, i8** %self
store i8 1, i8* %_12
%3 = load i8*, i8** %self
%4 = icmp ne i8* %3, null
switch i1 %4, label %unreachable [
i1 false, label %bb4
i1 true, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %bb13, %bb3
%6 = load i8*, i8** %self
%7 = icmp ne i8* %6, null
switch i1 %7, label %unreachable [
i1 false, label %bb10
i1 true, label %bb11
]
bb3: ; preds = %cleanup
%8 = load i8, i8* %_12, !range !1
%9 = trunc i8 %8 to i1
br i1 %9, label %bb13, label %bb2
bb4: ; preds = %start
%10 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 0, i64* %10
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_11
%11 = bitcast i8** %self to %"3.std::string::String"**
%12 = load %"3.std::string::String"*, %"3.std::string::String"** %11, !nonnull !0
store i8 0, i8* %_12
%13 = getelementptr inbounds { %"3.std::string::String"* }, { %"3.std::string::String"* }* %_9, i32 0, i32 0
store %"3.std::string::String"* %12, %"3.std::string::String"** %13
%14 = load { %"3.std::string::String"* }, { %"3.std::string::String"* }* %_9
%15 = extractvalue { %"3.std::string::String"* } %14, 0
%16 = invoke i64 @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h03b98b8000171d46E"(%closure.1* %2, %"3.std::string::String"* noalias readonly dereferenceable(24) %15)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%17 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 1, i64* %17
%18 = bitcast %"2.std::option::Option<usize>"* %0 to { i64, i64 }*
%19 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %18, i32 0, i32 1
store i64 %16, i64* %19
br label %bb7
bb7: ; preds = %bb4, %bb6
br label %bb15
bb8: ; preds = %bb14, %bb15
br label %bb19
bb9: ; preds = %bb16, %bb18, %bb17
ret void
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%20 = load i8, i8* %_11, !range !1
%21 = trunc i8 %20 to i1
br i1 %21, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_11
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb14: ; preds = %bb15
store i8 0, i8* %_12
br label %bb8
bb15: ; preds = %bb7
%22 = load i8, i8* %_12, !range !1
%23 = trunc i8 %22 to i1
br i1 %23, label %bb14, label %bb8
bb16: ; preds = %bb19
br label %bb9
bb17: ; preds = %bb19
%24 = load i8, i8* %_11, !range !1
%25 = trunc i8 %24 to i1
br i1 %25, label %bb18, label %bb9
bb18: ; preds = %bb17
store i8 0, i8* %_11
br label %bb9
bb19: ; preds = %bb8
%26 = load i8*, i8** %self
%27 = icmp ne i8* %26, null
switch i1 %27, label %unreachable [
i1 false, label %bb16
i1 true, label %bb17
]
unreachable: ; preds = %bb19, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%28 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %28, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17ha3e1a5c4f5875baeE"(%"2.std::option::Option<std::string::String>"* noalias nocapture sret dereferenceable(24), %"2.std::option::Option<std::vec::Vec<char>>"* noalias nocapture dereferenceable(24), %closure.2*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::option::Option<std::vec::Vec<char>>"
%x = alloca %"3.std::vec::Vec<char>"
%_7 = alloca %"3.std::string::String"
%_9 = alloca { %"3.std::vec::Vec<char>" }
%_10 = alloca %"3.std::vec::Vec<char>"
%_11 = alloca i8
%_12 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
%3 = bitcast %"2.std::option::Option<std::vec::Vec<char>>"* %1 to i8*
%4 = bitcast %"2.std::option::Option<std::vec::Vec<char>>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
store i8 1, i8* %_12
%5 = getelementptr inbounds %"2.std::option::Option<std::vec::Vec<char>>", %"2.std::option::Option<std::vec::Vec<char>>"* %self, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%6 = load i32*, i32** %5
%7 = icmp ne i32* %6, null
switch i1 %7, label %unreachable [
i1 false, label %bb4
i1 true, label %bb5
]
bb1: ; preds = %cleanup1, %bb10, %bb12, %bb11
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb2: ; preds = %bb13, %bb3
%9 = getelementptr inbounds %"2.std::option::Option<std::vec::Vec<char>>", %"2.std::option::Option<std::vec::Vec<char>>"* %self, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%10 = load i32*, i32** %9
%11 = icmp ne i32* %10, null
switch i1 %11, label %unreachable [
i1 false, label %bb10
i1 true, label %bb11
]
bb3: ; preds = %cleanup
%12 = load i8, i8* %_12, !range !1
%13 = trunc i8 %12 to i1
br i1 %13, label %bb13, label %bb2
bb4: ; preds = %start
%14 = getelementptr inbounds %"2.std::option::Option<std::string::String>", %"2.std::option::Option<std::string::String>"* %0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
store i8* null, i8** %14
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_11
%15 = getelementptr inbounds %"2.std::option::Option<std::vec::Vec<char>>", %"2.std::option::Option<std::vec::Vec<char>>"* %self, i32 0, i32 0
%16 = bitcast %"3.std::vec::Vec<char>"* %15 to i8*
%17 = bitcast %"3.std::vec::Vec<char>"* %x to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %17, i8* %16, i64 24, i32 8, i1 false)
store i8 0, i8* %_12
%18 = bitcast %"3.std::vec::Vec<char>"* %x to i8*
%19 = bitcast %"3.std::vec::Vec<char>"* %_10 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %19, i8* %18, i64 24, i32 8, i1 false)
%20 = getelementptr inbounds { %"3.std::vec::Vec<char>" }, { %"3.std::vec::Vec<char>" }* %_9, i32 0, i32 0
%21 = bitcast %"3.std::vec::Vec<char>"* %_10 to i8*
%22 = bitcast %"3.std::vec::Vec<char>"* %20 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %22, i8* %21, i64 24, i32 8, i1 false)
%23 = getelementptr inbounds { %"3.std::vec::Vec<char>" }, { %"3.std::vec::Vec<char>" }* %_9, i32 0, i32 0
invoke void @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h031cc89b2e253900E"(%"3.std::string::String"* noalias nocapture sret dereferenceable(24) %_7, %closure.2* %2, %"3.std::vec::Vec<char>"* noalias nocapture dereferenceable(24) %23)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%24 = getelementptr inbounds %"2.std::option::Option<std::string::String>", %"2.std::option::Option<std::string::String>"* %0, i32 0, i32 0
%25 = bitcast %"3.std::string::String"* %_7 to i8*
%26 = bitcast %"3.std::string::String"* %24 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %26, i8* %25, i64 24, i32 8, i1 false)
br label %bb7
bb7: ; preds = %bb4, %bb6
br label %bb15
bb8: ; preds = %bb14, %bb15
br label %bb19
bb9: ; preds = %bb16, %bb18, %bb17
ret void
bb10: ; preds = %bb2
call void @_ZN4drop17h5ffd2d69095cd8c7E(%"2.std::option::Option<std::vec::Vec<char>>"* %self)
br label %bb1
bb11: ; preds = %bb2
%27 = load i8, i8* %_11, !range !1
%28 = trunc i8 %27 to i1
br i1 %28, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_11
%29 = getelementptr inbounds %"2.std::option::Option<std::vec::Vec<char>>", %"2.std::option::Option<std::vec::Vec<char>>"* %self, i32 0, i32 0
call void @_ZN4drop17h03a279da9cd88334E(%"3.std::vec::Vec<char>"* %29)
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb14: ; preds = %bb15
store i8 0, i8* %_12
br label %bb8
bb15: ; preds = %bb7
%30 = load i8, i8* %_12, !range !1
%31 = trunc i8 %30 to i1
br i1 %31, label %bb14, label %bb8
bb16: ; preds = %bb19
invoke void @_ZN4drop17h5ffd2d69095cd8c7E(%"2.std::option::Option<std::vec::Vec<char>>"* %self)
to label %bb9 unwind label %cleanup1
bb17: ; preds = %bb19
%32 = load i8, i8* %_11, !range !1
%33 = trunc i8 %32 to i1
br i1 %33, label %bb18, label %bb9
bb18: ; preds = %bb17
store i8 0, i8* %_11
%34 = getelementptr inbounds %"2.std::option::Option<std::vec::Vec<char>>", %"2.std::option::Option<std::vec::Vec<char>>"* %self, i32 0, i32 0
invoke void @_ZN4drop17h03a279da9cd88334E(%"3.std::vec::Vec<char>"* %34)
to label %bb9 unwind label %cleanup1
bb19: ; preds = %bb8
%35 = getelementptr inbounds %"2.std::option::Option<std::vec::Vec<char>>", %"2.std::option::Option<std::vec::Vec<char>>"* %self, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%36 = load i32*, i32** %35
%37 = icmp ne i32* %36, null
switch i1 %37, label %unreachable [
i1 false, label %bb16
i1 true, label %bb17
]
unreachable: ; preds = %bb19, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%38 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %38, { i8*, i32 }* %personalityslot
br label %bb3
cleanup1: ; preds = %bb16, %bb18
%39 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %39, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17ha768aedef8146a08E"(i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg0 = alloca %"2.std::option::Option<u32>"
%abi_cast = alloca i64
%_0 = alloca %"2.std::option::Option<char>"
%self = alloca %"2.std::option::Option<u32>"
%_9 = alloca { i32 }
%_11 = alloca i8
%_12 = alloca i8
%personalityslot = alloca { i8*, i32 }
store i64 %0, i64* %abi_cast
%1 = bitcast %"2.std::option::Option<u32>"* %arg0 to i8*
%2 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %1, i8* %2, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
%3 = load %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %arg0
store %"2.std::option::Option<u32>" %3, %"2.std::option::Option<u32>"* %self
store i8 1, i8* %_12
%4 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %self, i32 0, i32 0
%5 = load i32, i32* %4, !range !3
switch i32 %5, label %unreachable [
i32 0, label %bb4
i32 1, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %bb13, %bb3
%7 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %self, i32 0, i32 0
%8 = load i32, i32* %7, !range !3
switch i32 %8, label %unreachable [
i32 0, label %bb10
i32 1, label %bb11
]
bb3: ; preds = %cleanup
%9 = load i8, i8* %_12, !range !1
%10 = trunc i8 %9 to i1
br i1 %10, label %bb13, label %bb2
bb4: ; preds = %start
%11 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_0, i32 0, i32 0
store i32 0, i32* %11
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_11
%12 = bitcast %"2.std::option::Option<u32>"* %self to { i32, i32 }*
%13 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %12, i32 0, i32 1
%14 = load i32, i32* %13
store i8 0, i8* %_12
%15 = getelementptr inbounds { i32 }, { i32 }* %_9, i32 0, i32 0
store i32 %14, i32* %15
%16 = load { i32 }, { i32 }* %_9
%17 = extractvalue { i32 } %16, 0
%18 = invoke i32 @"_ZN81_$LT$core..str..Chars$LT$$u27$a$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hbff115be62590382E"(i32 %17)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%19 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_0, i32 0, i32 0
store i32 1, i32* %19
%20 = bitcast %"2.std::option::Option<char>"* %_0 to { i32, i32 }*
%21 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %20, i32 0, i32 1
store i32 %18, i32* %21
br label %bb7
bb7: ; preds = %bb4, %bb6
br label %bb15
bb8: ; preds = %bb14, %bb15
br label %bb19
bb9: ; preds = %bb16, %bb18, %bb17
%22 = bitcast %"2.std::option::Option<char>"* %_0 to i64*
%23 = load i64, i64* %22, align 4
ret i64 %23
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%24 = load i8, i8* %_11, !range !1
%25 = trunc i8 %24 to i1
br i1 %25, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_11
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb14: ; preds = %bb15
store i8 0, i8* %_12
br label %bb8
bb15: ; preds = %bb7
%26 = load i8, i8* %_12, !range !1
%27 = trunc i8 %26 to i1
br i1 %27, label %bb14, label %bb8
bb16: ; preds = %bb19
br label %bb9
bb17: ; preds = %bb19
%28 = load i8, i8* %_11, !range !1
%29 = trunc i8 %28 to i1
br i1 %29, label %bb18, label %bb9
bb18: ; preds = %bb17
store i8 0, i8* %_11
br label %bb9
bb19: ; preds = %bb8
%30 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %self, i32 0, i32 0
%31 = load i32, i32* %30, !range !3
switch i32 %31, label %unreachable [
i32 0, label %bb16
i32 1, label %bb17
]
unreachable: ; preds = %bb19, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%32 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %32, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17hb51f3e0c2141d2baE"(i8*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca %"2.std::option::Option<char>"
%self = alloca i8*
%_9 = alloca { i32* }
%_11 = alloca i8
%_12 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
store i8* %0, i8** %self
store i8 1, i8* %_12
%1 = load i8*, i8** %self
%2 = icmp ne i8* %1, null
switch i1 %2, label %unreachable [
i1 false, label %bb4
i1 true, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %bb13, %bb3
%4 = load i8*, i8** %self
%5 = icmp ne i8* %4, null
switch i1 %5, label %unreachable [
i1 false, label %bb10
i1 true, label %bb11
]
bb3: ; preds = %cleanup
%6 = load i8, i8* %_12, !range !1
%7 = trunc i8 %6 to i1
br i1 %7, label %bb13, label %bb2
bb4: ; preds = %start
%8 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_0, i32 0, i32 0
store i32 0, i32* %8
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_11
%9 = bitcast i8** %self to i32**
%10 = load i32*, i32** %9, !nonnull !0
store i8 0, i8* %_12
%11 = getelementptr inbounds { i32* }, { i32* }* %_9, i32 0, i32 0
store i32* %10, i32** %11
%12 = load { i32* }, { i32* }* %_9
%13 = extractvalue { i32* } %12, 0
%14 = invoke i32 @"_ZN53_$LT$core..option..Option$LT$$RF$$u27$a$u20$T$GT$$GT$6cloned28_$u7b$$u7b$closure$u7d$$u7d$17h2f5013ee313268daE"(i32* noalias readonly dereferenceable(4) %13)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%15 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_0, i32 0, i32 0
store i32 1, i32* %15
%16 = bitcast %"2.std::option::Option<char>"* %_0 to { i32, i32 }*
%17 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %16, i32 0, i32 1
store i32 %14, i32* %17
br label %bb7
bb7: ; preds = %bb4, %bb6
br label %bb15
bb8: ; preds = %bb14, %bb15
br label %bb19
bb9: ; preds = %bb16, %bb18, %bb17
%18 = bitcast %"2.std::option::Option<char>"* %_0 to i64*
%19 = load i64, i64* %18, align 4
ret i64 %19
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%20 = load i8, i8* %_11, !range !1
%21 = trunc i8 %20 to i1
br i1 %21, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_11
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb14: ; preds = %bb15
store i8 0, i8* %_12
br label %bb8
bb15: ; preds = %bb7
%22 = load i8, i8* %_12, !range !1
%23 = trunc i8 %22 to i1
br i1 %23, label %bb14, label %bb8
bb16: ; preds = %bb19
br label %bb9
bb17: ; preds = %bb19
%24 = load i8, i8* %_11, !range !1
%25 = trunc i8 %24 to i1
br i1 %25, label %bb18, label %bb9
bb18: ; preds = %bb17
store i8 0, i8* %_11
br label %bb9
bb19: ; preds = %bb8
%26 = load i8*, i8** %self
%27 = icmp ne i8* %26, null
switch i1 %27, label %unreachable [
i1 false, label %bb16
i1 true, label %bb17
]
unreachable: ; preds = %bb19, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%28 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %28, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17hd8ffbea01ee84fa3E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16), i8*, %closure.5*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca i8*
%_9 = alloca { %"3.std::string::String"* }
%_11 = alloca i8
%_12 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
store i8* %1, i8** %self
store i8 1, i8* %_12
%3 = load i8*, i8** %self
%4 = icmp ne i8* %3, null
switch i1 %4, label %unreachable [
i1 false, label %bb4
i1 true, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %bb13, %bb3
%6 = load i8*, i8** %self
%7 = icmp ne i8* %6, null
switch i1 %7, label %unreachable [
i1 false, label %bb10
i1 true, label %bb11
]
bb3: ; preds = %cleanup
%8 = load i8, i8* %_12, !range !1
%9 = trunc i8 %8 to i1
br i1 %9, label %bb13, label %bb2
bb4: ; preds = %start
%10 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 0, i64* %10
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_11
%11 = bitcast i8** %self to %"3.std::string::String"**
%12 = load %"3.std::string::String"*, %"3.std::string::String"** %11, !nonnull !0
store i8 0, i8* %_12
%13 = getelementptr inbounds { %"3.std::string::String"* }, { %"3.std::string::String"* }* %_9, i32 0, i32 0
store %"3.std::string::String"* %12, %"3.std::string::String"** %13
%14 = load { %"3.std::string::String"* }, { %"3.std::string::String"* }* %_9
%15 = extractvalue { %"3.std::string::String"* } %14, 0
%16 = invoke i64 @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h6b7d608bb1b5d2acE"(%closure.5* %2, %"3.std::string::String"* noalias readonly dereferenceable(24) %15)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%17 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 1, i64* %17
%18 = bitcast %"2.std::option::Option<usize>"* %0 to { i64, i64 }*
%19 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %18, i32 0, i32 1
store i64 %16, i64* %19
br label %bb7
bb7: ; preds = %bb4, %bb6
br label %bb15
bb8: ; preds = %bb14, %bb15
br label %bb19
bb9: ; preds = %bb16, %bb18, %bb17
ret void
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%20 = load i8, i8* %_11, !range !1
%21 = trunc i8 %20 to i1
br i1 %21, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_11
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb14: ; preds = %bb15
store i8 0, i8* %_12
br label %bb8
bb15: ; preds = %bb7
%22 = load i8, i8* %_12, !range !1
%23 = trunc i8 %22 to i1
br i1 %23, label %bb14, label %bb8
bb16: ; preds = %bb19
br label %bb9
bb17: ; preds = %bb19
%24 = load i8, i8* %_11, !range !1
%25 = trunc i8 %24 to i1
br i1 %25, label %bb18, label %bb9
bb18: ; preds = %bb17
store i8 0, i8* %_11
br label %bb9
bb19: ; preds = %bb8
%26 = load i8*, i8** %self
%27 = icmp ne i8* %26, null
switch i1 %27, label %unreachable [
i1 false, label %bb16
i1 true, label %bb17
]
unreachable: ; preds = %bb19, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%28 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %28, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$3map17hed60357802622472E"(%"2.std::option::Option<std::time::Duration>"* noalias nocapture sret dereferenceable(24), %"2.std::option::Option<(u64, u32)>"* noalias nocapture dereferenceable(24), %closure.6*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::option::Option<(u64, u32)>"
%_9 = alloca { { i64, i32 } }
%_11 = alloca i8
%_12 = alloca i8
%tmp_ret = alloca %"1.std::time::Duration"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
%3 = bitcast %"2.std::option::Option<(u64, u32)>"* %1 to i8*
%4 = bitcast %"2.std::option::Option<(u64, u32)>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
store i8 1, i8* %_12
%5 = getelementptr inbounds %"2.std::option::Option<(u64, u32)>", %"2.std::option::Option<(u64, u32)>"* %self, i32 0, i32 0
%6 = load i64, i64* %5, !range !2
switch i64 %6, label %unreachable [
i64 0, label %bb4
i64 1, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%7 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %7
bb2: ; preds = %bb13, %bb3
%8 = getelementptr inbounds %"2.std::option::Option<(u64, u32)>", %"2.std::option::Option<(u64, u32)>"* %self, i32 0, i32 0
%9 = load i64, i64* %8, !range !2
switch i64 %9, label %unreachable [
i64 0, label %bb10
i64 1, label %bb11
]
bb3: ; preds = %cleanup
%10 = load i8, i8* %_12, !range !1
%11 = trunc i8 %10 to i1
br i1 %11, label %bb13, label %bb2
bb4: ; preds = %start
%12 = getelementptr inbounds %"2.std::option::Option<std::time::Duration>", %"2.std::option::Option<std::time::Duration>"* %0, i32 0, i32 0
store i64 0, i64* %12
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_11
%13 = bitcast %"2.std::option::Option<(u64, u32)>"* %self to { i64, { i64, i32 } }*
%14 = getelementptr inbounds { i64, { i64, i32 } }, { i64, { i64, i32 } }* %13, i32 0, i32 1
%15 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %14, i32 0, i32 0
%16 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %14, i32 0, i32 1
%17 = load i64, i64* %15
%18 = load i32, i32* %16
store i8 0, i8* %_12
%19 = getelementptr inbounds { { i64, i32 } }, { { i64, i32 } }* %_9, i32 0, i32 0
%20 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %19, i32 0, i32 0
store i64 %17, i64* %20
%21 = getelementptr inbounds { i64, i32 }, { i64, i32 }* %19, i32 0, i32 1
store i32 %18, i32* %21
%22 = getelementptr inbounds { { i64, i32 } }, { { i64, i32 } }* %_9, i32 0, i32 0
invoke void @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h1432120bde223b02E"(%"1.std::time::Duration"* noalias nocapture sret dereferenceable(16) %tmp_ret, %closure.6* %2, { i64, i32 }* noalias nocapture dereferenceable(16) %22)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%23 = getelementptr inbounds %"1.std::time::Duration", %"1.std::time::Duration"* %tmp_ret, i32 0, i32 0
%24 = getelementptr inbounds %"1.std::time::Duration", %"1.std::time::Duration"* %tmp_ret, i32 0, i32 1
%25 = load i64, i64* %23
%26 = load i32, i32* %24
%27 = getelementptr inbounds %"2.std::option::Option<std::time::Duration>", %"2.std::option::Option<std::time::Duration>"* %0, i32 0, i32 0
store i64 1, i64* %27
%28 = bitcast %"2.std::option::Option<std::time::Duration>"* %0 to { i64, %"1.std::time::Duration" }*
%29 = getelementptr inbounds { i64, %"1.std::time::Duration" }, { i64, %"1.std::time::Duration" }* %28, i32 0, i32 1
%30 = getelementptr inbounds %"1.std::time::Duration", %"1.std::time::Duration"* %29, i32 0, i32 0
store i64 %25, i64* %30
%31 = getelementptr inbounds %"1.std::time::Duration", %"1.std::time::Duration"* %29, i32 0, i32 1
store i32 %26, i32* %31
br label %bb7
bb7: ; preds = %bb4, %bb6
br label %bb15
bb8: ; preds = %bb14, %bb15
br label %bb19
bb9: ; preds = %bb16, %bb18, %bb17
ret void
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%32 = load i8, i8* %_11, !range !1
%33 = trunc i8 %32 to i1
br i1 %33, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_11
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb14: ; preds = %bb15
store i8 0, i8* %_12
br label %bb8
bb15: ; preds = %bb7
%34 = load i8, i8* %_12, !range !1
%35 = trunc i8 %34 to i1
br i1 %35, label %bb14, label %bb8
bb16: ; preds = %bb19
br label %bb9
bb17: ; preds = %bb19
%36 = load i8, i8* %_11, !range !1
%37 = trunc i8 %36 to i1
br i1 %37, label %bb18, label %bb9
bb18: ; preds = %bb17
store i8 0, i8* %_11
br label %bb9
bb19: ; preds = %bb8
%38 = getelementptr inbounds %"2.std::option::Option<(u64, u32)>", %"2.std::option::Option<(u64, u32)>"* %self, i32 0, i32 0
%39 = load i64, i64* %38, !range !2
switch i64 %39, label %unreachable [
i64 0, label %bb16
i64 1, label %bb17
]
unreachable: ; preds = %bb19, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%40 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %40, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$4take17h523f3c9209fb40aeE"(%"2.std::option::Option<char>"* dereferenceable(8)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca %"2.std::option::Option<char>"
%_4 = alloca %"2.std::option::Option<char>"
%arg = alloca %"2.std::option::Option<char>"
%personalityslot = alloca { i8*, i32 }
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_4, i32 0, i32 0
store i32 0, i32* %1
%2 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_4
store %"2.std::option::Option<char>" %2, %"2.std::option::Option<char>"* %arg
%3 = bitcast %"2.std::option::Option<char>"* %arg to i64*
%4 = load i64, i64* %3, align 4
%5 = invoke i64 @_ZN4core3mem7replace17h4532975a004b190eE(%"2.std::option::Option<char>"* dereferenceable(8) %0, i64 %4)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %start
store i64 %5, i64* %abi_cast
%7 = bitcast %"2.std::option::Option<char>"* %_0 to i8*
%8 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %7, i8* %8, i64 8, i32 4, i1 false)
%9 = bitcast %"2.std::option::Option<char>"* %_0 to i64*
%10 = load i64, i64* %9, align 4
ret i64 %10
cleanup: ; preds = %start
%11 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %11, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal i16 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$4take17h7822468b81e62aefE"(%"2.std::option::Option<bool>"* dereferenceable(2)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca %"2.std::option::Option<bool>"
%_4 = alloca %"2.std::option::Option<bool>"
%arg = alloca %"2.std::option::Option<bool>"
%personalityslot = alloca { i8*, i32 }
%abi_cast = alloca i16
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %_4, i32 0, i32 0
store i8 0, i8* %1
%2 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %_4
store %"2.std::option::Option<bool>" %2, %"2.std::option::Option<bool>"* %arg
%3 = bitcast %"2.std::option::Option<bool>"* %arg to i16*
%4 = load i16, i16* %3, align 1
%5 = invoke i16 @_ZN4core3mem7replace17h2048df728785c3dcE(%"2.std::option::Option<bool>"* dereferenceable(2) %0, i16 %4)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %start
store i16 %5, i16* %abi_cast
%7 = bitcast %"2.std::option::Option<bool>"* %_0 to i8*
%8 = bitcast i16* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %7, i8* %8, i64 2, i32 1, i1 false)
%9 = bitcast %"2.std::option::Option<bool>"* %_0 to i16*
%10 = load i16, i16* %9, align 1
ret i16 %10
cleanup: ; preds = %start
%11 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %11, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h3407f1016547b9cdE"(%"2.std::option::Option<usize>"* noalias nocapture dereferenceable(16), i8* noalias nonnull readonly, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::option::Option<usize>"
%_10 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
store i8 1, i8* %_10
%3 = bitcast %"2.std::option::Option<usize>"* %0 to i8*
%4 = bitcast %"2.std::option::Option<usize>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 16, i32 8, i1 false)
%5 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %self, i32 0, i32 0
%6 = load i64, i64* %5, !range !2
switch i64 %6, label %unreachable [
i64 0, label %bb3
i64 1, label %bb4
]
bb1: ; preds = %bb6, %bb8, %bb7
%7 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %7
bb2: ; preds = %cleanup
%8 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %self, i32 0, i32 0
%9 = load i64, i64* %8, !range !2
switch i64 %9, label %unreachable [
i64 0, label %bb6
i64 1, label %bb7
]
bb3: ; preds = %start
invoke void @_ZN4core6option13expect_failed17hafc66854f3459293E(i8* noalias nonnull readonly %1, i64 %2)
to label %unreachable unwind label %cleanup
bb4: ; preds = %start
store i8 0, i8* %_10
%10 = bitcast %"2.std::option::Option<usize>"* %self to { i64, i64 }*
%11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %10, i32 0, i32 1
%12 = load i64, i64* %11
%13 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %self, i32 0, i32 0
%14 = load i64, i64* %13, !range !2
switch i64 %14, label %unreachable [
i64 0, label %bb9
i64 1, label %bb5
]
bb5: ; preds = %bb9, %bb4
ret i64 %12
bb6: ; preds = %bb2
br label %bb1
bb7: ; preds = %bb2
%15 = load i8, i8* %_10, !range !1
%16 = trunc i8 %15 to i1
br i1 %16, label %bb8, label %bb1
bb8: ; preds = %bb7
store i8 0, i8* %_10
br label %bb1
bb9: ; preds = %bb4
br label %bb5
unreachable: ; preds = %bb2, %bb3, %bb4, %start
unreachable
cleanup: ; preds = %bb3
%17 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %17, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h707cc572d3263666E"(%"2.std::option::Option<u64>"* noalias nocapture dereferenceable(16), i8* noalias nonnull readonly, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::option::Option<u64>"
%_10 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
store i8 1, i8* %_10
%3 = bitcast %"2.std::option::Option<u64>"* %0 to i8*
%4 = bitcast %"2.std::option::Option<u64>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 16, i32 8, i1 false)
%5 = getelementptr inbounds %"2.std::option::Option<u64>", %"2.std::option::Option<u64>"* %self, i32 0, i32 0
%6 = load i64, i64* %5, !range !2
switch i64 %6, label %unreachable [
i64 0, label %bb3
i64 1, label %bb4
]
bb1: ; preds = %bb6, %bb8, %bb7
%7 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %7
bb2: ; preds = %cleanup
%8 = getelementptr inbounds %"2.std::option::Option<u64>", %"2.std::option::Option<u64>"* %self, i32 0, i32 0
%9 = load i64, i64* %8, !range !2
switch i64 %9, label %unreachable [
i64 0, label %bb6
i64 1, label %bb7
]
bb3: ; preds = %start
invoke void @_ZN4core6option13expect_failed17hafc66854f3459293E(i8* noalias nonnull readonly %1, i64 %2)
to label %unreachable unwind label %cleanup
bb4: ; preds = %start
store i8 0, i8* %_10
%10 = bitcast %"2.std::option::Option<u64>"* %self to { i64, i64 }*
%11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %10, i32 0, i32 1
%12 = load i64, i64* %11
%13 = getelementptr inbounds %"2.std::option::Option<u64>", %"2.std::option::Option<u64>"* %self, i32 0, i32 0
%14 = load i64, i64* %13, !range !2
switch i64 %14, label %unreachable [
i64 0, label %bb9
i64 1, label %bb5
]
bb5: ; preds = %bb9, %bb4
ret i64 %12
bb6: ; preds = %bb2
br label %bb1
bb7: ; preds = %bb2
%15 = load i8, i8* %_10, !range !1
%16 = trunc i8 %15 to i1
br i1 %16, label %bb8, label %bb1
bb8: ; preds = %bb7
store i8 0, i8* %_10
br label %bb1
bb9: ; preds = %bb4
br label %bb5
unreachable: ; preds = %bb2, %bb3, %bb4, %start
unreachable
cleanup: ; preds = %bb3
%17 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %17, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$7is_some17h5f4f353fc4ae29c3E"(%"2.std::option::Option<std::string::String>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
%_0 = alloca i8
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.std::option::Option<std::string::String>", %"2.std::option::Option<std::string::String>"* %0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0, i32 0
%2 = load i8*, i8** %1
%3 = icmp ne i8* %2, null
switch i1 %3, label %unreachable [
i1 false, label %bb1
i1 true, label %bb2
]
bb1: ; preds = %start
store i8 0, i8* %_0
br label %bb3
bb2: ; preds = %start
store i8 1, i8* %_0
br label %bb3
bb3: ; preds = %bb1, %bb2
%4 = load i8, i8* %_0, !range !1
%5 = trunc i8 %4 to i1
ret i1 %5
unreachable: ; preds = %start
unreachable
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$8and_then17h89207dc4d8e20aa1E"(i64, i8*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg0 = alloca %"2.std::option::Option<u32>"
%abi_cast = alloca i64
%arg1 = alloca %closure.7
%abi_cast1 = alloca i8*
%_0 = alloca %"2.std::option::Option<(u32,)>"
%self = alloca %"2.std::option::Option<u32>"
%f = alloca %closure.7
%_7 = alloca %closure.7
%_8 = alloca { i32 }
%_10 = alloca i8
%_11 = alloca i8
%arg = alloca %closure.7
%personalityslot = alloca { i8*, i32 }
%abi_cast2 = alloca i64
store i64 %0, i64* %abi_cast
%2 = bitcast %"2.std::option::Option<u32>"* %arg0 to i8*
%3 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 4, i1 false)
store i8* %1, i8** %abi_cast1
%4 = bitcast %closure.7* %arg1 to i8*
%5 = bitcast i8** %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
store i8 0, i8* %_10
store i8 1, i8* %_10
%6 = load %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %arg0
store %"2.std::option::Option<u32>" %6, %"2.std::option::Option<u32>"* %self
store i8 1, i8* %_11
%7 = load %closure.7, %closure.7* %arg1
store %closure.7 %7, %closure.7* %f
%8 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %self, i32 0, i32 0
%9 = load i32, i32* %8, !range !3
switch i32 %9, label %unreachable [
i32 0, label %bb4
i32 1, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb13, %bb3
%11 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %self, i32 0, i32 0
%12 = load i32, i32* %11, !range !3
switch i32 %12, label %unreachable [
i32 0, label %bb10
i32 1, label %bb11
]
bb3: ; preds = %cleanup
%13 = load i8, i8* %_11, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb13, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds %"2.std::option::Option<(u32,)>", %"2.std::option::Option<(u32,)>"* %_0, i32 0, i32 0
store i32 0, i32* %15
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_10
%16 = bitcast %"2.std::option::Option<u32>"* %self to { i32, i32 }*
%17 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %16, i32 0, i32 1
%18 = load i32, i32* %17
store i8 0, i8* %_11
%19 = load %closure.7, %closure.7* %f
store %closure.7 %19, %closure.7* %_7
%20 = getelementptr inbounds { i32 }, { i32 }* %_8, i32 0, i32 0
store i32 %18, i32* %20
%21 = load %closure.7, %closure.7* %_7
store %closure.7 %21, %closure.7* %arg
%22 = bitcast %closure.7* %arg to i8**
%23 = load i8*, i8** %22, align 8
%24 = load { i32 }, { i32 }* %_8
%25 = extractvalue { i32 } %24, 0
%26 = invoke i64 @"_ZN95_$LT$core..iter..Scan$LT$I$C$$u20$St$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17h3966123c8ba47759E"(i8* %23, i32 %25)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
store i64 %26, i64* %abi_cast2
%27 = bitcast %"2.std::option::Option<(u32,)>"* %_0 to i8*
%28 = bitcast i64* %abi_cast2 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %27, i8* %28, i64 8, i32 4, i1 false)
br label %bb7
bb7: ; preds = %bb4, %bb6
%29 = load i8, i8* %_11, !range !1
%30 = trunc i8 %29 to i1
br i1 %30, label %bb14, label %bb8
bb8: ; preds = %bb14, %bb7
br label %bb18
bb9: ; preds = %bb15, %bb17, %bb16
%31 = bitcast %"2.std::option::Option<(u32,)>"* %_0 to i64*
%32 = load i64, i64* %31, align 4
ret i64 %32
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%33 = load i8, i8* %_10, !range !1
%34 = trunc i8 %33 to i1
br i1 %34, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_10
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_11
br label %bb2
bb14: ; preds = %bb7
store i8 0, i8* %_11
br label %bb8
bb15: ; preds = %bb18
br label %bb9
bb16: ; preds = %bb18
%35 = load i8, i8* %_10, !range !1
%36 = trunc i8 %35 to i1
br i1 %36, label %bb17, label %bb9
bb17: ; preds = %bb16
store i8 0, i8* %_10
br label %bb9
bb18: ; preds = %bb8
%37 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %self, i32 0, i32 0
%38 = load i32, i32* %37, !range !3
switch i32 %38, label %unreachable [
i32 0, label %bb15
i32 1, label %bb16
]
unreachable: ; preds = %bb18, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%39 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %39, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$8and_then17ha9aa79910202ef84E"(%"2.std::option::Option<(u64, u32)>"* noalias nocapture sret dereferenceable(24), %"2.std::option::Option<u64>"* noalias nocapture dereferenceable(16), i8*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %closure.9
%abi_cast = alloca i8*
%self = alloca %"2.std::option::Option<u64>"
%f = alloca %closure.9
%_7 = alloca %closure.9
%_8 = alloca { i64 }
%_10 = alloca i8
%_11 = alloca i8
%arg = alloca %closure.9
%personalityslot = alloca { i8*, i32 }
store i8* %2, i8** %abi_cast
%3 = bitcast %closure.9* %arg1 to i8*
%4 = bitcast i8** %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 8, i32 8, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
store i8 0, i8* %_10
store i8 1, i8* %_10
%5 = bitcast %"2.std::option::Option<u64>"* %1 to i8*
%6 = bitcast %"2.std::option::Option<u64>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 16, i32 8, i1 false)
store i8 1, i8* %_11
%7 = load %closure.9, %closure.9* %arg1
store %closure.9 %7, %closure.9* %f
%8 = getelementptr inbounds %"2.std::option::Option<u64>", %"2.std::option::Option<u64>"* %self, i32 0, i32 0
%9 = load i64, i64* %8, !range !2
switch i64 %9, label %unreachable [
i64 0, label %bb4
i64 1, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb2: ; preds = %bb13, %bb3
%11 = getelementptr inbounds %"2.std::option::Option<u64>", %"2.std::option::Option<u64>"* %self, i32 0, i32 0
%12 = load i64, i64* %11, !range !2
switch i64 %12, label %unreachable [
i64 0, label %bb10
i64 1, label %bb11
]
bb3: ; preds = %cleanup
%13 = load i8, i8* %_11, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb13, label %bb2
bb4: ; preds = %start
%15 = getelementptr inbounds %"2.std::option::Option<(u64, u32)>", %"2.std::option::Option<(u64, u32)>"* %0, i32 0, i32 0
store i64 0, i64* %15
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_10
%16 = bitcast %"2.std::option::Option<u64>"* %self to { i64, i64 }*
%17 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %16, i32 0, i32 1
%18 = load i64, i64* %17
store i8 0, i8* %_11
%19 = load %closure.9, %closure.9* %f
store %closure.9 %19, %closure.9* %_7
%20 = getelementptr inbounds { i64 }, { i64 }* %_8, i32 0, i32 0
store i64 %18, i64* %20
%21 = load %closure.9, %closure.9* %_7
store %closure.9 %21, %closure.9* %arg
%22 = bitcast %closure.9* %arg to i8**
%23 = load i8*, i8** %22, align 8
%24 = load { i64 }, { i64 }* %_8
%25 = extractvalue { i64 } %24, 0
invoke void @"_ZN95_$LT$core..iter..Scan$LT$I$C$$u20$St$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17ha9140257747b8111E"(%"2.std::option::Option<(u64, u32)>"* noalias nocapture sret dereferenceable(24) %0, i8* %23, i64 %25)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
br label %bb7
bb7: ; preds = %bb4, %bb6
%26 = load i8, i8* %_11, !range !1
%27 = trunc i8 %26 to i1
br i1 %27, label %bb14, label %bb8
bb8: ; preds = %bb14, %bb7
br label %bb18
bb9: ; preds = %bb15, %bb17, %bb16
ret void
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%28 = load i8, i8* %_10, !range !1
%29 = trunc i8 %28 to i1
br i1 %29, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_10
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_11
br label %bb2
bb14: ; preds = %bb7
store i8 0, i8* %_11
br label %bb8
bb15: ; preds = %bb18
br label %bb9
bb16: ; preds = %bb18
%30 = load i8, i8* %_10, !range !1
%31 = trunc i8 %30 to i1
br i1 %31, label %bb17, label %bb9
bb17: ; preds = %bb16
store i8 0, i8* %_10
br label %bb9
bb18: ; preds = %bb8
%32 = getelementptr inbounds %"2.std::option::Option<u64>", %"2.std::option::Option<u64>"* %self, i32 0, i32 0
%33 = load i64, i64* %32, !range !2
switch i64 %33, label %unreachable [
i64 0, label %bb15
i64 1, label %bb16
]
unreachable: ; preds = %bb18, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%34 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %34, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$8and_then17hcc2e9cc2676283d1E"(%"2.std::option::Option<(u64, u32)>"* noalias nocapture sret dereferenceable(24), i64, i8*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg0 = alloca %"2.std::option::Option<(u32,)>"
%abi_cast = alloca i64
%arg1 = alloca %closure.11
%abi_cast1 = alloca i8*
%self = alloca %"2.std::option::Option<(u32,)>"
%f = alloca %closure.11
%x = alloca { i32 }
%_7 = alloca %closure.11
%_8 = alloca { { i32 } }
%_9 = alloca { i32 }
%_10 = alloca i8
%_11 = alloca i8
%arg = alloca %closure.11
%arg2 = alloca { i32 }
%personalityslot = alloca { i8*, i32 }
store i64 %1, i64* %abi_cast
%3 = bitcast %"2.std::option::Option<(u32,)>"* %arg0 to i8*
%4 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 8, i32 4, i1 false)
store i8* %2, i8** %abi_cast1
%5 = bitcast %closure.11* %arg1 to i8*
%6 = bitcast i8** %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 8, i32 8, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
store i8 0, i8* %_10
store i8 1, i8* %_10
%7 = load %"2.std::option::Option<(u32,)>", %"2.std::option::Option<(u32,)>"* %arg0
store %"2.std::option::Option<(u32,)>" %7, %"2.std::option::Option<(u32,)>"* %self
store i8 1, i8* %_11
%8 = load %closure.11, %closure.11* %arg1
store %closure.11 %8, %closure.11* %f
%9 = getelementptr inbounds %"2.std::option::Option<(u32,)>", %"2.std::option::Option<(u32,)>"* %self, i32 0, i32 0
%10 = load i32, i32* %9, !range !3
switch i32 %10, label %unreachable [
i32 0, label %bb4
i32 1, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%11 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %11
bb2: ; preds = %bb13, %bb3
%12 = getelementptr inbounds %"2.std::option::Option<(u32,)>", %"2.std::option::Option<(u32,)>"* %self, i32 0, i32 0
%13 = load i32, i32* %12, !range !3
switch i32 %13, label %unreachable [
i32 0, label %bb10
i32 1, label %bb11
]
bb3: ; preds = %cleanup
%14 = load i8, i8* %_11, !range !1
%15 = trunc i8 %14 to i1
br i1 %15, label %bb13, label %bb2
bb4: ; preds = %start
%16 = getelementptr inbounds %"2.std::option::Option<(u64, u32)>", %"2.std::option::Option<(u64, u32)>"* %0, i32 0, i32 0
store i64 0, i64* %16
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_10
%17 = bitcast %"2.std::option::Option<(u32,)>"* %self to { i32, { i32 } }*
%18 = getelementptr inbounds { i32, { i32 } }, { i32, { i32 } }* %17, i32 0, i32 1
%19 = load { i32 }, { i32 }* %18
store { i32 } %19, { i32 }* %x
store i8 0, i8* %_11
%20 = load %closure.11, %closure.11* %f
store %closure.11 %20, %closure.11* %_7
%21 = load { i32 }, { i32 }* %x
store { i32 } %21, { i32 }* %_9
%22 = load { i32 }, { i32 }* %_9
%23 = getelementptr inbounds { { i32 } }, { { i32 } }* %_8, i32 0, i32 0
store { i32 } %22, { i32 }* %23
%24 = load %closure.11, %closure.11* %_7
store %closure.11 %24, %closure.11* %arg
%25 = bitcast %closure.11* %arg to i8**
%26 = load i8*, i8** %25, align 8
%27 = load { { i32 } }, { { i32 } }* %_8
%28 = extractvalue { { i32 } } %27, 0
store { i32 } %28, { i32 }* %arg2
%29 = bitcast { i32 }* %arg2 to i32*
%30 = load i32, i32* %29, align 4
invoke void @"_ZN95_$LT$core..iter..Scan$LT$I$C$$u20$St$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hf81e22f095ba5865E"(%"2.std::option::Option<(u64, u32)>"* noalias nocapture sret dereferenceable(24) %0, i8* %26, i32 %30)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
br label %bb7
bb7: ; preds = %bb4, %bb6
%31 = load i8, i8* %_11, !range !1
%32 = trunc i8 %31 to i1
br i1 %32, label %bb14, label %bb8
bb8: ; preds = %bb14, %bb7
br label %bb18
bb9: ; preds = %bb15, %bb17, %bb16
ret void
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%33 = load i8, i8* %_10, !range !1
%34 = trunc i8 %33 to i1
br i1 %34, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_10
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_11
br label %bb2
bb14: ; preds = %bb7
store i8 0, i8* %_11
br label %bb8
bb15: ; preds = %bb18
br label %bb9
bb16: ; preds = %bb18
%35 = load i8, i8* %_10, !range !1
%36 = trunc i8 %35 to i1
br i1 %36, label %bb17, label %bb9
bb17: ; preds = %bb16
store i8 0, i8* %_10
br label %bb9
bb18: ; preds = %bb8
%37 = getelementptr inbounds %"2.std::option::Option<(u32,)>", %"2.std::option::Option<(u32,)>"* %self, i32 0, i32 0
%38 = load i32, i32* %37, !range !3
switch i32 %38, label %unreachable [
i32 0, label %bb15
i32 1, label %bb16
]
unreachable: ; preds = %bb18, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%39 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %39, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$8and_then17hd65eb60ef615be82E"(i8, i8*) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg0 = alloca %"2.std::option::Option<()>"
%abi_cast = alloca i8
%arg1 = alloca %closure.13
%abi_cast1 = alloca i8*
%_0 = alloca %"2.std::option::Option<(u32,)>"
%self = alloca %"2.std::option::Option<()>"
%f = alloca %closure.13
%_7 = alloca %closure.13
%_8 = alloca { {} }
%_10 = alloca i8
%_11 = alloca i8
%arg = alloca %closure.13
%personalityslot = alloca { i8*, i32 }
%abi_cast2 = alloca i64
store i8 %0, i8* %abi_cast
%2 = bitcast %"2.std::option::Option<()>"* %arg0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %abi_cast, i64 1, i32 1, i1 false)
store i8* %1, i8** %abi_cast1
%3 = bitcast %closure.13* %arg1 to i8*
%4 = bitcast i8** %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 8, i32 8, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
store i8 0, i8* %_10
store i8 1, i8* %_10
%5 = load %"2.std::option::Option<()>", %"2.std::option::Option<()>"* %arg0
store %"2.std::option::Option<()>" %5, %"2.std::option::Option<()>"* %self
store i8 1, i8* %_11
%6 = load %closure.13, %closure.13* %arg1
store %closure.13 %6, %closure.13* %f
%7 = getelementptr inbounds %"2.std::option::Option<()>", %"2.std::option::Option<()>"* %self, i32 0, i32 0
%8 = load i8, i8* %7, !range !1
switch i8 %8, label %unreachable [
i8 0, label %bb4
i8 1, label %bb5
]
bb1: ; preds = %bb10, %bb12, %bb11
%9 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %9
bb2: ; preds = %bb13, %bb3
%10 = getelementptr inbounds %"2.std::option::Option<()>", %"2.std::option::Option<()>"* %self, i32 0, i32 0
%11 = load i8, i8* %10, !range !1
switch i8 %11, label %unreachable [
i8 0, label %bb10
i8 1, label %bb11
]
bb3: ; preds = %cleanup
%12 = load i8, i8* %_11, !range !1
%13 = trunc i8 %12 to i1
br i1 %13, label %bb13, label %bb2
bb4: ; preds = %start
%14 = getelementptr inbounds %"2.std::option::Option<(u32,)>", %"2.std::option::Option<(u32,)>"* %_0, i32 0, i32 0
store i32 0, i32* %14
br label %bb7
bb5: ; preds = %start
store i8 0, i8* %_10
%15 = bitcast %"2.std::option::Option<()>"* %self to { i8, {} }*
%16 = getelementptr inbounds { i8, {} }, { i8, {} }* %15, i32 0, i32 1
store i8 0, i8* %_11
%17 = load %closure.13, %closure.13* %f
store %closure.13 %17, %closure.13* %_7
%18 = load %closure.13, %closure.13* %_7
store %closure.13 %18, %closure.13* %arg
%19 = bitcast %closure.13* %arg to i8**
%20 = load i8*, i8** %19, align 8
%21 = invoke i64 @"_ZN95_$LT$core..iter..Scan$LT$I$C$$u20$St$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next28_$u7b$$u7b$closure$u7d$$u7d$17hed8912a16ee59934E"(i8* %20)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
store i64 %21, i64* %abi_cast2
%22 = bitcast %"2.std::option::Option<(u32,)>"* %_0 to i8*
%23 = bitcast i64* %abi_cast2 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %22, i8* %23, i64 8, i32 4, i1 false)
br label %bb7
bb7: ; preds = %bb4, %bb6
%24 = load i8, i8* %_11, !range !1
%25 = trunc i8 %24 to i1
br i1 %25, label %bb14, label %bb8
bb8: ; preds = %bb14, %bb7
br label %bb18
bb9: ; preds = %bb15, %bb17, %bb16
%26 = bitcast %"2.std::option::Option<(u32,)>"* %_0 to i64*
%27 = load i64, i64* %26, align 4
ret i64 %27
bb10: ; preds = %bb2
br label %bb1
bb11: ; preds = %bb2
%28 = load i8, i8* %_10, !range !1
%29 = trunc i8 %28 to i1
br i1 %29, label %bb12, label %bb1
bb12: ; preds = %bb11
store i8 0, i8* %_10
br label %bb1
bb13: ; preds = %bb3
store i8 0, i8* %_11
br label %bb2
bb14: ; preds = %bb7
store i8 0, i8* %_11
br label %bb8
bb15: ; preds = %bb18
br label %bb9
bb16: ; preds = %bb18
%30 = load i8, i8* %_10, !range !1
%31 = trunc i8 %30 to i1
br i1 %31, label %bb17, label %bb9
bb17: ; preds = %bb16
store i8 0, i8* %_10
br label %bb9
bb18: ; preds = %bb8
%32 = getelementptr inbounds %"2.std::option::Option<()>", %"2.std::option::Option<()>"* %self, i32 0, i32 0
%33 = load i8, i8* %32, !range !1
switch i8 %33, label %unreachable [
i8 0, label %bb15
i8 1, label %bb16
]
unreachable: ; preds = %bb18, %bb2, %start
unreachable
cleanup: ; preds = %bb5
%34 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %34, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$13with_capacity17h859f3ab4518f6501E"(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24), i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<u8>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$13with_capacity17h27a9234547b04264E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i64 %1)
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %tmp_ret, i32 0, i32 0
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %tmp_ret, i32 0, i32 1
%4 = load %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %2
%5 = load i64, i64* %3
br label %bb1
bb1: ; preds = %start
%6 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 0
%7 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %6, i32 0, i32 0
store %"2.std::ptr::Unique<u8>" %4, %"2.std::ptr::Unique<u8>"* %7
%8 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %6, i32 0, i32 1
store i64 %5, i64* %8
%9 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
store i64 0, i64* %9
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$13with_capacity17hfc397c344bd5b657E"(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24), i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<char>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$13with_capacity17h66596e69555cc41eE"(%"5.alloc::raw_vec::RawVec<char>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i64 %1)
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %tmp_ret, i32 0, i32 0
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %tmp_ret, i32 0, i32 1
%4 = load %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %2
%5 = load i64, i64* %3
br label %bb1
bb1: ; preds = %start
%6 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 0
%7 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %6, i32 0, i32 0
store %"2.std::ptr::Unique<char>" %4, %"2.std::ptr::Unique<char>"* %7
%8 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %6, i32 0, i32 1
store i64 %5, i64* %8
%9 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 1
store i64 0, i64* %9
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h013b202cd8cfeddcE"(%"3.std::vec::Vec<u32>"* noalias nocapture sret dereferenceable(24), i32*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<u32>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h2dddc3447ec0c16cE"(%"5.alloc::raw_vec::RawVec<u32>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i32* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<u32>", %"2.std::ptr::Unique<u32>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<u32>", %"3.std::vec::Vec<u32>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<u32>" %6, %"2.std::ptr::Unique<u32>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<u32>", %"3.std::vec::Vec<u32>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h03ad7ac1e28f2b43E"(%"3.std::vec::Vec<usize>"* noalias nocapture sret dereferenceable(24), i64*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<usize>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h404dfa5abf357462E"(%"5.alloc::raw_vec::RawVec<usize>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i64* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<usize>", %"2.std::ptr::Unique<usize>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<usize>", %"3.std::vec::Vec<usize>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<usize>" %6, %"2.std::ptr::Unique<usize>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<usize>", %"3.std::vec::Vec<usize>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h0e8fc40296d477d4E"(%"3.std::vec::Vec<u16>"* noalias nocapture sret dereferenceable(24), i16*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<u16>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17ha61449d10626783eE"(%"5.alloc::raw_vec::RawVec<u16>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i16* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<u16>", %"2.std::ptr::Unique<u16>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<u16>", %"3.std::vec::Vec<u16>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<u16>" %6, %"2.std::ptr::Unique<u16>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<u16>", %"3.std::vec::Vec<u16>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h156258d9a203f8a2E"(%"3.std::vec::Vec<std::string::String>"* noalias nocapture sret dereferenceable(24), %"3.std::string::String"*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<std::string::String>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17hbca58925b38b0d96E"(%"5.alloc::raw_vec::RawVec<std::string::String>"* noalias nocapture sret dereferenceable(16) %tmp_ret, %"3.std::string::String"* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<std::string::String>", %"2.std::ptr::Unique<std::string::String>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<std::string::String>", %"3.std::vec::Vec<std::string::String>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<std::string::String>" %6, %"2.std::ptr::Unique<std::string::String>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<std::string::String>", %"3.std::vec::Vec<std::string::String>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h34af255d25cb72c3E"(%"3.std::vec::Vec<i8>"* noalias nocapture sret dereferenceable(24), i8*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<i8>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17hd04cbed2f1653c18E"(%"5.alloc::raw_vec::RawVec<i8>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i8* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<i8>" %6, %"2.std::ptr::Unique<i8>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h511fa15d352bfa8dE"(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24), i32*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<char>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h5e16175f2fe27a04E"(%"5.alloc::raw_vec::RawVec<char>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i32* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<char>" %6, %"2.std::ptr::Unique<char>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h5c4736e5df82872fE"(%"3.std::vec::Vec<i16>"* noalias nocapture sret dereferenceable(24), i16*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<i16>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h1066843fb36db9e8E"(%"5.alloc::raw_vec::RawVec<i16>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i16* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<i16>" %6, %"2.std::ptr::Unique<i16>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17h63f5c2c6d639eb69E"(%"3.std::vec::Vec<u64>"* noalias nocapture sret dereferenceable(24), i64*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<u64>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h8cba2d0c38560782E"(%"5.alloc::raw_vec::RawVec<u64>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i64* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<u64>", %"2.std::ptr::Unique<u64>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<u64>", %"3.std::vec::Vec<u64>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<u64>" %6, %"2.std::ptr::Unique<u64>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<u64>", %"3.std::vec::Vec<u64>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17hbeb15bbe76010a6bE"(%"3.std::vec::Vec<isize>"* noalias nocapture sret dereferenceable(24), i64*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<isize>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h97b9fb569f6302feE"(%"5.alloc::raw_vec::RawVec<isize>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i64* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<isize>" %6, %"2.std::ptr::Unique<isize>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17hddbc17ae541ffe1bE"(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24), i8*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<u8>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h71185383ff142b10E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i8* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<u8>" %6, %"2.std::ptr::Unique<u8>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17hf28fb389cc355196E"(%"3.std::vec::Vec<i64>"* noalias nocapture sret dereferenceable(24), i64*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<i64>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17he21eea026b14b70dE"(%"5.alloc::raw_vec::RawVec<i64>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i64* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<i64>" %6, %"2.std::ptr::Unique<i64>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$14from_raw_parts17hfbc651ef6c72000fE"(%"3.std::vec::Vec<i32>"* noalias nocapture sret dereferenceable(24), i32*, i64, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<i32>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h0cfc2daee4fcd83fE"(%"5.alloc::raw_vec::RawVec<i32>"* noalias nocapture sret dereferenceable(16) %tmp_ret, i32* %1, i64 %3)
%4 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %tmp_ret, i32 0, i32 0
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %tmp_ret, i32 0, i32 1
%6 = load %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %4
%7 = load i64, i64* %5
br label %bb1
bb1: ; preds = %start
%8 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 0
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %8, i32 0, i32 0
store %"2.std::ptr::Unique<i32>" %6, %"2.std::ptr::Unique<i32>"* %9
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %8, i32 0, i32 1
store i64 %7, i64* %10
%11 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 1
store i64 %2, i64* %11
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$16extend_desugared17h2ee9c2a5c73f935dE"(%"3.std::vec::Vec<char>"* dereferenceable(24), %"2.std::iter::Cloned<std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>>"* noalias nocapture dereferenceable(40)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%iterator = alloca %"2.std::iter::Cloned<std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>>"
%_5 = alloca {}
%_6 = alloca %"2.std::option::Option<char>"
%_11 = alloca {}
%_17 = alloca { i64, %"2.std::option::Option<usize>" }
%_37 = alloca i8
%_38 = alloca i8
%personalityslot = alloca { i8*, i32 }
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_37
store i8 0, i8* %_38
%2 = bitcast %"2.std::iter::Cloned<std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>>"* %1 to i8*
%3 = bitcast %"2.std::iter::Cloned<std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>>"* %iterator to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 40, i32 8, i1 false)
br label %bb1
bb1: ; preds = %bb21, %start
%4 = invoke i64 @"_ZN78_$LT$core..iter..Cloned$LT$I$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h11a673e42c2d1e6bE"(%"2.std::iter::Cloned<std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>>"* dereferenceable(40) %iterator)
to label %bb4 unwind label %cleanup
bb2: ; preds = %bb3
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb3: ; preds = %bb23, %bb25, %bb24, %cleanup
br label %bb2
bb4: ; preds = %bb1
store i64 %4, i64* %abi_cast
%6 = bitcast %"2.std::option::Option<char>"* %_6 to i8*
%7 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %7, i64 8, i32 4, i1 false)
store i8 1, i8* %_37
%8 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%9 = load i32, i32* %8, !range !3
switch i32 %9, label %unreachable [
i32 0, label %bb6
i32 1, label %bb7
]
bb5: ; preds = %bb26, %bb27
%10 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%11 = load i32, i32* %10, !range !3
switch i32 %11, label %unreachable [
i32 0, label %bb23
i32 1, label %bb24
]
bb6: ; preds = %bb4
store i8 0, i8* %_37
br label %bb20
bb7: ; preds = %bb4
store i8 0, i8* %_37
store i8 1, i8* %_38
%12 = bitcast %"2.std::option::Option<char>"* %_6 to { i32, i32 }*
%13 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %12, i32 0, i32 1
%14 = load i32, i32* %13, !range !4
%15 = invoke i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h035e0aa9593e8689E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
to label %bb8 unwind label %cleanup1
bb8: ; preds = %bb7
%16 = invoke i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$8capacity17h979fb7723220cee1E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
to label %bb9 unwind label %cleanup1
bb9: ; preds = %bb8
%17 = icmp eq i64 %15, %16
br i1 %17, label %bb10, label %bb11
bb10: ; preds = %bb9
invoke void @"_ZN78_$LT$core..iter..Cloned$LT$I$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h150a1b33046c9d3fE"({ i64, %"2.std::option::Option<usize>" }* noalias nocapture sret dereferenceable(24) %_17, %"2.std::iter::Cloned<std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>>"* noalias readonly dereferenceable(40) %iterator)
to label %bb12 unwind label %cleanup1
bb11: ; preds = %bb9
br label %bb15
bb12: ; preds = %bb10
%18 = getelementptr inbounds { i64, %"2.std::option::Option<usize>" }, { i64, %"2.std::option::Option<usize>" }* %_17, i32 0, i32 0
%19 = load i64, i64* %18
%20 = invoke i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$14saturating_add17hf7f8d5b3cb46dec7E"(i64 %19, i64 1)
to label %bb13 unwind label %cleanup1
bb13: ; preds = %bb12
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7reserve17h695f38036a6c205eE"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0, i64 %20)
to label %bb14 unwind label %cleanup1
bb14: ; preds = %bb13
br label %bb15
bb15: ; preds = %bb14, %bb11
%21 = invoke { i32*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17hd5c04d421887bb96E"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0)
to label %bb16 unwind label %cleanup1
bb16: ; preds = %bb15
%22 = extractvalue { i32*, i64 } %21, 0
%23 = extractvalue { i32*, i64 } %21, 1
%24 = invoke dereferenceable(4) i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$17get_unchecked_mut17h12c03b1bfbe4e7d5E"(i32* nonnull %22, i64 %23, i64 %15)
to label %bb17 unwind label %cleanup1
bb17: ; preds = %bb16
store i8 0, i8* %_38
invoke void @_ZN4core3ptr5write17h1d16657315d0229bE(i32* %24, i32 %14)
to label %bb18 unwind label %cleanup1
bb18: ; preds = %bb17
%25 = add i64 %15, 1
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7set_len17h6c28ed0b8a09e18dE"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0, i64 %25)
to label %bb19 unwind label %cleanup1
bb19: ; preds = %bb18
%26 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%27 = load i32, i32* %26, !range !3
switch i32 %27, label %unreachable [
i32 0, label %bb28
i32 1, label %bb21
]
bb20: ; preds = %bb6
br label %bb22
bb21: ; preds = %bb28, %bb19
br label %bb1
bb22: ; preds = %bb20
ret void
bb23: ; preds = %bb5
br label %bb3
bb24: ; preds = %bb5
%28 = load i8, i8* %_37, !range !1
%29 = trunc i8 %28 to i1
br i1 %29, label %bb25, label %bb3
bb25: ; preds = %bb24
store i8 0, i8* %_37
br label %bb3
bb26: ; preds = %bb27
store i8 0, i8* %_38
br label %bb5
bb27: ; preds = %cleanup1
%30 = load i8, i8* %_38, !range !1
%31 = trunc i8 %30 to i1
br i1 %31, label %bb26, label %bb5
bb28: ; preds = %bb19
br label %bb21
cleanup: ; preds = %bb1
%32 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %32, { i8*, i32 }* %personalityslot
br label %bb3
unreachable: ; preds = %bb19, %bb5, %bb4
unreachable
cleanup1: ; preds = %bb18, %bb17, %bb16, %bb15, %bb13, %bb12, %bb10, %bb8, %bb7
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb27
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$16extend_desugared17h37bb07af7078a93aE"(%"3.std::vec::Vec<char>"* dereferenceable(24), %"2.std::iter::Chain<std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>, std::iter::Cloned<std::slice::Iter<char>>>"* noalias nocapture dereferenceable(56)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%iterator = alloca %"2.std::iter::Chain<std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>, std::iter::Cloned<std::slice::Iter<char>>>"
%_5 = alloca {}
%_6 = alloca %"2.std::option::Option<char>"
%_11 = alloca {}
%_17 = alloca { i64, %"2.std::option::Option<usize>" }
%_37 = alloca i8
%_38 = alloca i8
%personalityslot = alloca { i8*, i32 }
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_37
store i8 0, i8* %_38
%2 = bitcast %"2.std::iter::Chain<std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>, std::iter::Cloned<std::slice::Iter<char>>>"* %1 to i8*
%3 = bitcast %"2.std::iter::Chain<std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>, std::iter::Cloned<std::slice::Iter<char>>>"* %iterator to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 56, i32 8, i1 false)
br label %bb1
bb1: ; preds = %bb21, %start
%4 = invoke i64 @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h61fbc98cdb7acceeE"(%"2.std::iter::Chain<std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>, std::iter::Cloned<std::slice::Iter<char>>>"* dereferenceable(56) %iterator)
to label %bb4 unwind label %cleanup
bb2: ; preds = %bb3
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb3: ; preds = %bb23, %bb25, %bb24, %cleanup
br label %bb2
bb4: ; preds = %bb1
store i64 %4, i64* %abi_cast
%6 = bitcast %"2.std::option::Option<char>"* %_6 to i8*
%7 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %7, i64 8, i32 4, i1 false)
store i8 1, i8* %_37
%8 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%9 = load i32, i32* %8, !range !3
switch i32 %9, label %unreachable [
i32 0, label %bb6
i32 1, label %bb7
]
bb5: ; preds = %bb26, %bb27
%10 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%11 = load i32, i32* %10, !range !3
switch i32 %11, label %unreachable [
i32 0, label %bb23
i32 1, label %bb24
]
bb6: ; preds = %bb4
store i8 0, i8* %_37
br label %bb20
bb7: ; preds = %bb4
store i8 0, i8* %_37
store i8 1, i8* %_38
%12 = bitcast %"2.std::option::Option<char>"* %_6 to { i32, i32 }*
%13 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %12, i32 0, i32 1
%14 = load i32, i32* %13, !range !4
%15 = invoke i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h035e0aa9593e8689E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
to label %bb8 unwind label %cleanup1
bb8: ; preds = %bb7
%16 = invoke i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$8capacity17h979fb7723220cee1E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
to label %bb9 unwind label %cleanup1
bb9: ; preds = %bb8
%17 = icmp eq i64 %15, %16
br i1 %17, label %bb10, label %bb11
bb10: ; preds = %bb9
invoke void @"_ZN86_$LT$core..iter..Chain$LT$A$C$$u20$B$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17ha5a77b971dc31bcbE"({ i64, %"2.std::option::Option<usize>" }* noalias nocapture sret dereferenceable(24) %_17, %"2.std::iter::Chain<std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>, std::iter::Cloned<std::slice::Iter<char>>>"* noalias readonly dereferenceable(56) %iterator)
to label %bb12 unwind label %cleanup1
bb11: ; preds = %bb9
br label %bb15
bb12: ; preds = %bb10
%18 = getelementptr inbounds { i64, %"2.std::option::Option<usize>" }, { i64, %"2.std::option::Option<usize>" }* %_17, i32 0, i32 0
%19 = load i64, i64* %18
%20 = invoke i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$14saturating_add17hf7f8d5b3cb46dec7E"(i64 %19, i64 1)
to label %bb13 unwind label %cleanup1
bb13: ; preds = %bb12
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7reserve17h695f38036a6c205eE"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0, i64 %20)
to label %bb14 unwind label %cleanup1
bb14: ; preds = %bb13
br label %bb15
bb15: ; preds = %bb14, %bb11
%21 = invoke { i32*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17hd5c04d421887bb96E"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0)
to label %bb16 unwind label %cleanup1
bb16: ; preds = %bb15
%22 = extractvalue { i32*, i64 } %21, 0
%23 = extractvalue { i32*, i64 } %21, 1
%24 = invoke dereferenceable(4) i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$17get_unchecked_mut17h12c03b1bfbe4e7d5E"(i32* nonnull %22, i64 %23, i64 %15)
to label %bb17 unwind label %cleanup1
bb17: ; preds = %bb16
store i8 0, i8* %_38
invoke void @_ZN4core3ptr5write17h1d16657315d0229bE(i32* %24, i32 %14)
to label %bb18 unwind label %cleanup1
bb18: ; preds = %bb17
%25 = add i64 %15, 1
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7set_len17h6c28ed0b8a09e18dE"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0, i64 %25)
to label %bb19 unwind label %cleanup1
bb19: ; preds = %bb18
%26 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%27 = load i32, i32* %26, !range !3
switch i32 %27, label %unreachable [
i32 0, label %bb28
i32 1, label %bb21
]
bb20: ; preds = %bb6
br label %bb22
bb21: ; preds = %bb28, %bb19
br label %bb1
bb22: ; preds = %bb20
ret void
bb23: ; preds = %bb5
br label %bb3
bb24: ; preds = %bb5
%28 = load i8, i8* %_37, !range !1
%29 = trunc i8 %28 to i1
br i1 %29, label %bb25, label %bb3
bb25: ; preds = %bb24
store i8 0, i8* %_37
br label %bb3
bb26: ; preds = %bb27
store i8 0, i8* %_38
br label %bb5
bb27: ; preds = %cleanup1
%30 = load i8, i8* %_38, !range !1
%31 = trunc i8 %30 to i1
br i1 %31, label %bb26, label %bb5
bb28: ; preds = %bb19
br label %bb21
cleanup: ; preds = %bb1
%32 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %32, { i8*, i32 }* %personalityslot
br label %bb3
unreachable: ; preds = %bb19, %bb5, %bb4
unreachable
cleanup1: ; preds = %bb18, %bb17, %bb16, %bb15, %bb13, %bb12, %bb10, %bb8, %bb7
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb27
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$16extend_desugared17hbc29fcf51e960588E"(%"3.std::vec::Vec<char>"* dereferenceable(24), %"2.std::str::Chars"* noalias nocapture dereferenceable(16)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%iterator = alloca %"2.std::str::Chars"
%_5 = alloca {}
%_6 = alloca %"2.std::option::Option<char>"
%_11 = alloca {}
%_17 = alloca { i64, %"2.std::option::Option<usize>" }
%_37 = alloca i8
%_38 = alloca i8
%personalityslot = alloca { i8*, i32 }
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_37
store i8 0, i8* %_38
%2 = bitcast %"2.std::str::Chars"* %1 to i8*
%3 = bitcast %"2.std::str::Chars"* %iterator to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 16, i32 8, i1 false)
br label %bb1
bb1: ; preds = %bb21, %start
%4 = invoke i64 @"_ZN81_$LT$core..str..Chars$LT$$u27$a$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hed6f0d4cea2f5e58E"(%"2.std::str::Chars"* dereferenceable(16) %iterator)
to label %bb4 unwind label %cleanup
bb2: ; preds = %bb3
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb3: ; preds = %bb23, %bb25, %bb24, %cleanup
br label %bb2
bb4: ; preds = %bb1
store i64 %4, i64* %abi_cast
%6 = bitcast %"2.std::option::Option<char>"* %_6 to i8*
%7 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %7, i64 8, i32 4, i1 false)
store i8 1, i8* %_37
%8 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%9 = load i32, i32* %8, !range !3
switch i32 %9, label %unreachable [
i32 0, label %bb6
i32 1, label %bb7
]
bb5: ; preds = %bb26, %bb27
%10 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%11 = load i32, i32* %10, !range !3
switch i32 %11, label %unreachable [
i32 0, label %bb23
i32 1, label %bb24
]
bb6: ; preds = %bb4
store i8 0, i8* %_37
br label %bb20
bb7: ; preds = %bb4
store i8 0, i8* %_37
store i8 1, i8* %_38
%12 = bitcast %"2.std::option::Option<char>"* %_6 to { i32, i32 }*
%13 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %12, i32 0, i32 1
%14 = load i32, i32* %13, !range !4
%15 = invoke i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h035e0aa9593e8689E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
to label %bb8 unwind label %cleanup1
bb8: ; preds = %bb7
%16 = invoke i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$8capacity17h979fb7723220cee1E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
to label %bb9 unwind label %cleanup1
bb9: ; preds = %bb8
%17 = icmp eq i64 %15, %16
br i1 %17, label %bb10, label %bb11
bb10: ; preds = %bb9
invoke void @"_ZN81_$LT$core..str..Chars$LT$$u27$a$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17hf7a67fc0e39442bfE"({ i64, %"2.std::option::Option<usize>" }* noalias nocapture sret dereferenceable(24) %_17, %"2.std::str::Chars"* noalias readonly dereferenceable(16) %iterator)
to label %bb12 unwind label %cleanup1
bb11: ; preds = %bb9
br label %bb15
bb12: ; preds = %bb10
%18 = getelementptr inbounds { i64, %"2.std::option::Option<usize>" }, { i64, %"2.std::option::Option<usize>" }* %_17, i32 0, i32 0
%19 = load i64, i64* %18
%20 = invoke i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$14saturating_add17hf7f8d5b3cb46dec7E"(i64 %19, i64 1)
to label %bb13 unwind label %cleanup1
bb13: ; preds = %bb12
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7reserve17h695f38036a6c205eE"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0, i64 %20)
to label %bb14 unwind label %cleanup1
bb14: ; preds = %bb13
br label %bb15
bb15: ; preds = %bb14, %bb11
%21 = invoke { i32*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17hd5c04d421887bb96E"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0)
to label %bb16 unwind label %cleanup1
bb16: ; preds = %bb15
%22 = extractvalue { i32*, i64 } %21, 0
%23 = extractvalue { i32*, i64 } %21, 1
%24 = invoke dereferenceable(4) i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$17get_unchecked_mut17h12c03b1bfbe4e7d5E"(i32* nonnull %22, i64 %23, i64 %15)
to label %bb17 unwind label %cleanup1
bb17: ; preds = %bb16
store i8 0, i8* %_38
invoke void @_ZN4core3ptr5write17h1d16657315d0229bE(i32* %24, i32 %14)
to label %bb18 unwind label %cleanup1
bb18: ; preds = %bb17
%25 = add i64 %15, 1
invoke void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7set_len17h6c28ed0b8a09e18dE"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0, i64 %25)
to label %bb19 unwind label %cleanup1
bb19: ; preds = %bb18
%26 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_6, i32 0, i32 0
%27 = load i32, i32* %26, !range !3
switch i32 %27, label %unreachable [
i32 0, label %bb28
i32 1, label %bb21
]
bb20: ; preds = %bb6
br label %bb22
bb21: ; preds = %bb28, %bb19
br label %bb1
bb22: ; preds = %bb20
ret void
bb23: ; preds = %bb5
br label %bb3
bb24: ; preds = %bb5
%28 = load i8, i8* %_37, !range !1
%29 = trunc i8 %28 to i1
br i1 %29, label %bb25, label %bb3
bb25: ; preds = %bb24
store i8 0, i8* %_37
br label %bb3
bb26: ; preds = %bb27
store i8 0, i8* %_38
br label %bb5
bb27: ; preds = %cleanup1
%30 = load i8, i8* %_38, !range !1
%31 = trunc i8 %30 to i1
br i1 %31, label %bb26, label %bb5
bb28: ; preds = %bb19
br label %bb21
cleanup: ; preds = %bb1
%32 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %32, { i8*, i32 }* %personalityslot
br label %bb3
unreachable: ; preds = %bb19, %bb5, %bb4
unreachable
cleanup1: ; preds = %bb18, %bb17, %bb16, %bb15, %bb13, %bb12, %bb10, %bb8, %bb7
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb27
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$17extend_from_slice17h5de3070332ef920eE"(%"3.std::vec::Vec<char>"* dereferenceable(24), i32* noalias nonnull readonly, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%local_len = alloca %"3.std::vec::SetLenOnDrop"
%_19 = alloca {}
%_result = alloca {}
%_24 = alloca %"2.std::ops::Range<usize>"
%iter = alloca %"2.std::ops::Range<usize>"
%_29 = alloca %"2.std::option::Option<usize>"
%_47 = alloca i8
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"2.std::ops::Range<usize>"
%arg = alloca %"2.std::ops::Range<usize>"
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_47
%3 = call i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h9298345b09d787d7E"(i32* noalias nonnull readonly %1, i64 %2)
br label %bb1
bb1: ; preds = %start
call void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7reserve17h695f38036a6c205eE"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0, i64 %3)
br label %bb2
bb2: ; preds = %bb1
%4 = call i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h035e0aa9593e8689E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24) %0)
br label %bb3
bb3: ; preds = %bb2
%5 = call { i32*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17hd5c04d421887bb96E"(%"3.std::vec::Vec<char>"* dereferenceable(24) %0)
%6 = extractvalue { i32*, i64 } %5, 0
%7 = extractvalue { i32*, i64 } %5, 1
br label %bb4
bb4: ; preds = %bb3
%8 = call dereferenceable(4) i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$17get_unchecked_mut17h12c03b1bfbe4e7d5E"(i32* nonnull %6, i64 %7, i64 %4)
br label %bb5
bb5: ; preds = %bb4
%9 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 1
invoke void @_ZN11collections3vec12SetLenOnDrop3new17heac3fbcea17ecb0eE(%"3.std::vec::SetLenOnDrop"* noalias nocapture sret dereferenceable(16) %local_len, i64* dereferenceable(8) %9)
to label %bb7 unwind label %cleanup
bb6: ; preds = %cleanup1, %bb20, %bb21
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb7: ; preds = %bb5
store i8 1, i8* %_47
%11 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17h9298345b09d787d7E"(i32* noalias nonnull readonly %1, i64 %2)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
%12 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %_24, i32 0, i32 0
store i64 0, i64* %12
%13 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %_24, i32 0, i32 1
store i64 %11, i64* %13
%14 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %_24, i32 0, i32 0
%15 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %_24, i32 0, i32 1
%16 = load i64, i64* %14
%17 = load i64, i64* %15
%18 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %arg, i32 0, i32 0
store i64 %16, i64* %18
%19 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %arg, i32 0, i32 1
store i64 %17, i64* %19
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h8f791c137633a413E"(%"2.std::ops::Range<usize>"* noalias nocapture sret dereferenceable(16) %tmp_ret, %"2.std::ops::Range<usize>"* noalias nocapture dereferenceable(16) %arg)
to label %bb9 unwind label %cleanup
bb9: ; preds = %bb8
%20 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %tmp_ret, i32 0, i32 0
%21 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %tmp_ret, i32 0, i32 1
%22 = load i64, i64* %20
%23 = load i64, i64* %21
%24 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %iter, i32 0, i32 0
store i64 %22, i64* %24
%25 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %iter, i32 0, i32 1
store i64 %23, i64* %25
br label %bb10
bb10: ; preds = %bb18, %bb9
invoke void @"_ZN4core4iter5range86_$LT$impl$u20$core..iter..iterator..Iterator$u20$for$u20$core..ops..Range$LT$A$GT$$GT$4next17hd54de0ea2633a5fbE"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_29, %"2.std::ops::Range<usize>"* dereferenceable(16) %iter)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%26 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_29, i32 0, i32 0
%27 = load i64, i64* %26, !range !2
switch i64 %27, label %unreachable [
i64 0, label %bb12
i64 1, label %bb13
]
bb12: ; preds = %bb11
store i8 0, i8* %_47
invoke void @_ZN4drop17h544ee22cc32bea1fE(%"3.std::vec::SetLenOnDrop"* %local_len)
to label %bb19 unwind label %cleanup1
bb13: ; preds = %bb11
%28 = bitcast %"2.std::option::Option<usize>"* %_29 to { i64, i64 }*
%29 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %28, i32 0, i32 1
%30 = load i64, i64* %29
%31 = invoke i32* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h955a05504e766796E"(i32* %8, i64 %30)
to label %bb14 unwind label %cleanup
bb14: ; preds = %bb13
%32 = invoke dereferenceable(4) i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$13get_unchecked17h6792dd39417f7392E"(i32* noalias nonnull readonly %1, i64 %2, i64 %30)
to label %bb15 unwind label %cleanup
bb15: ; preds = %bb14
%33 = invoke i32 @"_ZN43_$LT$char$u20$as$u20$core..clone..Clone$GT$5clone17h528d4337ea69804eE"(i32* noalias readonly dereferenceable(4) %32)
to label %bb16 unwind label %cleanup
bb16: ; preds = %bb15
invoke void @_ZN4core3ptr5write17h1d16657315d0229bE(i32* %31, i32 %33)
to label %bb17 unwind label %cleanup
bb17: ; preds = %bb16
invoke void @_ZN11collections3vec12SetLenOnDrop13increment_len17h4311f6ac9557fc9eE(%"3.std::vec::SetLenOnDrop"* dereferenceable(16) %local_len, i64 1)
to label %bb18 unwind label %cleanup
bb18: ; preds = %bb17
br label %bb10
bb19: ; preds = %bb12
ret void
bb20: ; preds = %bb21
store i8 0, i8* %_47
call void @_ZN4drop17h544ee22cc32bea1fE(%"3.std::vec::SetLenOnDrop"* %local_len)
br label %bb6
bb21: ; preds = %cleanup
%34 = load i8, i8* %_47, !range !1
%35 = trunc i8 %34 to i1
br i1 %35, label %bb20, label %bb6
cleanup: ; preds = %bb17, %bb16, %bb15, %bb14, %bb13, %bb10, %bb8, %bb7, %bb5
%36 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %36, { i8*, i32 }* %personalityslot
br label %bb21
unreachable: ; preds = %bb11
unreachable
cleanup1: ; preds = %bb12
%37 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %37, { i8*, i32 }* %personalityslot
br label %bb6
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$17extend_from_slice17h620ddd6c0cca2cbdE"(%"3.std::vec::Vec<u8>"* dereferenceable(24), i8* noalias nonnull readonly, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%local_len = alloca %"3.std::vec::SetLenOnDrop"
%_19 = alloca {}
%_result = alloca {}
%_24 = alloca %"2.std::ops::Range<usize>"
%iter = alloca %"2.std::ops::Range<usize>"
%_29 = alloca %"2.std::option::Option<usize>"
%_47 = alloca i8
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"2.std::ops::Range<usize>"
%arg = alloca %"2.std::ops::Range<usize>"
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_47
%3 = call i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hb36a1d40f34ad1adE"(i8* noalias nonnull readonly %1, i64 %2)
br label %bb1
bb1: ; preds = %start
call void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7reserve17hc9dd30d68dc1c152E"(%"3.std::vec::Vec<u8>"* dereferenceable(24) %0, i64 %3)
br label %bb2
bb2: ; preds = %bb1
%4 = call i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17habd23e084672fa75E"(%"3.std::vec::Vec<u8>"* noalias readonly dereferenceable(24) %0)
br label %bb3
bb3: ; preds = %bb2
%5 = call { i8*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17h391fefd0ba9e4ca6E"(%"3.std::vec::Vec<u8>"* dereferenceable(24) %0)
%6 = extractvalue { i8*, i64 } %5, 0
%7 = extractvalue { i8*, i64 } %5, 1
br label %bb4
bb4: ; preds = %bb3
%8 = call dereferenceable(1) i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$17get_unchecked_mut17h3f0dec373034dfdeE"(i8* nonnull %6, i64 %7, i64 %4)
br label %bb5
bb5: ; preds = %bb4
%9 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
invoke void @_ZN11collections3vec12SetLenOnDrop3new17heac3fbcea17ecb0eE(%"3.std::vec::SetLenOnDrop"* noalias nocapture sret dereferenceable(16) %local_len, i64* dereferenceable(8) %9)
to label %bb7 unwind label %cleanup
bb6: ; preds = %cleanup1, %bb20, %bb21
%10 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %10
bb7: ; preds = %bb5
store i8 1, i8* %_47
%11 = invoke i64 @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$3len17hb36a1d40f34ad1adE"(i8* noalias nonnull readonly %1, i64 %2)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
%12 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %_24, i32 0, i32 0
store i64 0, i64* %12
%13 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %_24, i32 0, i32 1
store i64 %11, i64* %13
%14 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %_24, i32 0, i32 0
%15 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %_24, i32 0, i32 1
%16 = load i64, i64* %14
%17 = load i64, i64* %15
%18 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %arg, i32 0, i32 0
store i64 %16, i64* %18
%19 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %arg, i32 0, i32 1
store i64 %17, i64* %19
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h8f791c137633a413E"(%"2.std::ops::Range<usize>"* noalias nocapture sret dereferenceable(16) %tmp_ret, %"2.std::ops::Range<usize>"* noalias nocapture dereferenceable(16) %arg)
to label %bb9 unwind label %cleanup
bb9: ; preds = %bb8
%20 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %tmp_ret, i32 0, i32 0
%21 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %tmp_ret, i32 0, i32 1
%22 = load i64, i64* %20
%23 = load i64, i64* %21
%24 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %iter, i32 0, i32 0
store i64 %22, i64* %24
%25 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %iter, i32 0, i32 1
store i64 %23, i64* %25
br label %bb10
bb10: ; preds = %bb18, %bb9
invoke void @"_ZN4core4iter5range86_$LT$impl$u20$core..iter..iterator..Iterator$u20$for$u20$core..ops..Range$LT$A$GT$$GT$4next17hd54de0ea2633a5fbE"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_29, %"2.std::ops::Range<usize>"* dereferenceable(16) %iter)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%26 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_29, i32 0, i32 0
%27 = load i64, i64* %26, !range !2
switch i64 %27, label %unreachable [
i64 0, label %bb12
i64 1, label %bb13
]
bb12: ; preds = %bb11
store i8 0, i8* %_47
invoke void @_ZN4drop17h544ee22cc32bea1fE(%"3.std::vec::SetLenOnDrop"* %local_len)
to label %bb19 unwind label %cleanup1
bb13: ; preds = %bb11
%28 = bitcast %"2.std::option::Option<usize>"* %_29 to { i64, i64 }*
%29 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %28, i32 0, i32 1
%30 = load i64, i64* %29
%31 = invoke i8* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17he4e4977e42aef48cE"(i8* %8, i64 %30)
to label %bb14 unwind label %cleanup
bb14: ; preds = %bb13
%32 = invoke dereferenceable(1) i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$13get_unchecked17hcfff7a6cc4533209E"(i8* noalias nonnull readonly %1, i64 %2, i64 %30)
to label %bb15 unwind label %cleanup
bb15: ; preds = %bb14
%33 = invoke i8 @"_ZN41_$LT$u8$u20$as$u20$core..clone..Clone$GT$5clone17h0cb281fc991f0b72E"(i8* noalias readonly dereferenceable(1) %32)
to label %bb16 unwind label %cleanup
bb16: ; preds = %bb15
invoke void @_ZN4core3ptr5write17h7c997ec71f395badE(i8* %31, i8 %33)
to label %bb17 unwind label %cleanup
bb17: ; preds = %bb16
invoke void @_ZN11collections3vec12SetLenOnDrop13increment_len17h4311f6ac9557fc9eE(%"3.std::vec::SetLenOnDrop"* dereferenceable(16) %local_len, i64 1)
to label %bb18 unwind label %cleanup
bb18: ; preds = %bb17
br label %bb10
bb19: ; preds = %bb12
ret void
bb20: ; preds = %bb21
store i8 0, i8* %_47
call void @_ZN4drop17h544ee22cc32bea1fE(%"3.std::vec::SetLenOnDrop"* %local_len)
br label %bb6
bb21: ; preds = %cleanup
%34 = load i8, i8* %_47, !range !1
%35 = trunc i8 %34 to i1
br i1 %35, label %bb20, label %bb6
cleanup: ; preds = %bb17, %bb16, %bb15, %bb14, %bb13, %bb10, %bb8, %bb7, %bb5
%36 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %36, { i8*, i32 }* %personalityslot
br label %bb21
unreachable: ; preds = %bb11
unreachable
cleanup1: ; preds = %bb12
%37 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %37, { i8*, i32 }* %personalityslot
br label %bb6
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h035e0aa9593e8689E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h2573ae4a5286c517E"(%"3.std::vec::Vec<i64>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h4074dda6dbdbabcaE"(%"3.std::vec::Vec<i16>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h42eea360cf6daa18E"(%"3.std::vec::Vec<u16>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<u16>", %"3.std::vec::Vec<u16>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h4438e0fb5dfc7749E"(%"3.std::vec::Vec<isize>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h4a578541fcc02fa3E"(%"3.std::vec::Vec<i8>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h4ffc3bf29293fa9cE"(%"3.std::vec::Vec<i32>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17h64d1cf1f54ea78a6E"(%"3.std::vec::Vec<u64>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<u64>", %"3.std::vec::Vec<u64>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17habd23e084672fa75E"(%"3.std::vec::Vec<u8>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17hac1f18735f094228E"(%"3.std::vec::Vec<usize>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<usize>", %"3.std::vec::Vec<usize>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3len17hdb5adeccab97277fE"(%"3.std::vec::Vec<u32>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<u32>", %"3.std::vec::Vec<u32>"* %0, i32 0, i32 1
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3new17hb0fd9c3ae7241fe6E"(%"3.std::vec::Vec<u8>"* noalias nocapture sret dereferenceable(24)) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<u8>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3new17h0ea0884b82a46c86E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias nocapture sret dereferenceable(16) %tmp_ret)
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %tmp_ret, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %tmp_ret, i32 0, i32 1
%3 = load %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %1
%4 = load i64, i64* %2
br label %bb1
bb1: ; preds = %start
%5 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 0
%6 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %5, i32 0, i32 0
store %"2.std::ptr::Unique<u8>" %3, %"2.std::ptr::Unique<u8>"* %6
%7 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %5, i32 0, i32 1
store i64 %4, i64* %7
%8 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
store i64 0, i64* %8
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$3new17hd26eb0a92741202bE"(%"3.std::vec::Vec<char>"* noalias nocapture sret dereferenceable(24)) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca %"5.alloc::raw_vec::RawVec<char>"
br label %start
start: ; preds = %entry-block
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3new17h04d31363361053b0E"(%"5.alloc::raw_vec::RawVec<char>"* noalias nocapture sret dereferenceable(16) %tmp_ret)
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %tmp_ret, i32 0, i32 0
%2 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %tmp_ret, i32 0, i32 1
%3 = load %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %1
%4 = load i64, i64* %2
br label %bb1
bb1: ; preds = %start
%5 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 0
%6 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %5, i32 0, i32 0
store %"2.std::ptr::Unique<char>" %3, %"2.std::ptr::Unique<char>"* %6
%7 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %5, i32 0, i32 1
store i64 %4, i64* %7
%8 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 1
store i64 0, i64* %8
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$4push17h18a29f97072d0f4eE"(%"3.std::vec::Vec<i16>"* dereferenceable(24), i16) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%_5 = alloca {}
%_23 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_23
store i8 1, i8* %_23
%2 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 1
%3 = load i64, i64* %2
%4 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 0
%5 = invoke i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h1350f911c96c4b37E"(%"5.alloc::raw_vec::RawVec<i16>"* noalias readonly dereferenceable(16) %4)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb13, %bb2
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %cleanup
%7 = load i8, i8* %_23, !range !1
%8 = trunc i8 %7 to i1
br i1 %8, label %bb13, label %bb1
bb3: ; preds = %start
%9 = icmp eq i64 %3, %5
br i1 %9, label %bb4, label %bb5
bb4: ; preds = %bb3
%10 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 0
invoke void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17hf8e921f43b7d7192E"(%"5.alloc::raw_vec::RawVec<i16>"* dereferenceable(16) %10)
to label %bb6 unwind label %cleanup
bb5: ; preds = %bb3
br label %bb7
bb6: ; preds = %bb4
br label %bb7
bb7: ; preds = %bb6, %bb5
%11 = invoke { i16*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17hd347b05623e8ac80E"(%"3.std::vec::Vec<i16>"* dereferenceable(24) %0)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
%12 = extractvalue { i16*, i64 } %11, 0
%13 = extractvalue { i16*, i64 } %11, 1
%14 = invoke i16* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h6460e90063ebdfd6E"(i16* nonnull %12, i64 %13)
to label %bb9 unwind label %cleanup
bb9: ; preds = %bb8
%15 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 1
%16 = load i64, i64* %15
%17 = invoke i16* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h8cd098a059201ccbE"(i16* %14, i64 %16)
to label %bb10 unwind label %cleanup
bb10: ; preds = %bb9
store i8 0, i8* %_23
invoke void @_ZN4core3ptr5write17he9f37c67689b0e9eE(i16* %17, i16 %1)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%18 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 1
%19 = getelementptr inbounds %"3.std::vec::Vec<i16>", %"3.std::vec::Vec<i16>"* %0, i32 0, i32 1
%20 = load i64, i64* %19
%21 = add i64 %20, 1
store i64 %21, i64* %18
br label %bb12
bb12: ; preds = %bb11
ret void
bb13: ; preds = %bb2
store i8 0, i8* %_23
br label %bb1
cleanup: ; preds = %bb10, %bb9, %bb8, %bb7, %bb4, %start
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$4push17h27f75ab2d485b7c0E"(%"3.std::vec::Vec<isize>"* dereferenceable(24), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%_5 = alloca {}
%_23 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_23
store i8 1, i8* %_23
%2 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 1
%3 = load i64, i64* %2
%4 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 0
%5 = invoke i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17hf67e75f7a57093b2E"(%"5.alloc::raw_vec::RawVec<isize>"* noalias readonly dereferenceable(16) %4)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb13, %bb2
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %cleanup
%7 = load i8, i8* %_23, !range !1
%8 = trunc i8 %7 to i1
br i1 %8, label %bb13, label %bb1
bb3: ; preds = %start
%9 = icmp eq i64 %3, %5
br i1 %9, label %bb4, label %bb5
bb4: ; preds = %bb3
%10 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 0
invoke void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17h2d5a63d8c74ac190E"(%"5.alloc::raw_vec::RawVec<isize>"* dereferenceable(16) %10)
to label %bb6 unwind label %cleanup
bb5: ; preds = %bb3
br label %bb7
bb6: ; preds = %bb4
br label %bb7
bb7: ; preds = %bb6, %bb5
%11 = invoke { i64*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17h9b5f1aee548adf47E"(%"3.std::vec::Vec<isize>"* dereferenceable(24) %0)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
%12 = extractvalue { i64*, i64 } %11, 0
%13 = extractvalue { i64*, i64 } %11, 1
%14 = invoke i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17hf3704e8789f9f53eE"(i64* nonnull %12, i64 %13)
to label %bb9 unwind label %cleanup
bb9: ; preds = %bb8
%15 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 1
%16 = load i64, i64* %15
%17 = invoke i64* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h30814b46f68364a8E"(i64* %14, i64 %16)
to label %bb10 unwind label %cleanup
bb10: ; preds = %bb9
store i8 0, i8* %_23
invoke void @_ZN4core3ptr5write17hd2a14514c3b013f6E(i64* %17, i64 %1)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%18 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 1
%19 = getelementptr inbounds %"3.std::vec::Vec<isize>", %"3.std::vec::Vec<isize>"* %0, i32 0, i32 1
%20 = load i64, i64* %19
%21 = add i64 %20, 1
store i64 %21, i64* %18
br label %bb12
bb12: ; preds = %bb11
ret void
bb13: ; preds = %bb2
store i8 0, i8* %_23
br label %bb1
cleanup: ; preds = %bb10, %bb9, %bb8, %bb7, %bb4, %start
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$4push17h8415061280705808E"(%"3.std::vec::Vec<i32>"* dereferenceable(24), i32) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%_5 = alloca {}
%_23 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_23
store i8 1, i8* %_23
%2 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 1
%3 = load i64, i64* %2
%4 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 0
%5 = invoke i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h83474764a257fb45E"(%"5.alloc::raw_vec::RawVec<i32>"* noalias readonly dereferenceable(16) %4)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb13, %bb2
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %cleanup
%7 = load i8, i8* %_23, !range !1
%8 = trunc i8 %7 to i1
br i1 %8, label %bb13, label %bb1
bb3: ; preds = %start
%9 = icmp eq i64 %3, %5
br i1 %9, label %bb4, label %bb5
bb4: ; preds = %bb3
%10 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 0
invoke void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17haa0d6082b389cd0dE"(%"5.alloc::raw_vec::RawVec<i32>"* dereferenceable(16) %10)
to label %bb6 unwind label %cleanup
bb5: ; preds = %bb3
br label %bb7
bb6: ; preds = %bb4
br label %bb7
bb7: ; preds = %bb6, %bb5
%11 = invoke { i32*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17hc9ce470a8dbb7350E"(%"3.std::vec::Vec<i32>"* dereferenceable(24) %0)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
%12 = extractvalue { i32*, i64 } %11, 0
%13 = extractvalue { i32*, i64 } %11, 1
%14 = invoke i32* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h9f053a5507cb79eaE"(i32* nonnull %12, i64 %13)
to label %bb9 unwind label %cleanup
bb9: ; preds = %bb8
%15 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 1
%16 = load i64, i64* %15
%17 = invoke i32* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h8fbf7b56b07459daE"(i32* %14, i64 %16)
to label %bb10 unwind label %cleanup
bb10: ; preds = %bb9
store i8 0, i8* %_23
invoke void @_ZN4core3ptr5write17h5a072b8944c71695E(i32* %17, i32 %1)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%18 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 1
%19 = getelementptr inbounds %"3.std::vec::Vec<i32>", %"3.std::vec::Vec<i32>"* %0, i32 0, i32 1
%20 = load i64, i64* %19
%21 = add i64 %20, 1
store i64 %21, i64* %18
br label %bb12
bb12: ; preds = %bb11
ret void
bb13: ; preds = %bb2
store i8 0, i8* %_23
br label %bb1
cleanup: ; preds = %bb10, %bb9, %bb8, %bb7, %bb4, %start
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$4push17h88e61aa3745f6d56E"(%"3.std::vec::Vec<i8>"* dereferenceable(24), i8) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%_5 = alloca {}
%_23 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_23
store i8 1, i8* %_23
%2 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 1
%3 = load i64, i64* %2
%4 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 0
%5 = invoke i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h2a38006e3b3873e0E"(%"5.alloc::raw_vec::RawVec<i8>"* noalias readonly dereferenceable(16) %4)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb13, %bb2
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %cleanup
%7 = load i8, i8* %_23, !range !1
%8 = trunc i8 %7 to i1
br i1 %8, label %bb13, label %bb1
bb3: ; preds = %start
%9 = icmp eq i64 %3, %5
br i1 %9, label %bb4, label %bb5
bb4: ; preds = %bb3
%10 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 0
invoke void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17h7dff56aa0190f207E"(%"5.alloc::raw_vec::RawVec<i8>"* dereferenceable(16) %10)
to label %bb6 unwind label %cleanup
bb5: ; preds = %bb3
br label %bb7
bb6: ; preds = %bb4
br label %bb7
bb7: ; preds = %bb6, %bb5
%11 = invoke { i8*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17h6d26e48f61255da3E"(%"3.std::vec::Vec<i8>"* dereferenceable(24) %0)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
%12 = extractvalue { i8*, i64 } %11, 0
%13 = extractvalue { i8*, i64 } %11, 1
%14 = invoke i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h4fbadb907151c0f0E"(i8* nonnull %12, i64 %13)
to label %bb9 unwind label %cleanup
bb9: ; preds = %bb8
%15 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 1
%16 = load i64, i64* %15
%17 = invoke i8* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h5535fc2b397efa71E"(i8* %14, i64 %16)
to label %bb10 unwind label %cleanup
bb10: ; preds = %bb9
store i8 0, i8* %_23
invoke void @_ZN4core3ptr5write17h5a6f0c2499fd4567E(i8* %17, i8 %1)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%18 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 1
%19 = getelementptr inbounds %"3.std::vec::Vec<i8>", %"3.std::vec::Vec<i8>"* %0, i32 0, i32 1
%20 = load i64, i64* %19
%21 = add i64 %20, 1
store i64 %21, i64* %18
br label %bb12
bb12: ; preds = %bb11
ret void
bb13: ; preds = %bb2
store i8 0, i8* %_23
br label %bb1
cleanup: ; preds = %bb10, %bb9, %bb8, %bb7, %bb4, %start
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$4push17h8d754fac855da320E"(%"3.std::vec::Vec<i64>"* dereferenceable(24), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%_5 = alloca {}
%_23 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_23
store i8 1, i8* %_23
%2 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 1
%3 = load i64, i64* %2
%4 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 0
%5 = invoke i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17hf8189fcfea9f49bfE"(%"5.alloc::raw_vec::RawVec<i64>"* noalias readonly dereferenceable(16) %4)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb13, %bb2
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %cleanup
%7 = load i8, i8* %_23, !range !1
%8 = trunc i8 %7 to i1
br i1 %8, label %bb13, label %bb1
bb3: ; preds = %start
%9 = icmp eq i64 %3, %5
br i1 %9, label %bb4, label %bb5
bb4: ; preds = %bb3
%10 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 0
invoke void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17h8010d63d1f32d8bdE"(%"5.alloc::raw_vec::RawVec<i64>"* dereferenceable(16) %10)
to label %bb6 unwind label %cleanup
bb5: ; preds = %bb3
br label %bb7
bb6: ; preds = %bb4
br label %bb7
bb7: ; preds = %bb6, %bb5
%11 = invoke { i64*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17hc26b773873f39513E"(%"3.std::vec::Vec<i64>"* dereferenceable(24) %0)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
%12 = extractvalue { i64*, i64 } %11, 0
%13 = extractvalue { i64*, i64 } %11, 1
%14 = invoke i64* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17h71e7765cffd970b6E"(i64* nonnull %12, i64 %13)
to label %bb9 unwind label %cleanup
bb9: ; preds = %bb8
%15 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 1
%16 = load i64, i64* %15
%17 = invoke i64* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h0b1910ec32edc6d3E"(i64* %14, i64 %16)
to label %bb10 unwind label %cleanup
bb10: ; preds = %bb9
store i8 0, i8* %_23
invoke void @_ZN4core3ptr5write17hfe585a39df8a5f8aE(i64* %17, i64 %1)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%18 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 1
%19 = getelementptr inbounds %"3.std::vec::Vec<i64>", %"3.std::vec::Vec<i64>"* %0, i32 0, i32 1
%20 = load i64, i64* %19
%21 = add i64 %20, 1
store i64 %21, i64* %18
br label %bb12
bb12: ; preds = %bb11
ret void
bb13: ; preds = %bb2
store i8 0, i8* %_23
br label %bb1
cleanup: ; preds = %bb10, %bb9, %bb8, %bb7, %bb4, %start
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$4push17hf67ad80bbdf5974aE"(%"3.std::vec::Vec<u8>"* dereferenceable(24), i8) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%_5 = alloca {}
%_23 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_23
store i8 1, i8* %_23
%2 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
%3 = load i64, i64* %2
%4 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 0
%5 = invoke i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h803bda574a9e86b2E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias readonly dereferenceable(16) %4)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb13, %bb2
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %cleanup
%7 = load i8, i8* %_23, !range !1
%8 = trunc i8 %7 to i1
br i1 %8, label %bb13, label %bb1
bb3: ; preds = %start
%9 = icmp eq i64 %3, %5
br i1 %9, label %bb4, label %bb5
bb4: ; preds = %bb3
%10 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 0
invoke void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17h35441a659408ef01E"(%"5.alloc::raw_vec::RawVec<u8>"* dereferenceable(16) %10)
to label %bb6 unwind label %cleanup
bb5: ; preds = %bb3
br label %bb7
bb6: ; preds = %bb4
br label %bb7
bb7: ; preds = %bb6, %bb5
%11 = invoke { i8*, i64 } @"_ZN70_$LT$collections..vec..Vec$LT$T$GT$$u20$as$u20$core..ops..DerefMut$GT$9deref_mut17h391fefd0ba9e4ca6E"(%"3.std::vec::Vec<u8>"* dereferenceable(24) %0)
to label %bb8 unwind label %cleanup
bb8: ; preds = %bb7
%12 = extractvalue { i8*, i64 } %11, 0
%13 = extractvalue { i8*, i64 } %11, 1
%14 = invoke i8* @"_ZN11collections5slice29_$LT$impl$u20$$u5b$T$u5d$$GT$10as_mut_ptr17hc1b537762bd4ebdeE"(i8* nonnull %12, i64 %13)
to label %bb9 unwind label %cleanup
bb9: ; preds = %bb8
%15 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
%16 = load i64, i64* %15
%17 = invoke i8* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17he4e4977e42aef48cE"(i8* %14, i64 %16)
to label %bb10 unwind label %cleanup
bb10: ; preds = %bb9
store i8 0, i8* %_23
invoke void @_ZN4core3ptr5write17h7c997ec71f395badE(i8* %17, i8 %1)
to label %bb11 unwind label %cleanup
bb11: ; preds = %bb10
%18 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
%19 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
%20 = load i64, i64* %19
%21 = add i64 %20, 1
store i64 %21, i64* %18
br label %bb12
bb12: ; preds = %bb11
ret void
bb13: ; preds = %bb2
store i8 0, i8* %_23
br label %bb1
cleanup: ; preds = %bb10, %bb9, %bb8, %bb7, %bb4, %start
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7reserve17h695f38036a6c205eE"(%"3.std::vec::Vec<char>"* dereferenceable(24), i64) unnamed_addr #2 {
entry-block:
%_0 = alloca {}
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 0
%3 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$7reserve17h4bff592457ec9a86E"(%"5.alloc::raw_vec::RawVec<char>"* dereferenceable(16) %2, i64 %4, i64 %1)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7reserve17hc9dd30d68dc1c152E"(%"3.std::vec::Vec<u8>"* dereferenceable(24), i64) unnamed_addr #2 {
entry-block:
%_0 = alloca {}
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 0
%3 = getelementptr inbounds %"3.std::vec::Vec<u8>", %"3.std::vec::Vec<u8>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$7reserve17h882ebde2e305ac2eE"(%"5.alloc::raw_vec::RawVec<u8>"* dereferenceable(16) %2, i64 %4, i64 %1)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$7set_len17h6c28ed0b8a09e18dE"(%"3.std::vec::Vec<char>"* dereferenceable(24), i64) unnamed_addr #0 {
entry-block:
%_0 = alloca {}
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 1
store i64 %1, i64* %2
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN39_$LT$collections..vec..Vec$LT$T$GT$$GT$8capacity17h979fb7723220cee1E"(%"3.std::vec::Vec<char>"* noalias readonly dereferenceable(24)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"3.std::vec::Vec<char>", %"3.std::vec::Vec<char>"* %0, i32 0, i32 0
%2 = call i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17hb34a00643e17375bE"(%"5.alloc::raw_vec::RawVec<char>"* noalias readonly dereferenceable(16) %1)
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: inlinehint uwtable
define internal i32 @_ZN3std4time8duration8Duration12subsec_nanos17h2cb7b2c75c7420d5E(%"1.std::time::Duration"* noalias readonly dereferenceable(16)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"1.std::time::Duration", %"1.std::time::Duration"* %0, i32 0, i32 1
%2 = load i32, i32* %1
br label %bb1
bb1: ; preds = %start
ret i32 %2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN3std4time8duration8Duration3new17h1029c245a186a1aeE(%"1.std::time::Duration"* noalias nocapture sret dereferenceable(16), i64, i32) unnamed_addr #0 {
entry-block:
%_6 = alloca %"2.std::option::Option<u64>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
%3 = udiv i32 %2, 1000000000
%4 = zext i32 %3 to i64
call void @"_ZN4core3num21_$LT$impl$u20$u64$GT$11checked_add17hbe38c0e9a0221581E"(%"2.std::option::Option<u64>"* noalias nocapture sret dereferenceable(16) %_6, i64 %1, i64 %4)
br label %bb2
bb2: ; preds = %bb1
%5 = call i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h707cc572d3263666E"(%"2.std::option::Option<u64>"* noalias nocapture dereferenceable(16) %_6, i8* noalias nonnull readonly getelementptr inbounds ([25 x i8], [25 x i8]* @str12452, i32 0, i32 0), i64 25)
br label %bb3
bb3: ; preds = %bb2
br label %bb4
bb4: ; preds = %bb3
%6 = urem i32 %2, 1000000000
%7 = getelementptr inbounds %"1.std::time::Duration", %"1.std::time::Duration"* %0, i32 0, i32 0
store i64 %5, i64* %7
%8 = getelementptr inbounds %"1.std::time::Duration", %"1.std::time::Duration"* %0, i32 0, i32 1
store i32 %6, i32* %8
ret void
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN3std4time8duration8Duration7as_secs17h913efd82604696c3E(%"1.std::time::Duration"* noalias readonly dereferenceable(16)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"1.std::time::Duration", %"1.std::time::Duration"* %0, i32 0, i32 0
%2 = load i64, i64* %1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$13with_capacity17h27a9234547b04264E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias nocapture sret dereferenceable(16), i64) unnamed_addr #2 {
entry-block:
%_5 = alloca %"2.std::option::Option<usize>"
%ptr = alloca i8*
%_19 = alloca {}
%tmp_ret = alloca %"2.std::ptr::Unique<u8>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%2 = call i64 @_ZN4core3mem7size_of17h637500bbc8d8103eE()
br label %bb1
bb1: ; preds = %start
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17hf3d8c7207af9e765E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_5, i64 %1, i64 %2)
br label %bb2
bb2: ; preds = %bb1
%3 = call i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h3407f1016547b9cdE"(%"2.std::option::Option<usize>"* noalias nocapture dereferenceable(16) %_5, i8* noalias nonnull readonly getelementptr inbounds ([17 x i8], [17 x i8]* @str12453, i32 0, i32 0), i64 17)
br label %bb3
bb3: ; preds = %bb2
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %3)
br label %bb4
bb4: ; preds = %bb3
%4 = icmp eq i64 %3, 0
br i1 %4, label %bb5, label %bb6
bb5: ; preds = %bb4
store i8* inttoptr (i64 1 to i8*), i8** %ptr
br label %bb12
bb6: ; preds = %bb4
%5 = call i64 @_ZN4core3mem8align_of17hcb03187a1a4af27cE()
br label %bb7
bb7: ; preds = %bb6
%6 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %3, i64 %5)
br label %bb8
bb8: ; preds = %bb7
%7 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %6)
br label %bb9
bb9: ; preds = %bb8
br i1 %7, label %bb10, label %bb11
bb10: ; preds = %bb9
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb11: ; preds = %bb9
store i8* %6, i8** %ptr
br label %bb12
bb12: ; preds = %bb5, %bb11
%8 = load i8*, i8** %ptr
%9 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h9a15aaab6bb05b2eE"(i8* %8)
store i64 %9, i64* %abi_cast
%10 = bitcast %"2.std::ptr::Unique<u8>"* %tmp_ret to i8*
%11 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %11, i64 8, i32 8, i1 false)
%12 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret, i32 0, i32 0
%13 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret, i32 0, i32 1
%14 = load %"2.core::nonzero::NonZero<*const u8>", %"2.core::nonzero::NonZero<*const u8>"* %12
br label %bb13
bb13: ; preds = %bb12
%15 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 0
%16 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %15, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u8>" %14, %"2.core::nonzero::NonZero<*const u8>"* %16
%17 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %15, i32 0, i32 1
store %"2.std::marker::PhantomData<u8>" undef, %"2.std::marker::PhantomData<u8>"* %17
%18 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
store i64 %1, i64* %18
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$13with_capacity17h66596e69555cc41eE"(%"5.alloc::raw_vec::RawVec<char>"* noalias nocapture sret dereferenceable(16), i64) unnamed_addr #2 {
entry-block:
%_5 = alloca %"2.std::option::Option<usize>"
%ptr = alloca i8*
%_19 = alloca {}
%tmp_ret = alloca %"2.std::ptr::Unique<char>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%2 = call i64 @_ZN4core3mem7size_of17h5bbd1b20e5ff78e6E()
br label %bb1
bb1: ; preds = %start
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17hf3d8c7207af9e765E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_5, i64 %1, i64 %2)
br label %bb2
bb2: ; preds = %bb1
%3 = call i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h3407f1016547b9cdE"(%"2.std::option::Option<usize>"* noalias nocapture dereferenceable(16) %_5, i8* noalias nonnull readonly getelementptr inbounds ([17 x i8], [17 x i8]* @str12453, i32 0, i32 0), i64 17)
br label %bb3
bb3: ; preds = %bb2
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %3)
br label %bb4
bb4: ; preds = %bb3
%4 = icmp eq i64 %3, 0
br i1 %4, label %bb5, label %bb6
bb5: ; preds = %bb4
store i8* inttoptr (i64 1 to i8*), i8** %ptr
br label %bb12
bb6: ; preds = %bb4
%5 = call i64 @_ZN4core3mem8align_of17h1c201c650e2121daE()
br label %bb7
bb7: ; preds = %bb6
%6 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %3, i64 %5)
br label %bb8
bb8: ; preds = %bb7
%7 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %6)
br label %bb9
bb9: ; preds = %bb8
br i1 %7, label %bb10, label %bb11
bb10: ; preds = %bb9
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb11: ; preds = %bb9
store i8* %6, i8** %ptr
br label %bb12
bb12: ; preds = %bb5, %bb11
%8 = load i8*, i8** %ptr
%9 = bitcast i8* %8 to i32*
%10 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h8e3b1dde44ff349dE"(i32* %9)
store i64 %10, i64* %abi_cast
%11 = bitcast %"2.std::ptr::Unique<char>"* %tmp_ret to i8*
%12 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %11, i8* %12, i64 8, i32 8, i1 false)
%13 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %tmp_ret, i32 0, i32 0
%14 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %tmp_ret, i32 0, i32 1
%15 = load %"2.core::nonzero::NonZero<*const char>", %"2.core::nonzero::NonZero<*const char>"* %13
br label %bb13
bb13: ; preds = %bb12
%16 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 0
%17 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %16, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const char>" %15, %"2.core::nonzero::NonZero<*const char>"* %17
%18 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %16, i32 0, i32 1
store %"2.std::marker::PhantomData<char>" undef, %"2.std::marker::PhantomData<char>"* %18
%19 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 1
store i64 %1, i64* %19
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h0cfc2daee4fcd83fE"(%"5.alloc::raw_vec::RawVec<i32>"* noalias nocapture sret dereferenceable(16), i32*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<i32>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h0bc15130db527c8dE"(i32* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<i32>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const i32>", %"2.core::nonzero::NonZero<*const i32>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i32>" %8, %"2.core::nonzero::NonZero<*const i32>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<i32>" undef, %"2.std::marker::PhantomData<i32>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h1066843fb36db9e8E"(%"5.alloc::raw_vec::RawVec<i16>"* noalias nocapture sret dereferenceable(16), i16*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<i16>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17habb8db760695a6a0E"(i16* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<i16>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const i16>", %"2.core::nonzero::NonZero<*const i16>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i16>" %8, %"2.core::nonzero::NonZero<*const i16>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<i16>" undef, %"2.std::marker::PhantomData<i16>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h2dddc3447ec0c16cE"(%"5.alloc::raw_vec::RawVec<u32>"* noalias nocapture sret dereferenceable(16), i32*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<u32>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17ha8f99503e9947f91E"(i32* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<u32>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<u32>", %"2.std::ptr::Unique<u32>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<u32>", %"2.std::ptr::Unique<u32>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const u32>", %"2.core::nonzero::NonZero<*const u32>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<u32>", %"2.std::ptr::Unique<u32>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u32>" %8, %"2.core::nonzero::NonZero<*const u32>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<u32>", %"2.std::ptr::Unique<u32>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<u32>" undef, %"2.std::marker::PhantomData<u32>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h404dfa5abf357462E"(%"5.alloc::raw_vec::RawVec<usize>"* noalias nocapture sret dereferenceable(16), i64*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<usize>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h84b23b94fc550f5eE"(i64* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<usize>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<usize>", %"2.std::ptr::Unique<usize>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<usize>", %"2.std::ptr::Unique<usize>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const usize>", %"2.core::nonzero::NonZero<*const usize>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<usize>", %"2.std::ptr::Unique<usize>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const usize>" %8, %"2.core::nonzero::NonZero<*const usize>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<usize>", %"2.std::ptr::Unique<usize>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<usize>" undef, %"2.std::marker::PhantomData<usize>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h5e16175f2fe27a04E"(%"5.alloc::raw_vec::RawVec<char>"* noalias nocapture sret dereferenceable(16), i32*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<char>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h8e3b1dde44ff349dE"(i32* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<char>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const char>", %"2.core::nonzero::NonZero<*const char>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const char>" %8, %"2.core::nonzero::NonZero<*const char>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<char>" undef, %"2.std::marker::PhantomData<char>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h71185383ff142b10E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias nocapture sret dereferenceable(16), i8*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<u8>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h9a15aaab6bb05b2eE"(i8* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<u8>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const u8>", %"2.core::nonzero::NonZero<*const u8>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u8>" %8, %"2.core::nonzero::NonZero<*const u8>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<u8>" undef, %"2.std::marker::PhantomData<u8>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h8cba2d0c38560782E"(%"5.alloc::raw_vec::RawVec<u64>"* noalias nocapture sret dereferenceable(16), i64*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<u64>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17hb9e9d1c66d10f970E"(i64* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<u64>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<u64>", %"2.std::ptr::Unique<u64>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<u64>", %"2.std::ptr::Unique<u64>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const u64>", %"2.core::nonzero::NonZero<*const u64>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<u64>", %"2.std::ptr::Unique<u64>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u64>" %8, %"2.core::nonzero::NonZero<*const u64>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<u64>", %"2.std::ptr::Unique<u64>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<u64>" undef, %"2.std::marker::PhantomData<u64>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17h97b9fb569f6302feE"(%"5.alloc::raw_vec::RawVec<isize>"* noalias nocapture sret dereferenceable(16), i64*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<isize>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h85196d13e57db7fcE"(i64* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<isize>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const isize>", %"2.core::nonzero::NonZero<*const isize>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const isize>" %8, %"2.core::nonzero::NonZero<*const isize>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<isize>" undef, %"2.std::marker::PhantomData<isize>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17ha61449d10626783eE"(%"5.alloc::raw_vec::RawVec<u16>"* noalias nocapture sret dereferenceable(16), i16*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<u16>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h184553d29d628995E"(i16* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<u16>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<u16>", %"2.std::ptr::Unique<u16>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<u16>", %"2.std::ptr::Unique<u16>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const u16>", %"2.core::nonzero::NonZero<*const u16>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<u16>", %"2.std::ptr::Unique<u16>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u16>" %8, %"2.core::nonzero::NonZero<*const u16>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<u16>", %"2.std::ptr::Unique<u16>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<u16>" undef, %"2.std::marker::PhantomData<u16>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17hbca58925b38b0d96E"(%"5.alloc::raw_vec::RawVec<std::string::String>"* noalias nocapture sret dereferenceable(16), %"3.std::string::String"*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<std::string::String>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h10c453592f8a28c7E"(%"3.std::string::String"* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<std::string::String>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<std::string::String>", %"2.std::ptr::Unique<std::string::String>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<std::string::String>", %"2.std::ptr::Unique<std::string::String>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const std::string::String>", %"2.core::nonzero::NonZero<*const std::string::String>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<std::string::String>", %"2.std::ptr::Unique<std::string::String>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const std::string::String>" %8, %"2.core::nonzero::NonZero<*const std::string::String>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<std::string::String>", %"2.std::ptr::Unique<std::string::String>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<std::string::String>" undef, %"2.std::marker::PhantomData<std::string::String>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17hd04cbed2f1653c18E"(%"5.alloc::raw_vec::RawVec<i8>"* noalias nocapture sret dereferenceable(16), i8*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<i8>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17hed4624f0fa51bee5E"(i8* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<i8>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const i8>", %"2.core::nonzero::NonZero<*const i8>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i8>" %8, %"2.core::nonzero::NonZero<*const i8>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<i8>" undef, %"2.std::marker::PhantomData<i8>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$14from_raw_parts17he21eea026b14b70dE"(%"5.alloc::raw_vec::RawVec<i64>"* noalias nocapture sret dereferenceable(16), i64*, i64) unnamed_addr #2 {
entry-block:
%tmp_ret = alloca %"2.std::ptr::Unique<i64>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h7137133de8e5211fE"(i64* %1)
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<i64>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const i64>", %"2.core::nonzero::NonZero<*const i64>"* %6
br label %bb1
bb1: ; preds = %start
%9 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 0
%10 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %9, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i64>" %8, %"2.core::nonzero::NonZero<*const i64>"* %10
%11 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %9, i32 0, i32 1
store %"2.std::marker::PhantomData<i64>" undef, %"2.std::marker::PhantomData<i64>"* %11
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 1
store i64 %2, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$18amortized_new_size17h051d817e423ef5f4E"({ i64, i64 }* noalias nocapture sret dereferenceable(16), %"5.alloc::raw_vec::RawVec<char>"* noalias readonly dereferenceable(16), i64, i64) unnamed_addr #2 {
entry-block:
%_9 = alloca %"2.std::option::Option<usize>"
%_20 = alloca %"2.std::option::Option<usize>"
br label %start
start: ; preds = %entry-block
%4 = call i64 @_ZN4core3mem7size_of17h5bbd1b20e5ff78e6E()
br label %bb1
bb1: ; preds = %start
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_add17hf8e8ceb9cff101e3E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_9, i64 %2, i64 %3)
br label %bb2
bb2: ; preds = %bb1
%5 = call i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h3407f1016547b9cdE"(%"2.std::option::Option<usize>"* noalias nocapture dereferenceable(16) %_9, i8* noalias nonnull readonly getelementptr inbounds ([17 x i8], [17 x i8]* @str12453, i32 0, i32 0), i64 17)
br label %bb3
bb3: ; preds = %bb2
%6 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %1, i32 0, i32 1
%7 = load i64, i64* %6
%8 = mul i64 %7, 2
%9 = call i64 @_ZN4core3cmp3max17h259b66fcc63cb2f4E(i64 %8, i64 %5)
br label %bb4
bb4: ; preds = %bb3
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17hf3d8c7207af9e765E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_20, i64 %9, i64 %4)
br label %bb5
bb5: ; preds = %bb4
%10 = call i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h3407f1016547b9cdE"(%"2.std::option::Option<usize>"* noalias nocapture dereferenceable(16) %_20, i8* noalias nonnull readonly getelementptr inbounds ([17 x i8], [17 x i8]* @str12453, i32 0, i32 0), i64 17)
br label %bb6
bb6: ; preds = %bb5
%11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 0
store i64 %9, i64* %11
%12 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 1
store i64 %10, i64* %12
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$18amortized_new_size17h1b9248b5da9582b8E"({ i64, i64 }* noalias nocapture sret dereferenceable(16), %"5.alloc::raw_vec::RawVec<u8>"* noalias readonly dereferenceable(16), i64, i64) unnamed_addr #2 {
entry-block:
%_9 = alloca %"2.std::option::Option<usize>"
%_20 = alloca %"2.std::option::Option<usize>"
br label %start
start: ; preds = %entry-block
%4 = call i64 @_ZN4core3mem7size_of17h637500bbc8d8103eE()
br label %bb1
bb1: ; preds = %start
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_add17hf8e8ceb9cff101e3E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_9, i64 %2, i64 %3)
br label %bb2
bb2: ; preds = %bb1
%5 = call i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h3407f1016547b9cdE"(%"2.std::option::Option<usize>"* noalias nocapture dereferenceable(16) %_9, i8* noalias nonnull readonly getelementptr inbounds ([17 x i8], [17 x i8]* @str12453, i32 0, i32 0), i64 17)
br label %bb3
bb3: ; preds = %bb2
%6 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %1, i32 0, i32 1
%7 = load i64, i64* %6
%8 = mul i64 %7, 2
%9 = call i64 @_ZN4core3cmp3max17h259b66fcc63cb2f4E(i64 %8, i64 %5)
br label %bb4
bb4: ; preds = %bb3
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17hf3d8c7207af9e765E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_20, i64 %9, i64 %4)
br label %bb5
bb5: ; preds = %bb4
%10 = call i64 @"_ZN38_$LT$core..option..Option$LT$T$GT$$GT$6expect17h3407f1016547b9cdE"(%"2.std::option::Option<usize>"* noalias nocapture dereferenceable(16) %_20, i8* noalias nonnull readonly getelementptr inbounds ([17 x i8], [17 x i8]* @str12453, i32 0, i32 0), i64 17)
br label %bb6
bb6: ; preds = %bb5
%11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 0
store i64 %9, i64* %11
%12 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %0, i32 0, i32 1
store i64 %10, i64* %12
ret void
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h0aeeb97a6f7172fdE"(%"5.alloc::raw_vec::RawVec<u64>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h502ea1e63e4e7bbdE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h1350f911c96c4b37E"(%"5.alloc::raw_vec::RawVec<i16>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h89beb94e1a58a5c6E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h2a38006e3b3873e0E"(%"5.alloc::raw_vec::RawVec<i8>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h37bf67c17d1f8e5fE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h73e54673a023216bE"(%"5.alloc::raw_vec::RawVec<u16>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h0279f40688563cd6E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h78baf2a50b5cce4dE"(%"5.alloc::raw_vec::RawVec<usize>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h6b11b7889e0457faE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h803bda574a9e86b2E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h637500bbc8d8103eE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h83474764a257fb45E"(%"5.alloc::raw_vec::RawVec<i32>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h1df76f49ce8203d4E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17hb34a00643e17375bE"(%"5.alloc::raw_vec::RawVec<char>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h5bbd1b20e5ff78e6E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17hb5a60446c96e3b44E"(%"5.alloc::raw_vec::RawVec<u32>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h8c122eeafbd0827aE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17hf67e75f7a57093b2E"(%"5.alloc::raw_vec::RawVec<isize>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h52fe02a5112a55ccE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: alwaysinline uwtable
define internal i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17hf8189fcfea9f49bfE"(%"5.alloc::raw_vec::RawVec<i64>"* noalias readonly dereferenceable(16)) unnamed_addr #1 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17hdf754897abf3fd2eE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%3 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 1
%4 = load i64, i64* %3
store i64 %4, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%5 = load i64, i64* %_0
ret i64 %5
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3new17h04d31363361053b0E"(%"5.alloc::raw_vec::RawVec<char>"* noalias nocapture sret dereferenceable(16)) unnamed_addr #2 {
entry-block:
%cap = alloca i64
%tmp_ret = alloca %"2.std::ptr::Unique<char>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h5bbd1b20e5ff78e6E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %cap
br label %bb4
bb3: ; preds = %bb1
store i64 0, i64* %cap
br label %bb4
bb4: ; preds = %bb2, %bb3
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h8e3b1dde44ff349dE"(i32* inttoptr (i64 1 to i32*))
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<char>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const char>", %"2.core::nonzero::NonZero<*const char>"* %6
br label %bb5
bb5: ; preds = %bb4
%9 = load i64, i64* %cap
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 0
%11 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %10, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const char>" %8, %"2.core::nonzero::NonZero<*const char>"* %11
%12 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %10, i32 0, i32 1
store %"2.std::marker::PhantomData<char>" undef, %"2.std::marker::PhantomData<char>"* %12
%13 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 1
store i64 %9, i64* %13
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3new17h0ea0884b82a46c86E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias nocapture sret dereferenceable(16)) unnamed_addr #2 {
entry-block:
%cap = alloca i64
%tmp_ret = alloca %"2.std::ptr::Unique<u8>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h637500bbc8d8103eE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64 %1, 0
br i1 %2, label %bb2, label %bb3
bb2: ; preds = %bb1
store i64 -1, i64* %cap
br label %bb4
bb3: ; preds = %bb1
store i64 0, i64* %cap
br label %bb4
bb4: ; preds = %bb2, %bb3
%3 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h9a15aaab6bb05b2eE"(i8* inttoptr (i64 1 to i8*))
store i64 %3, i64* %abi_cast
%4 = bitcast %"2.std::ptr::Unique<u8>"* %tmp_ret to i8*
%5 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 8, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret, i32 0, i32 0
%7 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret, i32 0, i32 1
%8 = load %"2.core::nonzero::NonZero<*const u8>", %"2.core::nonzero::NonZero<*const u8>"* %6
br label %bb5
bb5: ; preds = %bb4
%9 = load i64, i64* %cap
%10 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 0
%11 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %10, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u8>" %8, %"2.core::nonzero::NonZero<*const u8>"* %11
%12 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %10, i32 0, i32 1
store %"2.std::marker::PhantomData<u8>" undef, %"2.std::marker::PhantomData<u8>"* %12
%13 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
store i64 %9, i64* %13
ret void
}
; Function Attrs: uwtable
define internal i32* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h07c01a480fb1cf15E"(%"5.alloc::raw_vec::RawVec<i32>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i32** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17h512e24e897dce00eE"(%"2.std::ptr::Unique<i32>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i32*, i32** %2
ret i32* %3
}
; Function Attrs: uwtable
define internal i16* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h2206261be81de0cdE"(%"5.alloc::raw_vec::RawVec<i16>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i16** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17h3e4714797069ad9aE"(%"2.std::ptr::Unique<i16>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i16*, i16** %2
ret i16* %3
}
; Function Attrs: uwtable
define internal i64* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h41d72869a2eb18b0E"(%"5.alloc::raw_vec::RawVec<usize>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<usize>", %"5.alloc::raw_vec::RawVec<usize>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i64** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17he1d4dea779321bc5E"(%"2.std::ptr::Unique<usize>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i64*, i64** %2
ret i64* %3
}
; Function Attrs: uwtable
define internal i32* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h57c29b46ba02fe2aE"(%"5.alloc::raw_vec::RawVec<u32>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u32>", %"5.alloc::raw_vec::RawVec<u32>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i32** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17h8eaddc7aba1bcae2E"(%"2.std::ptr::Unique<u32>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i32*, i32** %2
ret i32* %3
}
; Function Attrs: uwtable
define internal i8* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h767a20d207a98fc2E"(%"5.alloc::raw_vec::RawVec<i8>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i8** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17h6300fcf265aff2f6E"(%"2.std::ptr::Unique<i8>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i8*, i8** %2
ret i8* %3
}
; Function Attrs: uwtable
define internal i8* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h78df7dc43ac8737bE"(%"5.alloc::raw_vec::RawVec<u8>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i8** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17ha5852fc40f614b80E"(%"2.std::ptr::Unique<u8>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i8*, i8** %2
ret i8* %3
}
; Function Attrs: uwtable
define internal %"3.std::string::String"* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h7f4f549af990dfc1E"(%"5.alloc::raw_vec::RawVec<std::string::String>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<std::string::String>", %"5.alloc::raw_vec::RawVec<std::string::String>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) %"3.std::string::String"** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17h2b5bbea71994beb0E"(%"2.std::ptr::Unique<std::string::String>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load %"3.std::string::String"*, %"3.std::string::String"** %2
ret %"3.std::string::String"* %3
}
; Function Attrs: uwtable
define internal i64* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h920da4f8008882f2E"(%"5.alloc::raw_vec::RawVec<i64>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i64** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17h4e7fe79547b7df1cE"(%"2.std::ptr::Unique<i64>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i64*, i64** %2
ret i64* %3
}
; Function Attrs: uwtable
define internal i64* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17hcaa6f415b6641a8eE"(%"5.alloc::raw_vec::RawVec<u64>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u64>", %"5.alloc::raw_vec::RawVec<u64>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i64** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17he2f2278f08d0a320E"(%"2.std::ptr::Unique<u64>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i64*, i64** %2
ret i64* %3
}
; Function Attrs: uwtable
define internal i64* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17hda927485a41f3180E"(%"5.alloc::raw_vec::RawVec<isize>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i64** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17hd6e08f7b7a8caec4E"(%"2.std::ptr::Unique<isize>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i64*, i64** %2
ret i64* %3
}
; Function Attrs: uwtable
define internal i16* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17hea5f49a2318b5f0fE"(%"5.alloc::raw_vec::RawVec<u16>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u16>", %"5.alloc::raw_vec::RawVec<u16>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i16** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17hbc33d727b4610404E"(%"2.std::ptr::Unique<u16>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i16*, i16** %2
ret i16* %3
}
; Function Attrs: uwtable
define internal i32* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17hf722165040fb934eE"(%"5.alloc::raw_vec::RawVec<char>"* noalias readonly dereferenceable(16)) unnamed_addr #2 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 0
%2 = call dereferenceable(8) i32** @"_ZN63_$LT$core..ptr..Unique$LT$T$GT$$u20$as$u20$core..ops..Deref$GT$5deref17he71d7f2b9200fd86E"(%"2.std::ptr::Unique<char>"* noalias readonly dereferenceable(8) %1)
br label %bb1
bb1: ; preds = %start
%3 = load i32*, i32** %2
ret i32* %3
}
; Function Attrs: cold noinline uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17h2d5a63d8c74ac190E"(%"5.alloc::raw_vec::RawVec<isize>"* dereferenceable(16)) unnamed_addr #3 {
entry-block:
%_0 = alloca {}
%_4 = alloca {}
%_14 = alloca { i64, i8* }
%new_cap = alloca i64
%_48 = alloca {}
%tmp_ret = alloca %"2.std::ptr::Unique<isize>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h52fe02a5112a55ccE()
br label %bb1
bb1: ; preds = %start
%2 = icmp ne i64 %1, 0
%3 = xor i1 %2, true
br i1 %3, label %bb2, label %bb3
bb2: ; preds = %bb1
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* noalias readonly dereferenceable(40) @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double14_MSG_FILE_LINE17ha7fbf0dbb03c645eE")
unreachable
bb3: ; preds = %bb1
%4 = call i64 @_ZN4core3mem8align_of17h77ad11b1262b39e4E()
br label %bb4
bb4: ; preds = %bb3
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 1
%6 = load i64, i64* %5
%7 = icmp eq i64 %6, 0
br i1 %7, label %bb5, label %bb6
bb5: ; preds = %bb4
br label %bb7
bb6: ; preds = %bb4
%8 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 1
%9 = load i64, i64* %8
%10 = mul i64 2, %9
%11 = mul i64 %10, %1
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %11)
br label %bb12
bb7: ; preds = %bb5
%12 = icmp ugt i64 %1, 2305843009213693951
br i1 %12, label %bb8, label %bb9
bb8: ; preds = %bb7
store i64 1, i64* %new_cap
br label %bb10
bb9: ; preds = %bb7
store i64 4, i64* %new_cap
br label %bb10
bb10: ; preds = %bb8, %bb9
%13 = load i64, i64* %new_cap
%14 = mul i64 %13, %1
%15 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %14, i64 %4)
br label %bb11
bb11: ; preds = %bb10
%16 = load i64, i64* %new_cap
%17 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %16, i64* %17
%18 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %15, i8** %18
br label %bb15
bb12: ; preds = %bb6
%19 = call i64* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17hda927485a41f3180E"(%"5.alloc::raw_vec::RawVec<isize>"* noalias readonly dereferenceable(16) %0)
br label %bb13
bb13: ; preds = %bb12
%20 = bitcast i64* %19 to i8*
%21 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 1
%22 = load i64, i64* %21
%23 = mul i64 %22, %1
%24 = call i8* @_ZN5alloc4heap10reallocate17h2700cd722c02ac59E(i8* %20, i64 %23, i64 %11, i64 %4)
br label %bb14
bb14: ; preds = %bb13
%25 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %10, i64* %25
%26 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %24, i8** %26
br label %bb15
bb15: ; preds = %bb11, %bb14
%27 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
%28 = load i64, i64* %27
%29 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
%30 = load i8*, i8** %29
%31 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %30)
br label %bb16
bb16: ; preds = %bb15
br i1 %31, label %bb17, label %bb18
bb17: ; preds = %bb16
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb18: ; preds = %bb16
%32 = bitcast i8* %30 to i64*
%33 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h85196d13e57db7fcE"(i64* %32)
store i64 %33, i64* %abi_cast
%34 = bitcast %"2.std::ptr::Unique<isize>"* %tmp_ret to i8*
%35 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %34, i8* %35, i64 8, i32 8, i1 false)
%36 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %tmp_ret, i32 0, i32 0
%37 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %tmp_ret, i32 0, i32 1
%38 = load %"2.core::nonzero::NonZero<*const isize>", %"2.core::nonzero::NonZero<*const isize>"* %36
br label %bb19
bb19: ; preds = %bb18
%39 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 0
%40 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %39, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const isize>" %38, %"2.core::nonzero::NonZero<*const isize>"* %40
%41 = getelementptr inbounds %"2.std::ptr::Unique<isize>", %"2.std::ptr::Unique<isize>"* %39, i32 0, i32 1
store %"2.std::marker::PhantomData<isize>" undef, %"2.std::marker::PhantomData<isize>"* %41
%42 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<isize>", %"5.alloc::raw_vec::RawVec<isize>"* %0, i32 0, i32 1
store i64 %28, i64* %42
ret void
}
; Function Attrs: cold noinline uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17h35441a659408ef01E"(%"5.alloc::raw_vec::RawVec<u8>"* dereferenceable(16)) unnamed_addr #3 {
entry-block:
%_0 = alloca {}
%_4 = alloca {}
%_14 = alloca { i64, i8* }
%new_cap = alloca i64
%_48 = alloca {}
%tmp_ret = alloca %"2.std::ptr::Unique<u8>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h637500bbc8d8103eE()
br label %bb1
bb1: ; preds = %start
%2 = icmp ne i64 %1, 0
%3 = xor i1 %2, true
br i1 %3, label %bb2, label %bb3
bb2: ; preds = %bb1
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* noalias readonly dereferenceable(40) @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double14_MSG_FILE_LINE17ha7fbf0dbb03c645eE")
unreachable
bb3: ; preds = %bb1
%4 = call i64 @_ZN4core3mem8align_of17hcb03187a1a4af27cE()
br label %bb4
bb4: ; preds = %bb3
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
%6 = load i64, i64* %5
%7 = icmp eq i64 %6, 0
br i1 %7, label %bb5, label %bb6
bb5: ; preds = %bb4
br label %bb7
bb6: ; preds = %bb4
%8 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
%9 = load i64, i64* %8
%10 = mul i64 2, %9
%11 = mul i64 %10, %1
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %11)
br label %bb12
bb7: ; preds = %bb5
%12 = icmp ugt i64 %1, 2305843009213693951
br i1 %12, label %bb8, label %bb9
bb8: ; preds = %bb7
store i64 1, i64* %new_cap
br label %bb10
bb9: ; preds = %bb7
store i64 4, i64* %new_cap
br label %bb10
bb10: ; preds = %bb8, %bb9
%13 = load i64, i64* %new_cap
%14 = mul i64 %13, %1
%15 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %14, i64 %4)
br label %bb11
bb11: ; preds = %bb10
%16 = load i64, i64* %new_cap
%17 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %16, i64* %17
%18 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %15, i8** %18
br label %bb15
bb12: ; preds = %bb6
%19 = call i8* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h78df7dc43ac8737bE"(%"5.alloc::raw_vec::RawVec<u8>"* noalias readonly dereferenceable(16) %0)
br label %bb13
bb13: ; preds = %bb12
%20 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
%21 = load i64, i64* %20
%22 = mul i64 %21, %1
%23 = call i8* @_ZN5alloc4heap10reallocate17h2700cd722c02ac59E(i8* %19, i64 %22, i64 %11, i64 %4)
br label %bb14
bb14: ; preds = %bb13
%24 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %10, i64* %24
%25 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %23, i8** %25
br label %bb15
bb15: ; preds = %bb11, %bb14
%26 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
%27 = load i64, i64* %26
%28 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
%29 = load i8*, i8** %28
%30 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %29)
br label %bb16
bb16: ; preds = %bb15
br i1 %30, label %bb17, label %bb18
bb17: ; preds = %bb16
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb18: ; preds = %bb16
%31 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h9a15aaab6bb05b2eE"(i8* %29)
store i64 %31, i64* %abi_cast
%32 = bitcast %"2.std::ptr::Unique<u8>"* %tmp_ret to i8*
%33 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %33, i64 8, i32 8, i1 false)
%34 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret, i32 0, i32 0
%35 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret, i32 0, i32 1
%36 = load %"2.core::nonzero::NonZero<*const u8>", %"2.core::nonzero::NonZero<*const u8>"* %34
br label %bb19
bb19: ; preds = %bb18
%37 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 0
%38 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %37, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u8>" %36, %"2.core::nonzero::NonZero<*const u8>"* %38
%39 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %37, i32 0, i32 1
store %"2.std::marker::PhantomData<u8>" undef, %"2.std::marker::PhantomData<u8>"* %39
%40 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
store i64 %27, i64* %40
ret void
}
; Function Attrs: cold noinline uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17h7dff56aa0190f207E"(%"5.alloc::raw_vec::RawVec<i8>"* dereferenceable(16)) unnamed_addr #3 {
entry-block:
%_0 = alloca {}
%_4 = alloca {}
%_14 = alloca { i64, i8* }
%new_cap = alloca i64
%_48 = alloca {}
%tmp_ret = alloca %"2.std::ptr::Unique<i8>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h37bf67c17d1f8e5fE()
br label %bb1
bb1: ; preds = %start
%2 = icmp ne i64 %1, 0
%3 = xor i1 %2, true
br i1 %3, label %bb2, label %bb3
bb2: ; preds = %bb1
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* noalias readonly dereferenceable(40) @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double14_MSG_FILE_LINE17ha7fbf0dbb03c645eE")
unreachable
bb3: ; preds = %bb1
%4 = call i64 @_ZN4core3mem8align_of17h699835afe7af106dE()
br label %bb4
bb4: ; preds = %bb3
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 1
%6 = load i64, i64* %5
%7 = icmp eq i64 %6, 0
br i1 %7, label %bb5, label %bb6
bb5: ; preds = %bb4
br label %bb7
bb6: ; preds = %bb4
%8 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 1
%9 = load i64, i64* %8
%10 = mul i64 2, %9
%11 = mul i64 %10, %1
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %11)
br label %bb12
bb7: ; preds = %bb5
%12 = icmp ugt i64 %1, 2305843009213693951
br i1 %12, label %bb8, label %bb9
bb8: ; preds = %bb7
store i64 1, i64* %new_cap
br label %bb10
bb9: ; preds = %bb7
store i64 4, i64* %new_cap
br label %bb10
bb10: ; preds = %bb8, %bb9
%13 = load i64, i64* %new_cap
%14 = mul i64 %13, %1
%15 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %14, i64 %4)
br label %bb11
bb11: ; preds = %bb10
%16 = load i64, i64* %new_cap
%17 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %16, i64* %17
%18 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %15, i8** %18
br label %bb15
bb12: ; preds = %bb6
%19 = call i8* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h767a20d207a98fc2E"(%"5.alloc::raw_vec::RawVec<i8>"* noalias readonly dereferenceable(16) %0)
br label %bb13
bb13: ; preds = %bb12
%20 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 1
%21 = load i64, i64* %20
%22 = mul i64 %21, %1
%23 = call i8* @_ZN5alloc4heap10reallocate17h2700cd722c02ac59E(i8* %19, i64 %22, i64 %11, i64 %4)
br label %bb14
bb14: ; preds = %bb13
%24 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %10, i64* %24
%25 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %23, i8** %25
br label %bb15
bb15: ; preds = %bb11, %bb14
%26 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
%27 = load i64, i64* %26
%28 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
%29 = load i8*, i8** %28
%30 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %29)
br label %bb16
bb16: ; preds = %bb15
br i1 %30, label %bb17, label %bb18
bb17: ; preds = %bb16
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb18: ; preds = %bb16
%31 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17hed4624f0fa51bee5E"(i8* %29)
store i64 %31, i64* %abi_cast
%32 = bitcast %"2.std::ptr::Unique<i8>"* %tmp_ret to i8*
%33 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %32, i8* %33, i64 8, i32 8, i1 false)
%34 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %tmp_ret, i32 0, i32 0
%35 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %tmp_ret, i32 0, i32 1
%36 = load %"2.core::nonzero::NonZero<*const i8>", %"2.core::nonzero::NonZero<*const i8>"* %34
br label %bb19
bb19: ; preds = %bb18
%37 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 0
%38 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %37, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i8>" %36, %"2.core::nonzero::NonZero<*const i8>"* %38
%39 = getelementptr inbounds %"2.std::ptr::Unique<i8>", %"2.std::ptr::Unique<i8>"* %37, i32 0, i32 1
store %"2.std::marker::PhantomData<i8>" undef, %"2.std::marker::PhantomData<i8>"* %39
%40 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i8>", %"5.alloc::raw_vec::RawVec<i8>"* %0, i32 0, i32 1
store i64 %27, i64* %40
ret void
}
; Function Attrs: cold noinline uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17h8010d63d1f32d8bdE"(%"5.alloc::raw_vec::RawVec<i64>"* dereferenceable(16)) unnamed_addr #3 {
entry-block:
%_0 = alloca {}
%_4 = alloca {}
%_14 = alloca { i64, i8* }
%new_cap = alloca i64
%_48 = alloca {}
%tmp_ret = alloca %"2.std::ptr::Unique<i64>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17hdf754897abf3fd2eE()
br label %bb1
bb1: ; preds = %start
%2 = icmp ne i64 %1, 0
%3 = xor i1 %2, true
br i1 %3, label %bb2, label %bb3
bb2: ; preds = %bb1
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* noalias readonly dereferenceable(40) @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double14_MSG_FILE_LINE17ha7fbf0dbb03c645eE")
unreachable
bb3: ; preds = %bb1
%4 = call i64 @_ZN4core3mem8align_of17h65696202062742fbE()
br label %bb4
bb4: ; preds = %bb3
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 1
%6 = load i64, i64* %5
%7 = icmp eq i64 %6, 0
br i1 %7, label %bb5, label %bb6
bb5: ; preds = %bb4
br label %bb7
bb6: ; preds = %bb4
%8 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 1
%9 = load i64, i64* %8
%10 = mul i64 2, %9
%11 = mul i64 %10, %1
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %11)
br label %bb12
bb7: ; preds = %bb5
%12 = icmp ugt i64 %1, 2305843009213693951
br i1 %12, label %bb8, label %bb9
bb8: ; preds = %bb7
store i64 1, i64* %new_cap
br label %bb10
bb9: ; preds = %bb7
store i64 4, i64* %new_cap
br label %bb10
bb10: ; preds = %bb8, %bb9
%13 = load i64, i64* %new_cap
%14 = mul i64 %13, %1
%15 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %14, i64 %4)
br label %bb11
bb11: ; preds = %bb10
%16 = load i64, i64* %new_cap
%17 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %16, i64* %17
%18 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %15, i8** %18
br label %bb15
bb12: ; preds = %bb6
%19 = call i64* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h920da4f8008882f2E"(%"5.alloc::raw_vec::RawVec<i64>"* noalias readonly dereferenceable(16) %0)
br label %bb13
bb13: ; preds = %bb12
%20 = bitcast i64* %19 to i8*
%21 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 1
%22 = load i64, i64* %21
%23 = mul i64 %22, %1
%24 = call i8* @_ZN5alloc4heap10reallocate17h2700cd722c02ac59E(i8* %20, i64 %23, i64 %11, i64 %4)
br label %bb14
bb14: ; preds = %bb13
%25 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %10, i64* %25
%26 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %24, i8** %26
br label %bb15
bb15: ; preds = %bb11, %bb14
%27 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
%28 = load i64, i64* %27
%29 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
%30 = load i8*, i8** %29
%31 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %30)
br label %bb16
bb16: ; preds = %bb15
br i1 %31, label %bb17, label %bb18
bb17: ; preds = %bb16
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb18: ; preds = %bb16
%32 = bitcast i8* %30 to i64*
%33 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h7137133de8e5211fE"(i64* %32)
store i64 %33, i64* %abi_cast
%34 = bitcast %"2.std::ptr::Unique<i64>"* %tmp_ret to i8*
%35 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %34, i8* %35, i64 8, i32 8, i1 false)
%36 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %tmp_ret, i32 0, i32 0
%37 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %tmp_ret, i32 0, i32 1
%38 = load %"2.core::nonzero::NonZero<*const i64>", %"2.core::nonzero::NonZero<*const i64>"* %36
br label %bb19
bb19: ; preds = %bb18
%39 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 0
%40 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %39, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i64>" %38, %"2.core::nonzero::NonZero<*const i64>"* %40
%41 = getelementptr inbounds %"2.std::ptr::Unique<i64>", %"2.std::ptr::Unique<i64>"* %39, i32 0, i32 1
store %"2.std::marker::PhantomData<i64>" undef, %"2.std::marker::PhantomData<i64>"* %41
%42 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i64>", %"5.alloc::raw_vec::RawVec<i64>"* %0, i32 0, i32 1
store i64 %28, i64* %42
ret void
}
; Function Attrs: cold noinline uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17haa0d6082b389cd0dE"(%"5.alloc::raw_vec::RawVec<i32>"* dereferenceable(16)) unnamed_addr #3 {
entry-block:
%_0 = alloca {}
%_4 = alloca {}
%_14 = alloca { i64, i8* }
%new_cap = alloca i64
%_48 = alloca {}
%tmp_ret = alloca %"2.std::ptr::Unique<i32>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h1df76f49ce8203d4E()
br label %bb1
bb1: ; preds = %start
%2 = icmp ne i64 %1, 0
%3 = xor i1 %2, true
br i1 %3, label %bb2, label %bb3
bb2: ; preds = %bb1
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* noalias readonly dereferenceable(40) @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double14_MSG_FILE_LINE17ha7fbf0dbb03c645eE")
unreachable
bb3: ; preds = %bb1
%4 = call i64 @_ZN4core3mem8align_of17h1d0abb9836326a74E()
br label %bb4
bb4: ; preds = %bb3
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 1
%6 = load i64, i64* %5
%7 = icmp eq i64 %6, 0
br i1 %7, label %bb5, label %bb6
bb5: ; preds = %bb4
br label %bb7
bb6: ; preds = %bb4
%8 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 1
%9 = load i64, i64* %8
%10 = mul i64 2, %9
%11 = mul i64 %10, %1
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %11)
br label %bb12
bb7: ; preds = %bb5
%12 = icmp ugt i64 %1, 2305843009213693951
br i1 %12, label %bb8, label %bb9
bb8: ; preds = %bb7
store i64 1, i64* %new_cap
br label %bb10
bb9: ; preds = %bb7
store i64 4, i64* %new_cap
br label %bb10
bb10: ; preds = %bb8, %bb9
%13 = load i64, i64* %new_cap
%14 = mul i64 %13, %1
%15 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %14, i64 %4)
br label %bb11
bb11: ; preds = %bb10
%16 = load i64, i64* %new_cap
%17 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %16, i64* %17
%18 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %15, i8** %18
br label %bb15
bb12: ; preds = %bb6
%19 = call i32* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h07c01a480fb1cf15E"(%"5.alloc::raw_vec::RawVec<i32>"* noalias readonly dereferenceable(16) %0)
br label %bb13
bb13: ; preds = %bb12
%20 = bitcast i32* %19 to i8*
%21 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 1
%22 = load i64, i64* %21
%23 = mul i64 %22, %1
%24 = call i8* @_ZN5alloc4heap10reallocate17h2700cd722c02ac59E(i8* %20, i64 %23, i64 %11, i64 %4)
br label %bb14
bb14: ; preds = %bb13
%25 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %10, i64* %25
%26 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %24, i8** %26
br label %bb15
bb15: ; preds = %bb11, %bb14
%27 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
%28 = load i64, i64* %27
%29 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
%30 = load i8*, i8** %29
%31 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %30)
br label %bb16
bb16: ; preds = %bb15
br i1 %31, label %bb17, label %bb18
bb17: ; preds = %bb16
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb18: ; preds = %bb16
%32 = bitcast i8* %30 to i32*
%33 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h0bc15130db527c8dE"(i32* %32)
store i64 %33, i64* %abi_cast
%34 = bitcast %"2.std::ptr::Unique<i32>"* %tmp_ret to i8*
%35 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %34, i8* %35, i64 8, i32 8, i1 false)
%36 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %tmp_ret, i32 0, i32 0
%37 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %tmp_ret, i32 0, i32 1
%38 = load %"2.core::nonzero::NonZero<*const i32>", %"2.core::nonzero::NonZero<*const i32>"* %36
br label %bb19
bb19: ; preds = %bb18
%39 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 0
%40 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %39, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i32>" %38, %"2.core::nonzero::NonZero<*const i32>"* %40
%41 = getelementptr inbounds %"2.std::ptr::Unique<i32>", %"2.std::ptr::Unique<i32>"* %39, i32 0, i32 1
store %"2.std::marker::PhantomData<i32>" undef, %"2.std::marker::PhantomData<i32>"* %41
%42 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i32>", %"5.alloc::raw_vec::RawVec<i32>"* %0, i32 0, i32 1
store i64 %28, i64* %42
ret void
}
; Function Attrs: cold noinline uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double17hf8e921f43b7d7192E"(%"5.alloc::raw_vec::RawVec<i16>"* dereferenceable(16)) unnamed_addr #3 {
entry-block:
%_0 = alloca {}
%_4 = alloca {}
%_14 = alloca { i64, i8* }
%new_cap = alloca i64
%_48 = alloca {}
%tmp_ret = alloca %"2.std::ptr::Unique<i16>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @_ZN4core3mem7size_of17h89beb94e1a58a5c6E()
br label %bb1
bb1: ; preds = %start
%2 = icmp ne i64 %1, 0
%3 = xor i1 %2, true
br i1 %3, label %bb2, label %bb3
bb2: ; preds = %bb1
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* noalias readonly dereferenceable(40) @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$6double14_MSG_FILE_LINE17ha7fbf0dbb03c645eE")
unreachable
bb3: ; preds = %bb1
%4 = call i64 @_ZN4core3mem8align_of17h62913aa188742efdE()
br label %bb4
bb4: ; preds = %bb3
%5 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 1
%6 = load i64, i64* %5
%7 = icmp eq i64 %6, 0
br i1 %7, label %bb5, label %bb6
bb5: ; preds = %bb4
br label %bb7
bb6: ; preds = %bb4
%8 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 1
%9 = load i64, i64* %8
%10 = mul i64 2, %9
%11 = mul i64 %10, %1
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %11)
br label %bb12
bb7: ; preds = %bb5
%12 = icmp ugt i64 %1, 2305843009213693951
br i1 %12, label %bb8, label %bb9
bb8: ; preds = %bb7
store i64 1, i64* %new_cap
br label %bb10
bb9: ; preds = %bb7
store i64 4, i64* %new_cap
br label %bb10
bb10: ; preds = %bb8, %bb9
%13 = load i64, i64* %new_cap
%14 = mul i64 %13, %1
%15 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %14, i64 %4)
br label %bb11
bb11: ; preds = %bb10
%16 = load i64, i64* %new_cap
%17 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %16, i64* %17
%18 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %15, i8** %18
br label %bb15
bb12: ; preds = %bb6
%19 = call i16* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h2206261be81de0cdE"(%"5.alloc::raw_vec::RawVec<i16>"* noalias readonly dereferenceable(16) %0)
br label %bb13
bb13: ; preds = %bb12
%20 = bitcast i16* %19 to i8*
%21 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 1
%22 = load i64, i64* %21
%23 = mul i64 %22, %1
%24 = call i8* @_ZN5alloc4heap10reallocate17h2700cd722c02ac59E(i8* %20, i64 %23, i64 %11, i64 %4)
br label %bb14
bb14: ; preds = %bb13
%25 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
store i64 %10, i64* %25
%26 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
store i8* %24, i8** %26
br label %bb15
bb15: ; preds = %bb11, %bb14
%27 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 0
%28 = load i64, i64* %27
%29 = getelementptr inbounds { i64, i8* }, { i64, i8* }* %_14, i32 0, i32 1
%30 = load i8*, i8** %29
%31 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %30)
br label %bb16
bb16: ; preds = %bb15
br i1 %31, label %bb17, label %bb18
bb17: ; preds = %bb16
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb18: ; preds = %bb16
%32 = bitcast i8* %30 to i16*
%33 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17habb8db760695a6a0E"(i16* %32)
store i64 %33, i64* %abi_cast
%34 = bitcast %"2.std::ptr::Unique<i16>"* %tmp_ret to i8*
%35 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %34, i8* %35, i64 8, i32 8, i1 false)
%36 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %tmp_ret, i32 0, i32 0
%37 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %tmp_ret, i32 0, i32 1
%38 = load %"2.core::nonzero::NonZero<*const i16>", %"2.core::nonzero::NonZero<*const i16>"* %36
br label %bb19
bb19: ; preds = %bb18
%39 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 0
%40 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %39, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const i16>" %38, %"2.core::nonzero::NonZero<*const i16>"* %40
%41 = getelementptr inbounds %"2.std::ptr::Unique<i16>", %"2.std::ptr::Unique<i16>"* %39, i32 0, i32 1
store %"2.std::marker::PhantomData<i16>" undef, %"2.std::marker::PhantomData<i16>"* %41
%42 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<i16>", %"5.alloc::raw_vec::RawVec<i16>"* %0, i32 0, i32 1
store i64 %28, i64* %42
ret void
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$7reserve17h4bff592457ec9a86E"(%"5.alloc::raw_vec::RawVec<char>"* dereferenceable(16), i64, i64) unnamed_addr #2 {
entry-block:
%_0 = alloca {}
%_9 = alloca {}
%ptr = alloca i8*
%_40 = alloca {}
%tmp_ret = alloca { i64, i64 }
%tmp_ret1 = alloca %"2.std::ptr::Unique<char>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @_ZN4core3mem7size_of17h5bbd1b20e5ff78e6E()
br label %bb1
bb1: ; preds = %start
%4 = call i64 @_ZN4core3mem8align_of17h1c201c650e2121daE()
br label %bb2
bb2: ; preds = %bb1
%5 = call i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17hb34a00643e17375bE"(%"5.alloc::raw_vec::RawVec<char>"* noalias readonly dereferenceable(16) %0)
br label %bb3
bb3: ; preds = %bb2
%6 = call i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$12wrapping_sub17ha950d56fa408f481E"(i64 %5, i64 %1)
br label %bb4
bb4: ; preds = %bb3
%7 = icmp uge i64 %6, %2
br i1 %7, label %bb5, label %bb6
bb5: ; preds = %bb4
br label %bb7
bb6: ; preds = %bb4
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$18amortized_new_size17h051d817e423ef5f4E"({ i64, i64 }* noalias nocapture sret dereferenceable(16) %tmp_ret, %"5.alloc::raw_vec::RawVec<char>"* noalias readonly dereferenceable(16) %0, i64 %1, i64 %2)
%8 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %tmp_ret, i32 0, i32 0
%9 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %tmp_ret, i32 0, i32 1
%10 = load i64, i64* %8
%11 = load i64, i64* %9
br label %bb8
bb7: ; preds = %bb5, %bb19
ret void
bb8: ; preds = %bb6
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %11)
br label %bb9
bb9: ; preds = %bb8
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 1
%13 = load i64, i64* %12
%14 = icmp eq i64 %13, 0
br i1 %14, label %bb10, label %bb11
bb10: ; preds = %bb9
%15 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %11, i64 %4)
store i8* %15, i8** %ptr
br label %bb12
bb11: ; preds = %bb9
%16 = call i32* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17hf722165040fb934eE"(%"5.alloc::raw_vec::RawVec<char>"* noalias readonly dereferenceable(16) %0)
br label %bb13
bb12: ; preds = %bb10
br label %bb15
bb13: ; preds = %bb11
%17 = bitcast i32* %16 to i8*
%18 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 1
%19 = load i64, i64* %18
%20 = mul i64 %19, %3
%21 = call i8* @_ZN5alloc4heap10reallocate17h2700cd722c02ac59E(i8* %17, i64 %20, i64 %11, i64 %4)
store i8* %21, i8** %ptr
br label %bb14
bb14: ; preds = %bb13
br label %bb15
bb15: ; preds = %bb12, %bb14
%22 = load i8*, i8** %ptr
%23 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %22)
br label %bb16
bb16: ; preds = %bb15
br i1 %23, label %bb17, label %bb18
bb17: ; preds = %bb16
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb18: ; preds = %bb16
%24 = load i8*, i8** %ptr
%25 = bitcast i8* %24 to i32*
%26 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h8e3b1dde44ff349dE"(i32* %25)
store i64 %26, i64* %abi_cast
%27 = bitcast %"2.std::ptr::Unique<char>"* %tmp_ret1 to i8*
%28 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %27, i8* %28, i64 8, i32 8, i1 false)
%29 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %tmp_ret1, i32 0, i32 0
%30 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %tmp_ret1, i32 0, i32 1
%31 = load %"2.core::nonzero::NonZero<*const char>", %"2.core::nonzero::NonZero<*const char>"* %29
br label %bb19
bb19: ; preds = %bb18
%32 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 0
%33 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %32, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const char>" %31, %"2.core::nonzero::NonZero<*const char>"* %33
%34 = getelementptr inbounds %"2.std::ptr::Unique<char>", %"2.std::ptr::Unique<char>"* %32, i32 0, i32 1
store %"2.std::marker::PhantomData<char>" undef, %"2.std::marker::PhantomData<char>"* %34
%35 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<char>", %"5.alloc::raw_vec::RawVec<char>"* %0, i32 0, i32 1
store i64 %10, i64* %35
br label %bb7
}
; Function Attrs: uwtable
define internal void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$7reserve17h882ebde2e305ac2eE"(%"5.alloc::raw_vec::RawVec<u8>"* dereferenceable(16), i64, i64) unnamed_addr #2 {
entry-block:
%_0 = alloca {}
%_9 = alloca {}
%ptr = alloca i8*
%_40 = alloca {}
%tmp_ret = alloca { i64, i64 }
%tmp_ret1 = alloca %"2.std::ptr::Unique<u8>"
%abi_cast = alloca i64
br label %start
start: ; preds = %entry-block
%3 = call i64 @_ZN4core3mem7size_of17h637500bbc8d8103eE()
br label %bb1
bb1: ; preds = %start
%4 = call i64 @_ZN4core3mem8align_of17hcb03187a1a4af27cE()
br label %bb2
bb2: ; preds = %bb1
%5 = call i64 @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3cap17h803bda574a9e86b2E"(%"5.alloc::raw_vec::RawVec<u8>"* noalias readonly dereferenceable(16) %0)
br label %bb3
bb3: ; preds = %bb2
%6 = call i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$12wrapping_sub17ha950d56fa408f481E"(i64 %5, i64 %1)
br label %bb4
bb4: ; preds = %bb3
%7 = icmp uge i64 %6, %2
br i1 %7, label %bb5, label %bb6
bb5: ; preds = %bb4
br label %bb7
bb6: ; preds = %bb4
call void @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$18amortized_new_size17h1b9248b5da9582b8E"({ i64, i64 }* noalias nocapture sret dereferenceable(16) %tmp_ret, %"5.alloc::raw_vec::RawVec<u8>"* noalias readonly dereferenceable(16) %0, i64 %1, i64 %2)
%8 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %tmp_ret, i32 0, i32 0
%9 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %tmp_ret, i32 0, i32 1
%10 = load i64, i64* %8
%11 = load i64, i64* %9
br label %bb8
bb7: ; preds = %bb5, %bb19
ret void
bb8: ; preds = %bb6
call void @_ZN5alloc7raw_vec11alloc_guard17h3f5bd65c7a861e45E(i64 %11)
br label %bb9
bb9: ; preds = %bb8
%12 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
%13 = load i64, i64* %12
%14 = icmp eq i64 %13, 0
br i1 %14, label %bb10, label %bb11
bb10: ; preds = %bb9
%15 = call i8* @_ZN5alloc4heap8allocate17hb4d29710c8c1082aE(i64 %11, i64 %4)
store i8* %15, i8** %ptr
br label %bb12
bb11: ; preds = %bb9
%16 = call i8* @"_ZN40_$LT$alloc..raw_vec..RawVec$LT$T$GT$$GT$3ptr17h78df7dc43ac8737bE"(%"5.alloc::raw_vec::RawVec<u8>"* noalias readonly dereferenceable(16) %0)
br label %bb13
bb12: ; preds = %bb10
br label %bb15
bb13: ; preds = %bb11
%17 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
%18 = load i64, i64* %17
%19 = mul i64 %18, %3
%20 = call i8* @_ZN5alloc4heap10reallocate17h2700cd722c02ac59E(i8* %16, i64 %19, i64 %11, i64 %4)
store i8* %20, i8** %ptr
br label %bb14
bb14: ; preds = %bb13
br label %bb15
bb15: ; preds = %bb12, %bb14
%21 = load i8*, i8** %ptr
%22 = call zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8* %21)
br label %bb16
bb16: ; preds = %bb15
br i1 %22, label %bb17, label %bb18
bb17: ; preds = %bb16
call void @_ZN5alloc3oom3oom17h97560b93ca17f851E()
unreachable
bb18: ; preds = %bb16
%23 = load i8*, i8** %ptr
%24 = call i64 @"_ZN35_$LT$core..ptr..Unique$LT$T$GT$$GT$3new17h9a15aaab6bb05b2eE"(i8* %23)
store i64 %24, i64* %abi_cast
%25 = bitcast %"2.std::ptr::Unique<u8>"* %tmp_ret1 to i8*
%26 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %25, i8* %26, i64 8, i32 8, i1 false)
%27 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret1, i32 0, i32 0
%28 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %tmp_ret1, i32 0, i32 1
%29 = load %"2.core::nonzero::NonZero<*const u8>", %"2.core::nonzero::NonZero<*const u8>"* %27
br label %bb19
bb19: ; preds = %bb18
%30 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 0
%31 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %30, i32 0, i32 0
store %"2.core::nonzero::NonZero<*const u8>" %29, %"2.core::nonzero::NonZero<*const u8>"* %31
%32 = getelementptr inbounds %"2.std::ptr::Unique<u8>", %"2.std::ptr::Unique<u8>"* %30, i32 0, i32 1
store %"2.std::marker::PhantomData<u8>" undef, %"2.std::marker::PhantomData<u8>"* %32
%33 = getelementptr inbounds %"5.alloc::raw_vec::RawVec<u8>", %"5.alloc::raw_vec::RawVec<u8>"* %0, i32 0, i32 1
store i64 %10, i64* %33
br label %bb7
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h06bae71c5adae41eE"(%"3.std::string::String"*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const std::string::String>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const std::string::String>", %"2.core::nonzero::NonZero<*const std::string::String>"* %_0, i32 0, i32 0
store %"3.std::string::String"* %0, %"3.std::string::String"** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const std::string::String>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h0f1532dec12bad36E"(i32*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const u32>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const u32>", %"2.core::nonzero::NonZero<*const u32>"* %_0, i32 0, i32 0
store i32* %0, i32** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const u32>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h24d217e1ac0198dcE"(i64*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const i64>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const i64>", %"2.core::nonzero::NonZero<*const i64>"* %_0, i32 0, i32 0
store i64* %0, i64** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const i64>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h42bdd38325c80f8aE"(i8*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const u8>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const u8>", %"2.core::nonzero::NonZero<*const u8>"* %_0, i32 0, i32 0
store i8* %0, i8** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const u8>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h65e5d72e04d898c8E"(i8*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const i8>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const i8>", %"2.core::nonzero::NonZero<*const i8>"* %_0, i32 0, i32 0
store i8* %0, i8** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const i8>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h7410f5d87cddf887E"(i64*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const usize>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const usize>", %"2.core::nonzero::NonZero<*const usize>"* %_0, i32 0, i32 0
store i64* %0, i64** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const usize>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h86f90f4f7195a53bE"(i16*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const i16>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const i16>", %"2.core::nonzero::NonZero<*const i16>"* %_0, i32 0, i32 0
store i16* %0, i16** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const i16>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17h9ab6616eed31b964E"(i64*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const u64>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const u64>", %"2.core::nonzero::NonZero<*const u64>"* %_0, i32 0, i32 0
store i64* %0, i64** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const u64>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hbc597cabe572cb88E"(i16*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const u16>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const u16>", %"2.core::nonzero::NonZero<*const u16>"* %_0, i32 0, i32 0
store i16* %0, i16** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const u16>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hda4c51b91b897c40E"(i32*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const char>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const char>", %"2.core::nonzero::NonZero<*const char>"* %_0, i32 0, i32 0
store i32* %0, i32** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const char>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17he2c3ff8170a7dd5fE"(i32*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const i32>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const i32>", %"2.core::nonzero::NonZero<*const i32>"* %_0, i32 0, i32 0
store i32* %0, i32** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const i32>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: alwaysinline uwtable
define internal i8* @"_ZN40_$LT$core..nonzero..NonZero$LT$T$GT$$GT$3new17hf11e7e25efaf0fefE"(i64*) unnamed_addr #1 {
entry-block:
%_0 = alloca %"2.core::nonzero::NonZero<*const isize>"
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.core::nonzero::NonZero<*const isize>", %"2.core::nonzero::NonZero<*const isize>"* %_0, i32 0, i32 0
store i64* %0, i64** %1
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
%2 = bitcast %"2.core::nonzero::NonZero<*const isize>"* %_0 to i8**
%3 = load i8*, i8** %2, align 8
ret i8* %3
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN40_$LT$usize$u20$as$u20$core..ops..Add$GT$3add17h7289c08fb15d73b5E"(i64, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %0, i64 %1)
%3 = extractvalue { i64, i1 } %2, 0
%4 = extractvalue { i64, i1 } %2, 1
%5 = call i1 @llvm.expect.i1(i1 %4, i1 false)
br i1 %5, label %panic, label %bb1
bb1: ; preds = %start
ret i64 %3
panic: ; preds = %start
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* @panic_loc12461)
unreachable
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$3len17h224bb3d60e628bcdE"(i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call { i8*, i64 } @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8as_bytes17hd7221f0ab57906a8E"(i8* noalias nonnull readonly %0, i64 %1)
%3 = extractvalue { i8*, i64 } %2, 0
%4 = extractvalue { i8*, i64 } %2, 1
br label %bb1
bb1: ; preds = %start
%5 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17hbe72fc028233252cE"(i8* noalias nonnull readonly %3, i64 %4)
br label %bb2
bb2: ; preds = %bb1
ret i64 %5
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$5chars17hb8ceaed3733e6147E"(%"2.std::str::Chars"* noalias nocapture sret dereferenceable(16), i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
%_3 = alloca %"2.std::slice::Iter<u8>"
br label %start
start: ; preds = %entry-block
%3 = call { i8*, i64 } @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8as_bytes17hd7221f0ab57906a8E"(i8* noalias nonnull readonly %1, i64 %2)
%4 = extractvalue { i8*, i64 } %3, 0
%5 = extractvalue { i8*, i64 } %3, 1
br label %bb1
bb1: ; preds = %start
call void @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$4iter17h89146f137a741a92E"(%"2.std::slice::Iter<u8>"* noalias nocapture sret dereferenceable(16) %_3, i8* noalias nonnull readonly %4, i64 %5)
br label %bb2
bb2: ; preds = %bb1
%6 = getelementptr inbounds %"2.std::str::Chars", %"2.std::str::Chars"* %0, i32 0, i32 0
%7 = bitcast %"2.std::slice::Iter<u8>"* %_3 to i8*
%8 = bitcast %"2.std::slice::Iter<u8>"* %6 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %7, i64 16, i32 8, i1 false)
ret void
}
; Function Attrs: inlinehint uwtable
define internal { i8*, i64 } @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8as_bytes17hd7221f0ab57906a8E"(i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
%lvalue_temp = alloca { i8*, i64 }
br label %start
start: ; preds = %entry-block
%2 = bitcast { i8*, i64 }* %lvalue_temp to %str_slice*
%3 = getelementptr inbounds %str_slice, %str_slice* %2, i32 0, i32 0
store i8* %0, i8** %3
%4 = getelementptr inbounds %str_slice, %str_slice* %2, i32 0, i32 1
store i64 %1, i64* %4
%5 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %lvalue_temp, i32 0, i32 0
%6 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %lvalue_temp, i32 0, i32 1
%7 = load i8*, i8** %5
%8 = load i64, i64* %6
br label %bb1
bb1: ; preds = %start
%9 = insertvalue { i8*, i64 } undef, i8* %7, 0
%10 = insertvalue { i8*, i64 } %9, i64 %8, 1
ret { i8*, i64 } %10
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$8is_empty17hb09759392c83dfc7E"(i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = call i64 @"_ZN41_$LT$str$u20$as$u20$core..str..StrExt$GT$3len17h224bb3d60e628bcdE"(i8* noalias nonnull readonly %0, i64 %1)
br label %bb1
bb1: ; preds = %start
%3 = icmp eq i64 %2, 0
ret i1 %3
}
; Function Attrs: inlinehint uwtable
define internal i8 @"_ZN41_$LT$u8$u20$as$u20$core..clone..Clone$GT$5clone17h0cb281fc991f0b72E"(i8* noalias readonly dereferenceable(1)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = load i8, i8* %0
br label %bb1
bb1: ; preds = %start
ret i8 %1
}
; Function Attrs: inlinehint uwtable
define internal i32 @"_ZN42_$LT$u32$u20$as$u20$core..clone..Clone$GT$5clone17h65a9fb3ec581a039E"(i32* noalias readonly dereferenceable(4)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = load i32, i32* %0
br label %bb1
bb1: ; preds = %start
ret i32 %1
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN42_$LT$u64$u20$as$u20$core..clone..Clone$GT$5clone17h14bbafde7f567ddeE"(i64* noalias readonly dereferenceable(8)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = load i64, i64* %0
br label %bb1
bb1: ; preds = %start
ret i64 %1
}
; Function Attrs: inlinehint uwtable
define internal i32 @"_ZN43_$LT$char$u20$as$u20$core..clone..Clone$GT$5clone17h528d4337ea69804eE"(i32* noalias readonly dereferenceable(4)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = load i32, i32* %0, !range !4
br label %bb1
bb1: ; preds = %start
ret i32 %1
}
; Function Attrs: inlinehint uwtable
define internal %str_slice @"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$11encode_utf817h1d2884c23913080eE"(i32, i8* nonnull, i64) unnamed_addr #0 {
entry-block:
%code = alloca i32
%len = alloca i64
%_9 = alloca i8
%_18 = alloca i8
%_35 = alloca i8
%_85 = alloca %"2.std::fmt::Arguments"
%_90 = alloca [3 x %"2.std::fmt::ArgumentV1"]
%_91 = alloca { i64*, i32*, i64* }
%_93 = alloca i64
%_98 = alloca i64
%tmp_ret = alloca %"2.std::fmt::ArgumentV1"
%tmp_ret1 = alloca %"2.std::fmt::ArgumentV1"
%tmp_ret2 = alloca %"2.std::fmt::ArgumentV1"
%lvalue_temp = alloca %str_slice
br label %start
start: ; preds = %entry-block
store i32 %0, i32* %code
%3 = load i32, i32* %code
%4 = icmp ult i32 %3, 128
br i1 %4, label %bb3, label %bb2
bb1: ; preds = %bb5
store i8 1, i8* %_9
br label %bb4
bb2: ; preds = %bb5, %start
store i8 0, i8* %_9
br label %bb4
bb3: ; preds = %start
%5 = call zeroext i1 @_ZN4core5slice8SliceExt8is_empty17h484c3f2938c8d978E(i8* noalias nonnull readonly %1, i64 %2)
br label %bb5
bb4: ; preds = %bb1, %bb2
%6 = load i8, i8* %_9, !range !1
%7 = trunc i8 %6 to i1
br i1 %7, label %bb6, label %bb7
bb5: ; preds = %bb3
%8 = xor i1 %5, true
br i1 %8, label %bb1, label %bb2
bb6: ; preds = %bb4
%9 = load i32, i32* %code
%10 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 0)
br label %bb8
bb7: ; preds = %bb4
%11 = load i32, i32* %code
%12 = icmp ult i32 %11, 2048
br i1 %12, label %bb11, label %bb10
bb8: ; preds = %bb6
%13 = trunc i32 %9 to i8
store i8 %13, i8* %10
store i64 1, i64* %len
br label %bb44
bb9: ; preds = %bb13
store i8 1, i8* %_18
br label %bb12
bb10: ; preds = %bb13, %bb7
store i8 0, i8* %_18
br label %bb12
bb11: ; preds = %bb7
%14 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17hbe72fc028233252cE"(i8* noalias nonnull readonly %1, i64 %2)
br label %bb13
bb12: ; preds = %bb9, %bb10
%15 = load i8, i8* %_18, !range !1
%16 = trunc i8 %15 to i1
br i1 %16, label %bb14, label %bb15
bb13: ; preds = %bb11
%17 = icmp uge i64 %14, 2
br i1 %17, label %bb9, label %bb10
bb14: ; preds = %bb12
%18 = load i32, i32* %code
%19 = lshr i32 %18, 6
%20 = and i32 %19, 31
%21 = trunc i32 %20 to i8
%22 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 0)
br label %bb16
bb15: ; preds = %bb12
%23 = load i32, i32* %code
%24 = icmp ult i32 %23, 65536
br i1 %24, label %bb20, label %bb19
bb16: ; preds = %bb14
%25 = or i8 %21, -64
store i8 %25, i8* %22
%26 = load i32, i32* %code
%27 = and i32 %26, 63
%28 = trunc i32 %27 to i8
%29 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 1)
br label %bb17
bb17: ; preds = %bb16
%30 = or i8 %28, -128
store i8 %30, i8* %29
store i64 2, i64* %len
br label %bb43
bb18: ; preds = %bb22
store i8 1, i8* %_35
br label %bb21
bb19: ; preds = %bb22, %bb15
store i8 0, i8* %_35
br label %bb21
bb20: ; preds = %bb15
%31 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17hbe72fc028233252cE"(i8* noalias nonnull readonly %1, i64 %2)
br label %bb22
bb21: ; preds = %bb18, %bb19
%32 = load i8, i8* %_35, !range !1
%33 = trunc i8 %32 to i1
br i1 %33, label %bb23, label %bb24
bb22: ; preds = %bb20
%34 = icmp uge i64 %31, 3
br i1 %34, label %bb18, label %bb19
bb23: ; preds = %bb21
%35 = load i32, i32* %code
%36 = lshr i32 %35, 12
%37 = and i32 %36, 15
%38 = trunc i32 %37 to i8
%39 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 0)
br label %bb25
bb24: ; preds = %bb21
%40 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17hbe72fc028233252cE"(i8* noalias nonnull readonly %1, i64 %2)
br label %bb28
bb25: ; preds = %bb23
%41 = or i8 %38, -32
store i8 %41, i8* %39
%42 = load i32, i32* %code
%43 = lshr i32 %42, 6
%44 = and i32 %43, 63
%45 = trunc i32 %44 to i8
%46 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 1)
br label %bb26
bb26: ; preds = %bb25
%47 = or i8 %45, -128
store i8 %47, i8* %46
%48 = load i32, i32* %code
%49 = and i32 %48, 63
%50 = trunc i32 %49 to i8
%51 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 2)
br label %bb27
bb27: ; preds = %bb26
%52 = or i8 %50, -128
store i8 %52, i8* %51
store i64 3, i64* %len
br label %bb42
bb28: ; preds = %bb24
%53 = icmp uge i64 %40, 4
br i1 %53, label %bb29, label %bb30
bb29: ; preds = %bb28
%54 = load i32, i32* %code
%55 = lshr i32 %54, 18
%56 = and i32 %55, 7
%57 = trunc i32 %56 to i8
%58 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 0)
br label %bb31
bb30: ; preds = %bb28
%59 = load %str_slice*, %str_slice** getelementptr inbounds ({ %str_slice*, i64 }, { %str_slice*, i64 }* @"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$11encode_utf815__STATIC_FMTSTR17ha2af189154156a1cE", i32 0, i32 0)
%60 = load i64, i64* getelementptr inbounds ({ %str_slice*, i64 }, { %str_slice*, i64 }* @"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$11encode_utf815__STATIC_FMTSTR17ha2af189154156a1cE", i32 0, i32 1)
%61 = load i32, i32* %code
%62 = call i32 @_ZN4core4char18from_u32_unchecked17h735e6db8c59dd22cE(i32 %61)
br label %bb35
bb31: ; preds = %bb29
%63 = or i8 %57, -16
store i8 %63, i8* %58
%64 = load i32, i32* %code
%65 = lshr i32 %64, 12
%66 = and i32 %65, 63
%67 = trunc i32 %66 to i8
%68 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 1)
br label %bb32
bb32: ; preds = %bb31
%69 = or i8 %67, -128
store i8 %69, i8* %68
%70 = load i32, i32* %code
%71 = lshr i32 %70, 6
%72 = and i32 %71, 63
%73 = trunc i32 %72 to i8
%74 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 2)
br label %bb33
bb33: ; preds = %bb32
%75 = or i8 %73, -128
store i8 %75, i8* %74
%76 = load i32, i32* %code
%77 = and i32 %76, 63
%78 = trunc i32 %77 to i8
%79 = call dereferenceable(1) i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$17get_unchecked_mut17h341407de4690c5c8E"(i8* nonnull %1, i64 %2, i64 3)
br label %bb34
bb34: ; preds = %bb33
%80 = or i8 %78, -128
store i8 %80, i8* %79
store i64 4, i64* %len
br label %bb42
bb35: ; preds = %bb30
%81 = call i64 @"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$8len_utf817ha1d2b0c6c615a34cE"(i32 %62)
store i64 %81, i64* %_93
br label %bb36
bb36: ; preds = %bb35
%82 = call i64 @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$3len17hbe72fc028233252cE"(i8* noalias nonnull readonly %1, i64 %2)
store i64 %82, i64* %_98
br label %bb37
bb37: ; preds = %bb36
%83 = getelementptr inbounds { i64*, i32*, i64* }, { i64*, i32*, i64* }* %_91, i32 0, i32 0
store i64* %_93, i64** %83
%84 = getelementptr inbounds { i64*, i32*, i64* }, { i64*, i32*, i64* }* %_91, i32 0, i32 1
store i32* %code, i32** %84
%85 = getelementptr inbounds { i64*, i32*, i64* }, { i64*, i32*, i64* }* %_91, i32 0, i32 2
store i64* %_98, i64** %85
%86 = getelementptr inbounds { i64*, i32*, i64* }, { i64*, i32*, i64* }* %_91, i32 0, i32 0
%87 = load i64*, i64** %86, !nonnull !0
%88 = getelementptr inbounds { i64*, i32*, i64* }, { i64*, i32*, i64* }* %_91, i32 0, i32 1
%89 = load i32*, i32** %88, !nonnull !0
%90 = getelementptr inbounds { i64*, i32*, i64* }, { i64*, i32*, i64* }* %_91, i32 0, i32 2
%91 = load i64*, i64** %90, !nonnull !0
call void @_ZN4core3fmt10ArgumentV13new17h8092ba7ee9ecb404E(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16) %tmp_ret, i64* noalias readonly dereferenceable(8) %87, i8 (i64*, %"2.std::fmt::Formatter"*)* @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h69ecc6b3a66736a8E")
%92 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret, i32 0, i32 0
%93 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret, i32 0, i32 1
%94 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %92, !nonnull !0
%95 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %93
br label %bb38
bb38: ; preds = %bb37
call void @_ZN4core3fmt10ArgumentV13new17h689216b7a2581059E(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16) %tmp_ret1, i32* noalias readonly dereferenceable(4) %89, i8 (i32*, %"2.std::fmt::Formatter"*)* @"_ZN4core3fmt3num53_$LT$impl$u20$core..fmt..UpperHex$u20$for$u20$u32$GT$3fmt17h6859bbd2795f37feE")
%96 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret1, i32 0, i32 0
%97 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret1, i32 0, i32 1
%98 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %96, !nonnull !0
%99 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %97
br label %bb39
bb39: ; preds = %bb38
call void @_ZN4core3fmt10ArgumentV13new17h8092ba7ee9ecb404E(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16) %tmp_ret2, i64* noalias readonly dereferenceable(8) %91, i8 (i64*, %"2.std::fmt::Formatter"*)* @"_ZN4core3fmt3num54_$LT$impl$u20$core..fmt..Display$u20$for$u20$usize$GT$3fmt17h69ecc6b3a66736a8E")
%100 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret2, i32 0, i32 0
%101 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret2, i32 0, i32 1
%102 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %100, !nonnull !0
%103 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %101
br label %bb40
bb40: ; preds = %bb39
%104 = getelementptr inbounds [3 x %"2.std::fmt::ArgumentV1"], [3 x %"2.std::fmt::ArgumentV1"]* %_90, i32 0, i32 0
%105 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %104, i32 0, i32 0
store %"2.core::fmt::Void"* %94, %"2.core::fmt::Void"** %105
%106 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %104, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %95, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %106
%107 = getelementptr inbounds [3 x %"2.std::fmt::ArgumentV1"], [3 x %"2.std::fmt::ArgumentV1"]* %_90, i32 0, i32 1
%108 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %107, i32 0, i32 0
store %"2.core::fmt::Void"* %98, %"2.core::fmt::Void"** %108
%109 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %107, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %99, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %109
%110 = getelementptr inbounds [3 x %"2.std::fmt::ArgumentV1"], [3 x %"2.std::fmt::ArgumentV1"]* %_90, i32 0, i32 2
%111 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %110, i32 0, i32 0
store %"2.core::fmt::Void"* %102, %"2.core::fmt::Void"** %111
%112 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %110, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %103, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %112
%113 = bitcast [3 x %"2.std::fmt::ArgumentV1"]* %_90 to %"2.std::fmt::ArgumentV1"*
call void @_ZN4core3fmt9Arguments6new_v117h4c1ce7bc60005933E(%"2.std::fmt::Arguments"* noalias nocapture sret dereferenceable(48) %_85, %str_slice* noalias nonnull readonly %59, i64 %60, %"2.std::fmt::ArgumentV1"* noalias nonnull readonly %113, i64 3)
br label %bb41
bb41: ; preds = %bb40
call void @_ZN4core9panicking9panic_fmt17h9af671b78898cdbaE(%"2.std::fmt::Arguments"* noalias nocapture dereferenceable(48) %_85, { %str_slice, i32 }* noalias readonly dereferenceable(24) @"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$11encode_utf810_FILE_LINE17h713284ebec095a44E")
unreachable
bb42: ; preds = %bb27, %bb34
br label %bb43
bb43: ; preds = %bb17, %bb42
br label %bb44
bb44: ; preds = %bb8, %bb43
%114 = call i8* @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$10as_mut_ptr17h1640273ba7ae1504E"(i8* nonnull %1, i64 %2)
br label %bb45
bb45: ; preds = %bb44
%115 = load i64, i64* %len
%116 = call { i8*, i64 } @_ZN4core5slice18from_raw_parts_mut17hae9cf74c88bd4095E(i8* %114, i64 %115)
%117 = extractvalue { i8*, i64 } %116, 0
%118 = extractvalue { i8*, i64 } %116, 1
br label %bb46
bb46: ; preds = %bb45
%119 = bitcast %str_slice* %lvalue_temp to { i8*, i64 }*
%120 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %119, i32 0, i32 0
store i8* %117, i8** %120
%121 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %119, i32 0, i32 1
store i64 %118, i64* %121
%122 = getelementptr inbounds %str_slice, %str_slice* %lvalue_temp, i32 0, i32 0
%123 = getelementptr inbounds %str_slice, %str_slice* %lvalue_temp, i32 0, i32 1
%124 = load i8*, i8** %122
%125 = load i64, i64* %123
br label %bb47
bb47: ; preds = %bb46
%126 = insertvalue %str_slice undef, i8* %124, 0
%127 = insertvalue %str_slice %126, i64 %125, 1
ret %str_slice %127
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN44_$LT$char$u20$as$u20$core..char..CharExt$GT$8len_utf817ha1d2b0c6c615a34cE"(i32) unnamed_addr #0 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = icmp ult i32 %0, 128
br i1 %1, label %bb1, label %bb2
bb1: ; preds = %start
store i64 1, i64* %_0
br label %bb9
bb2: ; preds = %start
%2 = icmp ult i32 %0, 2048
br i1 %2, label %bb3, label %bb4
bb3: ; preds = %bb2
store i64 2, i64* %_0
br label %bb8
bb4: ; preds = %bb2
%3 = icmp ult i32 %0, 65536
br i1 %3, label %bb5, label %bb6
bb5: ; preds = %bb4
store i64 3, i64* %_0
br label %bb7
bb6: ; preds = %bb4
store i64 4, i64* %_0
br label %bb7
bb7: ; preds = %bb5, %bb6
br label %bb8
bb8: ; preds = %bb3, %bb7
br label %bb9
bb9: ; preds = %bb1, %bb8
%4 = load i64, i64* %_0
ret i64 %4
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN47_$LT$core..result..Result$LT$T$C$$u20$E$GT$$GT$2ok17h62cc1c78972793fdE"(i64) unnamed_addr #0 {
entry-block:
%arg0 = alloca %"2.std::result::Result<char, std::char::CharTryFromError>"
%abi_cast = alloca i64
%_0 = alloca %"2.std::option::Option<char>"
%self = alloca %"2.std::result::Result<char, std::char::CharTryFromError>"
%_6 = alloca i8
%personalityslot = alloca { i8*, i32 }
store i64 %0, i64* %abi_cast
%1 = bitcast %"2.std::result::Result<char, std::char::CharTryFromError>"* %arg0 to i8*
%2 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %1, i8* %2, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_6
store i8 1, i8* %_6
%3 = load %"2.std::result::Result<char, std::char::CharTryFromError>", %"2.std::result::Result<char, std::char::CharTryFromError>"* %arg0
store %"2.std::result::Result<char, std::char::CharTryFromError>" %3, %"2.std::result::Result<char, std::char::CharTryFromError>"* %self
%4 = getelementptr inbounds %"2.std::result::Result<char, std::char::CharTryFromError>", %"2.std::result::Result<char, std::char::CharTryFromError>"* %self, i32 0, i32 0
%5 = load i32, i32* %4, !range !3
switch i32 %5, label %unreachable [
i32 0, label %bb2
i32 1, label %bb3
]
bb1: ; No predecessors!
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %start
store i8 0, i8* %_6
%7 = bitcast %"2.std::result::Result<char, std::char::CharTryFromError>"* %self to { i32, i32 }*
%8 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %7, i32 0, i32 1
%9 = load i32, i32* %8, !range !4
%10 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_0, i32 0, i32 0
store i32 1, i32* %10
%11 = bitcast %"2.std::option::Option<char>"* %_0 to { i32, i32 }*
%12 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %11, i32 0, i32 1
store i32 %9, i32* %12
br label %bb4
bb3: ; preds = %start
%13 = getelementptr inbounds %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_0, i32 0, i32 0
store i32 0, i32* %13
br label %bb4
bb4: ; preds = %bb2, %bb3
br label %bb9
bb5: ; preds = %bb7, %bb6, %bb8
%14 = bitcast %"2.std::option::Option<char>"* %_0 to i64*
%15 = load i64, i64* %14, align 4
ret i64 %15
bb6: ; preds = %bb9
%16 = load i8, i8* %_6, !range !1
%17 = trunc i8 %16 to i1
br i1 %17, label %bb7, label %bb5
bb7: ; preds = %bb6
store i8 0, i8* %_6
br label %bb5
bb8: ; preds = %bb9
br label %bb5
bb9: ; preds = %bb4
%18 = getelementptr inbounds %"2.std::result::Result<char, std::char::CharTryFromError>", %"2.std::result::Result<char, std::char::CharTryFromError>"* %self, i32 0, i32 0
%19 = load i32, i32* %18, !range !3
switch i32 %19, label %unreachable [
i32 0, label %bb6
i32 1, label %bb8
]
unreachable: ; preds = %bb9, %start
unreachable
}
; Function Attrs: uwtable
define internal i8 @"_ZN48_$LT$$u5b$T$u5d$$u20$as$u20$core..fmt..Debug$GT$3fmt17h31689c1db78d91d9E"(%"3.std::string::String"* noalias nonnull readonly, i64, %"2.std::fmt::Formatter"* dereferenceable(96)) unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::result::Result<(), std::fmt::Error>"
%_8 = alloca %"2.std::fmt::DebugList"
%_10 = alloca %"2.std::slice::Iter<std::string::String>"
%abi_cast = alloca i8
br label %start
start: ; preds = %entry-block
call void @_ZN4core3fmt9Formatter10debug_list17heb970e4a6586eedbE(%"2.std::fmt::DebugList"* noalias nocapture sret dereferenceable(16) %_8, %"2.std::fmt::Formatter"* dereferenceable(96) %2)
br label %bb1
bb1: ; preds = %start
call void @"_ZN53_$LT$$u5b$T$u5d$$u20$as$u20$core..slice..SliceExt$GT$4iter17hebd9d4cf3487d76bE"(%"2.std::slice::Iter<std::string::String>"* noalias nocapture sret dereferenceable(16) %_10, %"3.std::string::String"* noalias nonnull readonly %0, i64 %1)
br label %bb2
bb2: ; preds = %bb1
%3 = call dereferenceable(16) %"2.std::fmt::DebugList"* @_ZN4core3fmt8builders9DebugList7entries17hd10ac3ca091dfd12E(%"2.std::fmt::DebugList"* dereferenceable(16) %_8, %"2.std::slice::Iter<std::string::String>"* noalias nocapture dereferenceable(16) %_10)
br label %bb3
bb3: ; preds = %bb2
%4 = call i8 @_ZN4core3fmt8builders9DebugList6finish17h56542a61931b9485E(%"2.std::fmt::DebugList"* dereferenceable(16) %3)
store i8 %4, i8* %abi_cast
%5 = bitcast %"2.std::result::Result<(), std::fmt::Error>"* %_0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %abi_cast, i64 1, i32 1, i1 false)
br label %bb4
bb4: ; preds = %bb3
%6 = bitcast %"2.std::result::Result<(), std::fmt::Error>"* %_0 to i8*
%7 = load i8, i8* %6, align 1
ret i8 %7
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN49_$LT$usize$u20$as$u20$core..iter..range..Step$GT$7add_one17hae260bd1b04e8a30E"(i64* noalias readonly dereferenceable(8)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = load i64, i64* %0
%2 = add i64 %1, 1
br label %bb1
bb1: ; preds = %start
ret i64 %2
}
; Function Attrs: uwtable
define internal i64 @"_ZN49_$LT$usize$u20$as$u20$core..iter..traits..Sum$GT$3sum17h0f0d4afabfab8da6E"(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%iter = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%_3 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %0 to i8*
%2 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %iter to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 16, i32 8, i1 false)
%3 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %iter to i8*
%4 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %_3 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 16, i32 8, i1 false)
%5 = invoke i64 @_ZN4core4iter8iterator8Iterator4fold17h01ca7f97a6f51929E(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16) %_3, i64 0)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %start
ret i64 %5
cleanup: ; preds = %start
%7 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %7, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: uwtable
define internal i64 @"_ZN49_$LT$usize$u20$as$u20$core..iter..traits..Sum$GT$3sum17h26a0dd0ac30562f2E"(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%iter = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%_3 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %0 to i8*
%2 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %iter to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 16, i32 8, i1 false)
%3 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %iter to i8*
%4 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %_3 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 16, i32 8, i1 false)
%5 = invoke i64 @_ZN4core4iter8iterator8Iterator4fold17he1b6a15451319d7dE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16) %_3, i64 0)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %start
ret i64 %5
cleanup: ; preds = %start
%7 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %7, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3cmp3max17h259b66fcc63cb2f4E(i64, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca i64
%v1 = alloca i64
%v2 = alloca i64
%_11 = alloca i8
%_12 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_12
store i8 0, i8* %_11
store i8 1, i8* %_11
store i64 %0, i64* %v1
store i8 1, i8* %_12
store i64 %1, i64* %v2
%2 = invoke zeroext i1 @"_ZN4core3cmp5impls57_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$usize$GT$2ge17h45b6d356d4b3fdc3E"(i64* noalias readonly dereferenceable(8) %v2, i64* noalias readonly dereferenceable(8) %v1)
to label %bb4 unwind label %cleanup
bb1: ; preds = %bb10, %bb2
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %bb11, %bb3
%4 = load i8, i8* %_11, !range !1
%5 = trunc i8 %4 to i1
br i1 %5, label %bb10, label %bb1
bb3: ; preds = %cleanup
%6 = load i8, i8* %_12, !range !1
%7 = trunc i8 %6 to i1
br i1 %7, label %bb11, label %bb2
bb4: ; preds = %start
br i1 %2, label %bb5, label %bb6
bb5: ; preds = %bb4
store i8 0, i8* %_12
%8 = load i64, i64* %v2
store i64 %8, i64* %_0
br label %bb7
bb6: ; preds = %bb4
store i8 0, i8* %_11
%9 = load i64, i64* %v1
store i64 %9, i64* %_0
br label %bb7
bb7: ; preds = %bb5, %bb6
br label %bb13
bb8: ; preds = %bb12, %bb13
br label %bb15
bb9: ; preds = %bb14, %bb15
%10 = load i64, i64* %_0
ret i64 %10
bb10: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
bb11: ; preds = %bb3
store i8 0, i8* %_12
br label %bb2
bb12: ; preds = %bb13
store i8 0, i8* %_12
br label %bb8
bb13: ; preds = %bb7
%11 = load i8, i8* %_12, !range !1
%12 = trunc i8 %11 to i1
br i1 %12, label %bb12, label %bb8
bb14: ; preds = %bb15
store i8 0, i8* %_11
br label %bb9
bb15: ; preds = %bb8
%13 = load i8, i8* %_11, !range !1
%14 = trunc i8 %13 to i1
br i1 %14, label %bb14, label %bb9
cleanup: ; preds = %start
%15 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %15, { i8*, i32 }* %personalityslot
br label %bb3
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3cmp5impls56_$LT$impl$u20$core..cmp..PartialEq$u20$for$u20$usize$GT$2eq17h3a7c6ca10f97ce3fE"(i64* noalias readonly dereferenceable(8), i64* noalias readonly dereferenceable(8)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = load i64, i64* %0
%3 = load i64, i64* %1
%4 = icmp eq i64 %2, %3
br label %bb1
bb1: ; preds = %start
ret i1 %4
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3cmp5impls57_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$usize$GT$2ge17h45b6d356d4b3fdc3E"(i64* noalias readonly dereferenceable(8), i64* noalias readonly dereferenceable(8)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = load i64, i64* %0
%3 = load i64, i64* %1
%4 = icmp uge i64 %2, %3
br label %bb1
bb1: ; preds = %start
ret i1 %4
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3cmp5impls57_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$usize$GT$2lt17h5c23b530f756d76eE"(i64* noalias readonly dereferenceable(8), i64* noalias readonly dereferenceable(8)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = load i64, i64* %0
%3 = load i64, i64* %1
%4 = icmp ult i64 %2, %3
br label %bb1
bb1: ; preds = %start
ret i1 %4
}
; Function Attrs: uwtable
define internal void @_ZN4core3fmt10ArgumentV13new17h689216b7a2581059E(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16), i32* noalias readonly dereferenceable(4), i8 (i32*, %"2.std::fmt::Formatter"*)*) unnamed_addr #2 {
entry-block:
%lvalue_temp = alloca i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*
%lvalue_temp1 = alloca %"2.core::fmt::Void"*
br label %start
start: ; preds = %entry-block
%3 = bitcast i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp to i8 (i32*, %"2.std::fmt::Formatter"*)**
store i8 (i32*, %"2.std::fmt::Formatter"*)* %2, i8 (i32*, %"2.std::fmt::Formatter"*)** %3
%4 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp
br label %bb1
bb1: ; preds = %start
%5 = bitcast %"2.core::fmt::Void"** %lvalue_temp1 to i32**
store i32* %1, i32** %5
%6 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %lvalue_temp1, !nonnull !0
br label %bb2
bb2: ; preds = %bb1
%7 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 0
store %"2.core::fmt::Void"* %6, %"2.core::fmt::Void"** %7
%8 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %4, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %8
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core3fmt10ArgumentV13new17h8092ba7ee9ecb404E(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16), i64* noalias readonly dereferenceable(8), i8 (i64*, %"2.std::fmt::Formatter"*)*) unnamed_addr #2 {
entry-block:
%lvalue_temp = alloca i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*
%lvalue_temp1 = alloca %"2.core::fmt::Void"*
br label %start
start: ; preds = %entry-block
%3 = bitcast i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp to i8 (i64*, %"2.std::fmt::Formatter"*)**
store i8 (i64*, %"2.std::fmt::Formatter"*)* %2, i8 (i64*, %"2.std::fmt::Formatter"*)** %3
%4 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp
br label %bb1
bb1: ; preds = %start
%5 = bitcast %"2.core::fmt::Void"** %lvalue_temp1 to i64**
store i64* %1, i64** %5
%6 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %lvalue_temp1, !nonnull !0
br label %bb2
bb2: ; preds = %bb1
%7 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 0
store %"2.core::fmt::Void"* %6, %"2.core::fmt::Void"** %7
%8 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %4, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %8
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core3fmt10ArgumentV13new17haf985a4aa714ffbfE(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16), %"3.std::string::String"** noalias readonly dereferenceable(8), i8 (%"3.std::string::String"**, %"2.std::fmt::Formatter"*)*) unnamed_addr #2 {
entry-block:
%lvalue_temp = alloca i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*
%lvalue_temp1 = alloca %"2.core::fmt::Void"*
br label %start
start: ; preds = %entry-block
%3 = bitcast i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp to i8 (%"3.std::string::String"**, %"2.std::fmt::Formatter"*)**
store i8 (%"3.std::string::String"**, %"2.std::fmt::Formatter"*)* %2, i8 (%"3.std::string::String"**, %"2.std::fmt::Formatter"*)** %3
%4 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp
br label %bb1
bb1: ; preds = %start
%5 = bitcast %"2.core::fmt::Void"** %lvalue_temp1 to %"3.std::string::String"***
store %"3.std::string::String"** %1, %"3.std::string::String"*** %5
%6 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %lvalue_temp1, !nonnull !0
br label %bb2
bb2: ; preds = %bb1
%7 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 0
store %"2.core::fmt::Void"* %6, %"2.core::fmt::Void"** %7
%8 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %4, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %8
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core3fmt10ArgumentV13new17hf18931f30e637d05E(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16), %"2.std::option::Option<usize>"** noalias readonly dereferenceable(8), i8 (%"2.std::option::Option<usize>"**, %"2.std::fmt::Formatter"*)*) unnamed_addr #2 {
entry-block:
%lvalue_temp = alloca i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*
%lvalue_temp1 = alloca %"2.core::fmt::Void"*
br label %start
start: ; preds = %entry-block
%3 = bitcast i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp to i8 (%"2.std::option::Option<usize>"**, %"2.std::fmt::Formatter"*)**
store i8 (%"2.std::option::Option<usize>"**, %"2.std::fmt::Formatter"*)* %2, i8 (%"2.std::option::Option<usize>"**, %"2.std::fmt::Formatter"*)** %3
%4 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp
br label %bb1
bb1: ; preds = %start
%5 = bitcast %"2.core::fmt::Void"** %lvalue_temp1 to %"2.std::option::Option<usize>"***
store %"2.std::option::Option<usize>"** %1, %"2.std::option::Option<usize>"*** %5
%6 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %lvalue_temp1, !nonnull !0
br label %bb2
bb2: ; preds = %bb1
%7 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 0
store %"2.core::fmt::Void"* %6, %"2.core::fmt::Void"** %7
%8 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %4, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %8
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core3fmt10ArgumentV13new17hf8e73eda922ce2beE(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16), %"3.std::string::String"* noalias readonly dereferenceable(24), i8 (%"3.std::string::String"*, %"2.std::fmt::Formatter"*)*) unnamed_addr #2 {
entry-block:
%lvalue_temp = alloca i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*
%lvalue_temp1 = alloca %"2.core::fmt::Void"*
br label %start
start: ; preds = %entry-block
%3 = bitcast i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp to i8 (%"3.std::string::String"*, %"2.std::fmt::Formatter"*)**
store i8 (%"3.std::string::String"*, %"2.std::fmt::Formatter"*)* %2, i8 (%"3.std::string::String"*, %"2.std::fmt::Formatter"*)** %3
%4 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %lvalue_temp
br label %bb1
bb1: ; preds = %start
%5 = bitcast %"2.core::fmt::Void"** %lvalue_temp1 to %"3.std::string::String"**
store %"3.std::string::String"* %1, %"3.std::string::String"** %5
%6 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %lvalue_temp1, !nonnull !0
br label %bb2
bb2: ; preds = %bb1
%7 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 0
store %"2.core::fmt::Void"* %6, %"2.core::fmt::Void"** %7
%8 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %0, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %4, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %8
ret void
}
; Function Attrs: uwtable
define internal dereferenceable(16) %"2.std::fmt::DebugList"* @_ZN4core3fmt8builders9DebugList7entries17hd10ac3ca091dfd12E(%"2.std::fmt::DebugList"* dereferenceable(16), %"2.std::slice::Iter<std::string::String>"* noalias nocapture dereferenceable(16)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%entries = alloca %"2.std::slice::Iter<std::string::String>"
%_result = alloca {}
%_7 = alloca %"2.std::slice::Iter<std::string::String>"
%_8 = alloca {}
%_9 = alloca %"2.std::slice::Iter<std::string::String>"
%iter = alloca %"2.std::slice::Iter<std::string::String>"
%_11 = alloca i8*
%entry = alloca %"3.std::string::String"*
%_22 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_22
%2 = bitcast %"2.std::slice::Iter<std::string::String>"* %1 to i8*
%3 = bitcast %"2.std::slice::Iter<std::string::String>"* %entries to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 16, i32 8, i1 false)
%4 = bitcast %"2.std::slice::Iter<std::string::String>"* %entries to i8*
%5 = bitcast %"2.std::slice::Iter<std::string::String>"* %_9 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %4, i64 16, i32 8, i1 false)
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h2afb6630a4b64fa2E"(%"2.std::slice::Iter<std::string::String>"* noalias nocapture sret dereferenceable(16) %_7, %"2.std::slice::Iter<std::string::String>"* noalias nocapture dereferenceable(16) %_9)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %cleanup
br label %bb1
bb3: ; preds = %start
%7 = bitcast %"2.std::slice::Iter<std::string::String>"* %_7 to i8*
%8 = bitcast %"2.std::slice::Iter<std::string::String>"* %iter to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %7, i64 16, i32 8, i1 false)
br label %bb4
bb4: ; preds = %bb14, %bb3
%9 = invoke i8* @"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17hbb65670e25c47ef6E"(%"2.std::slice::Iter<std::string::String>"* dereferenceable(16) %iter)
to label %bb6 unwind label %cleanup1
bb5: ; preds = %bb16, %bb18, %bb17, %cleanup1
br label %bb1
bb6: ; preds = %bb4
store i8* %9, i8** %_11
store i8 1, i8* %_22
%10 = load i8*, i8** %_11
%11 = icmp ne i8* %10, null
switch i1 %11, label %unreachable [
i1 false, label %bb8
i1 true, label %bb9
]
bb7: ; preds = %bb10
%12 = load i8*, i8** %_11
%13 = icmp ne i8* %12, null
switch i1 %13, label %unreachable [
i1 false, label %bb16
i1 true, label %bb17
]
bb8: ; preds = %bb6
store i8 0, i8* %_22
br label %bb12
bb9: ; preds = %bb6
store i8 0, i8* %_22
%14 = bitcast i8** %_11 to %"3.std::string::String"**
%15 = load %"3.std::string::String"*, %"3.std::string::String"** %14, !nonnull !0
store %"3.std::string::String"* %15, %"3.std::string::String"** %entry
%16 = bitcast %"3.std::string::String"** %entry to i8*
%17 = invoke dereferenceable(16) %"2.std::fmt::DebugList"* @_ZN4core3fmt8builders9DebugList5entry17ha9c8d975bfc3fb4bE(%"2.std::fmt::DebugList"* dereferenceable(16) %0, i8* nonnull %16, void (i8*)** nonnull getelementptr inbounds ({ void (i8*)*, i64, i64, i8 (%"3.std::string::String"**, %"2.std::fmt::Formatter"*)* }, { void (i8*)*, i64, i64, i8 (%"3.std::string::String"**, %"2.std::fmt::Formatter"*)* }* @vtable12466, i32 0, i32 0))
to label %bb11 unwind label %cleanup2
bb10: ; preds = %cleanup2
br label %bb7
bb11: ; preds = %bb9
br label %bb13
bb12: ; preds = %bb8
br label %bb15
bb13: ; preds = %bb11
%18 = load i8*, i8** %_11
%19 = icmp ne i8* %18, null
switch i1 %19, label %unreachable [
i1 false, label %bb19
i1 true, label %bb14
]
bb14: ; preds = %bb19, %bb13
br label %bb4
bb15: ; preds = %bb12
ret %"2.std::fmt::DebugList"* %0
bb16: ; preds = %bb7
br label %bb5
bb17: ; preds = %bb7
%20 = load i8, i8* %_22, !range !1
%21 = trunc i8 %20 to i1
br i1 %21, label %bb18, label %bb5
bb18: ; preds = %bb17
store i8 0, i8* %_22
br label %bb5
bb19: ; preds = %bb13
br label %bb14
cleanup: ; preds = %start
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb2
cleanup1: ; preds = %bb4
%23 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %23, { i8*, i32 }* %personalityslot
br label %bb5
unreachable: ; preds = %bb13, %bb7, %bb6
unreachable
cleanup2: ; preds = %bb9
%24 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %24, { i8*, i32 }* %personalityslot
br label %bb10
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3fmt9Arguments6new_v117h4c1ce7bc60005933E(%"2.std::fmt::Arguments"* noalias nocapture sret dereferenceable(48), %str_slice* noalias nonnull readonly, i64, %"2.std::fmt::ArgumentV1"* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
%_6 = alloca %"2.std::option::Option<&[std::fmt::rt::v1::Argument]>"
br label %start
start: ; preds = %entry-block
%5 = getelementptr inbounds %"2.std::option::Option<&[std::fmt::rt::v1::Argument]>", %"2.std::option::Option<&[std::fmt::rt::v1::Argument]>"* %_6, i32 0, i32 0, i32 0
store %"2.std::fmt::rt::v1::Argument"* null, %"2.std::fmt::rt::v1::Argument"** %5
%6 = getelementptr inbounds %"2.std::fmt::Arguments", %"2.std::fmt::Arguments"* %0, i32 0, i32 0
%7 = getelementptr inbounds { %str_slice*, i64 }, { %str_slice*, i64 }* %6, i32 0, i32 0
store %str_slice* %1, %str_slice** %7
%8 = getelementptr inbounds { %str_slice*, i64 }, { %str_slice*, i64 }* %6, i32 0, i32 1
store i64 %2, i64* %8
%9 = getelementptr inbounds %"2.std::fmt::Arguments", %"2.std::fmt::Arguments"* %0, i32 0, i32 1
%10 = bitcast %"2.std::option::Option<&[std::fmt::rt::v1::Argument]>"* %_6 to i8*
%11 = bitcast %"2.std::option::Option<&[std::fmt::rt::v1::Argument]>"* %9 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %11, i8* %10, i64 16, i32 8, i1 false)
%12 = getelementptr inbounds %"2.std::fmt::Arguments", %"2.std::fmt::Arguments"* %0, i32 0, i32 2
%13 = getelementptr inbounds { %"2.std::fmt::ArgumentV1"*, i64 }, { %"2.std::fmt::ArgumentV1"*, i64 }* %12, i32 0, i32 0
store %"2.std::fmt::ArgumentV1"* %3, %"2.std::fmt::ArgumentV1"** %13
%14 = getelementptr inbounds { %"2.std::fmt::ArgumentV1"*, i64 }, { %"2.std::fmt::ArgumentV1"*, i64 }* %12, i32 0, i32 1
store i64 %4, i64* %14
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3fmt9Formatter10debug_list17heb970e4a6586eedbE(%"2.std::fmt::DebugList"* noalias nocapture sret dereferenceable(16), %"2.std::fmt::Formatter"* dereferenceable(96)) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
call void @_ZN4core3fmt8builders14debug_list_new17h63c06d7c52c3ef63E(%"2.std::fmt::DebugList"* noalias nocapture sret dereferenceable(16) %0, %"2.std::fmt::Formatter"* dereferenceable(96) %1)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3fmt9Formatter11debug_tuple17h40440bf38a73a3cbE(%"2.std::fmt::DebugTuple"* noalias nocapture sret dereferenceable(32), %"2.std::fmt::Formatter"* dereferenceable(96), i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
call void @_ZN4core3fmt8builders15debug_tuple_new17h92760566fa4f111fE(%"2.std::fmt::DebugTuple"* noalias nocapture sret dereferenceable(32) %0, %"2.std::fmt::Formatter"* dereferenceable(96) %1, i8* noalias nonnull readonly %2, i64 %3)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3fmt9Formatter12debug_struct17h72cfec266465eb24E(%"2.std::fmt::DebugStruct"* noalias nocapture sret dereferenceable(16), %"2.std::fmt::Formatter"* dereferenceable(96), i8* noalias nonnull readonly, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
call void @_ZN4core3fmt8builders16debug_struct_new17h8d2a0a7a2f08881fE(%"2.std::fmt::DebugStruct"* noalias nocapture sret dereferenceable(16) %0, %"2.std::fmt::Formatter"* dereferenceable(96) %1, i8* noalias nonnull readonly %2, i64 %3)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem13uninitialized17h0ce703d703c99e6bE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i16 @_ZN4core3mem13uninitialized17h1241b72b0088b482E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i16
br label %start
start: ; preds = %entry-block
%0 = load i16, i16* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i16 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem13uninitialized17h238b3bb8c5053046E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem13uninitialized17h23f02d5188f1c4bbE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i16 @_ZN4core3mem13uninitialized17h28783420c5cb4a37E() unnamed_addr #0 {
entry-block:
%_0 = alloca %"2.std::option::Option<bool>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
%0 = bitcast %"2.std::option::Option<bool>"* %_0 to i16*
%1 = load i16, i16* %0, align 1
ret i16 %1
}
; Function Attrs: inlinehint uwtable
define internal i32 @_ZN4core3mem13uninitialized17h4405bb904b488308E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32
br label %start
start: ; preds = %entry-block
%0 = load i32, i32* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i32 %0
}
; Function Attrs: inlinehint uwtable
define internal i32 @_ZN4core3mem13uninitialized17h6fff1a9e1b35fd76E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32
br label %start
start: ; preds = %entry-block
%0 = load i32, i32* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i32 %0
}
; Function Attrs: inlinehint uwtable
define internal i32 @_ZN4core3mem13uninitialized17h780e9c1652f807a3E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32
br label %start
start: ; preds = %entry-block
%0 = load i32, i32* %tmp_ret, !range !4
br label %bb1
bb1: ; preds = %start
ret i32 %0
}
; Function Attrs: inlinehint uwtable
define internal i16 @_ZN4core3mem13uninitialized17h785f3709d8acecc4E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i16
br label %start
start: ; preds = %entry-block
%0 = load i16, i16* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i16 %0
}
; Function Attrs: inlinehint uwtable
define internal i8 @_ZN4core3mem13uninitialized17h8f23d323cc438639E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i8
br label %start
start: ; preds = %entry-block
%0 = load i8, i8* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i8 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem13uninitialized17h9d9bd4f9bf55ead2E() unnamed_addr #0 {
entry-block:
%_0 = alloca %"2.std::option::Option<char>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
%0 = bitcast %"2.std::option::Option<char>"* %_0 to i64*
%1 = load i64, i64* %0, align 4
ret i64 %1
}
; Function Attrs: inlinehint uwtable
define internal i8 @_ZN4core3mem13uninitialized17hb1cb316f067c9596E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i8
br label %start
start: ; preds = %entry-block
%0 = load i8, i8* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i8 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem13uninitialized17hc07b295fa2459874E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem4swap17hc94818b0d78768a6E(i64* dereferenceable(8), i64* dereferenceable(8)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%t = alloca i64
%_28 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_28
%2 = invoke i64 @_ZN4core3mem13uninitialized17h238b3bb8c5053046E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb8, %bb2
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %cleanup
%4 = load i8, i8* %_28, !range !1
%5 = trunc i8 %4 to i1
br i1 %5, label %bb8, label %bb1
bb3: ; preds = %start
store i64 %2, i64* %t
store i8 1, i8* %_28
%6 = bitcast i64* %t to i8*
%7 = bitcast i64* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %7, i64 8, i32 8, i1 false)
br label %bb4
bb4: ; preds = %bb3
%8 = bitcast i64* %0 to i8*
%9 = bitcast i64* %1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %9, i64 8, i32 8, i1 false)
br label %bb5
bb5: ; preds = %bb4
%10 = bitcast i64* %1 to i8*
%11 = bitcast i64* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %11, i64 8, i32 8, i1 false)
br label %bb6
bb6: ; preds = %bb5
store i8 0, i8* %_28
%12 = load i64, i64* %t
invoke void @_ZN4core3mem6forget17he59cc5ea4da69cb8E(i64 %12)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
ret void
bb8: ; preds = %bb2
store i8 0, i8* %_28
br label %bb1
cleanup: ; preds = %bb6, %start
%13 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %13, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem4swap17hce7b069327fe4453E(%"2.std::option::Option<char>"* dereferenceable(8), %"2.std::option::Option<char>"* dereferenceable(8)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%t = alloca %"2.std::option::Option<char>"
%_27 = alloca %"2.std::option::Option<char>"
%_28 = alloca i8
%personalityslot = alloca { i8*, i32 }
%abi_cast = alloca i64
%arg = alloca %"2.std::option::Option<char>"
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_28
%2 = invoke i64 @_ZN4core3mem13uninitialized17h9d9bd4f9bf55ead2E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb8, %bb2
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %cleanup
%4 = load i8, i8* %_28, !range !1
%5 = trunc i8 %4 to i1
br i1 %5, label %bb8, label %bb1
bb3: ; preds = %start
store i64 %2, i64* %abi_cast
%6 = bitcast %"2.std::option::Option<char>"* %t to i8*
%7 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %7, i64 8, i32 4, i1 false)
store i8 1, i8* %_28
%8 = bitcast %"2.std::option::Option<char>"* %t to i8*
%9 = bitcast %"2.std::option::Option<char>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %9, i64 8, i32 4, i1 false)
br label %bb4
bb4: ; preds = %bb3
%10 = bitcast %"2.std::option::Option<char>"* %0 to i8*
%11 = bitcast %"2.std::option::Option<char>"* %1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %11, i64 8, i32 4, i1 false)
br label %bb5
bb5: ; preds = %bb4
%12 = bitcast %"2.std::option::Option<char>"* %1 to i8*
%13 = bitcast %"2.std::option::Option<char>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %13, i64 8, i32 4, i1 false)
br label %bb6
bb6: ; preds = %bb5
store i8 0, i8* %_28
%14 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %t
store %"2.std::option::Option<char>" %14, %"2.std::option::Option<char>"* %_27
%15 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_27
store %"2.std::option::Option<char>" %15, %"2.std::option::Option<char>"* %arg
%16 = bitcast %"2.std::option::Option<char>"* %arg to i64*
%17 = load i64, i64* %16, align 4
invoke void @_ZN4core3mem6forget17h9369e152555716bdE(i64 %17)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
ret void
bb8: ; preds = %bb2
store i8 0, i8* %_28
br label %bb1
cleanup: ; preds = %bb6, %start
%18 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %18, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem4swap17hdb49a5ba42a8b25aE(%"2.std::option::Option<bool>"* dereferenceable(2), %"2.std::option::Option<bool>"* dereferenceable(2)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca {}
%t = alloca %"2.std::option::Option<bool>"
%_27 = alloca %"2.std::option::Option<bool>"
%_28 = alloca i8
%personalityslot = alloca { i8*, i32 }
%abi_cast = alloca i16
%arg = alloca %"2.std::option::Option<bool>"
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_28
%2 = invoke i16 @_ZN4core3mem13uninitialized17h28783420c5cb4a37E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb8, %bb2
%3 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %3
bb2: ; preds = %cleanup
%4 = load i8, i8* %_28, !range !1
%5 = trunc i8 %4 to i1
br i1 %5, label %bb8, label %bb1
bb3: ; preds = %start
store i16 %2, i16* %abi_cast
%6 = bitcast %"2.std::option::Option<bool>"* %t to i8*
%7 = bitcast i16* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %7, i64 2, i32 1, i1 false)
store i8 1, i8* %_28
%8 = bitcast %"2.std::option::Option<bool>"* %t to i8*
%9 = bitcast %"2.std::option::Option<bool>"* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %9, i64 2, i32 1, i1 false)
br label %bb4
bb4: ; preds = %bb3
%10 = bitcast %"2.std::option::Option<bool>"* %0 to i8*
%11 = bitcast %"2.std::option::Option<bool>"* %1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %11, i64 2, i32 1, i1 false)
br label %bb5
bb5: ; preds = %bb4
%12 = bitcast %"2.std::option::Option<bool>"* %1 to i8*
%13 = bitcast %"2.std::option::Option<bool>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %13, i64 2, i32 1, i1 false)
br label %bb6
bb6: ; preds = %bb5
store i8 0, i8* %_28
%14 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %t
store %"2.std::option::Option<bool>" %14, %"2.std::option::Option<bool>"* %_27
%15 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %_27
store %"2.std::option::Option<bool>" %15, %"2.std::option::Option<bool>"* %arg
%16 = bitcast %"2.std::option::Option<bool>"* %arg to i16*
%17 = load i16, i16* %16, align 1
invoke void @_ZN4core3mem6forget17h404e72ebfa9f6e9eE(i16 %17)
to label %bb7 unwind label %cleanup
bb7: ; preds = %bb6
ret void
bb8: ; preds = %bb2
store i8 0, i8* %_28
br label %bb1
cleanup: ; preds = %bb6, %start
%18 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %18, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h1df2d13be8629d63E(i64* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h2594feee4219edc6E(%"3.std::vec::Vec<u32>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<u32>"
%_4 = alloca %"3.std::vec::Vec<u32>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<u32>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<u32>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<u32>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<u32>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h28320645fa01aac1E(i32* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h2d25154fc3d57626E(%"3.std::vec::Vec<usize>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<usize>"
%_4 = alloca %"3.std::vec::Vec<usize>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<usize>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<usize>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<usize>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<usize>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h3ad8cb6f7dae5f18E(%"3.std::vec::Vec<i32>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<i32>"
%_4 = alloca %"3.std::vec::Vec<i32>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<i32>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<i32>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<i32>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<i32>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h3e73f02274fdfaccE(%"3.std::vec::Vec<char>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<char>"
%_4 = alloca %"3.std::vec::Vec<char>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<char>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<char>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<char>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<char>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h404e72ebfa9f6e9eE(i16) unnamed_addr #0 {
entry-block:
%arg0 = alloca %"2.std::option::Option<bool>"
%abi_cast = alloca i16
%t = alloca %"2.std::option::Option<bool>"
%_4 = alloca %"2.std::option::Option<bool>"
%arg = alloca %"2.std::option::Option<bool>"
%personalityslot = alloca { i8*, i32 }
store i16 %0, i16* %abi_cast
%1 = bitcast %"2.std::option::Option<bool>"* %arg0 to i8*
%2 = bitcast i16* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %1, i8* %2, i64 2, i32 1, i1 false)
br label %start
start: ; preds = %entry-block
%3 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %arg0
store %"2.std::option::Option<bool>" %3, %"2.std::option::Option<bool>"* %t
%4 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %t
store %"2.std::option::Option<bool>" %4, %"2.std::option::Option<bool>"* %_4
%5 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %_4
store %"2.std::option::Option<bool>" %5, %"2.std::option::Option<bool>"* %arg
%6 = bitcast %"2.std::option::Option<bool>"* %arg to i16*
%7 = load i16, i16* %6, align 1
br label %bb2
bb1: ; No predecessors!
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h43d3d7374ed45070E(%"3.std::vec::Vec<u64>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<u64>"
%_4 = alloca %"3.std::vec::Vec<u64>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<u64>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<u64>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<u64>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<u64>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h45153ad572e6f78dE(i8* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h45a90bd9bfd2ac6eE(%"3.std::string::String"* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h4c586f0b08458086E(i16* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h4e6d591eb822bb7bE(%"3.std::vec::Vec<i8>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<i8>"
%_4 = alloca %"3.std::vec::Vec<i8>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<i8>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<i8>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<i8>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<i8>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h542f504241c434afE(i32* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h618ea8d5338626cdE(i64* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h63af839ec4044c18E(%"3.std::vec::Vec<isize>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<isize>"
%_4 = alloca %"3.std::vec::Vec<isize>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<isize>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<isize>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<isize>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<isize>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h68bdae5c0918b004E(i64* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h6d6c3f03dc1dcf6fE(%"3.std::vec::Vec<u8>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<u8>"
%_4 = alloca %"3.std::vec::Vec<u8>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<u8>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<u8>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<u8>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<u8>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h6f77a7e931bf07e7E(%"3.std::vec::Vec<u16>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<u16>"
%_4 = alloca %"3.std::vec::Vec<u16>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<u16>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<u16>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<u16>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<u16>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h7e9d37292940fff3E(%"3.std::vec::Vec<i64>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<i64>"
%_4 = alloca %"3.std::vec::Vec<i64>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<i64>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<i64>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<i64>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<i64>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h9258f501af8f90d9E(i32* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17h9369e152555716bdE(i64) unnamed_addr #0 {
entry-block:
%arg0 = alloca %"2.std::option::Option<char>"
%abi_cast = alloca i64
%t = alloca %"2.std::option::Option<char>"
%_4 = alloca %"2.std::option::Option<char>"
%arg = alloca %"2.std::option::Option<char>"
%personalityslot = alloca { i8*, i32 }
store i64 %0, i64* %abi_cast
%1 = bitcast %"2.std::option::Option<char>"* %arg0 to i8*
%2 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %1, i8* %2, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
%3 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %arg0
store %"2.std::option::Option<char>" %3, %"2.std::option::Option<char>"* %t
%4 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %t
store %"2.std::option::Option<char>" %4, %"2.std::option::Option<char>"* %_4
%5 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_4
store %"2.std::option::Option<char>" %5, %"2.std::option::Option<char>"* %arg
%6 = bitcast %"2.std::option::Option<char>"* %arg to i64*
%7 = load i64, i64* %6, align 4
br label %bb2
bb1: ; No predecessors!
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17ha504bae31a1b1198E(i8* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17hbca4d47c094cdcf2E(%"3.std::vec::Vec<i16>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 {
entry-block:
%t = alloca %"3.std::vec::Vec<i16>"
%_4 = alloca %"3.std::vec::Vec<i16>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"3.std::vec::Vec<i16>"* %0 to i8*
%2 = bitcast %"3.std::vec::Vec<i16>"* %t to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 24, i32 8, i1 false)
%3 = bitcast %"3.std::vec::Vec<i16>"* %t to i8*
%4 = bitcast %"3.std::vec::Vec<i16>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 24, i32 8, i1 false)
br label %bb2
bb1: ; No predecessors!
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17hd67de4d2723f3e20E(i16* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17hdedfcaa470381409E(i64* noalias nonnull, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3mem6forget17he59cc5ea4da69cb8E(i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
br label %bb2
bb1: ; No predecessors!
%1 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %1
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal i16 @_ZN4core3mem7replace17h2048df728785c3dcE(%"2.std::option::Option<bool>"* dereferenceable(2), i16) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"2.std::option::Option<bool>"
%abi_cast = alloca i16
%_0 = alloca %"2.std::option::Option<bool>"
%src = alloca %"2.std::option::Option<bool>"
%_10 = alloca %"2.std::option::Option<bool>"
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
store i16 %1, i16* %abi_cast
%2 = bitcast %"2.std::option::Option<bool>"* %arg1 to i8*
%3 = bitcast i16* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 2, i32 1, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
store i8 1, i8* %_11
%4 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %arg1
store %"2.std::option::Option<bool>" %4, %"2.std::option::Option<bool>"* %src
invoke void @_ZN4core3mem4swap17hdb49a5ba42a8b25aE(%"2.std::option::Option<bool>"* dereferenceable(2) %0, %"2.std::option::Option<bool>"* dereferenceable(2) %src)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %cleanup
%6 = load i8, i8* %_11, !range !1
%7 = trunc i8 %6 to i1
br i1 %7, label %bb4, label %bb1
bb3: ; preds = %start
store i8 0, i8* %_11
%8 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %src
store %"2.std::option::Option<bool>" %8, %"2.std::option::Option<bool>"* %_10
%9 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %_10
store %"2.std::option::Option<bool>" %9, %"2.std::option::Option<bool>"* %_0
%10 = bitcast %"2.std::option::Option<bool>"* %_0 to i16*
%11 = load i16, i16* %10, align 1
ret i16 %11
bb4: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%12 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %12, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7replace17h4532975a004b190eE(%"2.std::option::Option<char>"* dereferenceable(8), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"2.std::option::Option<char>"
%abi_cast = alloca i64
%_0 = alloca %"2.std::option::Option<char>"
%src = alloca %"2.std::option::Option<char>"
%_10 = alloca %"2.std::option::Option<char>"
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
store i64 %1, i64* %abi_cast
%2 = bitcast %"2.std::option::Option<char>"* %arg1 to i8*
%3 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
store i8 1, i8* %_11
%4 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %arg1
store %"2.std::option::Option<char>" %4, %"2.std::option::Option<char>"* %src
invoke void @_ZN4core3mem4swap17hce7b069327fe4453E(%"2.std::option::Option<char>"* dereferenceable(8) %0, %"2.std::option::Option<char>"* dereferenceable(8) %src)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%5 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %5
bb2: ; preds = %cleanup
%6 = load i8, i8* %_11, !range !1
%7 = trunc i8 %6 to i1
br i1 %7, label %bb4, label %bb1
bb3: ; preds = %start
store i8 0, i8* %_11
%8 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %src
store %"2.std::option::Option<char>" %8, %"2.std::option::Option<char>"* %_10
%9 = load %"2.std::option::Option<char>", %"2.std::option::Option<char>"* %_10
store %"2.std::option::Option<char>" %9, %"2.std::option::Option<char>"* %_0
%10 = bitcast %"2.std::option::Option<char>"* %_0 to i64*
%11 = load i64, i64* %10, align 4
ret i64 %11
bb4: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%12 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %12, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h0279f40688563cd6E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 2, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h1df76f49ce8203d4E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 4, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h37bf67c17d1f8e5fE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 1, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h502ea1e63e4e7bbdE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h52fe02a5112a55ccE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h5bbd1b20e5ff78e6E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 4, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h637500bbc8d8103eE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 1, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h6b11b7889e0457faE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h89beb94e1a58a5c6E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 2, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17h8c122eeafbd0827aE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 4, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17hc18cafc80dd8bdf0E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 24, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem7size_of17hdf754897abf3fd2eE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17h1c201c650e2121daE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 4, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17h1d0abb9836326a74E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 4, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17h62913aa188742efdE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 2, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17h65696202062742fbE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17h659f30b30038fc58E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17h699835afe7af106dE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 1, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17h77ad11b1262b39e4E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17ha30afcd3770c3004E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17hc7dc2beb045e919cE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 2, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17hcb03187a1a4af27cE() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 1, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17hd4b9ee722560d780E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 8, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3mem8align_of17he99ef492daf17006E() unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
store i64 4, i64* %tmp_ret
%0 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %0
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3num20_$LT$impl$u20$i8$GT$11is_negative17he9e7f60eac65c856E"(i8) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = icmp slt i8 %0, 0
br label %bb1
bb1: ; preds = %start
ret i1 %1
}
; Function Attrs: inlinehint uwtable
define internal i8 @"_ZN4core3num20_$LT$impl$u20$i8$GT$3abs17he3df2fc2f726708aE"(i8) unnamed_addr #0 {
entry-block:
%_0 = alloca i8
br label %start
start: ; preds = %entry-block
%1 = call zeroext i1 @"_ZN4core3num20_$LT$impl$u20$i8$GT$11is_negative17he9e7f60eac65c856E"(i8 %0)
br label %bb1
bb1: ; preds = %start
br i1 %1, label %bb2, label %bb3
bb2: ; preds = %bb1
%2 = icmp eq i8 %0, -128
%3 = call i1 @llvm.expect.i1(i1 %2, i1 false)
br i1 %3, label %panic, label %bb4
bb3: ; preds = %bb1
store i8 %0, i8* %_0
br label %bb5
bb4: ; preds = %bb2
%4 = sub i8 0, %0
store i8 %4, i8* %_0
br label %bb5
bb5: ; preds = %bb4, %bb3
%5 = load i8, i8* %_0
ret i8 %5
panic: ; preds = %bb2
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* @panic_loc12472)
unreachable
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3num21_$LT$impl$u20$i16$GT$11is_negative17he50fbde4c397d1d7E"(i16) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = icmp slt i16 %0, 0
br label %bb1
bb1: ; preds = %start
ret i1 %1
}
; Function Attrs: inlinehint uwtable
define internal i16 @"_ZN4core3num21_$LT$impl$u20$i16$GT$3abs17hd9ccf45b4b27eaddE"(i16) unnamed_addr #0 {
entry-block:
%_0 = alloca i16
br label %start
start: ; preds = %entry-block
%1 = call zeroext i1 @"_ZN4core3num21_$LT$impl$u20$i16$GT$11is_negative17he50fbde4c397d1d7E"(i16 %0)
br label %bb1
bb1: ; preds = %start
br i1 %1, label %bb2, label %bb3
bb2: ; preds = %bb1
%2 = icmp eq i16 %0, -32768
%3 = call i1 @llvm.expect.i1(i1 %2, i1 false)
br i1 %3, label %panic, label %bb4
bb3: ; preds = %bb1
store i16 %0, i16* %_0
br label %bb5
bb4: ; preds = %bb2
%4 = sub i16 0, %0
store i16 %4, i16* %_0
br label %bb5
bb5: ; preds = %bb4, %bb3
%5 = load i16, i16* %_0
ret i16 %5
panic: ; preds = %bb2
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* @panic_loc12472)
unreachable
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3num21_$LT$impl$u20$i32$GT$11is_negative17hcffa58cc30168298E"(i32) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = icmp slt i32 %0, 0
br label %bb1
bb1: ; preds = %start
ret i1 %1
}
; Function Attrs: inlinehint uwtable
define internal i32 @"_ZN4core3num21_$LT$impl$u20$i32$GT$3abs17h617e4b197fcf8b0eE"(i32) unnamed_addr #0 {
entry-block:
%_0 = alloca i32
br label %start
start: ; preds = %entry-block
%1 = call zeroext i1 @"_ZN4core3num21_$LT$impl$u20$i32$GT$11is_negative17hcffa58cc30168298E"(i32 %0)
br label %bb1
bb1: ; preds = %start
br i1 %1, label %bb2, label %bb3
bb2: ; preds = %bb1
%2 = icmp eq i32 %0, -2147483648
%3 = call i1 @llvm.expect.i1(i1 %2, i1 false)
br i1 %3, label %panic, label %bb4
bb3: ; preds = %bb1
store i32 %0, i32* %_0
br label %bb5
bb4: ; preds = %bb2
%4 = sub i32 0, %0
store i32 %4, i32* %_0
br label %bb5
bb5: ; preds = %bb4, %bb3
%5 = load i32, i32* %_0
ret i32 %5
panic: ; preds = %bb2
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* @panic_loc12472)
unreachable
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3num21_$LT$impl$u20$i64$GT$11is_negative17h1b190326be496f50E"(i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = icmp slt i64 %0, 0
br label %bb1
bb1: ; preds = %start
ret i1 %1
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN4core3num21_$LT$impl$u20$i64$GT$3abs17h438fecf31577a4d4E"(i64) unnamed_addr #0 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call zeroext i1 @"_ZN4core3num21_$LT$impl$u20$i64$GT$11is_negative17h1b190326be496f50E"(i64 %0)
br label %bb1
bb1: ; preds = %start
br i1 %1, label %bb2, label %bb3
bb2: ; preds = %bb1
%2 = icmp eq i64 %0, -9223372036854775808
%3 = call i1 @llvm.expect.i1(i1 %2, i1 false)
br i1 %3, label %panic, label %bb4
bb3: ; preds = %bb1
store i64 %0, i64* %_0
br label %bb5
bb4: ; preds = %bb2
%4 = sub i64 0, %0
store i64 %4, i64* %_0
br label %bb5
bb5: ; preds = %bb4, %bb3
%5 = load i64, i64* %_0
ret i64 %5
panic: ; preds = %bb2
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* @panic_loc12472)
unreachable
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN4core3num21_$LT$impl$u20$u64$GT$11checked_add17hbe38c0e9a0221581E"(%"2.std::option::Option<u64>"* noalias nocapture sret dereferenceable(16), i64, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca { i64, i8 }
br label %start
start: ; preds = %entry-block
call void @"_ZN4core3num21_$LT$impl$u20$u64$GT$15overflowing_add17h6d6a79cec8a475a1E"({ i64, i8 }* noalias nocapture sret dereferenceable(16) %tmp_ret, i64 %1, i64 %2)
%3 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
%4 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
%5 = load i64, i64* %3
%6 = load i8, i8* %4, !range !1
%7 = trunc i8 %6 to i1
br label %bb1
bb1: ; preds = %start
br i1 %7, label %bb2, label %bb3
bb2: ; preds = %bb1
%8 = getelementptr inbounds %"2.std::option::Option<u64>", %"2.std::option::Option<u64>"* %0, i32 0, i32 0
store i64 0, i64* %8
br label %bb4
bb3: ; preds = %bb1
%9 = getelementptr inbounds %"2.std::option::Option<u64>", %"2.std::option::Option<u64>"* %0, i32 0, i32 0
store i64 1, i64* %9
%10 = bitcast %"2.std::option::Option<u64>"* %0 to { i64, i64 }*
%11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %10, i32 0, i32 1
store i64 %5, i64* %11
br label %bb4
bb4: ; preds = %bb2, %bb3
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN4core3num21_$LT$impl$u20$u64$GT$15overflowing_add17h6d6a79cec8a475a1E"({ i64, i8 }* noalias nocapture sret dereferenceable(16), i64, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca { i64, i8 }
br label %start
start: ; preds = %entry-block
%3 = call { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %1, i64 %2)
%4 = extractvalue { i64, i1 } %3, 0
%5 = extractvalue { i64, i1 } %3, 1
%6 = zext i1 %5 to i8
%7 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
store i64 %4, i64* %7
%8 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
store i8 %6, i8* %8
%9 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
%10 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
%11 = load i64, i64* %9
%12 = load i8, i8* %10, !range !1
%13 = trunc i8 %12 to i1
br label %bb1
bb1: ; preds = %start
%14 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 0
store i64 %11, i64* %14
%15 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 1
%16 = zext i1 %13 to i8
store i8 %16, i8* %15
ret void
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3num23_$LT$impl$u20$isize$GT$11is_negative17h8f29624b0874d62cE"(i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = icmp slt i64 %0, 0
br label %bb1
bb1: ; preds = %start
ret i1 %1
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN4core3num23_$LT$impl$u20$isize$GT$3abs17h043c2ff990cac44cE"(i64) unnamed_addr #0 {
entry-block:
%_0 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call zeroext i1 @"_ZN4core3num23_$LT$impl$u20$isize$GT$11is_negative17h8f29624b0874d62cE"(i64 %0)
br label %bb1
bb1: ; preds = %start
br i1 %1, label %bb2, label %bb3
bb2: ; preds = %bb1
%2 = icmp eq i64 %0, -9223372036854775808
%3 = call i1 @llvm.expect.i1(i1 %2, i1 false)
br i1 %3, label %panic, label %bb4
bb3: ; preds = %bb1
store i64 %0, i64* %_0
br label %bb5
bb4: ; preds = %bb2
%4 = sub i64 0, %0
store i64 %4, i64* %_0
br label %bb5
bb5: ; preds = %bb4, %bb3
%5 = load i64, i64* %_0
ret i64 %5
panic: ; preds = %bb2
call void @_ZN4core9panicking5panic17h1a2d1a6b50eaa468E({ %str_slice, %str_slice, i32 }* @panic_loc12472)
unreachable
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN4core3num23_$LT$impl$u20$isize$GT$9max_value17h2148a17312c74810E"() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%0 = call i64 @"_ZN4core3num23_$LT$impl$u20$isize$GT$9min_value17h1a77b3ea4968f72dE"()
br label %bb1
bb1: ; preds = %start
%1 = xor i64 %0, -1
ret i64 %1
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN4core3num23_$LT$impl$u20$isize$GT$9min_value17h1a77b3ea4968f72dE"() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
br label %bb2
bb2: ; preds = %bb1
ret i64 -9223372036854775808
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_add17hf8e8ceb9cff101e3E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16), i64, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca { i64, i8 }
br label %start
start: ; preds = %entry-block
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$15overflowing_add17ha5919fb0435d923eE"({ i64, i8 }* noalias nocapture sret dereferenceable(16) %tmp_ret, i64 %1, i64 %2)
%3 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
%4 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
%5 = load i64, i64* %3
%6 = load i8, i8* %4, !range !1
%7 = trunc i8 %6 to i1
br label %bb1
bb1: ; preds = %start
br i1 %7, label %bb2, label %bb3
bb2: ; preds = %bb1
%8 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 0, i64* %8
br label %bb4
bb3: ; preds = %bb1
%9 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 1, i64* %9
%10 = bitcast %"2.std::option::Option<usize>"* %0 to { i64, i64 }*
%11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %10, i32 0, i32 1
store i64 %5, i64* %11
br label %bb4
bb4: ; preds = %bb2, %bb3
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_mul17hf3d8c7207af9e765E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16), i64, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca { i64, i8 }
br label %start
start: ; preds = %entry-block
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$15overflowing_mul17hee3d4a35cfe41b08E"({ i64, i8 }* noalias nocapture sret dereferenceable(16) %tmp_ret, i64 %1, i64 %2)
%3 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
%4 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
%5 = load i64, i64* %3
%6 = load i8, i8* %4, !range !1
%7 = trunc i8 %6 to i1
br label %bb1
bb1: ; preds = %start
br i1 %7, label %bb2, label %bb3
bb2: ; preds = %bb1
%8 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 0, i64* %8
br label %bb4
bb3: ; preds = %bb1
%9 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 1, i64* %9
%10 = bitcast %"2.std::option::Option<usize>"* %0 to { i64, i64 }*
%11 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %10, i32 0, i32 1
store i64 %5, i64* %11
br label %bb4
bb4: ; preds = %bb2, %bb3
ret void
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$12wrapping_sub17ha950d56fa408f481E"(i64, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64
br label %start
start: ; preds = %entry-block
%2 = sub i64 %0, %1
store i64 %2, i64* %tmp_ret
%3 = load i64, i64* %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64 %3
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$14saturating_add17hf7f8d5b3cb46dec7E"(i64, i64) unnamed_addr #0 {
entry-block:
%_0 = alloca i64
%_5 = alloca %"2.std::option::Option<usize>"
br label %start
start: ; preds = %entry-block
call void @"_ZN4core3num23_$LT$impl$u20$usize$GT$11checked_add17hf8e8ceb9cff101e3E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_5, i64 %0, i64 %1)
br label %bb1
bb1: ; preds = %start
%2 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_5, i32 0, i32 0
%3 = load i64, i64* %2, !range !2
switch i64 %3, label %unreachable [
i64 0, label %bb2
i64 1, label %bb3
]
bb2: ; preds = %bb1
%4 = call i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$9max_value17h9f95d9f5e4c5cd06E"()
store i64 %4, i64* %_0
br label %bb4
bb3: ; preds = %bb1
%5 = bitcast %"2.std::option::Option<usize>"* %_5 to { i64, i64 }*
%6 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %5, i32 0, i32 1
%7 = load i64, i64* %6
store i64 %7, i64* %_0
br label %bb4
bb4: ; preds = %bb2, %bb3
%8 = load i64, i64* %_0
ret i64 %8
unreachable: ; preds = %bb1
unreachable
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN4core3num23_$LT$impl$u20$usize$GT$15overflowing_add17ha5919fb0435d923eE"({ i64, i8 }* noalias nocapture sret dereferenceable(16), i64, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca { i64, i8 }
br label %start
start: ; preds = %entry-block
%3 = call { i64, i1 } @llvm.uadd.with.overflow.i64(i64 %1, i64 %2)
%4 = extractvalue { i64, i1 } %3, 0
%5 = extractvalue { i64, i1 } %3, 1
%6 = zext i1 %5 to i8
%7 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
store i64 %4, i64* %7
%8 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
store i8 %6, i8* %8
%9 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
%10 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
%11 = load i64, i64* %9
%12 = load i8, i8* %10, !range !1
%13 = trunc i8 %12 to i1
br label %bb1
bb1: ; preds = %start
%14 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 0
store i64 %11, i64* %14
%15 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 1
%16 = zext i1 %13 to i8
store i8 %16, i8* %15
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN4core3num23_$LT$impl$u20$usize$GT$15overflowing_mul17hee3d4a35cfe41b08E"({ i64, i8 }* noalias nocapture sret dereferenceable(16), i64, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca { i64, i8 }
br label %start
start: ; preds = %entry-block
%3 = call { i64, i1 } @llvm.umul.with.overflow.i64(i64 %1, i64 %2)
%4 = extractvalue { i64, i1 } %3, 0
%5 = extractvalue { i64, i1 } %3, 1
%6 = zext i1 %5 to i8
%7 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
store i64 %4, i64* %7
%8 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
store i8 %6, i8* %8
%9 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 0
%10 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %tmp_ret, i32 0, i32 1
%11 = load i64, i64* %9
%12 = load i8, i8* %10, !range !1
%13 = trunc i8 %12 to i1
br label %bb1
bb1: ; preds = %start
%14 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 0
store i64 %11, i64* %14
%15 = getelementptr inbounds { i64, i8 }, { i64, i8 }* %0, i32 0, i32 1
%16 = zext i1 %13 to i8
store i8 %16, i8* %15
ret void
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN4core3num23_$LT$impl$u20$usize$GT$9max_value17h9f95d9f5e4c5cd06E"() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i64 -1
}
; Function Attrs: uwtable
define internal void @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h031cc89b2e253900E"(%"3.std::string::String"* noalias nocapture sret dereferenceable(24), %closure.2*, %"3.std::vec::Vec<char>"* noalias nocapture dereferenceable(24)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca { %"3.std::vec::Vec<char>" }
%args = alloca { %"3.std::vec::Vec<char>" }
%_7 = alloca { %"3.std::vec::Vec<char>" }
%personalityslot = alloca { i8*, i32 }
%3 = getelementptr inbounds { %"3.std::vec::Vec<char>" }, { %"3.std::vec::Vec<char>" }* %arg1, i32 0, i32 0
%4 = bitcast %"3.std::vec::Vec<char>"* %2 to i8*
%5 = bitcast %"3.std::vec::Vec<char>"* %3 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %4, i64 24, i32 8, i1 false)
br label %start
start: ; preds = %entry-block
%6 = bitcast { %"3.std::vec::Vec<char>" }* %arg1 to i8*
%7 = bitcast { %"3.std::vec::Vec<char>" }* %args to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %7, i8* %6, i64 24, i32 8, i1 false)
%8 = bitcast { %"3.std::vec::Vec<char>" }* %args to i8*
%9 = bitcast { %"3.std::vec::Vec<char>" }* %_7 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %9, i8* %8, i64 24, i32 8, i1 false)
%10 = getelementptr inbounds { %"3.std::vec::Vec<char>" }, { %"3.std::vec::Vec<char>" }* %_7, i32 0, i32 0
invoke void @"_ZN80_$LT$collections..string..String$u20$as$u20$quickcheck..arbitrary..Arbitrary$GT$6shrink28_$u7b$$u7b$closure$u7d$$u7d$17h61e9695e77bddc52E"(%"3.std::string::String"* noalias nocapture sret dereferenceable(24) %0, %closure.2* %1, %"3.std::vec::Vec<char>"* noalias nocapture dereferenceable(24) %10)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%11 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %11
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%12 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %12, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: uwtable
define internal i64 @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h03b98b8000171d46E"(%closure.1*, %"3.std::string::String"* noalias readonly dereferenceable(24)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca { %"3.std::string::String"* }
%args = alloca { %"3.std::string::String"* }
%_7 = alloca { %"3.std::string::String"* }
%personalityslot = alloca { i8*, i32 }
%2 = getelementptr inbounds { %"3.std::string::String"* }, { %"3.std::string::String"* }* %arg1, i32 0, i32 0
store %"3.std::string::String"* %1, %"3.std::string::String"** %2
br label %start
start: ; preds = %entry-block
%3 = load { %"3.std::string::String"* }, { %"3.std::string::String"* }* %arg1
store { %"3.std::string::String"* } %3, { %"3.std::string::String"* }* %args
%4 = load { %"3.std::string::String"* }, { %"3.std::string::String"* }* %args
store { %"3.std::string::String"* } %4, { %"3.std::string::String"* }* %_7
%5 = load { %"3.std::string::String"* }, { %"3.std::string::String"* }* %_7
%6 = extractvalue { %"3.std::string::String"* } %5, 0
%7 = invoke i64 @"_ZN11collections3str87_$LT$impl$u20$collections..slice..SliceConcatExt$LT$str$GT$$u20$for$u20$$u5b$S$u5d$$GT$6concat28_$u7b$$u7b$closure$u7d$$u7d$17hda683ba2f8cae8bfE"(%closure.1* %0, %"3.std::string::String"* noalias readonly dereferenceable(24) %6)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb2: ; preds = %start
ret i64 %7
cleanup: ; preds = %start
%9 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %9, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: uwtable
define internal void @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h1432120bde223b02E"(%"1.std::time::Duration"* noalias nocapture sret dereferenceable(16), %closure.6*, { i64, i32 }* noalias nocapture dereferenceable(16)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca { { i64, i32 } }
%args = alloca { { i64, i32 } }
%_7 = alloca { { i64, i32 } }
%personalityslot = alloca { i8*, i32 }
%3 = getelementptr inbounds { { i64, i32 } }, { { i64, i32 } }* %arg1, i32 0, i32 0
%4 = bitcast { i64, i32 }* %2 to i8*
%5 = bitcast { i64, i32 }* %3 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %4, i64 16, i32 8, i1 false)
br label %start
start: ; preds = %entry-block
%6 = bitcast { { i64, i32 } }* %arg1 to i8*
%7 = bitcast { { i64, i32 } }* %args to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %7, i8* %6, i64 16, i32 8, i1 false)
%8 = bitcast { { i64, i32 } }* %args to i8*
%9 = bitcast { { i64, i32 } }* %_7 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %9, i8* %8, i64 16, i32 8, i1 false)
%10 = getelementptr inbounds { { i64, i32 } }, { { i64, i32 } }* %_7, i32 0, i32 0
invoke void @"_ZN82_$LT$std..time..duration..Duration$u20$as$u20$quickcheck..arbitrary..Arbitrary$GT$6shrink28_$u7b$$u7b$closure$u7d$$u7d$17hfd91c179337c6953E"(%"1.std::time::Duration"* noalias nocapture sret dereferenceable(16) %0, %closure.6* %1, { i64, i32 }* noalias nocapture dereferenceable(16) %10)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%11 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %11
bb2: ; preds = %start
ret void
cleanup: ; preds = %start
%12 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %12, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: uwtable
define internal float @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h53781920dc74ee31E"(%closure.0*, i32) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca { i32 }
%args = alloca { i32 }
%_7 = alloca { i32 }
%personalityslot = alloca { i8*, i32 }
%2 = getelementptr inbounds { i32 }, { i32 }* %arg1, i32 0, i32 0
store i32 %1, i32* %2
br label %start
start: ; preds = %entry-block
%3 = load { i32 }, { i32 }* %arg1
store { i32 } %3, { i32 }* %args
%4 = load { i32 }, { i32 }* %args
store { i32 } %4, { i32 }* %_7
%5 = load { i32 }, { i32 }* %_7
%6 = extractvalue { i32 } %5, 0
%7 = invoke float @"_ZN56_$LT$f32$u20$as$u20$quickcheck..arbitrary..Arbitrary$GT$6shrink28_$u7b$$u7b$closure$u7d$$u7d$17hb6c799bb0c40612dE"(%closure.0* %0, i32 %6)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb2: ; preds = %start
ret float %7
cleanup: ; preds = %start
%9 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %9, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: uwtable
define internal double @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h66f4f0de3c52efbfE"(%closure*, i64) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca { i64 }
%args = alloca { i64 }
%_7 = alloca { i64 }
%personalityslot = alloca { i8*, i32 }
%2 = getelementptr inbounds { i64 }, { i64 }* %arg1, i32 0, i32 0
store i64 %1, i64* %2
br label %start
start: ; preds = %entry-block
%3 = load { i64 }, { i64 }* %arg1
store { i64 } %3, { i64 }* %args
%4 = load { i64 }, { i64 }* %args
store { i64 } %4, { i64 }* %_7
%5 = load { i64 }, { i64 }* %_7
%6 = extractvalue { i64 } %5, 0
%7 = invoke double @"_ZN56_$LT$f64$u20$as$u20$quickcheck..arbitrary..Arbitrary$GT$6shrink28_$u7b$$u7b$closure$u7d$$u7d$17hf59db0f7f17ccc54E"(%closure* %0, i64 %6)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb2: ; preds = %start
ret double %7
cleanup: ; preds = %start
%9 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %9, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: uwtable
define internal i64 @"_ZN4core3ops5impls81_$LT$impl$u20$core..ops..FnOnce$LT$A$GT$$u20$for$u20$$RF$$u27$a$u20$mut$u20$F$GT$9call_once17h6b7d608bb1b5d2acE"(%closure.5*, %"3.std::string::String"* noalias readonly dereferenceable(24)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca { %"3.std::string::String"* }
%args = alloca { %"3.std::string::String"* }
%_7 = alloca { %"3.std::string::String"* }
%personalityslot = alloca { i8*, i32 }
%2 = getelementptr inbounds { %"3.std::string::String"* }, { %"3.std::string::String"* }* %arg1, i32 0, i32 0
store %"3.std::string::String"* %1, %"3.std::string::String"** %2
br label %start
start: ; preds = %entry-block
%3 = load { %"3.std::string::String"* }, { %"3.std::string::String"* }* %arg1
store { %"3.std::string::String"* } %3, { %"3.std::string::String"* }* %args
%4 = load { %"3.std::string::String"* }, { %"3.std::string::String"* }* %args
store { %"3.std::string::String"* } %4, { %"3.std::string::String"* }* %_7
%5 = load { %"3.std::string::String"* }, { %"3.std::string::String"* }* %_7
%6 = extractvalue { %"3.std::string::String"* } %5, 0
%7 = invoke i64 @"_ZN11collections3str87_$LT$impl$u20$collections..slice..SliceConcatExt$LT$str$GT$$u20$for$u20$$u5b$S$u5d$$GT$4join28_$u7b$$u7b$closure$u7d$$u7d$17hcdb57b60f6190cd8E"(%closure.5* %0, %"3.std::string::String"* noalias readonly dereferenceable(24) %6)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb2: ; preds = %start
ret i64 %7
cleanup: ; preds = %start
%9 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %9, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h0b1910ec32edc6d3E"(i64*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i64, i64* %0, i64 %1
store i64* %2, i64** %tmp_ret
%3 = load i64*, i64** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64* %3
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h147dbae04e783d17E"(i64*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i64, i64* %0, i64 %1
store i64* %2, i64** %tmp_ret
%3 = load i64*, i64** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64* %3
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h30814b46f68364a8E"(i64*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i64, i64* %0, i64 %1
store i64* %2, i64** %tmp_ret
%3 = load i64*, i64** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64* %3
}
; Function Attrs: inlinehint uwtable
define internal i16* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h4002abb255032f92E"(i16*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i16*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i16, i16* %0, i64 %1
store i16* %2, i16** %tmp_ret
%3 = load i16*, i16** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i16* %3
}
; Function Attrs: inlinehint uwtable
define internal i8* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h5535fc2b397efa71E"(i8*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i8*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i8, i8* %0, i64 %1
store i8* %2, i8** %tmp_ret
%3 = load i8*, i8** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i8* %3
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h847b8e13d3282b42E"(i64*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i64, i64* %0, i64 %1
store i64* %2, i64** %tmp_ret
%3 = load i64*, i64** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64* %3
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h86580d7920f0aeaeE"(i32*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i32, i32* %0, i64 %1
store i32* %2, i32** %tmp_ret
%3 = load i32*, i32** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i32* %3
}
; Function Attrs: inlinehint uwtable
define internal i16* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h8cd098a059201ccbE"(i16*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i16*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i16, i16* %0, i64 %1
store i16* %2, i16** %tmp_ret
%3 = load i16*, i16** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i16* %3
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h8fbf7b56b07459daE"(i32*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i32, i32* %0, i64 %1
store i32* %2, i32** %tmp_ret
%3 = load i32*, i32** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i32* %3
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17h955a05504e766796E"(i32*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i32, i32* %0, i64 %1
store i32* %2, i32** %tmp_ret
%3 = load i32*, i32** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i32* %3
}
; Function Attrs: inlinehint uwtable
define internal i8* @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$6offset17he4e4977e42aef48cE"(i8*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i8*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i8, i8* %0, i64 %1
store i8* %2, i8** %tmp_ret
%3 = load i8*, i8** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i8* %3
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h0241794890268c02E"(i8*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i8* @_ZN4core3ptr8null_mut17h82f46b747ed93c1eE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i8* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h08de836f29da90c0E"(i64*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i64* @_ZN4core3ptr8null_mut17h61bc66b2bc95912fE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h4328c6d305a4c61fE"(i16*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i16* @_ZN4core3ptr8null_mut17hd80431e4af2efce2E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i16* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h7989c4d9490c97a5E"(i16*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i16* @_ZN4core3ptr8null_mut17h29a7c58985642514E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i16* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h838cec6266c4d674E"(i64*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i64* @_ZN4core3ptr8null_mut17h7460e0d9b6523fb7E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17h9e15e8956af7d61aE"(i32*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i32* @_ZN4core3ptr8null_mut17hfa70bb8841b92f36E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i32* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hb3341911a34ede2eE"(i32*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i32* @_ZN4core3ptr8null_mut17hd8acf6cd182a4500E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i32* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hb4776e81a4046ac3E"(%"3.std::string::String"*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call %"3.std::string::String"* @_ZN4core3ptr8null_mut17h50fd6cf36da7cf56E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq %"3.std::string::String"* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hc174d4e1f9cb62c3E"(i32*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i32* @_ZN4core3ptr8null_mut17hffe9cbf6463b352aE()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i32* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hcae02aef8b127abaE"(i64*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i64* @_ZN4core3ptr8null_mut17h16c7e04e68bd4898E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hd676e9b98ef11408E"(i8*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i8* @_ZN4core3ptr8null_mut17h06ad1732ab3dba45E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i8* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr31_$LT$impl$u20$$BP$mut$u20$T$GT$7is_null17hda35a258ca26a326E"(i64*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i64* @_ZN4core3ptr8null_mut17hf2e6764b6608e009E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i64* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h0a7141169cd4def1E"(i32*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i32, i32* %0, i64 %1
store i32* %2, i32** %tmp_ret
%3 = load i32*, i32** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i32* %3
}
; Function Attrs: inlinehint uwtable
define internal %"3.std::string::String"* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h19ce19c3ac70dee5E"(%"3.std::string::String"*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca %"3.std::string::String"*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds %"3.std::string::String", %"3.std::string::String"* %0, i64 %1
store %"3.std::string::String"* %2, %"3.std::string::String"** %tmp_ret
%3 = load %"3.std::string::String"*, %"3.std::string::String"** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret %"3.std::string::String"* %3
}
; Function Attrs: inlinehint uwtable
define internal i8* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h3439cc167639a191E"(i8*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i8*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i8, i8* %0, i64 %1
store i8* %2, i8** %tmp_ret
%3 = load i8*, i8** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i8* %3
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h48dde21916044c9cE"(i64*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i64, i64* %0, i64 %1
store i64* %2, i64** %tmp_ret
%3 = load i64*, i64** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64* %3
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h5a177a5c7c6cf5eeE"(i32*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i32, i32* %0, i64 %1
store i32* %2, i32** %tmp_ret
%3 = load i32*, i32** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i32* %3
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h68dbf9d17715fb7eE"(i64*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i64, i64* %0, i64 %1
store i64* %2, i64** %tmp_ret
%3 = load i64*, i64** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64* %3
}
; Function Attrs: inlinehint uwtable
define internal i32* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17h83e07958f3d3e18eE"(i32*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i32*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i32, i32* %0, i64 %1
store i32* %2, i32** %tmp_ret
%3 = load i32*, i32** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i32* %3
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17hb5acbaa9058cc035E"(i64*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i64, i64* %0, i64 %1
store i64* %2, i64** %tmp_ret
%3 = load i64*, i64** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64* %3
}
; Function Attrs: inlinehint uwtable
define internal i16* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17hb7b94988dca5b070E"(i16*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i16*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i16, i16* %0, i64 %1
store i16* %2, i16** %tmp_ret
%3 = load i16*, i16** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i16* %3
}
; Function Attrs: inlinehint uwtable
define internal i64* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17hdb6849db77e4ccdbE"(i64*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i64*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i64, i64* %0, i64 %1
store i64* %2, i64** %tmp_ret
%3 = load i64*, i64** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i64* %3
}
; Function Attrs: inlinehint uwtable
define internal i16* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17he39989f6b21bdb86E"(i16*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i16*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i16, i16* %0, i64 %1
store i16* %2, i16** %tmp_ret
%3 = load i16*, i16** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i16* %3
}
; Function Attrs: inlinehint uwtable
define internal i8* @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$6offset17hf42ed147a1141637E"(i8*, i64) unnamed_addr #0 {
entry-block:
%tmp_ret = alloca i8*
br label %start
start: ; preds = %entry-block
%2 = getelementptr inbounds i8, i8* %0, i64 %1
store i8* %2, i8** %tmp_ret
%3 = load i8*, i8** %tmp_ret
br label %bb1
bb1: ; preds = %start
ret i8* %3
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$7is_null17h5899966d3c69cc73E"(i8*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i8* @_ZN4core3ptr4null17hed3e7439e348d2b8E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i8* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$7is_null17h85980349ca94c0cfE"(%"3.std::string::String"*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call %"3.std::string::String"* @_ZN4core3ptr4null17h5f3344f20b7d6948E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq %"3.std::string::String"* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal zeroext i1 @"_ZN4core3ptr33_$LT$impl$u20$$BP$const$u20$T$GT$7is_null17ha0a889ce95e2d61cE"(i32*) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%1 = call i32* @_ZN4core3ptr4null17h3039a155b7b21863E()
br label %bb1
bb1: ; preds = %start
%2 = icmp eq i32* %0, %1
ret i1 %2
}
; Function Attrs: inlinehint uwtable
define internal i32* @_ZN4core3ptr4null17h3039a155b7b21863E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i32* null
}
; Function Attrs: inlinehint uwtable
define internal %"3.std::string::String"* @_ZN4core3ptr4null17h5f3344f20b7d6948E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret %"3.std::string::String"* null
}
; Function Attrs: inlinehint uwtable
define internal i8* @_ZN4core3ptr4null17hed3e7439e348d2b8E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i8* null
}
; Function Attrs: alwaysinline uwtable
define internal i16 @_ZN4core3ptr4read17h06c3b748df76d5e6E(i16*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i16
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i16 @_ZN4core3mem13uninitialized17h785f3709d8acecc4E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i16 %1, i16* %tmp
store i8 1, i8* %_11
%5 = bitcast i16* %tmp to i8*
%6 = bitcast i16* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 2, i32 2, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i16, i16* %tmp
ret i16 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i32 @_ZN4core3ptr4read17h2691a215b081c155E(i32*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i32
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i32 @_ZN4core3mem13uninitialized17h780e9c1652f807a3E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i32 %1, i32* %tmp
store i8 1, i8* %_11
%5 = bitcast i32* %tmp to i8*
%6 = bitcast i32* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 4, i32 4, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i32, i32* %tmp, !range !4
ret i32 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i64 @_ZN4core3ptr4read17h28e160d2b87e538bE(i64*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i64
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i64 @_ZN4core3mem13uninitialized17h238b3bb8c5053046E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i64 %1, i64* %tmp
store i8 1, i8* %_11
%5 = bitcast i64* %tmp to i8*
%6 = bitcast i64* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 8, i32 8, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i64, i64* %tmp
ret i64 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i64 @_ZN4core3ptr4read17h5c4e282db7fd820eE(i64*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i64
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i64 @_ZN4core3mem13uninitialized17h0ce703d703c99e6bE()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i64 %1, i64* %tmp
store i8 1, i8* %_11
%5 = bitcast i64* %tmp to i8*
%6 = bitcast i64* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 8, i32 8, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i64, i64* %tmp
ret i64 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i16 @_ZN4core3ptr4read17h6dc0390df00f4b15E(i16*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i16
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i16 @_ZN4core3mem13uninitialized17h1241b72b0088b482E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i16 %1, i16* %tmp
store i8 1, i8* %_11
%5 = bitcast i16* %tmp to i8*
%6 = bitcast i16* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 2, i32 2, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i16, i16* %tmp
ret i16 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i64 @_ZN4core3ptr4read17h90cfd8aebe9e69f1E(i64*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i64
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i64 @_ZN4core3mem13uninitialized17hc07b295fa2459874E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i64 %1, i64* %tmp
store i8 1, i8* %_11
%5 = bitcast i64* %tmp to i8*
%6 = bitcast i64* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 8, i32 8, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i64, i64* %tmp
ret i64 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i8 @_ZN4core3ptr4read17h9626db15053a9463E(i8*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i8
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i8 @_ZN4core3mem13uninitialized17h8f23d323cc438639E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i8 %1, i8* %tmp
store i8 1, i8* %_11
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %tmp, i8* %0, i64 1, i32 1, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%5 = load i8, i8* %tmp
ret i8 %5
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%6 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %6, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i32 @_ZN4core3ptr4read17ha67f1b6d237e506aE(i32*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i32
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i32 @_ZN4core3mem13uninitialized17h4405bb904b488308E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i32 %1, i32* %tmp
store i8 1, i8* %_11
%5 = bitcast i32* %tmp to i8*
%6 = bitcast i32* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 4, i32 4, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i32, i32* %tmp
ret i32 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i8 @_ZN4core3ptr4read17hc503d6f193c7b608E(i8*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i8
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i8 @_ZN4core3mem13uninitialized17hb1cb316f067c9596E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i8 %1, i8* %tmp
store i8 1, i8* %_11
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %tmp, i8* %0, i64 1, i32 1, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%5 = load i8, i8* %tmp
ret i8 %5
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%6 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %6, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i32 @_ZN4core3ptr4read17hce706ccf8fcc3be0E(i32*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i32
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i32 @_ZN4core3mem13uninitialized17h6fff1a9e1b35fd76E()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i32 %1, i32* %tmp
store i8 1, i8* %_11
%5 = bitcast i32* %tmp to i8*
%6 = bitcast i32* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 4, i32 4, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i32, i32* %tmp
ret i32 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: alwaysinline uwtable
define internal i64 @_ZN4core3ptr4read17hdac0313dfc9f2e8fE(i64*) unnamed_addr #1 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%tmp = alloca i64
%_11 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_11
%1 = invoke i64 @_ZN4core3mem13uninitialized17h23f02d5188f1c4bbE()
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb5, %bb2
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %cleanup
%3 = load i8, i8* %_11, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb5, label %bb1
bb3: ; preds = %start
store i64 %1, i64* %tmp
store i8 1, i8* %_11
%5 = bitcast i64* %tmp to i8*
%6 = bitcast i64* %0 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %6, i64 8, i32 8, i1 false)
br label %bb4
bb4: ; preds = %bb3
store i8 0, i8* %_11
%7 = load i64, i64* %tmp
ret i64 %7
bb5: ; preds = %bb2
store i8 0, i8* %_11
br label %bb1
cleanup: ; preds = %start
%8 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %8, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3ptr5write17h1d16657315d0229bE(i32*, i32) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i32 %1, i32* %0
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3ptr5write17h5a072b8944c71695E(i32*, i32) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i32 %1, i32* %0
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3ptr5write17h5a6f0c2499fd4567E(i8*, i8) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 %1, i8* %0
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3ptr5write17h7c997ec71f395badE(i8*, i8) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 %1, i8* %0
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3ptr5write17hd2a14514c3b013f6E(i64*, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i64 %1, i64* %0
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3ptr5write17he9f37c67689b0e9eE(i16*, i16) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i16 %1, i16* %0
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core3ptr5write17hfe585a39df8a5f8aE(i64*, i64) unnamed_addr #0 {
entry-block:
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i64 %1, i64* %0
br label %bb2
bb1: ; No predecessors!
%2 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %2
bb2: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal i8* @_ZN4core3ptr8null_mut17h06ad1732ab3dba45E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i8* null
}
; Function Attrs: inlinehint uwtable
define internal i64* @_ZN4core3ptr8null_mut17h16c7e04e68bd4898E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i64* null
}
; Function Attrs: inlinehint uwtable
define internal i16* @_ZN4core3ptr8null_mut17h29a7c58985642514E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i16* null
}
; Function Attrs: inlinehint uwtable
define internal %"3.std::string::String"* @_ZN4core3ptr8null_mut17h50fd6cf36da7cf56E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret %"3.std::string::String"* null
}
; Function Attrs: inlinehint uwtable
define internal i64* @_ZN4core3ptr8null_mut17h61bc66b2bc95912fE() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i64* null
}
; Function Attrs: inlinehint uwtable
define internal i64* @_ZN4core3ptr8null_mut17h7460e0d9b6523fb7E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i64* null
}
; Function Attrs: inlinehint uwtable
define internal i8* @_ZN4core3ptr8null_mut17h82f46b747ed93c1eE() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i8* null
}
; Function Attrs: inlinehint uwtable
define internal i16* @_ZN4core3ptr8null_mut17hd80431e4af2efce2E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i16* null
}
; Function Attrs: inlinehint uwtable
define internal i32* @_ZN4core3ptr8null_mut17hd8acf6cd182a4500E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i32* null
}
; Function Attrs: inlinehint uwtable
define internal i64* @_ZN4core3ptr8null_mut17hf2e6764b6608e009E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i64* null
}
; Function Attrs: inlinehint uwtable
define internal i32* @_ZN4core3ptr8null_mut17hfa70bb8841b92f36E() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i32* null
}
; Function Attrs: inlinehint uwtable
define internal i32* @_ZN4core3ptr8null_mut17hffe9cbf6463b352aE() unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret i32* null
}
; Function Attrs: inlinehint uwtable
define internal i8 @_ZN4core3str11unwrap_or_017h2f92f2b01418442aE(i8*) unnamed_addr #0 {
entry-block:
%_0 = alloca i8
%opt = alloca i8*
br label %start
start: ; preds = %entry-block
store i8* %0, i8** %opt
%1 = load i8*, i8** %opt
%2 = icmp ne i8* %1, null
switch i1 %2, label %unreachable [
i1 false, label %bb1
i1 true, label %bb2
]
bb1: ; preds = %start
store i8 0, i8* %_0
br label %bb3
bb2: ; preds = %start
%3 = load i8*, i8** %opt, !nonnull !0
%4 = load i8, i8* %3
store i8 %4, i8* %_0
br label %bb3
bb3: ; preds = %bb1, %bb2
%5 = load i8, i8* %_0
ret i8 %5
unreachable: ; preds = %start
unreachable
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core3str15next_code_point17hcc21e0072be45e23E(%"2.std::slice::Iter<u8>"* dereferenceable(16)) unnamed_addr #0 {
entry-block:
%_0 = alloca %"2.std::option::Option<u32>"
%_4 = alloca i8*
%_19 = alloca i8*
%ch = alloca i32
%_24 = alloca {}
%_28 = alloca i8*
%_41 = alloca i8*
br label %start
start: ; preds = %entry-block
%1 = call i8* @"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h173e7f1a38d7191eE"(%"2.std::slice::Iter<u8>"* dereferenceable(16) %0)
store i8* %1, i8** %_4
br label %bb1
bb1: ; preds = %start
%2 = load i8*, i8** %_4
%3 = icmp ne i8* %2, null
switch i1 %3, label %unreachable [
i1 false, label %bb2
i1 true, label %bb4
]
bb2: ; preds = %bb1
%4 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %_0, i32 0, i32 0
store i32 0, i32* %4
br label %bb7
bb3: ; preds = %bb4
%5 = zext i8 %10 to i32
%6 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %_0, i32 0, i32 0
store i32 1, i32* %6
%7 = bitcast %"2.std::option::Option<u32>"* %_0 to { i32, i32 }*
%8 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %7, i32 0, i32 1
store i32 %5, i32* %8
br label %bb7
bb4: ; preds = %bb1
%9 = load i8*, i8** %_4, !nonnull !0
%10 = load i8, i8* %9
%11 = icmp ult i8 %10, -128
br i1 %11, label %bb3, label %bb5
bb5: ; preds = %bb4
%12 = load i8*, i8** %_4, !nonnull !0
%13 = load i8, i8* %12
%14 = call i32 @_ZN4core3str15utf8_first_byte17h763b7facb8760b81E(i8 %13, i32 2)
br label %bb8
bb6: ; preds = %bb7, %bb23
%15 = bitcast %"2.std::option::Option<u32>"* %_0 to i64*
%16 = load i64, i64* %15, align 4
ret i64 %16
bb7: ; preds = %bb2, %bb3
br label %bb6
bb8: ; preds = %bb5
%17 = call i8* @"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h173e7f1a38d7191eE"(%"2.std::slice::Iter<u8>"* dereferenceable(16) %0)
store i8* %17, i8** %_19
br label %bb9
bb9: ; preds = %bb8
%18 = load i8*, i8** %_19
%19 = call i8 @_ZN4core3str11unwrap_or_017h2f92f2b01418442aE(i8* %18)
br label %bb10
bb10: ; preds = %bb9
%20 = call i32 @_ZN4core3str18utf8_acc_cont_byte17hefd946920762c13cE(i32 %14, i8 %19)
store i32 %20, i32* %ch
br label %bb11
bb11: ; preds = %bb10
%21 = icmp uge i8 %13, -32
br i1 %21, label %bb12, label %bb13
bb12: ; preds = %bb11
%22 = call i8* @"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h173e7f1a38d7191eE"(%"2.std::slice::Iter<u8>"* dereferenceable(16) %0)
store i8* %22, i8** %_28
br label %bb14
bb13: ; preds = %bb11
br label %bb23
bb14: ; preds = %bb12
%23 = load i8*, i8** %_28
%24 = call i8 @_ZN4core3str11unwrap_or_017h2f92f2b01418442aE(i8* %23)
br label %bb15
bb15: ; preds = %bb14
%25 = and i8 %19, 63
%26 = zext i8 %25 to i32
%27 = call i32 @_ZN4core3str18utf8_acc_cont_byte17hefd946920762c13cE(i32 %26, i8 %24)
br label %bb16
bb16: ; preds = %bb15
%28 = shl i32 %14, 12
%29 = or i32 %28, %27
store i32 %29, i32* %ch
%30 = icmp uge i8 %13, -16
br i1 %30, label %bb17, label %bb18
bb17: ; preds = %bb16
%31 = call i8* @"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h173e7f1a38d7191eE"(%"2.std::slice::Iter<u8>"* dereferenceable(16) %0)
store i8* %31, i8** %_41
br label %bb19
bb18: ; preds = %bb16
br label %bb22
bb19: ; preds = %bb17
%32 = load i8*, i8** %_41
%33 = call i8 @_ZN4core3str11unwrap_or_017h2f92f2b01418442aE(i8* %32)
br label %bb20
bb20: ; preds = %bb19
%34 = and i32 %14, 7
%35 = shl i32 %34, 18
%36 = call i32 @_ZN4core3str18utf8_acc_cont_byte17hefd946920762c13cE(i32 %27, i8 %33)
br label %bb21
bb21: ; preds = %bb20
%37 = or i32 %35, %36
store i32 %37, i32* %ch
br label %bb22
bb22: ; preds = %bb21, %bb18
br label %bb23
bb23: ; preds = %bb22, %bb13
%38 = load i32, i32* %ch
%39 = getelementptr inbounds %"2.std::option::Option<u32>", %"2.std::option::Option<u32>"* %_0, i32 0, i32 0
store i32 1, i32* %39
%40 = bitcast %"2.std::option::Option<u32>"* %_0 to { i32, i32 }*
%41 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %40, i32 0, i32 1
store i32 %38, i32* %41
br label %bb6
unreachable: ; preds = %bb1
unreachable
}
; Function Attrs: inlinehint uwtable
define internal i32 @_ZN4core3str15utf8_first_byte17h763b7facb8760b81E(i8, i32) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = trunc i32 %1 to i8
%3 = and i8 %2, 7
%4 = lshr i8 127, %3
%5 = and i8 %0, %4
%6 = zext i8 %5 to i32
br label %bb1
bb1: ; preds = %start
ret i32 %6
}
; Function Attrs: inlinehint uwtable
define internal i32 @_ZN4core3str18utf8_acc_cont_byte17hefd946920762c13cE(i32, i8) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%2 = shl i32 %0, 6
%3 = and i8 %1, 63
%4 = zext i8 %3 to i32
%5 = or i32 %2, %4
br label %bb1
bb1: ; preds = %start
ret i32 %5
}
; Function Attrs: alwaysinline uwtable
define internal %str_slice @_ZN4core3str19from_utf8_unchecked17h1c62414ddc740c29E(i8* noalias nonnull readonly, i64) unnamed_addr #1 {
entry-block:
%lvalue_temp = alloca %str_slice
br label %start
start: ; preds = %entry-block
%2 = bitcast %str_slice* %lvalue_temp to { i8*, i64 }*
%3 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %2, i32 0, i32 0
store i8* %0, i8** %3
%4 = getelementptr inbounds { i8*, i64 }, { i8*, i64 }* %2, i32 0, i32 1
store i64 %1, i64* %4
%5 = getelementptr inbounds %str_slice, %str_slice* %lvalue_temp, i32 0, i32 0
%6 = getelementptr inbounds %str_slice, %str_slice* %lvalue_temp, i32 0, i32 1
%7 = load i8*, i8** %5
%8 = load i64, i64* %6
br label %bb1
bb1: ; preds = %start
%9 = insertvalue %str_slice undef, i8* %7, 0
%10 = insertvalue %str_slice %9, i64 %8, 1
ret %str_slice %10
}
; Function Attrs: inlinehint uwtable
define internal i32 @_ZN4core4char18from_u32_unchecked17h735e6db8c59dd22cE(i32) unnamed_addr #0 {
entry-block:
%lvalue_temp = alloca i32
br label %start
start: ; preds = %entry-block
store i32 %0, i32* %lvalue_temp
%1 = load i32, i32* %lvalue_temp, !range !4
br label %bb1
bb1: ; preds = %start
ret i32 %1
}
; Function Attrs: inlinehint uwtable
define internal i64 @"_ZN4core4char68_$LT$impl$u20$core..convert..TryFrom$LT$u32$GT$$u20$for$u20$char$GT$8try_from17h2607c09f7cf71220E"(i32) unnamed_addr #0 {
entry-block:
%_0 = alloca %"2.std::result::Result<char, std::char::CharTryFromError>"
%_3 = alloca i8
%_7 = alloca i8
%_12 = alloca %"2.std::char::CharTryFromError"
%_13 = alloca {}
br label %start
start: ; preds = %entry-block
%1 = icmp ugt i32 %0, 1114111
br i1 %1, label %bb1, label %bb3
bb1: ; preds = %bb8, %start
store i8 1, i8* %_3
br label %bb4
bb2: ; preds = %bb8
store i8 0, i8* %_3
br label %bb4
bb3: ; preds = %start
%2 = icmp uge i32 %0, 55296
br i1 %2, label %bb7, label %bb6
bb4: ; preds = %bb1, %bb2
%3 = load i8, i8* %_3, !range !1
%4 = trunc i8 %3 to i1
br i1 %4, label %bb9, label %bb10
bb5: ; preds = %bb7
store i8 1, i8* %_7
br label %bb8
bb6: ; preds = %bb7, %bb3
store i8 0, i8* %_7
br label %bb8
bb7: ; preds = %bb3
%5 = icmp ule i32 %0, 57343
br i1 %5, label %bb5, label %bb6
bb8: ; preds = %bb5, %bb6
%6 = load i8, i8* %_7, !range !1
%7 = trunc i8 %6 to i1
br i1 %7, label %bb1, label %bb2
bb9: ; preds = %bb4
%8 = getelementptr inbounds %"2.std::result::Result<char, std::char::CharTryFromError>", %"2.std::result::Result<char, std::char::CharTryFromError>"* %_0, i32 0, i32 0
store i32 1, i32* %8
br label %bb12
bb10: ; preds = %bb4
%9 = call i32 @_ZN4core4char18from_u32_unchecked17h735e6db8c59dd22cE(i32 %0)
br label %bb11
bb11: ; preds = %bb10
%10 = getelementptr inbounds %"2.std::result::Result<char, std::char::CharTryFromError>", %"2.std::result::Result<char, std::char::CharTryFromError>"* %_0, i32 0, i32 0
store i32 0, i32* %10
%11 = bitcast %"2.std::result::Result<char, std::char::CharTryFromError>"* %_0 to { i32, i32 }*
%12 = getelementptr inbounds { i32, i32 }, { i32, i32 }* %11, i32 0, i32 1
store i32 %9, i32* %12
br label %bb12
bb12: ; preds = %bb9, %bb11
%13 = bitcast %"2.std::result::Result<char, std::char::CharTryFromError>"* %_0 to i64*
%14 = load i64, i64* %13, align 4
ret i64 %14
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core4char8from_u3217h5728f6d022944594E(i32) unnamed_addr #0 {
entry-block:
%_0 = alloca %"2.std::option::Option<char>"
%_3 = alloca %"2.std::result::Result<char, std::char::CharTryFromError>"
%abi_cast = alloca i64
%arg = alloca %"2.std::result::Result<char, std::char::CharTryFromError>"
%abi_cast1 = alloca i64
br label %start
start: ; preds = %entry-block
%1 = call i64 @"_ZN4core4char68_$LT$impl$u20$core..convert..TryFrom$LT$u32$GT$$u20$for$u20$char$GT$8try_from17h2607c09f7cf71220E"(i32 %0)
store i64 %1, i64* %abi_cast
%2 = bitcast %"2.std::result::Result<char, std::char::CharTryFromError>"* %_3 to i8*
%3 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %3, i64 8, i32 4, i1 false)
br label %bb1
bb1: ; preds = %start
%4 = load %"2.std::result::Result<char, std::char::CharTryFromError>", %"2.std::result::Result<char, std::char::CharTryFromError>"* %_3
store %"2.std::result::Result<char, std::char::CharTryFromError>" %4, %"2.std::result::Result<char, std::char::CharTryFromError>"* %arg
%5 = bitcast %"2.std::result::Result<char, std::char::CharTryFromError>"* %arg to i64*
%6 = load i64, i64* %5, align 4
%7 = call i64 @"_ZN47_$LT$core..result..Result$LT$T$C$$u20$E$GT$$GT$2ok17h62cc1c78972793fdE"(i64 %6)
store i64 %7, i64* %abi_cast1
%8 = bitcast %"2.std::option::Option<char>"* %_0 to i8*
%9 = bitcast i64* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %9, i64 8, i32 4, i1 false)
br label %bb2
bb2: ; preds = %bb1
%10 = bitcast %"2.std::option::Option<char>"* %_0 to i64*
%11 = load i64, i64* %10, align 4
ret i64 %11
}
; Function Attrs: inlinehint uwtable
define internal void @"_ZN4core4iter5range86_$LT$impl$u20$core..iter..iterator..Iterator$u20$for$u20$core..ops..Range$LT$A$GT$$GT$4next17hd54de0ea2633a5fbE"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16), %"2.std::ops::Range<usize>"* dereferenceable(16)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%n = alloca i64
%_15 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_15
%2 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %1, i32 0, i32 0
%3 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %1, i32 0, i32 1
%4 = call zeroext i1 @"_ZN4core3cmp5impls57_$LT$impl$u20$core..cmp..PartialOrd$u20$for$u20$usize$GT$2lt17h5c23b530f756d76eE"(i64* noalias readonly dereferenceable(8) %2, i64* noalias readonly dereferenceable(8) %3)
br label %bb1
bb1: ; preds = %start
br i1 %4, label %bb2, label %bb3
bb2: ; preds = %bb1
%5 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %1, i32 0, i32 0
%6 = invoke i64 @"_ZN49_$LT$usize$u20$as$u20$core..iter..range..Step$GT$7add_one17hae260bd1b04e8a30E"(i64* noalias readonly dereferenceable(8) %5)
to label %bb5 unwind label %cleanup
bb3: ; preds = %bb1
%7 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 0, i64* %7
br label %bb7
bb4: ; preds = %bb8, %bb9
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb5: ; preds = %bb2
store i64 %6, i64* %n
store i8 1, i8* %_15
%9 = getelementptr inbounds %"2.std::ops::Range<usize>", %"2.std::ops::Range<usize>"* %1, i32 0, i32 0
invoke void @_ZN4core3mem4swap17hc94818b0d78768a6E(i64* dereferenceable(8) %n, i64* dereferenceable(8) %9)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
store i8 0, i8* %_15
%10 = load i64, i64* %n
%11 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %0, i32 0, i32 0
store i64 1, i64* %11
%12 = bitcast %"2.std::option::Option<usize>"* %0 to { i64, i64 }*
%13 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %12, i32 0, i32 1
store i64 %10, i64* %13
br label %bb7
bb7: ; preds = %bb6, %bb3
ret void
bb8: ; preds = %bb9
store i8 0, i8* %_15
br label %bb4
bb9: ; preds = %cleanup
%14 = load i8, i8* %_15, !range !1
%15 = trunc i8 %14 to i1
br i1 %15, label %bb8, label %bb4
cleanup: ; preds = %bb5, %bb2
%16 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %16, { i8*, i32 }* %personalityslot
br label %bb9
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core4iter6traits17ExactSizeIterator3len17hce7ca48159ea7c33E(%"2.std::slice::Iter<u8>"* noalias readonly dereferenceable(16)) unnamed_addr #0 {
entry-block:
%upper = alloca %"2.std::option::Option<usize>"
%_5 = alloca { i64, %"2.std::option::Option<usize>" }
%_7 = alloca {}
%_8 = alloca { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }
%_11 = alloca %"2.std::option::Option<usize>"
%left_val = alloca %"2.std::option::Option<usize>"*
%right_val = alloca %"2.std::option::Option<usize>"*
%_20 = alloca %"2.std::fmt::Arguments"
%_25 = alloca [2 x %"2.std::fmt::ArgumentV1"]
%_26 = alloca { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }
%tmp_ret = alloca %"2.std::fmt::ArgumentV1"
%tmp_ret1 = alloca %"2.std::fmt::ArgumentV1"
br label %start
start: ; preds = %entry-block
call void @"_ZN91_$LT$core..slice..Iter$LT$$u27$a$C$$u20$T$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$9size_hint17h7aa176367b020bc7E"({ i64, %"2.std::option::Option<usize>" }* noalias nocapture sret dereferenceable(24) %_5, %"2.std::slice::Iter<u8>"* noalias readonly dereferenceable(16) %0)
br label %bb1
bb1: ; preds = %start
%1 = getelementptr inbounds { i64, %"2.std::option::Option<usize>" }, { i64, %"2.std::option::Option<usize>" }* %_5, i32 0, i32 0
%2 = load i64, i64* %1
%3 = getelementptr inbounds { i64, %"2.std::option::Option<usize>" }, { i64, %"2.std::option::Option<usize>" }* %_5, i32 0, i32 1
%4 = bitcast %"2.std::option::Option<usize>"* %3 to i8*
%5 = bitcast %"2.std::option::Option<usize>"* %upper to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %4, i64 16, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_11, i32 0, i32 0
store i64 1, i64* %6
%7 = bitcast %"2.std::option::Option<usize>"* %_11 to { i64, i64 }*
%8 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %7, i32 0, i32 1
store i64 %2, i64* %8
%9 = getelementptr inbounds { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }, { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }* %_8, i32 0, i32 0
store %"2.std::option::Option<usize>"* %upper, %"2.std::option::Option<usize>"** %9
%10 = getelementptr inbounds { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }, { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }* %_8, i32 0, i32 1
store %"2.std::option::Option<usize>"* %_11, %"2.std::option::Option<usize>"** %10
%11 = getelementptr inbounds { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }, { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }* %_8, i32 0, i32 0
%12 = load %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"** %11, !nonnull !0
store %"2.std::option::Option<usize>"* %12, %"2.std::option::Option<usize>"** %left_val
%13 = getelementptr inbounds { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }, { %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"* }* %_8, i32 0, i32 1
%14 = load %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"** %13, !nonnull !0
store %"2.std::option::Option<usize>"* %14, %"2.std::option::Option<usize>"** %right_val
%15 = load %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"** %left_val, !nonnull !0
%16 = load %"2.std::option::Option<usize>"*, %"2.std::option::Option<usize>"** %right_val, !nonnull !0
%17 = call zeroext i1 @"_ZN70_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..cmp..PartialEq$GT$2eq17he25522eaabb5154dE"(%"2.std::option::Option<usize>"* noalias readonly dereferenceable(16) %15, %"2.std::option::Option<usize>"* noalias readonly dereferenceable(16) %16)
br label %bb2
bb2: ; preds = %bb1
%18 = xor i1 %17, true
br i1 %18, label %bb3, label %bb4
bb3: ; preds = %bb2
%19 = load %str_slice*, %str_slice** getelementptr inbounds ({ %str_slice*, i64 }, { %str_slice*, i64 }* @_ZN4core4iter6traits17ExactSizeIterator3len15__STATIC_FMTSTR17he2facd7440a446b8E, i32 0, i32 0)
%20 = load i64, i64* getelementptr inbounds ({ %str_slice*, i64 }, { %str_slice*, i64 }* @_ZN4core4iter6traits17ExactSizeIterator3len15__STATIC_FMTSTR17he2facd7440a446b8E, i32 0, i32 1)
%21 = getelementptr inbounds { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }, { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }* %_26, i32 0, i32 0
store %"2.std::option::Option<usize>"** %left_val, %"2.std::option::Option<usize>"*** %21
%22 = getelementptr inbounds { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }, { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }* %_26, i32 0, i32 1
store %"2.std::option::Option<usize>"** %right_val, %"2.std::option::Option<usize>"*** %22
%23 = getelementptr inbounds { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }, { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }* %_26, i32 0, i32 0
%24 = load %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"*** %23, !nonnull !0
%25 = getelementptr inbounds { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }, { %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"** }* %_26, i32 0, i32 1
%26 = load %"2.std::option::Option<usize>"**, %"2.std::option::Option<usize>"*** %25, !nonnull !0
call void @_ZN4core3fmt10ArgumentV13new17hf18931f30e637d05E(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16) %tmp_ret, %"2.std::option::Option<usize>"** noalias readonly dereferenceable(8) %24, i8 (%"2.std::option::Option<usize>"**, %"2.std::fmt::Formatter"*)* @"_ZN53_$LT$$RF$$u27$a$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha09605d4589e2bacE")
%27 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret, i32 0, i32 0
%28 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret, i32 0, i32 1
%29 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %27, !nonnull !0
%30 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %28
br label %bb5
bb4: ; preds = %bb2
ret i64 %2
bb5: ; preds = %bb3
call void @_ZN4core3fmt10ArgumentV13new17hf18931f30e637d05E(%"2.std::fmt::ArgumentV1"* noalias nocapture sret dereferenceable(16) %tmp_ret1, %"2.std::option::Option<usize>"** noalias readonly dereferenceable(8) %26, i8 (%"2.std::option::Option<usize>"**, %"2.std::fmt::Formatter"*)* @"_ZN53_$LT$$RF$$u27$a$u20$T$u20$as$u20$core..fmt..Debug$GT$3fmt17ha09605d4589e2bacE")
%31 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret1, i32 0, i32 0
%32 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %tmp_ret1, i32 0, i32 1
%33 = load %"2.core::fmt::Void"*, %"2.core::fmt::Void"** %31, !nonnull !0
%34 = load i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)*, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %32
br label %bb6
bb6: ; preds = %bb5
%35 = getelementptr inbounds [2 x %"2.std::fmt::ArgumentV1"], [2 x %"2.std::fmt::ArgumentV1"]* %_25, i32 0, i32 0
%36 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %35, i32 0, i32 0
store %"2.core::fmt::Void"* %29, %"2.core::fmt::Void"** %36
%37 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %35, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %30, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %37
%38 = getelementptr inbounds [2 x %"2.std::fmt::ArgumentV1"], [2 x %"2.std::fmt::ArgumentV1"]* %_25, i32 0, i32 1
%39 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %38, i32 0, i32 0
store %"2.core::fmt::Void"* %33, %"2.core::fmt::Void"** %39
%40 = getelementptr inbounds %"2.std::fmt::ArgumentV1", %"2.std::fmt::ArgumentV1"* %38, i32 0, i32 1
store i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)* %34, i8 (%"2.core::fmt::Void"*, %"2.std::fmt::Formatter"*)** %40
%41 = bitcast [2 x %"2.std::fmt::ArgumentV1"]* %_25 to %"2.std::fmt::ArgumentV1"*
call void @_ZN4core3fmt9Arguments6new_v117h4c1ce7bc60005933E(%"2.std::fmt::Arguments"* noalias nocapture sret dereferenceable(48) %_20, %str_slice* noalias nonnull readonly %19, i64 %20, %"2.std::fmt::ArgumentV1"* noalias nonnull readonly %41, i64 2)
br label %bb7
bb7: ; preds = %bb6
call void @_ZN4core9panicking9panic_fmt17h9af671b78898cdbaE(%"2.std::fmt::Arguments"* noalias nocapture dereferenceable(48) %_20, { %str_slice, i32 }* noalias readonly dereferenceable(24) @_ZN4core4iter6traits17ExactSizeIterator3len10_FILE_LINE17haedb039d2064178dE)
unreachable
}
; Function Attrs: uwtable
define internal i16 @_ZN4core4iter7sources4once17hae9f2c7d8cc1b32bE(i1 zeroext) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%_0 = alloca %"2.std::iter::Once<bool>"
%_3 = alloca %"2.std::option::IntoIter<bool>"
%_4 = alloca %"2.std::option::Option<bool>"
%arg = alloca %"2.std::option::Option<bool>"
%personalityslot = alloca { i8*, i32 }
%abi_cast = alloca i16
br label %start
start: ; preds = %entry-block
%1 = getelementptr inbounds %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %_4, i32 0, i32 0
store i8 1, i8* %1
%2 = bitcast %"2.std::option::Option<bool>"* %_4 to { i8, i8 }*
%3 = getelementptr inbounds { i8, i8 }, { i8, i8 }* %2, i32 0, i32 1
%4 = zext i1 %0 to i8
store i8 %4, i8* %3
%5 = load %"2.std::option::Option<bool>", %"2.std::option::Option<bool>"* %_4
store %"2.std::option::Option<bool>" %5, %"2.std::option::Option<bool>"* %arg
%6 = bitcast %"2.std::option::Option<bool>"* %arg to i16*
%7 = load i16, i16* %6, align 1
%8 = invoke i16 @"_ZN82_$LT$core..option..Option$LT$T$GT$$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h1b65fb2cdd1b4d40E"(i16 %7)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%9 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %9
bb2: ; preds = %start
store i16 %8, i16* %abi_cast
%10 = bitcast %"2.std::option::IntoIter<bool>"* %_3 to i8*
%11 = bitcast i16* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %11, i64 2, i32 1, i1 false)
%12 = load %"2.std::option::IntoIter<bool>", %"2.std::option::IntoIter<bool>"* %_3
%13 = getelementptr inbounds %"2.std::iter::Once<bool>", %"2.std::iter::Once<bool>"* %_0, i32 0, i32 0
store %"2.std::option::IntoIter<bool>" %12, %"2.std::option::IntoIter<bool>"* %13
%14 = bitcast %"2.std::iter::Once<bool>"* %_0 to i16*
%15 = load i16, i16* %14, align 1
ret i16 %15
cleanup: ; preds = %start
%16 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %16, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h2fe7b1ba9da5722bE() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<()>"
%_1 = alloca %"2.std::marker::PhantomData<()>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h4c7a47d2f3424d73E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<isize>"
%_1 = alloca %"2.std::marker::PhantomData<isize>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h5593d144371e5b4cE() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<i32>"
%_1 = alloca %"2.std::marker::PhantomData<i32>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h5f90bb4f23a2b0d1E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<std::vec::Vec<char>>"
%_1 = alloca %"2.std::marker::PhantomData<std::vec::Vec<char>>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h60ca39658dfde410E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<u64>"
%_1 = alloca %"2.std::marker::PhantomData<u64>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h77d83c62b655d783E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<i64>"
%_1 = alloca %"2.std::marker::PhantomData<i64>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h79ee2c7e94324043E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<i8>"
%_1 = alloca %"2.std::marker::PhantomData<i8>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h8c652941a0471458E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<i16>"
%_1 = alloca %"2.std::marker::PhantomData<i16>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h92148f676d3e78d7E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<usize>"
%_1 = alloca %"2.std::marker::PhantomData<usize>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h9515b436882de37dE() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<u32>"
%_1 = alloca %"2.std::marker::PhantomData<u32>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17h9552a17a69f499daE() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<bool>"
%_1 = alloca %"2.std::marker::PhantomData<bool>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17hb37d299414911e77E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<u16>"
%_1 = alloca %"2.std::marker::PhantomData<u16>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal void @_ZN4core4iter7sources5empty17hc607da4d9b6a9357E() unnamed_addr #2 {
entry-block:
%_0 = alloca %"2.std::iter::Empty<u8>"
%_1 = alloca %"2.std::marker::PhantomData<u8>"
br label %start
start: ; preds = %entry-block
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator10filter_map17h8f203a6479c3e7b3E(%"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>"* noalias nocapture sret dereferenceable(16), i8* noalias nonnull, void (i8*)** nonnull) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = getelementptr inbounds %"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>", %"2.std::iter::FilterMap<Box<std::iter::Iterator<Item=u32>>, fn(u32) -> std::option::Option<char> {std::char::from_u32}>"* %0, i32 0, i32 0
%4 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 0
store i8* %1, i8** %4
%5 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %5
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator3map17h531f99dbcdcb98efE(%"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>"* noalias nocapture sret dereferenceable(16), i8* noalias nonnull, void (i8*)** nonnull) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = getelementptr inbounds %"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>", %"2.std::iter::Map<Box<std::iter::Iterator<Item=std::vec::Vec<char>>>, [closure@src/arbitrary.rs:404:37: 404:74]>"* %0, i32 0, i32 0
%4 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 0
store i8* %1, i8** %4
%5 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %5
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator3map17h70f6a2c9ad4fa50bE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture sret dereferenceable(16), %"2.std::slice::Iter<std::string::String>"* noalias nocapture dereferenceable(16)) unnamed_addr #0 {
entry-block:
%self = alloca %"2.std::slice::Iter<std::string::String>"
%_5 = alloca %"2.std::slice::Iter<std::string::String>"
br label %start
start: ; preds = %entry-block
%2 = bitcast %"2.std::slice::Iter<std::string::String>"* %1 to i8*
%3 = bitcast %"2.std::slice::Iter<std::string::String>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 16, i32 8, i1 false)
%4 = bitcast %"2.std::slice::Iter<std::string::String>"* %self to i8*
%5 = bitcast %"2.std::slice::Iter<std::string::String>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %4, i64 16, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>", %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %0, i32 0, i32 0
%7 = bitcast %"2.std::slice::Iter<std::string::String>"* %_5 to i8*
%8 = bitcast %"2.std::slice::Iter<std::string::String>"* %6 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %7, i64 16, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator3map17h7e2ff8bd731da6bbE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture sret dereferenceable(16), %"2.std::slice::Iter<std::string::String>"* noalias nocapture dereferenceable(16)) unnamed_addr #0 {
entry-block:
%self = alloca %"2.std::slice::Iter<std::string::String>"
%_5 = alloca %"2.std::slice::Iter<std::string::String>"
br label %start
start: ; preds = %entry-block
%2 = bitcast %"2.std::slice::Iter<std::string::String>"* %1 to i8*
%3 = bitcast %"2.std::slice::Iter<std::string::String>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 16, i32 8, i1 false)
%4 = bitcast %"2.std::slice::Iter<std::string::String>"* %self to i8*
%5 = bitcast %"2.std::slice::Iter<std::string::String>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %4, i64 16, i32 8, i1 false)
%6 = getelementptr inbounds %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>", %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %0, i32 0, i32 0
%7 = bitcast %"2.std::slice::Iter<std::string::String>"* %_5 to i8*
%8 = bitcast %"2.std::slice::Iter<std::string::String>"* %6 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %7, i64 16, i32 8, i1 false)
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator3map17h85dd5b6077dc839aE(%"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>"* noalias nocapture sret dereferenceable(16), i8* noalias nonnull, void (i8*)** nonnull) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = getelementptr inbounds %"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>", %"2.std::iter::Map<Box<std::iter::Iterator<Item=i32>>, [closure@src/arbitrary.rs:614:25: 614:37]>"* %0, i32 0, i32 0
%4 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 0
store i8* %1, i8** %4
%5 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %5
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator3map17hb2c0a27dd78d5e72E(%"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>"* noalias nocapture sret dereferenceable(16), i8* noalias nonnull, void (i8*)** nonnull) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = getelementptr inbounds %"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>", %"2.std::iter::Map<Box<std::iter::Iterator<Item=(u64, u32)>>, [closure@src/arbitrary.rs:671:18: 673:14]>"* %0, i32 0, i32 0
%4 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 0
store i8* %1, i8** %4
%5 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %5
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator3map17hcba3af3c3adf84bbE(%"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>"* noalias nocapture sret dereferenceable(16), i8* noalias nonnull, void (i8*)** nonnull) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = getelementptr inbounds %"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>", %"2.std::iter::Map<Box<std::iter::Iterator<Item=i64>>, [closure@src/arbitrary.rs:625:25: 625:37]>"* %0, i32 0, i32 0
%4 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 0
store i8* %1, i8** %4
%5 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %5
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: uwtable
define internal i64 @_ZN4core4iter8iterator8Iterator3sum17h688ccc8f1a287e7dE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%_4 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %0 to i8*
%2 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 16, i32 8, i1 false)
%3 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %self to i8*
%4 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 16, i32 8, i1 false)
%5 = invoke i64 @"_ZN49_$LT$usize$u20$as$u20$core..iter..traits..Sum$GT$3sum17h0f0d4afabfab8da6E"(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16) %_4)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %start
ret i64 %5
cleanup: ; preds = %start
%7 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %7, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: uwtable
define internal i64 @_ZN4core4iter8iterator8Iterator3sum17h916d8f63ab69c5beE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16)) unnamed_addr #2 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%_4 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
%1 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %0 to i8*
%2 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %2, i8* %1, i64 16, i32 8, i1 false)
%3 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %self to i8*
%4 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %_4 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 16, i32 8, i1 false)
%5 = invoke i64 @"_ZN49_$LT$usize$u20$as$u20$core..iter..traits..Sum$GT$3sum17h26a0dd0ac30562f2E"(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16) %_4)
to label %bb2 unwind label %cleanup
bb1: ; preds = %cleanup
%6 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %6
bb2: ; preds = %start
ret i64 %5
cleanup: ; preds = %start
%7 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %7, { i8*, i32 }* %personalityslot
br label %bb1
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core4iter8iterator8Iterator4fold17h01ca7f97a6f51929E(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%f = alloca {}
%accum = alloca i64
%_9 = alloca {}
%_result = alloca {}
%_12 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%_13 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%iter = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"
%_15 = alloca %"2.std::option::Option<usize>"
%_21 = alloca { i64, i64 }
%_27 = alloca i8
%_28 = alloca i8
%_29 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_27
store i8 0, i8* %_28
store i8 0, i8* %_29
store i8 1, i8* %_27
%2 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %0 to i8*
%3 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 16, i32 8, i1 false)
store i8 1, i8* %_28
store i64 %1, i64* %accum
br label %bb5
bb1: ; preds = %bb19, %bb2
%4 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %4
bb2: ; preds = %bb3
%5 = load i8, i8* %_27, !range !1
%6 = trunc i8 %5 to i1
br i1 %6, label %bb19, label %bb1
bb3: ; preds = %bb20, %bb4
br label %bb2
bb4: ; preds = %bb8, %cleanup
%7 = load i8, i8* %_28, !range !1
%8 = trunc i8 %7 to i1
br i1 %8, label %bb20, label %bb3
bb5: ; preds = %start
store i8 0, i8* %_27
%9 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %self to i8*
%10 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %9, i64 16, i32 8, i1 false)
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h083aa859c64d92fdE"(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture sret dereferenceable(16) %_12, %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16) %_13)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%11 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %_12 to i8*
%12 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* %iter to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 16, i32 8, i1 false)
br label %bb7
bb7: ; preds = %bb14, %bb6
invoke void @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17he63187a5a87b17abE"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_15, %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3230) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::concat[0]::{{closure}}[0] }]>"* dereferenceable(16) %iter)
to label %bb9 unwind label %cleanup1
bb8: ; preds = %bb21, %bb23, %bb22, %cleanup1
br label %bb4
bb9: ; preds = %bb7
store i8 1, i8* %_29
%13 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_15, i32 0, i32 0
%14 = load i64, i64* %13, !range !2
switch i64 %14, label %unreachable [
i64 0, label %bb11
i64 1, label %bb12
]
bb10: ; preds = %cleanup2
%15 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_15, i32 0, i32 0
%16 = load i64, i64* %15, !range !2
switch i64 %16, label %unreachable [
i64 0, label %bb21
i64 1, label %bb22
]
bb11: ; preds = %bb9
store i8 0, i8* %_29
br label %bb13
bb12: ; preds = %bb9
store i8 0, i8* %_29
%17 = bitcast %"2.std::option::Option<usize>"* %_15 to { i64, i64 }*
%18 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %17, i32 0, i32 1
%19 = load i64, i64* %18
store i8 0, i8* %_28
%20 = load i64, i64* %accum
%21 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %_21, i32 0, i32 0
store i64 %20, i64* %21
%22 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %_21, i32 0, i32 1
store i64 %19, i64* %22
%23 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %_21, i32 0, i32 0
%24 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %_21, i32 0, i32 1
%25 = load i64, i64* %23
%26 = load i64, i64* %24
%27 = invoke i64 @_ZN4core3ops5FnMut8call_mut17h9f3cec562b1c78c9E({}* %f, i64 %25, i64 %26)
to label %bb24 unwind label %cleanup2
bb13: ; preds = %bb11
br label %bb15
bb14: ; preds = %bb25, %bb24
br label %bb7
bb15: ; preds = %bb13
store i8 0, i8* %_28
%28 = load i64, i64* %accum
br label %bb16
bb16: ; preds = %bb15
br label %bb17
bb17: ; preds = %bb16
br label %bb18
bb18: ; preds = %bb17
ret i64 %28
bb19: ; preds = %bb2
store i8 0, i8* %_27
br label %bb1
bb20: ; preds = %bb4
store i8 0, i8* %_28
br label %bb3
bb21: ; preds = %bb10
br label %bb8
bb22: ; preds = %bb10
%29 = load i8, i8* %_29, !range !1
%30 = trunc i8 %29 to i1
br i1 %30, label %bb23, label %bb8
bb23: ; preds = %bb22
store i8 0, i8* %_29
br label %bb8
bb24: ; preds = %bb12
store i8 1, i8* %_28
store i64 %27, i64* %accum
%31 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_15, i32 0, i32 0
%32 = load i64, i64* %31, !range !2
switch i64 %32, label %unreachable [
i64 0, label %bb25
i64 1, label %bb14
]
bb25: ; preds = %bb24
br label %bb14
cleanup: ; preds = %bb5
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb4
cleanup1: ; preds = %bb7
%34 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %34, { i8*, i32 }* %personalityslot
br label %bb8
unreachable: ; preds = %bb24, %bb10, %bb9
unreachable
cleanup2: ; preds = %bb12
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb10
}
; Function Attrs: inlinehint uwtable
define internal i64 @_ZN4core4iter8iterator8Iterator4fold17he1b6a15451319d7dE(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%f = alloca {}
%accum = alloca i64
%_9 = alloca {}
%_result = alloca {}
%_12 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%_13 = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%iter = alloca %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"
%_15 = alloca %"2.std::option::Option<usize>"
%_21 = alloca { i64, i64 }
%_27 = alloca i8
%_28 = alloca i8
%_29 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_27
store i8 0, i8* %_28
store i8 0, i8* %_29
store i8 1, i8* %_27
%2 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %0 to i8*
%3 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %2, i64 16, i32 8, i1 false)
store i8 1, i8* %_28
store i64 %1, i64* %accum
br label %bb5
bb1: ; preds = %bb19, %bb2
%4 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %4
bb2: ; preds = %bb3
%5 = load i8, i8* %_27, !range !1
%6 = trunc i8 %5 to i1
br i1 %6, label %bb19, label %bb1
bb3: ; preds = %bb20, %bb4
br label %bb2
bb4: ; preds = %bb8, %cleanup
%7 = load i8, i8* %_28, !range !1
%8 = trunc i8 %7 to i1
br i1 %8, label %bb20, label %bb3
bb5: ; preds = %start
store i8 0, i8* %_27
%9 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %self to i8*
%10 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %_13 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %9, i64 16, i32 8, i1 false)
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h03e0ba034d3417fbE"(%"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture sret dereferenceable(16) %_12, %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* noalias nocapture dereferenceable(16) %_13)
to label %bb6 unwind label %cleanup
bb6: ; preds = %bb5
%11 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %_12 to i8*
%12 = bitcast %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* %iter to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 16, i32 8, i1 false)
br label %bb7
bb7: ; preds = %bb14, %bb6
invoke void @"_ZN84_$LT$core..iter..Map$LT$I$C$$u20$F$GT$$u20$as$u20$core..iter..iterator..Iterator$GT$4next17h8fccdcd7f513f378E"(%"2.std::option::Option<usize>"* noalias nocapture sret dereferenceable(16) %_15, %"2.std::iter::Map<std::slice::Iter<std::string::String>, [closure@DefId { krate: CrateNum(3), node: DefIndex(3238) => collections/75fe2fdafd75f237ff013f4ea8c6fac39cd701ee2ed7455130a3f74d5902d10c::str[0]::{{impl}}[0]::join[0]::{{closure}}[0] }]>"* dereferenceable(16) %iter)
to label %bb9 unwind label %cleanup1
bb8: ; preds = %bb21, %bb23, %bb22, %cleanup1
br label %bb4
bb9: ; preds = %bb7
store i8 1, i8* %_29
%13 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_15, i32 0, i32 0
%14 = load i64, i64* %13, !range !2
switch i64 %14, label %unreachable [
i64 0, label %bb11
i64 1, label %bb12
]
bb10: ; preds = %cleanup2
%15 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_15, i32 0, i32 0
%16 = load i64, i64* %15, !range !2
switch i64 %16, label %unreachable [
i64 0, label %bb21
i64 1, label %bb22
]
bb11: ; preds = %bb9
store i8 0, i8* %_29
br label %bb13
bb12: ; preds = %bb9
store i8 0, i8* %_29
%17 = bitcast %"2.std::option::Option<usize>"* %_15 to { i64, i64 }*
%18 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %17, i32 0, i32 1
%19 = load i64, i64* %18
store i8 0, i8* %_28
%20 = load i64, i64* %accum
%21 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %_21, i32 0, i32 0
store i64 %20, i64* %21
%22 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %_21, i32 0, i32 1
store i64 %19, i64* %22
%23 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %_21, i32 0, i32 0
%24 = getelementptr inbounds { i64, i64 }, { i64, i64 }* %_21, i32 0, i32 1
%25 = load i64, i64* %23
%26 = load i64, i64* %24
%27 = invoke i64 @_ZN4core3ops5FnMut8call_mut17h9f3cec562b1c78c9E({}* %f, i64 %25, i64 %26)
to label %bb24 unwind label %cleanup2
bb13: ; preds = %bb11
br label %bb15
bb14: ; preds = %bb25, %bb24
br label %bb7
bb15: ; preds = %bb13
store i8 0, i8* %_28
%28 = load i64, i64* %accum
br label %bb16
bb16: ; preds = %bb15
br label %bb17
bb17: ; preds = %bb16
br label %bb18
bb18: ; preds = %bb17
ret i64 %28
bb19: ; preds = %bb2
store i8 0, i8* %_27
br label %bb1
bb20: ; preds = %bb4
store i8 0, i8* %_28
br label %bb3
bb21: ; preds = %bb10
br label %bb8
bb22: ; preds = %bb10
%29 = load i8, i8* %_29, !range !1
%30 = trunc i8 %29 to i1
br i1 %30, label %bb23, label %bb8
bb23: ; preds = %bb22
store i8 0, i8* %_29
br label %bb8
bb24: ; preds = %bb12
store i8 1, i8* %_28
store i64 %27, i64* %accum
%31 = getelementptr inbounds %"2.std::option::Option<usize>", %"2.std::option::Option<usize>"* %_15, i32 0, i32 0
%32 = load i64, i64* %31, !range !2
switch i64 %32, label %unreachable [
i64 0, label %bb25
i64 1, label %bb14
]
bb25: ; preds = %bb24
br label %bb14
cleanup: ; preds = %bb5
%33 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %33, { i8*, i32 }* %personalityslot
br label %bb4
cleanup1: ; preds = %bb7
%34 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %34, { i8*, i32 }* %personalityslot
br label %bb8
unreachable: ; preds = %bb24, %bb10, %bb9
unreachable
cleanup2: ; preds = %bb12
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb10
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator4scan17h2dd6aa244e6fc7ceE(%"2.std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>"* noalias nocapture sret dereferenceable(24), i8* noalias nonnull, void (i8*)** nonnull, i32) unnamed_addr #0 {
entry-block:
%arg1 = alloca { i32 }
%abi_cast = alloca i32
%initial_state = alloca { i32 }
%_10 = alloca { i32 }
store i32 %3, i32* %abi_cast
%4 = bitcast { i32 }* %arg1 to i8*
%5 = bitcast i32* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %5, i64 4, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
%6 = load { i32 }, { i32 }* %arg1
store { i32 } %6, { i32 }* %initial_state
%7 = load { i32 }, { i32 }* %initial_state
store { i32 } %7, { i32 }* %_10
%8 = getelementptr inbounds %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>"* %0, i32 0, i32 0
%9 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %8, i32 0, i32 0
store i8* %1, i8** %9
%10 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %8, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %10
%11 = load { i32 }, { i32 }* %_10
%12 = getelementptr inbounds %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u64>>, (u32,), [closure@src/arbitrary.rs:172:21: 173:60]>"* %0, i32 0, i32 2
store { i32 } %11, { i32 }* %12
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator4scan17hdd471733b7bb768dE(%"2.std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>"* noalias nocapture sret dereferenceable(24), i8* noalias nonnull, void (i8*)** nonnull, i64) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%4 = getelementptr inbounds %"2.std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>"* %0, i32 0, i32 0
%5 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %4, i32 0, i32 0
store i8* %1, i8** %5
%6 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %4, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %6
%7 = getelementptr inbounds %"2.std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=(u32,)>>, u64, [closure@src/arbitrary.rs:176:43: 177:60]>"* %0, i32 0, i32 2
store i64 %3, i64* %7
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator4scan17hea172e18ee4728abE(%"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* noalias nocapture sret dereferenceable(24), i8* noalias nonnull, void (i8*)** nonnull, i32) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%4 = getelementptr inbounds %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* %0, i32 0, i32 0
%5 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %4, i32 0, i32 0
store i8* %1, i8** %5
%6 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %4, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %6
%7 = getelementptr inbounds %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* %0, i32 0, i32 2
store i32 %3, i32* %7
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator4scan17hfe003f6afdd75207E(%"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* noalias nocapture sret dereferenceable(16), i8* noalias nonnull, void (i8*)** nonnull) unnamed_addr #0 {
entry-block:
br label %start
start: ; preds = %entry-block
%3 = getelementptr inbounds %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>", %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* %0, i32 0, i32 0
%4 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 0
store i8* %1, i8** %4
%5 = getelementptr inbounds { i8*, void (i8*)** }, { i8*, void (i8*)** }* %3, i32 0, i32 1
store void (i8*)** %2, void (i8*)*** %5
br label %bb1
bb1: ; preds = %start
ret void
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h039a6cf96fdcd1faE(%"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* noalias nocapture sret dereferenceable(40), %"3.std::vec::IntoIter<u8>"* noalias nocapture dereferenceable(32), i16) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%abi_cast = alloca i16
%self = alloca %"3.std::vec::IntoIter<u8>"
%_5 = alloca %"3.std::vec::IntoIter<u8>"
%_9 = alloca i8
%_10 = alloca i8
%arg = alloca %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%abi_cast1 = alloca i16
store i16 %2, i16* %abi_cast
%3 = bitcast %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1 to i8*
%4 = bitcast i16* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 2, i32 1, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%5 = bitcast %"3.std::vec::IntoIter<u8>"* %1 to i8*
%6 = bitcast %"3.std::vec::IntoIter<u8>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 32, i32 8, i1 false)
%7 = getelementptr inbounds %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1, i32 0, i32 0
%8 = getelementptr inbounds %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1, i32 0, i32 1
%9 = load i8, i8* %7
%10 = load i8, i8* %8
store i8 1, i8* %_10
%11 = bitcast %"3.std::vec::IntoIter<u8>"* %self to i8*
%12 = bitcast %"3.std::vec::IntoIter<u8>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 32, i32 8, i1 false)
%13 = getelementptr inbounds %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 0
store i8 %9, i8* %13
%14 = getelementptr inbounds %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 1
store i8 %10, i8* %14
%15 = bitcast %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg to i16*
%16 = load i16, i16* %15, align 1
%17 = invoke i16 @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h2cbd60fa23f061d4E"(i16 %16)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%18 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %18
bb2: ; preds = %cleanup
%19 = load i8, i8* %_10, !range !1
%20 = trunc i8 %19 to i1
br i1 %20, label %bb4, label %bb1
bb3: ; preds = %start
store i16 %17, i16* %abi_cast1
%21 = bitcast %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret to i8*
%22 = bitcast i16* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %21, i8* %22, i64 2, i32 1, i1 false)
%23 = getelementptr inbounds %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 0
%24 = getelementptr inbounds %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 1
%25 = load i8, i8* %23
%26 = load i8, i8* %24
store i8 0, i8* %_9
store i8 0, i8* %_10
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 0
%28 = bitcast %"3.std::vec::IntoIter<u8>"* %_5 to i8*
%29 = bitcast %"3.std::vec::IntoIter<u8>"* %27 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %29, i8* %28, i64 32, i32 8, i1 false)
%30 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 1
%31 = getelementptr inbounds %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %30, i32 0, i32 0
store i8 %25, i8* %31
%32 = getelementptr inbounds %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %30, i32 0, i32 1
store i8 %26, i8* %32
%33 = load i8, i8* %_9
%34 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u8>, <u8 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 2
store i8 %33, i8* %34
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17hdcdc445cae104ff0E(%"3.std::vec::IntoIter<u8>"* %_5)
br label %bb1
cleanup: ; preds = %start
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h126d811c8f06f2f5E(%"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* noalias nocapture sret dereferenceable(48), %"3.std::vec::IntoIter<i32>"* noalias nocapture dereferenceable(32), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%abi_cast = alloca i64
%self = alloca %"3.std::vec::IntoIter<i32>"
%_5 = alloca %"3.std::vec::IntoIter<i32>"
%_9 = alloca i8
%_10 = alloca i8
%arg = alloca %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%abi_cast1 = alloca i64
store i64 %2, i64* %abi_cast
%3 = bitcast %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1 to i8*
%4 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%5 = bitcast %"3.std::vec::IntoIter<i32>"* %1 to i8*
%6 = bitcast %"3.std::vec::IntoIter<i32>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 32, i32 8, i1 false)
%7 = getelementptr inbounds %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1, i32 0, i32 0
%8 = getelementptr inbounds %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1, i32 0, i32 1
%9 = load i32, i32* %7
%10 = load i32, i32* %8
store i8 1, i8* %_10
%11 = bitcast %"3.std::vec::IntoIter<i32>"* %self to i8*
%12 = bitcast %"3.std::vec::IntoIter<i32>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 32, i32 8, i1 false)
%13 = getelementptr inbounds %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 0
store i32 %9, i32* %13
%14 = getelementptr inbounds %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 1
store i32 %10, i32* %14
%15 = bitcast %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg to i64*
%16 = load i64, i64* %15, align 4
%17 = invoke i64 @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17ha88dcd7d3450ea90E"(i64 %16)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%18 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %18
bb2: ; preds = %cleanup
%19 = load i8, i8* %_10, !range !1
%20 = trunc i8 %19 to i1
br i1 %20, label %bb4, label %bb1
bb3: ; preds = %start
store i64 %17, i64* %abi_cast1
%21 = bitcast %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret to i8*
%22 = bitcast i64* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %21, i8* %22, i64 8, i32 4, i1 false)
%23 = getelementptr inbounds %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 0
%24 = getelementptr inbounds %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 1
%25 = load i32, i32* %23
%26 = load i32, i32* %24
store i8 0, i8* %_9
store i8 0, i8* %_10
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 0
%28 = bitcast %"3.std::vec::IntoIter<i32>"* %_5 to i8*
%29 = bitcast %"3.std::vec::IntoIter<i32>"* %27 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %29, i8* %28, i64 32, i32 8, i1 false)
%30 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 1
%31 = getelementptr inbounds %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %30, i32 0, i32 0
store i32 %25, i32* %31
%32 = getelementptr inbounds %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %30, i32 0, i32 1
store i32 %26, i32* %32
%33 = load i8, i8* %_9
%34 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i32>, <f32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 2
store i8 %33, i8* %34
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h5ed0d2b77b3fb3e7E(%"3.std::vec::IntoIter<i32>"* %_5)
br label %bb1
cleanup: ; preds = %start
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h24aa087afe41d271E(%"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>"* noalias nocapture sret dereferenceable(40), %"2.std::slice::Iter<char>"* noalias nocapture dereferenceable(16), i32* noalias nonnull readonly, i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::slice::Iter<char>"
%_5 = alloca %"2.std::slice::Iter<char>"
%_7 = alloca %"2.std::slice::Iter<char>"
%_9 = alloca i8
%_10 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%4 = bitcast %"2.std::slice::Iter<char>"* %1 to i8*
%5 = bitcast %"2.std::slice::Iter<char>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %5, i8* %4, i64 16, i32 8, i1 false)
store i8 1, i8* %_10
%6 = bitcast %"2.std::slice::Iter<char>"* %self to i8*
%7 = bitcast %"2.std::slice::Iter<char>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %7, i8* %6, i64 16, i32 8, i1 false)
invoke void @"_ZN4core5slice89_$LT$impl$u20$core..iter..traits..IntoIterator$u20$for$u20$$RF$$u27$a$u20$$u5b$T$u5d$$GT$9into_iter17hbada2b59a9c035beE"(%"2.std::slice::Iter<char>"* noalias nocapture sret dereferenceable(16) %_7, i32* noalias nonnull readonly %2, i64 %3)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%8 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %8
bb2: ; preds = %cleanup
%9 = load i8, i8* %_10, !range !1
%10 = trunc i8 %9 to i1
br i1 %10, label %bb4, label %bb1
bb3: ; preds = %start
store i8 0, i8* %_9
store i8 0, i8* %_10
%11 = getelementptr inbounds %"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>", %"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>"* %0, i32 0, i32 0
%12 = bitcast %"2.std::slice::Iter<char>"* %_5 to i8*
%13 = bitcast %"2.std::slice::Iter<char>"* %11 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %13, i8* %12, i64 16, i32 8, i1 false)
%14 = getelementptr inbounds %"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>", %"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>"* %0, i32 0, i32 1
%15 = bitcast %"2.std::slice::Iter<char>"* %_7 to i8*
%16 = bitcast %"2.std::slice::Iter<char>"* %14 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %16, i8* %15, i64 16, i32 8, i1 false)
%17 = load i8, i8* %_9
%18 = getelementptr inbounds %"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>", %"2.std::iter::Chain<std::slice::Iter<char>, std::slice::Iter<char>>"* %0, i32 0, i32 2
store i8 %17, i8* %18
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
br label %bb1
cleanup: ; preds = %start
%19 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %19, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h4b633116b8c84617E(%"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"* noalias nocapture sret dereferenceable(48), %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* noalias nocapture dereferenceable(16), %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* noalias nocapture dereferenceable(24)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"
%other = alloca %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"
%_5 = alloca %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"
%_7 = alloca %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"
%_8 = alloca %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"
%_9 = alloca i8
%_10 = alloca i8
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%3 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* %1 to i8*
%4 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 16, i32 8, i1 false)
%5 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* %2 to i8*
%6 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* %other to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 24, i32 8, i1 false)
store i8 1, i8* %_10
%7 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* %self to i8*
%8 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %8, i8* %7, i64 16, i32 8, i1 false)
%9 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* %other to i8*
%10 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* %_8 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %9, i64 24, i32 8, i1 false)
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h29d31cf66ddd5e56E"(%"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* noalias nocapture sret dereferenceable(24) %_7, %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* noalias nocapture dereferenceable(24) %_8)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%11 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %11
bb2: ; preds = %cleanup
%12 = load i8, i8* %_10, !range !1
%13 = trunc i8 %12 to i1
br i1 %13, label %bb4, label %bb1
bb3: ; preds = %start
store i8 0, i8* %_9
store i8 0, i8* %_10
%14 = getelementptr inbounds %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>", %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"* %0, i32 0, i32 0
%15 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* %_5 to i8*
%16 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* %14 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %16, i8* %15, i64 16, i32 8, i1 false)
%17 = getelementptr inbounds %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>", %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"* %0, i32 0, i32 1
%18 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* %_7 to i8*
%19 = bitcast %"2.std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>"* %17 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %19, i8* %18, i64 24, i32 8, i1 false)
%20 = load i8, i8* %_9
%21 = getelementptr inbounds %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>", %"2.std::iter::Chain<std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>, std::iter::Scan<Box<std::iter::Iterator<Item=()>>, u32, [closure@src/arbitrary.rs:176:43: 177:60]>>"* %0, i32 0, i32 2
store i8 %20, i8* %21
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h949414e1bd535d48E(%"2.std::iter::Scan<Box<std::iter::Iterator<Item=u32>>, (), [closure@src/arbitrary.rs:172:21: 173:60]>"* %_5)
br label %bb1
cleanup: ; preds = %start
%22 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %22, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h4cd06e567295cf51E(%"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* noalias nocapture sret dereferenceable(48), %"3.std::vec::IntoIter<i32>"* noalias nocapture dereferenceable(32), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%abi_cast = alloca i64
%self = alloca %"3.std::vec::IntoIter<i32>"
%_5 = alloca %"3.std::vec::IntoIter<i32>"
%_9 = alloca i8
%_10 = alloca i8
%arg = alloca %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%abi_cast1 = alloca i64
store i64 %2, i64* %abi_cast
%3 = bitcast %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1 to i8*
%4 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%5 = bitcast %"3.std::vec::IntoIter<i32>"* %1 to i8*
%6 = bitcast %"3.std::vec::IntoIter<i32>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 32, i32 8, i1 false)
%7 = getelementptr inbounds %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1, i32 0, i32 0
%8 = getelementptr inbounds %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1, i32 0, i32 1
%9 = load i32, i32* %7
%10 = load i32, i32* %8
store i8 1, i8* %_10
%11 = bitcast %"3.std::vec::IntoIter<i32>"* %self to i8*
%12 = bitcast %"3.std::vec::IntoIter<i32>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 32, i32 8, i1 false)
%13 = getelementptr inbounds %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 0
store i32 %9, i32* %13
%14 = getelementptr inbounds %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 1
store i32 %10, i32* %14
%15 = bitcast %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg to i64*
%16 = load i64, i64* %15, align 4
%17 = invoke i64 @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h625073b36552db01E"(i64 %16)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%18 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %18
bb2: ; preds = %cleanup
%19 = load i8, i8* %_10, !range !1
%20 = trunc i8 %19 to i1
br i1 %20, label %bb4, label %bb1
bb3: ; preds = %start
store i64 %17, i64* %abi_cast1
%21 = bitcast %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret to i8*
%22 = bitcast i64* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %21, i8* %22, i64 8, i32 4, i1 false)
%23 = getelementptr inbounds %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 0
%24 = getelementptr inbounds %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 1
%25 = load i32, i32* %23
%26 = load i32, i32* %24
store i8 0, i8* %_9
store i8 0, i8* %_10
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 0
%28 = bitcast %"3.std::vec::IntoIter<i32>"* %_5 to i8*
%29 = bitcast %"3.std::vec::IntoIter<i32>"* %27 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %29, i8* %28, i64 32, i32 8, i1 false)
%30 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 1
%31 = getelementptr inbounds %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %30, i32 0, i32 0
store i32 %25, i32* %31
%32 = getelementptr inbounds %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %30, i32 0, i32 1
store i32 %26, i32* %32
%33 = load i8, i8* %_9
%34 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i32>, <i32 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 2
store i8 %33, i8* %34
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h5ed0d2b77b3fb3e7E(%"3.std::vec::IntoIter<i32>"* %_5)
br label %bb1
cleanup: ; preds = %start
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h5a45c46cb81e628aE(%"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* noalias nocapture sret dereferenceable(56), %"3.std::vec::IntoIter<usize>"* noalias nocapture dereferenceable(32), %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* noalias nocapture dereferenceable(16)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"3.std::vec::IntoIter<usize>"
%_5 = alloca %"3.std::vec::IntoIter<usize>"
%_9 = alloca i8
%_10 = alloca i8
%tmp_ret = alloca %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%arg = alloca %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%3 = bitcast %"3.std::vec::IntoIter<usize>"* %1 to i8*
%4 = bitcast %"3.std::vec::IntoIter<usize>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 32, i32 8, i1 false)
%5 = getelementptr inbounds %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %2, i32 0, i32 0
%6 = getelementptr inbounds %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %2, i32 0, i32 1
%7 = load i64, i64* %5
%8 = load i64, i64* %6
store i8 1, i8* %_10
%9 = bitcast %"3.std::vec::IntoIter<usize>"* %self to i8*
%10 = bitcast %"3.std::vec::IntoIter<usize>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %9, i64 32, i32 8, i1 false)
%11 = getelementptr inbounds %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 0
store i64 %7, i64* %11
%12 = getelementptr inbounds %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 1
store i64 %8, i64* %12
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h80863040622e24dfE"(%"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* noalias nocapture sret dereferenceable(16) %tmp_ret, %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* noalias nocapture dereferenceable(16) %arg)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%13 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %13
bb2: ; preds = %cleanup
%14 = load i8, i8* %_10, !range !1
%15 = trunc i8 %14 to i1
br i1 %15, label %bb4, label %bb1
bb3: ; preds = %start
%16 = getelementptr inbounds %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 0
%17 = getelementptr inbounds %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 1
%18 = load i64, i64* %16
%19 = load i64, i64* %17
store i8 0, i8* %_9
store i8 0, i8* %_10
%20 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 0
%21 = bitcast %"3.std::vec::IntoIter<usize>"* %_5 to i8*
%22 = bitcast %"3.std::vec::IntoIter<usize>"* %20 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %22, i8* %21, i64 32, i32 8, i1 false)
%23 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 1
%24 = getelementptr inbounds %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %23, i32 0, i32 0
store i64 %18, i64* %24
%25 = getelementptr inbounds %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %23, i32 0, i32 1
store i64 %19, i64* %25
%26 = load i8, i8* %_9
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<usize>, <usize as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 2
store i8 %26, i8* %27
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h66c2871c13e75924E(%"3.std::vec::IntoIter<usize>"* %_5)
br label %bb1
cleanup: ; preds = %start
%28 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %28, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h5b43b2238e117114E(%"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* noalias nocapture sret dereferenceable(40), %"3.std::vec::IntoIter<i8>"* noalias nocapture dereferenceable(32), i16) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%abi_cast = alloca i16
%self = alloca %"3.std::vec::IntoIter<i8>"
%_5 = alloca %"3.std::vec::IntoIter<i8>"
%_9 = alloca i8
%_10 = alloca i8
%arg = alloca %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%abi_cast1 = alloca i16
store i16 %2, i16* %abi_cast
%3 = bitcast %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1 to i8*
%4 = bitcast i16* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 2, i32 1, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%5 = bitcast %"3.std::vec::IntoIter<i8>"* %1 to i8*
%6 = bitcast %"3.std::vec::IntoIter<i8>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 32, i32 8, i1 false)
%7 = getelementptr inbounds %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1, i32 0, i32 0
%8 = getelementptr inbounds %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1, i32 0, i32 1
%9 = load i8, i8* %7
%10 = load i8, i8* %8
store i8 1, i8* %_10
%11 = bitcast %"3.std::vec::IntoIter<i8>"* %self to i8*
%12 = bitcast %"3.std::vec::IntoIter<i8>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 32, i32 8, i1 false)
%13 = getelementptr inbounds %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 0
store i8 %9, i8* %13
%14 = getelementptr inbounds %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 1
store i8 %10, i8* %14
%15 = bitcast %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg to i16*
%16 = load i16, i16* %15, align 1
%17 = invoke i16 @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17he81514550649b946E"(i16 %16)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%18 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %18
bb2: ; preds = %cleanup
%19 = load i8, i8* %_10, !range !1
%20 = trunc i8 %19 to i1
br i1 %20, label %bb4, label %bb1
bb3: ; preds = %start
store i16 %17, i16* %abi_cast1
%21 = bitcast %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret to i8*
%22 = bitcast i16* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %21, i8* %22, i64 2, i32 1, i1 false)
%23 = getelementptr inbounds %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 0
%24 = getelementptr inbounds %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 1
%25 = load i8, i8* %23
%26 = load i8, i8* %24
store i8 0, i8* %_9
store i8 0, i8* %_10
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 0
%28 = bitcast %"3.std::vec::IntoIter<i8>"* %_5 to i8*
%29 = bitcast %"3.std::vec::IntoIter<i8>"* %27 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %29, i8* %28, i64 32, i32 8, i1 false)
%30 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 1
%31 = getelementptr inbounds %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %30, i32 0, i32 0
store i8 %25, i8* %31
%32 = getelementptr inbounds %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %30, i32 0, i32 1
store i8 %26, i8* %32
%33 = load i8, i8* %_9
%34 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i8>, <i8 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 2
store i8 %33, i8* %34
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h0d5ae135ebd6c489E(%"3.std::vec::IntoIter<i8>"* %_5)
br label %bb1
cleanup: ; preds = %start
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h5f8e5b51e8c907d9E(%"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* noalias nocapture sret dereferenceable(56), %"3.std::vec::IntoIter<u64>"* noalias nocapture dereferenceable(32), %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* noalias nocapture dereferenceable(16)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"3.std::vec::IntoIter<u64>"
%_5 = alloca %"3.std::vec::IntoIter<u64>"
%_9 = alloca i8
%_10 = alloca i8
%tmp_ret = alloca %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%arg = alloca %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%3 = bitcast %"3.std::vec::IntoIter<u64>"* %1 to i8*
%4 = bitcast %"3.std::vec::IntoIter<u64>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 32, i32 8, i1 false)
%5 = getelementptr inbounds %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %2, i32 0, i32 0
%6 = getelementptr inbounds %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %2, i32 0, i32 1
%7 = load i64, i64* %5
%8 = load i64, i64* %6
store i8 1, i8* %_10
%9 = bitcast %"3.std::vec::IntoIter<u64>"* %self to i8*
%10 = bitcast %"3.std::vec::IntoIter<u64>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %9, i64 32, i32 8, i1 false)
%11 = getelementptr inbounds %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 0
store i64 %7, i64* %11
%12 = getelementptr inbounds %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 1
store i64 %8, i64* %12
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17hec542c62e20b0875E"(%"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* noalias nocapture sret dereferenceable(16) %tmp_ret, %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* noalias nocapture dereferenceable(16) %arg)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%13 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %13
bb2: ; preds = %cleanup
%14 = load i8, i8* %_10, !range !1
%15 = trunc i8 %14 to i1
br i1 %15, label %bb4, label %bb1
bb3: ; preds = %start
%16 = getelementptr inbounds %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 0
%17 = getelementptr inbounds %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 1
%18 = load i64, i64* %16
%19 = load i64, i64* %17
store i8 0, i8* %_9
store i8 0, i8* %_10
%20 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 0
%21 = bitcast %"3.std::vec::IntoIter<u64>"* %_5 to i8*
%22 = bitcast %"3.std::vec::IntoIter<u64>"* %20 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %22, i8* %21, i64 32, i32 8, i1 false)
%23 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 1
%24 = getelementptr inbounds %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %23, i32 0, i32 0
store i64 %18, i64* %24
%25 = getelementptr inbounds %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %23, i32 0, i32 1
store i64 %19, i64* %25
%26 = load i8, i8* %_9
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u64>, <u64 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 2
store i8 %26, i8* %27
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h32eb70ab99d164d4E(%"3.std::vec::IntoIter<u64>"* %_5)
br label %bb1
cleanup: ; preds = %start
%28 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %28, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h63f3571a95da35adE(%"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>"* noalias nocapture sret dereferenceable(32), %"2.std::iter::Cloned<std::slice::Iter<char>>"* noalias nocapture dereferenceable(16), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"2.std::option::IntoIter<char>"
%abi_cast = alloca i64
%self = alloca %"2.std::iter::Cloned<std::slice::Iter<char>>"
%other = alloca %"2.std::option::IntoIter<char>"
%_5 = alloca %"2.std::iter::Cloned<std::slice::Iter<char>>"
%_7 = alloca %"2.std::option::IntoIter<char>"
%_8 = alloca %"2.std::option::IntoIter<char>"
%_9 = alloca i8
%_10 = alloca i8
%arg = alloca %"2.std::option::IntoIter<char>"
%personalityslot = alloca { i8*, i32 }
%abi_cast1 = alloca i64
store i64 %2, i64* %abi_cast
%3 = bitcast %"2.std::option::IntoIter<char>"* %arg1 to i8*
%4 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%5 = bitcast %"2.std::iter::Cloned<std::slice::Iter<char>>"* %1 to i8*
%6 = bitcast %"2.std::iter::Cloned<std::slice::Iter<char>>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 16, i32 8, i1 false)
%7 = load %"2.std::option::IntoIter<char>", %"2.std::option::IntoIter<char>"* %arg1
store %"2.std::option::IntoIter<char>" %7, %"2.std::option::IntoIter<char>"* %other
store i8 1, i8* %_10
%8 = bitcast %"2.std::iter::Cloned<std::slice::Iter<char>>"* %self to i8*
%9 = bitcast %"2.std::iter::Cloned<std::slice::Iter<char>>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %9, i8* %8, i64 16, i32 8, i1 false)
%10 = load %"2.std::option::IntoIter<char>", %"2.std::option::IntoIter<char>"* %other
store %"2.std::option::IntoIter<char>" %10, %"2.std::option::IntoIter<char>"* %_8
%11 = load %"2.std::option::IntoIter<char>", %"2.std::option::IntoIter<char>"* %_8
store %"2.std::option::IntoIter<char>" %11, %"2.std::option::IntoIter<char>"* %arg
%12 = bitcast %"2.std::option::IntoIter<char>"* %arg to i64*
%13 = load i64, i64* %12, align 4
%14 = invoke i64 @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h5d1c41eab50c00abE"(i64 %13)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%15 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %15
bb2: ; preds = %cleanup
%16 = load i8, i8* %_10, !range !1
%17 = trunc i8 %16 to i1
br i1 %17, label %bb4, label %bb1
bb3: ; preds = %start
store i64 %14, i64* %abi_cast1
%18 = bitcast %"2.std::option::IntoIter<char>"* %_7 to i8*
%19 = bitcast i64* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %18, i8* %19, i64 8, i32 4, i1 false)
store i8 0, i8* %_9
store i8 0, i8* %_10
%20 = getelementptr inbounds %"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>", %"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>"* %0, i32 0, i32 0
%21 = bitcast %"2.std::iter::Cloned<std::slice::Iter<char>>"* %_5 to i8*
%22 = bitcast %"2.std::iter::Cloned<std::slice::Iter<char>>"* %20 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %22, i8* %21, i64 16, i32 8, i1 false)
%23 = load %"2.std::option::IntoIter<char>", %"2.std::option::IntoIter<char>"* %_7
%24 = getelementptr inbounds %"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>", %"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>"* %0, i32 0, i32 1
store %"2.std::option::IntoIter<char>" %23, %"2.std::option::IntoIter<char>"* %24
%25 = load i8, i8* %_9
%26 = getelementptr inbounds %"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>", %"2.std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>"* %0, i32 0, i32 2
store i8 %25, i8* %26
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
br label %bb1
cleanup: ; preds = %start
%27 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %27, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h83e087d860753028E(%"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* noalias nocapture sret dereferenceable(40), %"3.std::vec::IntoIter<u16>"* noalias nocapture dereferenceable(32), i32) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%abi_cast = alloca i32
%self = alloca %"3.std::vec::IntoIter<u16>"
%_5 = alloca %"3.std::vec::IntoIter<u16>"
%_9 = alloca i8
%_10 = alloca i8
%arg = alloca %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%abi_cast1 = alloca i32
store i32 %2, i32* %abi_cast
%3 = bitcast %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1 to i8*
%4 = bitcast i32* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 4, i32 2, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%5 = bitcast %"3.std::vec::IntoIter<u16>"* %1 to i8*
%6 = bitcast %"3.std::vec::IntoIter<u16>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 32, i32 8, i1 false)
%7 = getelementptr inbounds %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1, i32 0, i32 0
%8 = getelementptr inbounds %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1, i32 0, i32 1
%9 = load i16, i16* %7
%10 = load i16, i16* %8
store i8 1, i8* %_10
%11 = bitcast %"3.std::vec::IntoIter<u16>"* %self to i8*
%12 = bitcast %"3.std::vec::IntoIter<u16>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 32, i32 8, i1 false)
%13 = getelementptr inbounds %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 0
store i16 %9, i16* %13
%14 = getelementptr inbounds %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 1
store i16 %10, i16* %14
%15 = bitcast %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg to i32*
%16 = load i32, i32* %15, align 2
%17 = invoke i32 @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17hbdbf52c3712db044E"(i32 %16)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%18 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %18
bb2: ; preds = %cleanup
%19 = load i8, i8* %_10, !range !1
%20 = trunc i8 %19 to i1
br i1 %20, label %bb4, label %bb1
bb3: ; preds = %start
store i32 %17, i32* %abi_cast1
%21 = bitcast %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret to i8*
%22 = bitcast i32* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %21, i8* %22, i64 4, i32 2, i1 false)
%23 = getelementptr inbounds %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 0
%24 = getelementptr inbounds %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 1
%25 = load i16, i16* %23
%26 = load i16, i16* %24
store i8 0, i8* %_9
store i8 0, i8* %_10
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 0
%28 = bitcast %"3.std::vec::IntoIter<u16>"* %_5 to i8*
%29 = bitcast %"3.std::vec::IntoIter<u16>"* %27 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %29, i8* %28, i64 32, i32 8, i1 false)
%30 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 1
%31 = getelementptr inbounds %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %30, i32 0, i32 0
store i16 %25, i16* %31
%32 = getelementptr inbounds %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %30, i32 0, i32 1
store i16 %26, i16* %32
%33 = load i8, i8* %_9
%34 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u16>, <u16 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 2
store i8 %33, i8* %34
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h72b207f3f776d83aE(%"3.std::vec::IntoIter<u16>"* %_5)
br label %bb1
cleanup: ; preds = %start
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h9084e42d1c108a9cE(%"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* noalias nocapture sret dereferenceable(56), %"3.std::vec::IntoIter<i64>"* noalias nocapture dereferenceable(32), %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* noalias nocapture dereferenceable(16)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"3.std::vec::IntoIter<i64>"
%_5 = alloca %"3.std::vec::IntoIter<i64>"
%_9 = alloca i8
%_10 = alloca i8
%tmp_ret = alloca %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%arg = alloca %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%3 = bitcast %"3.std::vec::IntoIter<i64>"* %1 to i8*
%4 = bitcast %"3.std::vec::IntoIter<i64>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 32, i32 8, i1 false)
%5 = getelementptr inbounds %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %2, i32 0, i32 0
%6 = getelementptr inbounds %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %2, i32 0, i32 1
%7 = load i64, i64* %5
%8 = load i64, i64* %6
store i8 1, i8* %_10
%9 = bitcast %"3.std::vec::IntoIter<i64>"* %self to i8*
%10 = bitcast %"3.std::vec::IntoIter<i64>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %9, i64 32, i32 8, i1 false)
%11 = getelementptr inbounds %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 0
store i64 %7, i64* %11
%12 = getelementptr inbounds %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 1
store i64 %8, i64* %12
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h2f225b2c2301adb2E"(%"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* noalias nocapture sret dereferenceable(16) %tmp_ret, %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* noalias nocapture dereferenceable(16) %arg)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%13 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %13
bb2: ; preds = %cleanup
%14 = load i8, i8* %_10, !range !1
%15 = trunc i8 %14 to i1
br i1 %15, label %bb4, label %bb1
bb3: ; preds = %start
%16 = getelementptr inbounds %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 0
%17 = getelementptr inbounds %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 1
%18 = load i64, i64* %16
%19 = load i64, i64* %17
store i8 0, i8* %_9
store i8 0, i8* %_10
%20 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 0
%21 = bitcast %"3.std::vec::IntoIter<i64>"* %_5 to i8*
%22 = bitcast %"3.std::vec::IntoIter<i64>"* %20 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %22, i8* %21, i64 32, i32 8, i1 false)
%23 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 1
%24 = getelementptr inbounds %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %23, i32 0, i32 0
store i64 %18, i64* %24
%25 = getelementptr inbounds %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %23, i32 0, i32 1
store i64 %19, i64* %25
%26 = load i8, i8* %_9
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i64>, <f64 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 2
store i8 %26, i8* %27
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h381f1a54f81fabb3E(%"3.std::vec::IntoIter<i64>"* %_5)
br label %bb1
cleanup: ; preds = %start
%28 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %28, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17h993d2022d4973200E(%"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* noalias nocapture sret dereferenceable(56), %"3.std::vec::IntoIter<isize>"* noalias nocapture dereferenceable(32), %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* noalias nocapture dereferenceable(16)) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%self = alloca %"3.std::vec::IntoIter<isize>"
%_5 = alloca %"3.std::vec::IntoIter<isize>"
%_9 = alloca i8
%_10 = alloca i8
%tmp_ret = alloca %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%arg = alloca %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%personalityslot = alloca { i8*, i32 }
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%3 = bitcast %"3.std::vec::IntoIter<isize>"* %1 to i8*
%4 = bitcast %"3.std::vec::IntoIter<isize>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %4, i8* %3, i64 32, i32 8, i1 false)
%5 = getelementptr inbounds %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %2, i32 0, i32 0
%6 = getelementptr inbounds %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %2, i32 0, i32 1
%7 = load i64, i64* %5
%8 = load i64, i64* %6
store i8 1, i8* %_10
%9 = bitcast %"3.std::vec::IntoIter<isize>"* %self to i8*
%10 = bitcast %"3.std::vec::IntoIter<isize>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %10, i8* %9, i64 32, i32 8, i1 false)
%11 = getelementptr inbounds %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 0
store i64 %7, i64* %11
%12 = getelementptr inbounds %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 1
store i64 %8, i64* %12
invoke void @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h0189691c5e511466E"(%"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* noalias nocapture sret dereferenceable(16) %tmp_ret, %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* noalias nocapture dereferenceable(16) %arg)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%13 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %13
bb2: ; preds = %cleanup
%14 = load i8, i8* %_10, !range !1
%15 = trunc i8 %14 to i1
br i1 %15, label %bb4, label %bb1
bb3: ; preds = %start
%16 = getelementptr inbounds %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 0
%17 = getelementptr inbounds %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 1
%18 = load i64, i64* %16
%19 = load i64, i64* %17
store i8 0, i8* %_9
store i8 0, i8* %_10
%20 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 0
%21 = bitcast %"3.std::vec::IntoIter<isize>"* %_5 to i8*
%22 = bitcast %"3.std::vec::IntoIter<isize>"* %20 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %22, i8* %21, i64 32, i32 8, i1 false)
%23 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 1
%24 = getelementptr inbounds %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %23, i32 0, i32 0
store i64 %18, i64* %24
%25 = getelementptr inbounds %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %23, i32 0, i32 1
store i64 %19, i64* %25
%26 = load i8, i8* %_9
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<isize>, <isize as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 2
store i8 %26, i8* %27
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h7e88ab8adb93b68dE(%"3.std::vec::IntoIter<isize>"* %_5)
br label %bb1
cleanup: ; preds = %start
%28 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %28, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17ha045ccc6ff1f7128E(%"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* noalias nocapture sret dereferenceable(40), %"3.std::vec::IntoIter<i16>"* noalias nocapture dereferenceable(32), i32) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%abi_cast = alloca i32
%self = alloca %"3.std::vec::IntoIter<i16>"
%_5 = alloca %"3.std::vec::IntoIter<i16>"
%_9 = alloca i8
%_10 = alloca i8
%arg = alloca %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"
%abi_cast1 = alloca i32
store i32 %2, i32* %abi_cast
%3 = bitcast %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1 to i8*
%4 = bitcast i32* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 4, i32 2, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%5 = bitcast %"3.std::vec::IntoIter<i16>"* %1 to i8*
%6 = bitcast %"3.std::vec::IntoIter<i16>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 32, i32 8, i1 false)
%7 = getelementptr inbounds %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1, i32 0, i32 0
%8 = getelementptr inbounds %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg1, i32 0, i32 1
%9 = load i16, i16* %7
%10 = load i16, i16* %8
store i8 1, i8* %_10
%11 = bitcast %"3.std::vec::IntoIter<i16>"* %self to i8*
%12 = bitcast %"3.std::vec::IntoIter<i16>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 32, i32 8, i1 false)
%13 = getelementptr inbounds %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 0
store i16 %9, i16* %13
%14 = getelementptr inbounds %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg, i32 0, i32 1
store i16 %10, i16* %14
%15 = bitcast %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %arg to i32*
%16 = load i32, i32* %15, align 2
%17 = invoke i32 @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17hd8f6ef26e1dcfd54E"(i32 %16)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%18 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %18
bb2: ; preds = %cleanup
%19 = load i8, i8* %_10, !range !1
%20 = trunc i8 %19 to i1
br i1 %20, label %bb4, label %bb1
bb3: ; preds = %start
store i32 %17, i32* %abi_cast1
%21 = bitcast %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret to i8*
%22 = bitcast i32* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %21, i8* %22, i64 4, i32 2, i1 false)
%23 = getelementptr inbounds %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 0
%24 = getelementptr inbounds %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %tmp_ret, i32 0, i32 1
%25 = load i16, i16* %23
%26 = load i16, i16* %24
store i8 0, i8* %_9
store i8 0, i8* %_10
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 0
%28 = bitcast %"3.std::vec::IntoIter<i16>"* %_5 to i8*
%29 = bitcast %"3.std::vec::IntoIter<i16>"* %27 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %29, i8* %28, i64 32, i32 8, i1 false)
%30 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 1
%31 = getelementptr inbounds %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %30, i32 0, i32 0
store i16 %25, i16* %31
%32 = getelementptr inbounds %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker", %"<i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker"* %30, i32 0, i32 1
store i16 %26, i16* %32
%33 = load i8, i8* %_9
%34 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<i16>, <i16 as arbitrary::Arbitrary>::shrink::shrinker::SignedShrinker>"* %0, i32 0, i32 2
store i8 %33, i8* %34
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17hcd84762860cd4633E(%"3.std::vec::IntoIter<i16>"* %_5)
br label %bb1
cleanup: ; preds = %start
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17hc49fc1b5944ee6b6E(%"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* noalias nocapture sret dereferenceable(48), %"3.std::vec::IntoIter<u32>"* noalias nocapture dereferenceable(32), i64) unnamed_addr #0 personality i32 (i32, i32, i64, %"8.unwind::libunwind::_Unwind_Exception"*, %"8.unwind::libunwind::_Unwind_Context"*)* @rust_eh_personality {
entry-block:
%arg1 = alloca %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%abi_cast = alloca i64
%self = alloca %"3.std::vec::IntoIter<u32>"
%_5 = alloca %"3.std::vec::IntoIter<u32>"
%_9 = alloca i8
%_10 = alloca i8
%arg = alloca %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%personalityslot = alloca { i8*, i32 }
%tmp_ret = alloca %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"
%abi_cast1 = alloca i64
store i64 %2, i64* %abi_cast
%3 = bitcast %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1 to i8*
%4 = bitcast i64* %abi_cast to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %3, i8* %4, i64 8, i32 4, i1 false)
br label %start
start: ; preds = %entry-block
store i8 0, i8* %_10
%5 = bitcast %"3.std::vec::IntoIter<u32>"* %1 to i8*
%6 = bitcast %"3.std::vec::IntoIter<u32>"* %self to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %6, i8* %5, i64 32, i32 8, i1 false)
%7 = getelementptr inbounds %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1, i32 0, i32 0
%8 = getelementptr inbounds %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg1, i32 0, i32 1
%9 = load i32, i32* %7
%10 = load i32, i32* %8
store i8 1, i8* %_10
%11 = bitcast %"3.std::vec::IntoIter<u32>"* %self to i8*
%12 = bitcast %"3.std::vec::IntoIter<u32>"* %_5 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %12, i8* %11, i64 32, i32 8, i1 false)
%13 = getelementptr inbounds %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 0
store i32 %9, i32* %13
%14 = getelementptr inbounds %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg, i32 0, i32 1
store i32 %10, i32* %14
%15 = bitcast %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %arg to i64*
%16 = load i64, i64* %15, align 4
%17 = invoke i64 @"_ZN54_$LT$I$u20$as$u20$core..iter..traits..IntoIterator$GT$9into_iter17h2b3349d4c7d7efe0E"(i64 %16)
to label %bb3 unwind label %cleanup
bb1: ; preds = %bb4, %bb2
%18 = load { i8*, i32 }, { i8*, i32 }* %personalityslot
resume { i8*, i32 } %18
bb2: ; preds = %cleanup
%19 = load i8, i8* %_10, !range !1
%20 = trunc i8 %19 to i1
br i1 %20, label %bb4, label %bb1
bb3: ; preds = %start
store i64 %17, i64* %abi_cast1
%21 = bitcast %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret to i8*
%22 = bitcast i64* %abi_cast1 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %21, i8* %22, i64 8, i32 4, i1 false)
%23 = getelementptr inbounds %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 0
%24 = getelementptr inbounds %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %tmp_ret, i32 0, i32 1
%25 = load i32, i32* %23
%26 = load i32, i32* %24
store i8 0, i8* %_9
store i8 0, i8* %_10
%27 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 0
%28 = bitcast %"3.std::vec::IntoIter<u32>"* %_5 to i8*
%29 = bitcast %"3.std::vec::IntoIter<u32>"* %27 to i8*
call void @llvm.memcpy.p0i8.p0i8.i64(i8* %29, i8* %28, i64 32, i32 8, i1 false)
%30 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 1
%31 = getelementptr inbounds %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %30, i32 0, i32 0
store i32 %25, i32* %31
%32 = getelementptr inbounds %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker", %"<u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker"* %30, i32 0, i32 1
store i32 %26, i32* %32
%33 = load i8, i8* %_9
%34 = getelementptr inbounds %"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>", %"2.std::iter::Chain<std::vec::IntoIter<u32>, <u32 as arbitrary::Arbitrary>::shrink::shrinker::UnsignedShrinker>"* %0, i32 0, i32 2
store i8 %33, i8* %34
ret void
bb4: ; preds = %bb2
store i8 0, i8* %_10
call void @_ZN4drop17h2f264afdd2c3a626E(%"3.std::vec::IntoIter<u32>"* %_5)
br label %bb1
cleanup: ; preds = %start
%35 = landingpad { i8*, i32 }
cleanup
store { i8*, i32 } %35, { i8*, i32 }* %personalityslot
br label %bb2
}
; Function Attrs: inlinehint uwtable
define internal void @_ZN4core4iter8iterator8Iterator5chain17hc5536dfe23b99df4E(%"2.std::iter::Chain<std::iter::Chain<std::iter::Cloned<std::slice::Iter<char>>, std::option::IntoIter<char>>, std::iter::Cloned<std::slice
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment