; LLVM IR from kdrag0n/fxdsp :: external/boost/libs/math/test/test_root_iterations.ll (ZN9test_main11test_methodEv)

; Unoptimized IR (clang -disable-llvm-passes):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.boost::array" = type { [500 x %"class.boost::array.0"] }
%"class.boost::array.0" = type { [7 x double] }
%"struct.std::pair" = type { double, double }
%struct.cbrt_functor_noderiv = type { double }
%"class.boost::math::tools::eps_tolerance" = type { double }
%"class.boost::unit_test::basic_cstring" = type { ptr, ptr }
%"struct.boost::test_tools::check_is_close_t" = type { i8 }
%"class.boost::unit_test::lazy_ostream_impl" = type { %"class.boost::unit_test::lazy_ostream.base", ptr, ptr }
%"class.boost::unit_test::lazy_ostream.base" = type <{ ptr, i8 }>
%"struct.boost::test_tools::tt_detail::le_impl" = type { i8 }
%struct.cbrt_functor_deriv = type { double }
%struct.cbrt_functor_2deriv = type { double }
%struct.ibeta_roots_2 = type <{ double, double, double, i8, [7 x i8] }>
%"struct.boost::test_tools::tt_detail::equal_impl_frwd" = type { i8 }
%struct.ibeta_roots_3 = type <{ double, double, double, i8, [7 x i8] }>

@_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE = external hidden global ptr, align 8
@.str.4 = external hidden unnamed_addr constant [102 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [1 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZZN9test_main11test_methodEvE16ibeta_small_data = external hidden constant %"class.boost::array", align 8
@.str.19 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [45 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.24 = external hidden unnamed_addr constant [4 x i8], align 1

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #0

declare i32 @__gxx_personality_v0(...)

; Function Attrs: nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN9test_main11test_methodEv(ptr noundef nonnull align 1 dereferenceable(1) %0) #1 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca ptr, align 8
  %3 = alloca i32, align 4
  %4 = alloca double, align 8
  %5 = alloca i64, align 8
  %6 = alloca double, align 8
  %7 = alloca double, align 8
  %8 = alloca double, align 8
  %9 = alloca %"struct.std::pair", align 8
  %10 = alloca %struct.cbrt_functor_noderiv, align 8
  %11 = alloca double, align 8
  %12 = alloca %"class.boost::math::tools::eps_tolerance", align 8
  %13 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %14 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %15 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %16 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %17 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %18 = alloca ptr, align 8
  %19 = alloca i32, align 4
  %20 = alloca double, align 8
  %21 = alloca double, align 8
  %22 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %23 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %24 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %25 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %26 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %27 = alloca i32, align 4
  %28 = alloca %struct.cbrt_functor_deriv, align 8
  %29 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %30 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %31 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %32 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %33 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %34 = alloca double, align 8
  %35 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %36 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %37 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %38 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %39 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %40 = alloca i32, align 4
  %41 = alloca %struct.cbrt_functor_2deriv, align 8
  %42 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %43 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %44 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %45 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %46 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %47 = alloca double, align 8
  %48 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %49 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %50 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %51 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %52 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %53 = alloca i32, align 4
  %54 = alloca %struct.cbrt_functor_2deriv, align 8
  %55 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %56 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %57 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %58 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %59 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %60 = alloca double, align 8
  %61 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %62 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %63 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %64 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %65 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %66 = alloca i32, align 4
  %67 = alloca %"struct.std::pair", align 8
  %68 = alloca %struct.cbrt_functor_noderiv, align 8
  %69 = alloca double, align 8
  %70 = alloca %"class.boost::math::tools::eps_tolerance", align 8
  %71 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %72 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %73 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %74 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %75 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %76 = alloca double, align 8
  %77 = alloca double, align 8
  %78 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %79 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %80 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %81 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %82 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %83 = alloca i32, align 4
  %84 = alloca %struct.cbrt_functor_deriv, align 8
  %85 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %86 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %87 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %88 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %89 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %90 = alloca double, align 8
  %91 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %92 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %93 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %94 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %95 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %96 = alloca i32, align 4
  %97 = alloca %struct.cbrt_functor_2deriv, align 8
  %98 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %99 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %100 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %101 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %102 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %103 = alloca double, align 8
  %104 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %105 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %106 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %107 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %108 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %109 = alloca i32, align 4
  %110 = alloca %struct.cbrt_functor_2deriv, align 8
  %111 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %112 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %113 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %114 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %115 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %116 = alloca double, align 8
  %117 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %118 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %119 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %120 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %121 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %122 = alloca i32, align 4
  %123 = alloca %"struct.std::pair", align 8
  %124 = alloca %struct.cbrt_functor_noderiv, align 8
  %125 = alloca double, align 8
  %126 = alloca %"class.boost::math::tools::eps_tolerance", align 8
  %127 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %128 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %129 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %130 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %131 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %132 = alloca double, align 8
  %133 = alloca double, align 8
  %134 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %135 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %136 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %137 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %138 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %139 = alloca i32, align 4
  %140 = alloca %struct.cbrt_functor_deriv, align 8
  %141 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %142 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %143 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %144 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %145 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %146 = alloca double, align 8
  %147 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %148 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %149 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %150 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %151 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %152 = alloca i32, align 4
  %153 = alloca %struct.cbrt_functor_2deriv, align 8
  %154 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %155 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %156 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %157 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %158 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %159 = alloca double, align 8
  %160 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %161 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %162 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %163 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %164 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %165 = alloca i32, align 4
  %166 = alloca %struct.cbrt_functor_2deriv, align 8
  %167 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %168 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %169 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %170 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %171 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %172 = alloca double, align 8
  %173 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %174 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %175 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %176 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %177 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %178 = alloca i32, align 4
  %179 = alloca %"struct.std::pair", align 8
  %180 = alloca %struct.cbrt_functor_noderiv, align 8
  %181 = alloca double, align 8
  %182 = alloca %"class.boost::math::tools::eps_tolerance", align 8
  %183 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %184 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %185 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %186 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %187 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %188 = alloca double, align 8
  %189 = alloca double, align 8
  %190 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %191 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %192 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %193 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %194 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %195 = alloca i32, align 4
  %196 = alloca %struct.cbrt_functor_deriv, align 8
  %197 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %198 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %199 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %200 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %201 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %202 = alloca double, align 8
  %203 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %204 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %205 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %206 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %207 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %208 = alloca i32, align 4
  %209 = alloca %struct.cbrt_functor_2deriv, align 8
  %210 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %211 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %212 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %213 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %214 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %215 = alloca double, align 8
  %216 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %217 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %218 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %219 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %220 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %221 = alloca i32, align 4
  %222 = alloca %struct.cbrt_functor_2deriv, align 8
  %223 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %224 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %225 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %226 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %227 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %228 = alloca double, align 8
  %229 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %230 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %231 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %232 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %233 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %234 = alloca i32, align 4
  %235 = alloca i32, align 4
  %236 = alloca %struct.ibeta_roots_2, align 8
  %237 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %238 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %239 = alloca %"struct.boost::test_tools::tt_detail::equal_impl_frwd", align 1
  %240 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %241 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %242 = alloca double, align 8
  %243 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %244 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %245 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %246 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %247 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %248 = alloca i32, align 4
  %249 = alloca %struct.ibeta_roots_3, align 8
  %250 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %251 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %252 = alloca %"struct.boost::test_tools::tt_detail::equal_impl_frwd", align 1
  %253 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %254 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %255 = alloca double, align 8
  %256 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %257 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %258 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %259 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %260 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %261 = alloca i32, align 4
  %262 = alloca double, align 8
  %263 = alloca %struct.ibeta_roots_2, align 8
  %264 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %265 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %266 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %267 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %268 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %269 = alloca double, align 8
  %270 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %271 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %272 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %273 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %274 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %275 = alloca i32, align 4
  %276 = alloca %struct.ibeta_roots_3, align 8
  %277 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %278 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %279 = alloca %"struct.boost::test_tools::check_is_close_t", align 1
  %280 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %281 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %282 = alloca double, align 8
  %283 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %284 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %285 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %286 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %287 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %288 = alloca i32, align 4
  %289 = alloca %struct.ibeta_roots_2, align 8
  %290 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %291 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %292 = alloca %"struct.boost::test_tools::tt_detail::equal_impl_frwd", align 1
  %293 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %294 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %295 = alloca double, align 8
  %296 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %297 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %298 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %299 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %300 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %301 = alloca i32, align 4
  %302 = alloca %struct.ibeta_roots_3, align 8
  %303 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %304 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %305 = alloca %"struct.boost::test_tools::tt_detail::equal_impl_frwd", align 1
  %306 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %307 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %308 = alloca double, align 8
  %309 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %310 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %311 = alloca %"struct.boost::test_tools::tt_detail::le_impl", align 1
  %312 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %313 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %314 = alloca i32, align 4
  store ptr %0, ptr %2, align 8, !tbaa !5
  %315 = load ptr, ptr %2, align 8
  call void @llvm.lifetime.start.p0(i64 4, ptr %3) #7
  store i32 31, ptr %3, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr %4) #7
  store double 1.000000e-50, ptr %4, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %5) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %6) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr %7) #7
  br label %316

316:                                              ; preds = %824, %1
  %317 = load double, ptr %4, align 8, !tbaa !11
  %318 = fcmp olt double %317, 1.000000e+50
  br i1 %318, label %319, label %1116

319:                                              ; preds = %316
  call void @llvm.lifetime.start.p0(i64 8, ptr %8) #7
  %320 = load double, ptr %4, align 8, !tbaa !11
  %321 = call noundef double @_ZN5boost4math4cbrtIdEENS0_5tools12promote_argsIT_fffffE4typeES4_(double noundef %320)
  store double %321, ptr %8, align 8, !tbaa !11
  %322 = load double, ptr %8, align 8, !tbaa !11
  %323 = fdiv double %322, 5.000000e+00
  store double %323, ptr %6, align 8, !tbaa !11
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 16, ptr %9) #7
  %324 = load double, ptr %4, align 8, !tbaa !11
  call void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8) %10, double noundef %324)
  call void @llvm.lifetime.start.p0(i64 8, ptr %11) #7
  store double 2.000000e+00, ptr %11, align 8, !tbaa !11
  call void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8) %12)
  %325 = getelementptr inbounds %struct.cbrt_functor_noderiv, ptr %10, i32 0, i32 0
  %326 = load double, ptr %325, align 8
  %327 = getelementptr inbounds %"class.boost::math::tools::eps_tolerance", ptr %12, i32 0, i32 0
  %328 = load double, ptr %327, align 8
  %329 = call { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double %326, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull align 8 dereferenceable(8) %11, i1 noundef zeroext true, double %328, ptr noundef nonnull align 8 dereferenceable(8) %5)
  %330 = getelementptr inbounds { double, double }, ptr %9, i32 0, i32 0
  %331 = extractvalue { double, double } %329, 0
  store double %331, ptr %330, align 8
  %332 = getelementptr inbounds { double, double }, ptr %9, i32 0, i32 1
  %333 = extractvalue { double, double } %329, 1
  store double %333, ptr %332, align 8
  call void @llvm.lifetime.end.p0(i64 8, ptr %11) #7
  br label %334

334:                                              ; preds = %348, %319
  %335 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %13, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %14)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %335, ptr noundef %13, i64 noundef 167, ptr noundef %14)
  call void @llvm.lifetime.start.p0(i64 32, ptr %16) #7
  %336 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %16, ptr noundef nonnull align 8 dereferenceable(9) %336, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %17, ptr noundef @.str.4, i64 noundef 101)
          to label %337 unwind label %827

337:                                              ; preds = %334
  call void @llvm.lifetime.start.p0(i64 8, ptr %20) #7
  %338 = getelementptr inbounds %"struct.std::pair", ptr %9, i32 0, i32 0
  %339 = load double, ptr %338, align 8, !tbaa !15
  %340 = getelementptr inbounds %"struct.std::pair", ptr %9, i32 0, i32 1
  %341 = load double, ptr %340, align 8, !tbaa !17
  %342 = fadd double %339, %341
  %343 = fdiv double %342, 2.000000e+00
  store double %343, ptr %20, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %21) #7
  %344 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %345 = fmul double %344, 4.000000e+00
  store double %345, ptr %21, align 8, !tbaa !11
  %346 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %16, ptr noundef %17, i64 noundef 167, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %20, ptr noundef @.str.6, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %21, ptr noundef @.str.8)
          to label %347 unwind label %831

347:                                              ; preds = %337
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %16) #7
  br label %348

348:                                              ; preds = %347
  %349 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %349, label %334, label %350, !llvm.loop !18

350:                                              ; preds = %348
  br label %351

351:                                              ; preds = %357, %350
  %352 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %22, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %23)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %352, ptr noundef %22, i64 noundef 168, ptr noundef %23)
  call void @llvm.lifetime.start.p0(i64 32, ptr %25) #7
  %353 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %25, ptr noundef nonnull align 8 dereferenceable(9) %353, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %26, ptr noundef @.str.4, i64 noundef 101)
          to label %354 unwind label %836

354:                                              ; preds = %351
  call void @llvm.lifetime.start.p0(i64 4, ptr %27) #7
  store i32 14, ptr %27, align 4, !tbaa !9
  %355 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %25, ptr noundef %26, i64 noundef 168, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %27, ptr noundef @.str.10)
          to label %356 unwind label %840

356:                                              ; preds = %354
  call void @llvm.lifetime.end.p0(i64 4, ptr %27) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %25) #7
  br label %357

357:                                              ; preds = %356
  %358 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %358, label %351, label %359, !llvm.loop !20

359:                                              ; preds = %357
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %28, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %360 = load double, ptr %6, align 8, !tbaa !11
  %361 = load double, ptr %6, align 8, !tbaa !11
  %362 = fdiv double %361, 2.000000e+00
  %363 = load double, ptr %8, align 8, !tbaa !11
  %364 = fmul double %363, 1.000000e+01
  %365 = load i32, ptr %3, align 4, !tbaa !9
  %366 = getelementptr inbounds %struct.cbrt_functor_deriv, ptr %28, i32 0, i32 0
  %367 = load double, ptr %366, align 8
  %368 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double %367, double noundef %360, double noundef %362, double noundef %364, i32 noundef %365, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %368, ptr %7, align 8, !tbaa !11
  br label %369

369:                                              ; preds = %377, %359
  %370 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %29, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %30)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %370, ptr noundef %29, i64 noundef 172, ptr noundef %30)
  call void @llvm.lifetime.start.p0(i64 32, ptr %32) #7
  %371 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %32, ptr noundef nonnull align 8 dereferenceable(9) %371, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %33, ptr noundef @.str.4, i64 noundef 101)
          to label %372 unwind label %845

372:                                              ; preds = %369
  call void @llvm.lifetime.start.p0(i64 8, ptr %34) #7
  %373 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %374 = fmul double %373, 2.000000e+00
  store double %374, ptr %34, align 8, !tbaa !11
  %375 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %32, ptr noundef %33, i64 noundef 172, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %34, ptr noundef @.str.12)
          to label %376 unwind label %849

376:                                              ; preds = %372
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %32) #7
  br label %377

377:                                              ; preds = %376
  %378 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %378, label %369, label %379, !llvm.loop !21

379:                                              ; preds = %377
  br label %380

380:                                              ; preds = %386, %379
  %381 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %35, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %36)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %381, ptr noundef %35, i64 noundef 173, ptr noundef %36)
  call void @llvm.lifetime.start.p0(i64 32, ptr %38) #7
  %382 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %38, ptr noundef nonnull align 8 dereferenceable(9) %382, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %39, ptr noundef @.str.4, i64 noundef 101)
          to label %383 unwind label %854

383:                                              ; preds = %380
  call void @llvm.lifetime.start.p0(i64 4, ptr %40) #7
  store i32 12, ptr %40, align 4, !tbaa !9
  %384 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %38, ptr noundef %39, i64 noundef 173, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %40, ptr noundef @.str.13)
          to label %385 unwind label %858

385:                                              ; preds = %383
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %38) #7
  br label %386

386:                                              ; preds = %385
  %387 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %387, label %380, label %388, !llvm.loop !22

388:                                              ; preds = %386
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %41, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %389 = load double, ptr %6, align 8, !tbaa !11
  %390 = load double, ptr %8, align 8, !tbaa !11
  %391 = fdiv double %390, 1.000000e+01
  %392 = load double, ptr %8, align 8, !tbaa !11
  %393 = fmul double %392, 1.000000e+01
  %394 = load i32, ptr %3, align 4, !tbaa !9
  %395 = getelementptr inbounds %struct.cbrt_functor_2deriv, ptr %41, i32 0, i32 0
  %396 = load double, ptr %395, align 8
  %397 = call noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %396, double noundef %389, double noundef %391, double noundef %393, i32 noundef %394, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %397, ptr %7, align 8, !tbaa !11
  br label %398

398:                                              ; preds = %406, %388
  %399 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %42, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %43)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %399, ptr noundef %42, i64 noundef 177, ptr noundef %43)
  call void @llvm.lifetime.start.p0(i64 32, ptr %45) #7
  %400 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %45, ptr noundef nonnull align 8 dereferenceable(9) %400, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %46, ptr noundef @.str.4, i64 noundef 101)
          to label %401 unwind label %863

401:                                              ; preds = %398
  call void @llvm.lifetime.start.p0(i64 8, ptr %47) #7
  %402 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %403 = fmul double %402, 2.000000e+00
  store double %403, ptr %47, align 8, !tbaa !11
  %404 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %45, ptr noundef %46, i64 noundef 177, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %47, ptr noundef @.str.12)
          to label %405 unwind label %867

405:                                              ; preds = %401
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %45) #7
  br label %406

406:                                              ; preds = %405
  %407 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %407, label %398, label %408, !llvm.loop !23

408:                                              ; preds = %406
  br label %409

409:                                              ; preds = %415, %408
  %410 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %48, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %49)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %410, ptr noundef %48, i64 noundef 178, ptr noundef %49)
  call void @llvm.lifetime.start.p0(i64 32, ptr %51) #7
  %411 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %51, ptr noundef nonnull align 8 dereferenceable(9) %411, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %52, ptr noundef @.str.4, i64 noundef 101)
          to label %412 unwind label %872

412:                                              ; preds = %409
  call void @llvm.lifetime.start.p0(i64 4, ptr %53) #7
  store i32 7, ptr %53, align 4, !tbaa !9
  %413 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %51, ptr noundef %52, i64 noundef 178, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %53, ptr noundef @.str.14)
          to label %414 unwind label %876

414:                                              ; preds = %412
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %51) #7
  br label %415

415:                                              ; preds = %414
  %416 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %416, label %409, label %417, !llvm.loop !24

417:                                              ; preds = %415
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %54, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %418 = load double, ptr %6, align 8, !tbaa !11
  %419 = load double, ptr %8, align 8, !tbaa !11
  %420 = fdiv double %419, 1.000000e+01
  %421 = load double, ptr %8, align 8, !tbaa !11
  %422 = fmul double %421, 1.000000e+01
  %423 = load i32, ptr %3, align 4, !tbaa !9
  %424 = getelementptr inbounds %struct.cbrt_functor_2deriv, ptr %54, i32 0, i32 0
  %425 = load double, ptr %424, align 8
  %426 = call noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %425, double noundef %418, double noundef %420, double noundef %422, i32 noundef %423, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %426, ptr %7, align 8, !tbaa !11
  br label %427

427:                                              ; preds = %435, %417
  %428 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %55, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %56)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %428, ptr noundef %55, i64 noundef 182, ptr noundef %56)
  call void @llvm.lifetime.start.p0(i64 32, ptr %58) #7
  %429 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %58, ptr noundef nonnull align 8 dereferenceable(9) %429, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %59, ptr noundef @.str.4, i64 noundef 101)
          to label %430 unwind label %881

430:                                              ; preds = %427
  call void @llvm.lifetime.start.p0(i64 8, ptr %60) #7
  %431 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %432 = fmul double %431, 2.000000e+00
  store double %432, ptr %60, align 8, !tbaa !11
  %433 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %58, ptr noundef %59, i64 noundef 182, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %60, ptr noundef @.str.12)
          to label %434 unwind label %885

434:                                              ; preds = %430
  call void @llvm.lifetime.end.p0(i64 8, ptr %60) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %58) #7
  br label %435

435:                                              ; preds = %434
  %436 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %436, label %427, label %437, !llvm.loop !25

437:                                              ; preds = %435
  br label %438

438:                                              ; preds = %444, %437
  %439 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %61, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %62)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %439, ptr noundef %61, i64 noundef 183, ptr noundef %62)
  call void @llvm.lifetime.start.p0(i64 32, ptr %64) #7
  %440 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %64, ptr noundef nonnull align 8 dereferenceable(9) %440, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %65, ptr noundef @.str.4, i64 noundef 101)
          to label %441 unwind label %890

441:                                              ; preds = %438
  call void @llvm.lifetime.start.p0(i64 4, ptr %66) #7
  store i32 11, ptr %66, align 4, !tbaa !9
  %442 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %64, ptr noundef %65, i64 noundef 183, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %66, ptr noundef @.str.15)
          to label %443 unwind label %894

443:                                              ; preds = %441
  call void @llvm.lifetime.end.p0(i64 4, ptr %66) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %64) #7
  br label %444

444:                                              ; preds = %443
  %445 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %445, label %438, label %446, !llvm.loop !26

446:                                              ; preds = %444
  store i64 1000, ptr %5, align 8, !tbaa !13
  %447 = load double, ptr %8, align 8, !tbaa !11
  %448 = fmul double %447, 5.000000e+00
  store double %448, ptr %6, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 16, ptr %67) #7
  %449 = load double, ptr %4, align 8, !tbaa !11
  call void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8) %68, double noundef %449)
  call void @llvm.lifetime.start.p0(i64 8, ptr %69) #7
  store double 2.000000e+00, ptr %69, align 8, !tbaa !11
  call void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8) %70)
  %450 = getelementptr inbounds %struct.cbrt_functor_noderiv, ptr %68, i32 0, i32 0
  %451 = load double, ptr %450, align 8
  %452 = getelementptr inbounds %"class.boost::math::tools::eps_tolerance", ptr %70, i32 0, i32 0
  %453 = load double, ptr %452, align 8
  %454 = call { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double %451, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull align 8 dereferenceable(8) %69, i1 noundef zeroext true, double %453, ptr noundef nonnull align 8 dereferenceable(8) %5)
  %455 = getelementptr inbounds { double, double }, ptr %67, i32 0, i32 0
  %456 = extractvalue { double, double } %454, 0
  store double %456, ptr %455, align 8
  %457 = getelementptr inbounds { double, double }, ptr %67, i32 0, i32 1
  %458 = extractvalue { double, double } %454, 1
  store double %458, ptr %457, align 8
  %459 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt4pairIddEaSEOS0_(ptr noundef nonnull align 8 dereferenceable(16) %9, ptr noundef nonnull align 8 dereferenceable(16) %67) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %69) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %67) #7
  br label %460

460:                                              ; preds = %474, %446
  %461 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %71, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %72)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %461, ptr noundef %71, i64 noundef 190, ptr noundef %72)
  call void @llvm.lifetime.start.p0(i64 32, ptr %74) #7
  %462 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %74, ptr noundef nonnull align 8 dereferenceable(9) %462, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %75, ptr noundef @.str.4, i64 noundef 101)
          to label %463 unwind label %899

463:                                              ; preds = %460
  call void @llvm.lifetime.start.p0(i64 8, ptr %76) #7
  %464 = getelementptr inbounds %"struct.std::pair", ptr %9, i32 0, i32 0
  %465 = load double, ptr %464, align 8, !tbaa !15
  %466 = getelementptr inbounds %"struct.std::pair", ptr %9, i32 0, i32 1
  %467 = load double, ptr %466, align 8, !tbaa !17
  %468 = fadd double %465, %467
  %469 = fdiv double %468, 2.000000e+00
  store double %469, ptr %76, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %77) #7
  %470 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %471 = fmul double %470, 4.000000e+00
  store double %471, ptr %77, align 8, !tbaa !11
  %472 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %74, ptr noundef %75, i64 noundef 190, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %76, ptr noundef @.str.6, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %77, ptr noundef @.str.8)
          to label %473 unwind label %903

473:                                              ; preds = %463
  call void @llvm.lifetime.end.p0(i64 8, ptr %77) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %76) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %74) #7
  br label %474

474:                                              ; preds = %473
  %475 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %475, label %460, label %476, !llvm.loop !27

476:                                              ; preds = %474
  br label %477

477:                                              ; preds = %483, %476
  %478 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %78, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %79)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %478, ptr noundef %78, i64 noundef 191, ptr noundef %79)
  call void @llvm.lifetime.start.p0(i64 32, ptr %81) #7
  %479 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %81, ptr noundef nonnull align 8 dereferenceable(9) %479, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %82, ptr noundef @.str.4, i64 noundef 101)
          to label %480 unwind label %908

480:                                              ; preds = %477
  call void @llvm.lifetime.start.p0(i64 4, ptr %83) #7
  store i32 14, ptr %83, align 4, !tbaa !9
  %481 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %81, ptr noundef %82, i64 noundef 191, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %83, ptr noundef @.str.10)
          to label %482 unwind label %912

482:                                              ; preds = %480
  call void @llvm.lifetime.end.p0(i64 4, ptr %83) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %81) #7
  br label %483

483:                                              ; preds = %482
  %484 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %484, label %477, label %485, !llvm.loop !28

485:                                              ; preds = %483
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %84, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %486 = load double, ptr %6, align 8, !tbaa !11
  %487 = load double, ptr %8, align 8, !tbaa !11
  %488 = fdiv double %487, 1.000000e+01
  %489 = load double, ptr %8, align 8, !tbaa !11
  %490 = fmul double %489, 1.000000e+01
  %491 = load i32, ptr %3, align 4, !tbaa !9
  %492 = getelementptr inbounds %struct.cbrt_functor_deriv, ptr %84, i32 0, i32 0
  %493 = load double, ptr %492, align 8
  %494 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double %493, double noundef %486, double noundef %488, double noundef %490, i32 noundef %491, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %494, ptr %7, align 8, !tbaa !11
  br label %495

495:                                              ; preds = %503, %485
  %496 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %85, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %86)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %496, ptr noundef %85, i64 noundef 195, ptr noundef %86)
  call void @llvm.lifetime.start.p0(i64 32, ptr %88) #7
  %497 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %88, ptr noundef nonnull align 8 dereferenceable(9) %497, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %89, ptr noundef @.str.4, i64 noundef 101)
          to label %498 unwind label %917

498:                                              ; preds = %495
  call void @llvm.lifetime.start.p0(i64 8, ptr %90) #7
  %499 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %500 = fmul double %499, 2.000000e+00
  store double %500, ptr %90, align 8, !tbaa !11
  %501 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %88, ptr noundef %89, i64 noundef 195, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %90, ptr noundef @.str.12)
          to label %502 unwind label %921

502:                                              ; preds = %498
  call void @llvm.lifetime.end.p0(i64 8, ptr %90) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %88) #7
  br label %503

503:                                              ; preds = %502
  %504 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %504, label %495, label %505, !llvm.loop !29

505:                                              ; preds = %503
  br label %506

506:                                              ; preds = %512, %505
  %507 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %91, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %92)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %507, ptr noundef %91, i64 noundef 196, ptr noundef %92)
  call void @llvm.lifetime.start.p0(i64 32, ptr %94) #7
  %508 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %94, ptr noundef nonnull align 8 dereferenceable(9) %508, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %95, ptr noundef @.str.4, i64 noundef 101)
          to label %509 unwind label %926

509:                                              ; preds = %506
  call void @llvm.lifetime.start.p0(i64 4, ptr %96) #7
  store i32 12, ptr %96, align 4, !tbaa !9
  %510 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %94, ptr noundef %95, i64 noundef 196, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %96, ptr noundef @.str.13)
          to label %511 unwind label %930

511:                                              ; preds = %509
  call void @llvm.lifetime.end.p0(i64 4, ptr %96) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %94) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %94) #7
  br label %512

512:                                              ; preds = %511
  %513 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %513, label %506, label %514, !llvm.loop !30

514:                                              ; preds = %512
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %97, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %515 = load double, ptr %6, align 8, !tbaa !11
  %516 = load double, ptr %8, align 8, !tbaa !11
  %517 = fdiv double %516, 1.000000e+01
  %518 = load double, ptr %8, align 8, !tbaa !11
  %519 = fmul double %518, 1.000000e+01
  %520 = load i32, ptr %3, align 4, !tbaa !9
  %521 = getelementptr inbounds %struct.cbrt_functor_2deriv, ptr %97, i32 0, i32 0
  %522 = load double, ptr %521, align 8
  %523 = call noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %522, double noundef %515, double noundef %517, double noundef %519, i32 noundef %520, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %523, ptr %7, align 8, !tbaa !11
  br label %524

524:                                              ; preds = %532, %514
  %525 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %98, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %99)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %525, ptr noundef %98, i64 noundef 200, ptr noundef %99)
  call void @llvm.lifetime.start.p0(i64 32, ptr %101) #7
  %526 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %101, ptr noundef nonnull align 8 dereferenceable(9) %526, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %102, ptr noundef @.str.4, i64 noundef 101)
          to label %527 unwind label %935

527:                                              ; preds = %524
  call void @llvm.lifetime.start.p0(i64 8, ptr %103) #7
  %528 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %529 = fmul double %528, 2.000000e+00
  store double %529, ptr %103, align 8, !tbaa !11
  %530 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %101, ptr noundef %102, i64 noundef 200, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %103, ptr noundef @.str.12)
          to label %531 unwind label %939

531:                                              ; preds = %527
  call void @llvm.lifetime.end.p0(i64 8, ptr %103) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %101) #7
  br label %532

532:                                              ; preds = %531
  %533 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %533, label %524, label %534, !llvm.loop !31

534:                                              ; preds = %532
  br label %535

535:                                              ; preds = %541, %534
  %536 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %104, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %105)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %536, ptr noundef %104, i64 noundef 201, ptr noundef %105)
  call void @llvm.lifetime.start.p0(i64 32, ptr %107) #7
  %537 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %107, ptr noundef nonnull align 8 dereferenceable(9) %537, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %108, ptr noundef @.str.4, i64 noundef 101)
          to label %538 unwind label %944

538:                                              ; preds = %535
  call void @llvm.lifetime.start.p0(i64 4, ptr %109) #7
  store i32 7, ptr %109, align 4, !tbaa !9
  %539 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %107, ptr noundef %108, i64 noundef 201, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %109, ptr noundef @.str.14)
          to label %540 unwind label %948

540:                                              ; preds = %538
  call void @llvm.lifetime.end.p0(i64 4, ptr %109) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %107) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %107) #7
  br label %541

541:                                              ; preds = %540
  %542 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %542, label %535, label %543, !llvm.loop !32

543:                                              ; preds = %541
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %110, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %544 = load double, ptr %6, align 8, !tbaa !11
  %545 = load double, ptr %8, align 8, !tbaa !11
  %546 = fdiv double %545, 1.000000e+01
  %547 = load double, ptr %8, align 8, !tbaa !11
  %548 = fmul double %547, 1.000000e+01
  %549 = load i32, ptr %3, align 4, !tbaa !9
  %550 = getelementptr inbounds %struct.cbrt_functor_2deriv, ptr %110, i32 0, i32 0
  %551 = load double, ptr %550, align 8
  %552 = call noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %551, double noundef %544, double noundef %546, double noundef %548, i32 noundef %549, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %552, ptr %7, align 8, !tbaa !11
  br label %553

553:                                              ; preds = %561, %543
  %554 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %111, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %112)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %554, ptr noundef %111, i64 noundef 205, ptr noundef %112)
  call void @llvm.lifetime.start.p0(i64 32, ptr %114) #7
  %555 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %114, ptr noundef nonnull align 8 dereferenceable(9) %555, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %115, ptr noundef @.str.4, i64 noundef 101)
          to label %556 unwind label %953

556:                                              ; preds = %553
  call void @llvm.lifetime.start.p0(i64 8, ptr %116) #7
  %557 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %558 = fmul double %557, 2.000000e+00
  store double %558, ptr %116, align 8, !tbaa !11
  %559 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %114, ptr noundef %115, i64 noundef 205, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %116, ptr noundef @.str.12)
          to label %560 unwind label %957

560:                                              ; preds = %556
  call void @llvm.lifetime.end.p0(i64 8, ptr %116) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %114) #7
  br label %561

561:                                              ; preds = %560
  %562 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %562, label %553, label %563, !llvm.loop !33

563:                                              ; preds = %561
  br label %564

564:                                              ; preds = %570, %563
  %565 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %117, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %118)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %565, ptr noundef %117, i64 noundef 206, ptr noundef %118)
  call void @llvm.lifetime.start.p0(i64 32, ptr %120) #7
  %566 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %120, ptr noundef nonnull align 8 dereferenceable(9) %566, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %121, ptr noundef @.str.4, i64 noundef 101)
          to label %567 unwind label %962

567:                                              ; preds = %564
  call void @llvm.lifetime.start.p0(i64 4, ptr %122) #7
  store i32 11, ptr %122, align 4, !tbaa !9
  %568 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %120, ptr noundef %121, i64 noundef 206, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %122, ptr noundef @.str.15)
          to label %569 unwind label %966

569:                                              ; preds = %567
  call void @llvm.lifetime.end.p0(i64 4, ptr %122) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %120) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %120) #7
  br label %570

570:                                              ; preds = %569
  %571 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %571, label %564, label %572, !llvm.loop !34

572:                                              ; preds = %570
  store i64 1000, ptr %5, align 8, !tbaa !13
  %573 = load double, ptr %8, align 8, !tbaa !11
  %574 = fmul double %573, 9.000000e-01
  store double %574, ptr %6, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 16, ptr %123) #7
  %575 = load double, ptr %4, align 8, !tbaa !11
  call void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8) %124, double noundef %575)
  call void @llvm.lifetime.start.p0(i64 8, ptr %125) #7
  store double 2.000000e+00, ptr %125, align 8, !tbaa !11
  call void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8) %126)
  %576 = getelementptr inbounds %struct.cbrt_functor_noderiv, ptr %124, i32 0, i32 0
  %577 = load double, ptr %576, align 8
  %578 = getelementptr inbounds %"class.boost::math::tools::eps_tolerance", ptr %126, i32 0, i32 0
  %579 = load double, ptr %578, align 8
  %580 = call { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double %577, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull align 8 dereferenceable(8) %125, i1 noundef zeroext true, double %579, ptr noundef nonnull align 8 dereferenceable(8) %5)
  %581 = getelementptr inbounds { double, double }, ptr %123, i32 0, i32 0
  %582 = extractvalue { double, double } %580, 0
  store double %582, ptr %581, align 8
  %583 = getelementptr inbounds { double, double }, ptr %123, i32 0, i32 1
  %584 = extractvalue { double, double } %580, 1
  store double %584, ptr %583, align 8
  %585 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt4pairIddEaSEOS0_(ptr noundef nonnull align 8 dereferenceable(16) %9, ptr noundef nonnull align 8 dereferenceable(16) %123) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %125) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %123) #7
  br label %586

586:                                              ; preds = %600, %572
  %587 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %127, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %128)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %587, ptr noundef %127, i64 noundef 213, ptr noundef %128)
  call void @llvm.lifetime.start.p0(i64 32, ptr %130) #7
  %588 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %130, ptr noundef nonnull align 8 dereferenceable(9) %588, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %131, ptr noundef @.str.4, i64 noundef 101)
          to label %589 unwind label %971

589:                                              ; preds = %586
  call void @llvm.lifetime.start.p0(i64 8, ptr %132) #7
  %590 = getelementptr inbounds %"struct.std::pair", ptr %9, i32 0, i32 0
  %591 = load double, ptr %590, align 8, !tbaa !15
  %592 = getelementptr inbounds %"struct.std::pair", ptr %9, i32 0, i32 1
  %593 = load double, ptr %592, align 8, !tbaa !17
  %594 = fadd double %591, %593
  %595 = fdiv double %594, 2.000000e+00
  store double %595, ptr %132, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %133) #7
  %596 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %597 = fmul double %596, 4.000000e+00
  store double %597, ptr %133, align 8, !tbaa !11
  %598 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %130, ptr noundef %131, i64 noundef 213, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %132, ptr noundef @.str.6, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %133, ptr noundef @.str.8)
          to label %599 unwind label %975

599:                                              ; preds = %589
  call void @llvm.lifetime.end.p0(i64 8, ptr %133) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %132) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %130) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %130) #7
  br label %600

600:                                              ; preds = %599
  %601 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %601, label %586, label %602, !llvm.loop !35

602:                                              ; preds = %600
  br label %603

603:                                              ; preds = %609, %602
  %604 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %134, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %135)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %604, ptr noundef %134, i64 noundef 214, ptr noundef %135)
  call void @llvm.lifetime.start.p0(i64 32, ptr %137) #7
  %605 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %137, ptr noundef nonnull align 8 dereferenceable(9) %605, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %138, ptr noundef @.str.4, i64 noundef 101)
          to label %606 unwind label %980

606:                                              ; preds = %603
  call void @llvm.lifetime.start.p0(i64 4, ptr %139) #7
  store i32 12, ptr %139, align 4, !tbaa !9
  %607 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %137, ptr noundef %138, i64 noundef 214, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %139, ptr noundef @.str.13)
          to label %608 unwind label %984

608:                                              ; preds = %606
  call void @llvm.lifetime.end.p0(i64 4, ptr %139) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %137) #7
  br label %609

609:                                              ; preds = %608
  %610 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %610, label %603, label %611, !llvm.loop !36

611:                                              ; preds = %609
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %140, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %612 = load double, ptr %6, align 8, !tbaa !11
  %613 = load double, ptr %8, align 8, !tbaa !11
  %614 = fdiv double %613, 1.000000e+01
  %615 = load double, ptr %8, align 8, !tbaa !11
  %616 = fmul double %615, 1.000000e+01
  %617 = load i32, ptr %3, align 4, !tbaa !9
  %618 = getelementptr inbounds %struct.cbrt_functor_deriv, ptr %140, i32 0, i32 0
  %619 = load double, ptr %618, align 8
  %620 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double %619, double noundef %612, double noundef %614, double noundef %616, i32 noundef %617, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %620, ptr %7, align 8, !tbaa !11
  br label %621

621:                                              ; preds = %629, %611
  %622 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %141, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %142)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %622, ptr noundef %141, i64 noundef 218, ptr noundef %142)
  call void @llvm.lifetime.start.p0(i64 32, ptr %144) #7
  %623 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %144, ptr noundef nonnull align 8 dereferenceable(9) %623, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %145, ptr noundef @.str.4, i64 noundef 101)
          to label %624 unwind label %989

624:                                              ; preds = %621
  call void @llvm.lifetime.start.p0(i64 8, ptr %146) #7
  %625 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %626 = fmul double %625, 2.000000e+00
  store double %626, ptr %146, align 8, !tbaa !11
  %627 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %144, ptr noundef %145, i64 noundef 218, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %146, ptr noundef @.str.12)
          to label %628 unwind label %993

628:                                              ; preds = %624
  call void @llvm.lifetime.end.p0(i64 8, ptr %146) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %144) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %144) #7
  br label %629

629:                                              ; preds = %628
  %630 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %630, label %621, label %631, !llvm.loop !37

631:                                              ; preds = %629
  br label %632

632:                                              ; preds = %638, %631
  %633 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %147, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %148)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %633, ptr noundef %147, i64 noundef 219, ptr noundef %148)
  call void @llvm.lifetime.start.p0(i64 32, ptr %150) #7
  %634 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %150, ptr noundef nonnull align 8 dereferenceable(9) %634, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %151, ptr noundef @.str.4, i64 noundef 101)
          to label %635 unwind label %998

635:                                              ; preds = %632
  call void @llvm.lifetime.start.p0(i64 4, ptr %152) #7
  store i32 5, ptr %152, align 4, !tbaa !9
  %636 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %150, ptr noundef %151, i64 noundef 219, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %152, ptr noundef @.str.16)
          to label %637 unwind label %1002

637:                                              ; preds = %635
  call void @llvm.lifetime.end.p0(i64 4, ptr %152) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %150) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %150) #7
  br label %638

638:                                              ; preds = %637
  %639 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %639, label %632, label %640, !llvm.loop !38

640:                                              ; preds = %638
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %153, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %641 = load double, ptr %6, align 8, !tbaa !11
  %642 = load double, ptr %8, align 8, !tbaa !11
  %643 = fdiv double %642, 1.000000e+01
  %644 = load double, ptr %8, align 8, !tbaa !11
  %645 = fmul double %644, 1.000000e+01
  %646 = load i32, ptr %3, align 4, !tbaa !9
  %647 = getelementptr inbounds %struct.cbrt_functor_2deriv, ptr %153, i32 0, i32 0
  %648 = load double, ptr %647, align 8
  %649 = call noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %648, double noundef %641, double noundef %643, double noundef %645, i32 noundef %646, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %649, ptr %7, align 8, !tbaa !11
  br label %650

650:                                              ; preds = %658, %640
  %651 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %154, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %155)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %651, ptr noundef %154, i64 noundef 223, ptr noundef %155)
  call void @llvm.lifetime.start.p0(i64 32, ptr %157) #7
  %652 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %157, ptr noundef nonnull align 8 dereferenceable(9) %652, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %158, ptr noundef @.str.4, i64 noundef 101)
          to label %653 unwind label %1007

653:                                              ; preds = %650
  call void @llvm.lifetime.start.p0(i64 8, ptr %159) #7
  %654 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %655 = fmul double %654, 2.000000e+00
  store double %655, ptr %159, align 8, !tbaa !11
  %656 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %157, ptr noundef %158, i64 noundef 223, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %159, ptr noundef @.str.12)
          to label %657 unwind label %1011

657:                                              ; preds = %653
  call void @llvm.lifetime.end.p0(i64 8, ptr %159) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %157) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %157) #7
  br label %658

658:                                              ; preds = %657
  %659 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %659, label %650, label %660, !llvm.loop !39

660:                                              ; preds = %658
  br label %661

661:                                              ; preds = %667, %660
  %662 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %160, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %161)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %662, ptr noundef %160, i64 noundef 224, ptr noundef %161)
  call void @llvm.lifetime.start.p0(i64 32, ptr %163) #7
  %663 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %163, ptr noundef nonnull align 8 dereferenceable(9) %663, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %164, ptr noundef @.str.4, i64 noundef 101)
          to label %664 unwind label %1016

664:                                              ; preds = %661
  call void @llvm.lifetime.start.p0(i64 4, ptr %165) #7
  store i32 3, ptr %165, align 4, !tbaa !9
  %665 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %163, ptr noundef %164, i64 noundef 224, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %165, ptr noundef @.str.17)
          to label %666 unwind label %1020

666:                                              ; preds = %664
  call void @llvm.lifetime.end.p0(i64 4, ptr %165) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %163) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %163) #7
  br label %667

667:                                              ; preds = %666
  %668 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %668, label %661, label %669, !llvm.loop !40

669:                                              ; preds = %667
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %166, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %670 = load double, ptr %6, align 8, !tbaa !11
  %671 = load double, ptr %8, align 8, !tbaa !11
  %672 = fdiv double %671, 1.000000e+01
  %673 = load double, ptr %8, align 8, !tbaa !11
  %674 = fmul double %673, 1.000000e+01
  %675 = load i32, ptr %3, align 4, !tbaa !9
  %676 = getelementptr inbounds %struct.cbrt_functor_2deriv, ptr %166, i32 0, i32 0
  %677 = load double, ptr %676, align 8
  %678 = call noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %677, double noundef %670, double noundef %672, double noundef %674, i32 noundef %675, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %678, ptr %7, align 8, !tbaa !11
  br label %679

679:                                              ; preds = %687, %669
  %680 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %167, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %168)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %680, ptr noundef %167, i64 noundef 228, ptr noundef %168)
  call void @llvm.lifetime.start.p0(i64 32, ptr %170) #7
  %681 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %170, ptr noundef nonnull align 8 dereferenceable(9) %681, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %171, ptr noundef @.str.4, i64 noundef 101)
          to label %682 unwind label %1025

682:                                              ; preds = %679
  call void @llvm.lifetime.start.p0(i64 8, ptr %172) #7
  %683 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %684 = fmul double %683, 2.000000e+00
  store double %684, ptr %172, align 8, !tbaa !11
  %685 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %170, ptr noundef %171, i64 noundef 228, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %172, ptr noundef @.str.12)
          to label %686 unwind label %1029

686:                                              ; preds = %682
  call void @llvm.lifetime.end.p0(i64 8, ptr %172) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %170) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %170) #7
  br label %687

687:                                              ; preds = %686
  %688 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %688, label %679, label %689, !llvm.loop !41

689:                                              ; preds = %687
  br label %690

690:                                              ; preds = %696, %689
  %691 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %173, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %174)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %691, ptr noundef %173, i64 noundef 229, ptr noundef %174)
  call void @llvm.lifetime.start.p0(i64 32, ptr %176) #7
  %692 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %176, ptr noundef nonnull align 8 dereferenceable(9) %692, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %177, ptr noundef @.str.4, i64 noundef 101)
          to label %693 unwind label %1034

693:                                              ; preds = %690
  call void @llvm.lifetime.start.p0(i64 4, ptr %178) #7
  store i32 4, ptr %178, align 4, !tbaa !9
  %694 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %176, ptr noundef %177, i64 noundef 229, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %178, ptr noundef @.str.18)
          to label %695 unwind label %1038

695:                                              ; preds = %693
  call void @llvm.lifetime.end.p0(i64 4, ptr %178) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %176) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %176) #7
  br label %696

696:                                              ; preds = %695
  %697 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %697, label %690, label %698, !llvm.loop !42

698:                                              ; preds = %696
  store i64 1000, ptr %5, align 8, !tbaa !13
  %699 = load double, ptr %8, align 8, !tbaa !11
  %700 = fmul double %699, 1.100000e+00
  store double %700, ptr %6, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 16, ptr %179) #7
  %701 = load double, ptr %4, align 8, !tbaa !11
  call void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8) %180, double noundef %701)
  call void @llvm.lifetime.start.p0(i64 8, ptr %181) #7
  store double 2.000000e+00, ptr %181, align 8, !tbaa !11
  call void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8) %182)
  %702 = getelementptr inbounds %struct.cbrt_functor_noderiv, ptr %180, i32 0, i32 0
  %703 = load double, ptr %702, align 8
  %704 = getelementptr inbounds %"class.boost::math::tools::eps_tolerance", ptr %182, i32 0, i32 0
  %705 = load double, ptr %704, align 8
  %706 = call { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double %703, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull align 8 dereferenceable(8) %181, i1 noundef zeroext true, double %705, ptr noundef nonnull align 8 dereferenceable(8) %5)
  %707 = getelementptr inbounds { double, double }, ptr %179, i32 0, i32 0
  %708 = extractvalue { double, double } %706, 0
  store double %708, ptr %707, align 8
  %709 = getelementptr inbounds { double, double }, ptr %179, i32 0, i32 1
  %710 = extractvalue { double, double } %706, 1
  store double %710, ptr %709, align 8
  %711 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt4pairIddEaSEOS0_(ptr noundef nonnull align 8 dereferenceable(16) %9, ptr noundef nonnull align 8 dereferenceable(16) %179) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %181) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr %179) #7
  br label %712

712:                                              ; preds = %726, %698
  %713 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %183, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %184)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %713, ptr noundef %183, i64 noundef 236, ptr noundef %184)
  call void @llvm.lifetime.start.p0(i64 32, ptr %186) #7
  %714 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %186, ptr noundef nonnull align 8 dereferenceable(9) %714, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %187, ptr noundef @.str.4, i64 noundef 101)
          to label %715 unwind label %1043

715:                                              ; preds = %712
  call void @llvm.lifetime.start.p0(i64 8, ptr %188) #7
  %716 = getelementptr inbounds %"struct.std::pair", ptr %9, i32 0, i32 0
  %717 = load double, ptr %716, align 8, !tbaa !15
  %718 = getelementptr inbounds %"struct.std::pair", ptr %9, i32 0, i32 1
  %719 = load double, ptr %718, align 8, !tbaa !17
  %720 = fadd double %717, %719
  %721 = fdiv double %720, 2.000000e+00
  store double %721, ptr %188, align 8, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 8, ptr %189) #7
  %722 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %723 = fmul double %722, 4.000000e+00
  store double %723, ptr %189, align 8, !tbaa !11
  %724 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %186, ptr noundef %187, i64 noundef 236, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %188, ptr noundef @.str.6, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %189, ptr noundef @.str.8)
          to label %725 unwind label %1047

725:                                              ; preds = %715
  call void @llvm.lifetime.end.p0(i64 8, ptr %189) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %188) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %186) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %186) #7
  br label %726

726:                                              ; preds = %725
  %727 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %727, label %712, label %728, !llvm.loop !43

728:                                              ; preds = %726
  br label %729

729:                                              ; preds = %735, %728
  %730 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %190, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %191)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %730, ptr noundef %190, i64 noundef 237, ptr noundef %191)
  call void @llvm.lifetime.start.p0(i64 32, ptr %193) #7
  %731 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %193, ptr noundef nonnull align 8 dereferenceable(9) %731, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %194, ptr noundef @.str.4, i64 noundef 101)
          to label %732 unwind label %1052

732:                                              ; preds = %729
  call void @llvm.lifetime.start.p0(i64 4, ptr %195) #7
  store i32 12, ptr %195, align 4, !tbaa !9
  %733 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %193, ptr noundef %194, i64 noundef 237, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %195, ptr noundef @.str.13)
          to label %734 unwind label %1056

734:                                              ; preds = %732
  call void @llvm.lifetime.end.p0(i64 4, ptr %195) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %193) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %193) #7
  br label %735

735:                                              ; preds = %734
  %736 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %736, label %729, label %737, !llvm.loop !44

737:                                              ; preds = %735
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %196, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %738 = load double, ptr %6, align 8, !tbaa !11
  %739 = load double, ptr %8, align 8, !tbaa !11
  %740 = fdiv double %739, 1.000000e+01
  %741 = load double, ptr %8, align 8, !tbaa !11
  %742 = fmul double %741, 1.000000e+01
  %743 = load i32, ptr %3, align 4, !tbaa !9
  %744 = getelementptr inbounds %struct.cbrt_functor_deriv, ptr %196, i32 0, i32 0
  %745 = load double, ptr %744, align 8
  %746 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double %745, double noundef %738, double noundef %740, double noundef %742, i32 noundef %743, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %746, ptr %7, align 8, !tbaa !11
  br label %747

747:                                              ; preds = %755, %737
  %748 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %197, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %198)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %748, ptr noundef %197, i64 noundef 241, ptr noundef %198)
  call void @llvm.lifetime.start.p0(i64 32, ptr %200) #7
  %749 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %200, ptr noundef nonnull align 8 dereferenceable(9) %749, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %201, ptr noundef @.str.4, i64 noundef 101)
          to label %750 unwind label %1061

750:                                              ; preds = %747
  call void @llvm.lifetime.start.p0(i64 8, ptr %202) #7
  %751 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %752 = fmul double %751, 2.000000e+00
  store double %752, ptr %202, align 8, !tbaa !11
  %753 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %200, ptr noundef %201, i64 noundef 241, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %202, ptr noundef @.str.12)
          to label %754 unwind label %1065

754:                                              ; preds = %750
  call void @llvm.lifetime.end.p0(i64 8, ptr %202) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %200) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %200) #7
  br label %755

755:                                              ; preds = %754
  %756 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %756, label %747, label %757, !llvm.loop !45

757:                                              ; preds = %755
  br label %758

758:                                              ; preds = %764, %757
  %759 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %203, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %204)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %759, ptr noundef %203, i64 noundef 242, ptr noundef %204)
  call void @llvm.lifetime.start.p0(i64 32, ptr %206) #7
  %760 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %206, ptr noundef nonnull align 8 dereferenceable(9) %760, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %207, ptr noundef @.str.4, i64 noundef 101)
          to label %761 unwind label %1070

761:                                              ; preds = %758
  call void @llvm.lifetime.start.p0(i64 4, ptr %208) #7
  store i32 5, ptr %208, align 4, !tbaa !9
  %762 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %206, ptr noundef %207, i64 noundef 242, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %208, ptr noundef @.str.16)
          to label %763 unwind label %1074

763:                                              ; preds = %761
  call void @llvm.lifetime.end.p0(i64 4, ptr %208) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %206) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %206) #7
  br label %764

764:                                              ; preds = %763
  %765 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %765, label %758, label %766, !llvm.loop !46

766:                                              ; preds = %764
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %209, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %767 = load double, ptr %6, align 8, !tbaa !11
  %768 = load double, ptr %8, align 8, !tbaa !11
  %769 = fdiv double %768, 1.000000e+01
  %770 = load double, ptr %8, align 8, !tbaa !11
  %771 = fmul double %770, 1.000000e+01
  %772 = load i32, ptr %3, align 4, !tbaa !9
  %773 = getelementptr inbounds %struct.cbrt_functor_2deriv, ptr %209, i32 0, i32 0
  %774 = load double, ptr %773, align 8
  %775 = call noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %774, double noundef %767, double noundef %769, double noundef %771, i32 noundef %772, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %775, ptr %7, align 8, !tbaa !11
  br label %776

776:                                              ; preds = %784, %766
  %777 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %210, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %211)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %777, ptr noundef %210, i64 noundef 246, ptr noundef %211)
  call void @llvm.lifetime.start.p0(i64 32, ptr %213) #7
  %778 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %213, ptr noundef nonnull align 8 dereferenceable(9) %778, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %214, ptr noundef @.str.4, i64 noundef 101)
          to label %779 unwind label %1079

779:                                              ; preds = %776
  call void @llvm.lifetime.start.p0(i64 8, ptr %215) #7
  %780 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %781 = fmul double %780, 2.000000e+00
  store double %781, ptr %215, align 8, !tbaa !11
  %782 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %213, ptr noundef %214, i64 noundef 246, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %215, ptr noundef @.str.12)
          to label %783 unwind label %1083

783:                                              ; preds = %779
  call void @llvm.lifetime.end.p0(i64 8, ptr %215) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %213) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %213) #7
  br label %784

784:                                              ; preds = %783
  %785 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %785, label %776, label %786, !llvm.loop !47

786:                                              ; preds = %784
  br label %787

787:                                              ; preds = %793, %786
  %788 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %216, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %217)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %788, ptr noundef %216, i64 noundef 247, ptr noundef %217)
  call void @llvm.lifetime.start.p0(i64 32, ptr %219) #7
  %789 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %219, ptr noundef nonnull align 8 dereferenceable(9) %789, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %220, ptr noundef @.str.4, i64 noundef 101)
          to label %790 unwind label %1088

790:                                              ; preds = %787
  call void @llvm.lifetime.start.p0(i64 4, ptr %221) #7
  store i32 3, ptr %221, align 4, !tbaa !9
  %791 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %219, ptr noundef %220, i64 noundef 247, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %221, ptr noundef @.str.17)
          to label %792 unwind label %1092

792:                                              ; preds = %790
  call void @llvm.lifetime.end.p0(i64 4, ptr %221) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %219) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %219) #7
  br label %793

793:                                              ; preds = %792
  %794 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %794, label %787, label %795, !llvm.loop !48

795:                                              ; preds = %793
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %222, ptr noundef nonnull align 8 dereferenceable(8) %4)
  %796 = load double, ptr %6, align 8, !tbaa !11
  %797 = load double, ptr %8, align 8, !tbaa !11
  %798 = fdiv double %797, 1.000000e+01
  %799 = load double, ptr %8, align 8, !tbaa !11
  %800 = fmul double %799, 1.000000e+01
  %801 = load i32, ptr %3, align 4, !tbaa !9
  %802 = getelementptr inbounds %struct.cbrt_functor_2deriv, ptr %222, i32 0, i32 0
  %803 = load double, ptr %802, align 8
  %804 = call noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %803, double noundef %796, double noundef %798, double noundef %800, i32 noundef %801, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %804, ptr %7, align 8, !tbaa !11
  br label %805

805:                                              ; preds = %813, %795
  %806 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %223, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %224)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %806, ptr noundef %223, i64 noundef 251, ptr noundef %224)
  call void @llvm.lifetime.start.p0(i64 32, ptr %226) #7
  %807 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %226, ptr noundef nonnull align 8 dereferenceable(9) %807, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %227, ptr noundef @.str.4, i64 noundef 101)
          to label %808 unwind label %1097

808:                                              ; preds = %805
  call void @llvm.lifetime.start.p0(i64 8, ptr %228) #7
  %809 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %810 = fmul double %809, 2.000000e+00
  store double %810, ptr %228, align 8, !tbaa !11
  %811 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %226, ptr noundef %227, i64 noundef 251, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %8, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %228, ptr noundef @.str.12)
          to label %812 unwind label %1101

812:                                              ; preds = %808
  call void @llvm.lifetime.end.p0(i64 8, ptr %228) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %226) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %226) #7
  br label %813

813:                                              ; preds = %812
  %814 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %814, label %805, label %815, !llvm.loop !49

815:                                              ; preds = %813
  br label %816

816:                                              ; preds = %822, %815
  %817 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %229, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %230)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %817, ptr noundef %229, i64 noundef 252, ptr noundef %230)
  call void @llvm.lifetime.start.p0(i64 32, ptr %232) #7
  %818 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %232, ptr noundef nonnull align 8 dereferenceable(9) %818, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %233, ptr noundef @.str.4, i64 noundef 101)
          to label %819 unwind label %1106

819:                                              ; preds = %816
  call void @llvm.lifetime.start.p0(i64 4, ptr %234) #7
  store i32 4, ptr %234, align 4, !tbaa !9
  %820 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %232, ptr noundef %233, i64 noundef 252, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %234, ptr noundef @.str.18)
          to label %821 unwind label %1110

821:                                              ; preds = %819
  call void @llvm.lifetime.end.p0(i64 4, ptr %234) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %232) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %232) #7
  br label %822

822:                                              ; preds = %821
  %823 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %823, label %816, label %824, !llvm.loop !50

824:                                              ; preds = %822
  %825 = load double, ptr %4, align 8, !tbaa !11
  %826 = fmul double %825, 3.500000e+00
  store double %826, ptr %4, align 8, !tbaa !11
  call void @llvm.lifetime.end.p0(i64 16, ptr %9) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %8) #7
  br label %316, !llvm.loop !51

827:                                              ; preds = %334
  %828 = landingpad { ptr, i32 }
          cleanup
  %829 = extractvalue { ptr, i32 } %828, 0
  store ptr %829, ptr %18, align 8
  %830 = extractvalue { ptr, i32 } %828, 1
  store i32 %830, ptr %19, align 4
  br label %835

831:                                              ; preds = %337
  %832 = landingpad { ptr, i32 }
          cleanup
  %833 = extractvalue { ptr, i32 } %832, 0
  store ptr %833, ptr %18, align 8
  %834 = extractvalue { ptr, i32 } %832, 1
  store i32 %834, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %21) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %20) #7
  br label %835

835:                                              ; preds = %831, %827
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %16) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %16) #7
  br label %1115

836:                                              ; preds = %351
  %837 = landingpad { ptr, i32 }
          cleanup
  %838 = extractvalue { ptr, i32 } %837, 0
  store ptr %838, ptr %18, align 8
  %839 = extractvalue { ptr, i32 } %837, 1
  store i32 %839, ptr %19, align 4
  br label %844

840:                                              ; preds = %354
  %841 = landingpad { ptr, i32 }
          cleanup
  %842 = extractvalue { ptr, i32 } %841, 0
  store ptr %842, ptr %18, align 8
  %843 = extractvalue { ptr, i32 } %841, 1
  store i32 %843, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %27) #7
  br label %844

844:                                              ; preds = %840, %836
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %25) #7
  br label %1115

845:                                              ; preds = %369
  %846 = landingpad { ptr, i32 }
          cleanup
  %847 = extractvalue { ptr, i32 } %846, 0
  store ptr %847, ptr %18, align 8
  %848 = extractvalue { ptr, i32 } %846, 1
  store i32 %848, ptr %19, align 4
  br label %853

849:                                              ; preds = %372
  %850 = landingpad { ptr, i32 }
          cleanup
  %851 = extractvalue { ptr, i32 } %850, 0
  store ptr %851, ptr %18, align 8
  %852 = extractvalue { ptr, i32 } %850, 1
  store i32 %852, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %34) #7
  br label %853

853:                                              ; preds = %849, %845
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %32) #7
  br label %1115

854:                                              ; preds = %380
  %855 = landingpad { ptr, i32 }
          cleanup
  %856 = extractvalue { ptr, i32 } %855, 0
  store ptr %856, ptr %18, align 8
  %857 = extractvalue { ptr, i32 } %855, 1
  store i32 %857, ptr %19, align 4
  br label %862

858:                                              ; preds = %383
  %859 = landingpad { ptr, i32 }
          cleanup
  %860 = extractvalue { ptr, i32 } %859, 0
  store ptr %860, ptr %18, align 8
  %861 = extractvalue { ptr, i32 } %859, 1
  store i32 %861, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %40) #7
  br label %862

862:                                              ; preds = %858, %854
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %38) #7
  br label %1115

863:                                              ; preds = %398
  %864 = landingpad { ptr, i32 }
          cleanup
  %865 = extractvalue { ptr, i32 } %864, 0
  store ptr %865, ptr %18, align 8
  %866 = extractvalue { ptr, i32 } %864, 1
  store i32 %866, ptr %19, align 4
  br label %871

867:                                              ; preds = %401
  %868 = landingpad { ptr, i32 }
          cleanup
  %869 = extractvalue { ptr, i32 } %868, 0
  store ptr %869, ptr %18, align 8
  %870 = extractvalue { ptr, i32 } %868, 1
  store i32 %870, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %47) #7
  br label %871

871:                                              ; preds = %867, %863
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %45) #7
  br label %1115

872:                                              ; preds = %409
  %873 = landingpad { ptr, i32 }
          cleanup
  %874 = extractvalue { ptr, i32 } %873, 0
  store ptr %874, ptr %18, align 8
  %875 = extractvalue { ptr, i32 } %873, 1
  store i32 %875, ptr %19, align 4
  br label %880

876:                                              ; preds = %412
  %877 = landingpad { ptr, i32 }
          cleanup
  %878 = extractvalue { ptr, i32 } %877, 0
  store ptr %878, ptr %18, align 8
  %879 = extractvalue { ptr, i32 } %877, 1
  store i32 %879, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %53) #7
  br label %880

880:                                              ; preds = %876, %872
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %51) #7
  br label %1115

881:                                              ; preds = %427
  %882 = landingpad { ptr, i32 }
          cleanup
  %883 = extractvalue { ptr, i32 } %882, 0
  store ptr %883, ptr %18, align 8
  %884 = extractvalue { ptr, i32 } %882, 1
  store i32 %884, ptr %19, align 4
  br label %889

885:                                              ; preds = %430
  %886 = landingpad { ptr, i32 }
          cleanup
  %887 = extractvalue { ptr, i32 } %886, 0
  store ptr %887, ptr %18, align 8
  %888 = extractvalue { ptr, i32 } %886, 1
  store i32 %888, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %60) #7
  br label %889

889:                                              ; preds = %885, %881
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %58) #7
  br label %1115

890:                                              ; preds = %438
  %891 = landingpad { ptr, i32 }
          cleanup
  %892 = extractvalue { ptr, i32 } %891, 0
  store ptr %892, ptr %18, align 8
  %893 = extractvalue { ptr, i32 } %891, 1
  store i32 %893, ptr %19, align 4
  br label %898

894:                                              ; preds = %441
  %895 = landingpad { ptr, i32 }
          cleanup
  %896 = extractvalue { ptr, i32 } %895, 0
  store ptr %896, ptr %18, align 8
  %897 = extractvalue { ptr, i32 } %895, 1
  store i32 %897, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %66) #7
  br label %898

898:                                              ; preds = %894, %890
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %64) #7
  br label %1115

899:                                              ; preds = %460
  %900 = landingpad { ptr, i32 }
          cleanup
  %901 = extractvalue { ptr, i32 } %900, 0
  store ptr %901, ptr %18, align 8
  %902 = extractvalue { ptr, i32 } %900, 1
  store i32 %902, ptr %19, align 4
  br label %907

903:                                              ; preds = %463
  %904 = landingpad { ptr, i32 }
          cleanup
  %905 = extractvalue { ptr, i32 } %904, 0
  store ptr %905, ptr %18, align 8
  %906 = extractvalue { ptr, i32 } %904, 1
  store i32 %906, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %77) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %76) #7
  br label %907

907:                                              ; preds = %903, %899
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %74) #7
  br label %1115

908:                                              ; preds = %477
  %909 = landingpad { ptr, i32 }
          cleanup
  %910 = extractvalue { ptr, i32 } %909, 0
  store ptr %910, ptr %18, align 8
  %911 = extractvalue { ptr, i32 } %909, 1
  store i32 %911, ptr %19, align 4
  br label %916

912:                                              ; preds = %480
  %913 = landingpad { ptr, i32 }
          cleanup
  %914 = extractvalue { ptr, i32 } %913, 0
  store ptr %914, ptr %18, align 8
  %915 = extractvalue { ptr, i32 } %913, 1
  store i32 %915, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %83) #7
  br label %916

916:                                              ; preds = %912, %908
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %81) #7
  br label %1115

917:                                              ; preds = %495
  %918 = landingpad { ptr, i32 }
          cleanup
  %919 = extractvalue { ptr, i32 } %918, 0
  store ptr %919, ptr %18, align 8
  %920 = extractvalue { ptr, i32 } %918, 1
  store i32 %920, ptr %19, align 4
  br label %925

921:                                              ; preds = %498
  %922 = landingpad { ptr, i32 }
          cleanup
  %923 = extractvalue { ptr, i32 } %922, 0
  store ptr %923, ptr %18, align 8
  %924 = extractvalue { ptr, i32 } %922, 1
  store i32 %924, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %90) #7
  br label %925

925:                                              ; preds = %921, %917
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %88) #7
  br label %1115

926:                                              ; preds = %506
  %927 = landingpad { ptr, i32 }
          cleanup
  %928 = extractvalue { ptr, i32 } %927, 0
  store ptr %928, ptr %18, align 8
  %929 = extractvalue { ptr, i32 } %927, 1
  store i32 %929, ptr %19, align 4
  br label %934

930:                                              ; preds = %509
  %931 = landingpad { ptr, i32 }
          cleanup
  %932 = extractvalue { ptr, i32 } %931, 0
  store ptr %932, ptr %18, align 8
  %933 = extractvalue { ptr, i32 } %931, 1
  store i32 %933, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %96) #7
  br label %934

934:                                              ; preds = %930, %926
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %94) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %94) #7
  br label %1115

935:                                              ; preds = %524
  %936 = landingpad { ptr, i32 }
          cleanup
  %937 = extractvalue { ptr, i32 } %936, 0
  store ptr %937, ptr %18, align 8
  %938 = extractvalue { ptr, i32 } %936, 1
  store i32 %938, ptr %19, align 4
  br label %943

939:                                              ; preds = %527
  %940 = landingpad { ptr, i32 }
          cleanup
  %941 = extractvalue { ptr, i32 } %940, 0
  store ptr %941, ptr %18, align 8
  %942 = extractvalue { ptr, i32 } %940, 1
  store i32 %942, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %103) #7
  br label %943

943:                                              ; preds = %939, %935
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %101) #7
  br label %1115

944:                                              ; preds = %535
  %945 = landingpad { ptr, i32 }
          cleanup
  %946 = extractvalue { ptr, i32 } %945, 0
  store ptr %946, ptr %18, align 8
  %947 = extractvalue { ptr, i32 } %945, 1
  store i32 %947, ptr %19, align 4
  br label %952

948:                                              ; preds = %538
  %949 = landingpad { ptr, i32 }
          cleanup
  %950 = extractvalue { ptr, i32 } %949, 0
  store ptr %950, ptr %18, align 8
  %951 = extractvalue { ptr, i32 } %949, 1
  store i32 %951, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %109) #7
  br label %952

952:                                              ; preds = %948, %944
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %107) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %107) #7
  br label %1115

953:                                              ; preds = %553
  %954 = landingpad { ptr, i32 }
          cleanup
  %955 = extractvalue { ptr, i32 } %954, 0
  store ptr %955, ptr %18, align 8
  %956 = extractvalue { ptr, i32 } %954, 1
  store i32 %956, ptr %19, align 4
  br label %961

957:                                              ; preds = %556
  %958 = landingpad { ptr, i32 }
          cleanup
  %959 = extractvalue { ptr, i32 } %958, 0
  store ptr %959, ptr %18, align 8
  %960 = extractvalue { ptr, i32 } %958, 1
  store i32 %960, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %116) #7
  br label %961

961:                                              ; preds = %957, %953
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %114) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %114) #7
  br label %1115

962:                                              ; preds = %564
  %963 = landingpad { ptr, i32 }
          cleanup
  %964 = extractvalue { ptr, i32 } %963, 0
  store ptr %964, ptr %18, align 8
  %965 = extractvalue { ptr, i32 } %963, 1
  store i32 %965, ptr %19, align 4
  br label %970

966:                                              ; preds = %567
  %967 = landingpad { ptr, i32 }
          cleanup
  %968 = extractvalue { ptr, i32 } %967, 0
  store ptr %968, ptr %18, align 8
  %969 = extractvalue { ptr, i32 } %967, 1
  store i32 %969, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %122) #7
  br label %970

970:                                              ; preds = %966, %962
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %120) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %120) #7
  br label %1115

971:                                              ; preds = %586
  %972 = landingpad { ptr, i32 }
          cleanup
  %973 = extractvalue { ptr, i32 } %972, 0
  store ptr %973, ptr %18, align 8
  %974 = extractvalue { ptr, i32 } %972, 1
  store i32 %974, ptr %19, align 4
  br label %979

975:                                              ; preds = %589
  %976 = landingpad { ptr, i32 }
          cleanup
  %977 = extractvalue { ptr, i32 } %976, 0
  store ptr %977, ptr %18, align 8
  %978 = extractvalue { ptr, i32 } %976, 1
  store i32 %978, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %133) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %132) #7
  br label %979

979:                                              ; preds = %975, %971
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %130) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %130) #7
  br label %1115

980:                                              ; preds = %603
  %981 = landingpad { ptr, i32 }
          cleanup
  %982 = extractvalue { ptr, i32 } %981, 0
  store ptr %982, ptr %18, align 8
  %983 = extractvalue { ptr, i32 } %981, 1
  store i32 %983, ptr %19, align 4
  br label %988

984:                                              ; preds = %606
  %985 = landingpad { ptr, i32 }
          cleanup
  %986 = extractvalue { ptr, i32 } %985, 0
  store ptr %986, ptr %18, align 8
  %987 = extractvalue { ptr, i32 } %985, 1
  store i32 %987, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %139) #7
  br label %988

988:                                              ; preds = %984, %980
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %137) #7
  br label %1115

989:                                              ; preds = %621
  %990 = landingpad { ptr, i32 }
          cleanup
  %991 = extractvalue { ptr, i32 } %990, 0
  store ptr %991, ptr %18, align 8
  %992 = extractvalue { ptr, i32 } %990, 1
  store i32 %992, ptr %19, align 4
  br label %997

993:                                              ; preds = %624
  %994 = landingpad { ptr, i32 }
          cleanup
  %995 = extractvalue { ptr, i32 } %994, 0
  store ptr %995, ptr %18, align 8
  %996 = extractvalue { ptr, i32 } %994, 1
  store i32 %996, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %146) #7
  br label %997

997:                                              ; preds = %993, %989
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %144) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %144) #7
  br label %1115

998:                                              ; preds = %632
  %999 = landingpad { ptr, i32 }
          cleanup
  %1000 = extractvalue { ptr, i32 } %999, 0
  store ptr %1000, ptr %18, align 8
  %1001 = extractvalue { ptr, i32 } %999, 1
  store i32 %1001, ptr %19, align 4
  br label %1006

1002:                                             ; preds = %635
  %1003 = landingpad { ptr, i32 }
          cleanup
  %1004 = extractvalue { ptr, i32 } %1003, 0
  store ptr %1004, ptr %18, align 8
  %1005 = extractvalue { ptr, i32 } %1003, 1
  store i32 %1005, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %152) #7
  br label %1006

1006:                                             ; preds = %1002, %998
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %150) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %150) #7
  br label %1115

1007:                                             ; preds = %650
  %1008 = landingpad { ptr, i32 }
          cleanup
  %1009 = extractvalue { ptr, i32 } %1008, 0
  store ptr %1009, ptr %18, align 8
  %1010 = extractvalue { ptr, i32 } %1008, 1
  store i32 %1010, ptr %19, align 4
  br label %1015

1011:                                             ; preds = %653
  %1012 = landingpad { ptr, i32 }
          cleanup
  %1013 = extractvalue { ptr, i32 } %1012, 0
  store ptr %1013, ptr %18, align 8
  %1014 = extractvalue { ptr, i32 } %1012, 1
  store i32 %1014, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %159) #7
  br label %1015

1015:                                             ; preds = %1011, %1007
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %157) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %157) #7
  br label %1115

1016:                                             ; preds = %661
  %1017 = landingpad { ptr, i32 }
          cleanup
  %1018 = extractvalue { ptr, i32 } %1017, 0
  store ptr %1018, ptr %18, align 8
  %1019 = extractvalue { ptr, i32 } %1017, 1
  store i32 %1019, ptr %19, align 4
  br label %1024

1020:                                             ; preds = %664
  %1021 = landingpad { ptr, i32 }
          cleanup
  %1022 = extractvalue { ptr, i32 } %1021, 0
  store ptr %1022, ptr %18, align 8
  %1023 = extractvalue { ptr, i32 } %1021, 1
  store i32 %1023, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %165) #7
  br label %1024

1024:                                             ; preds = %1020, %1016
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %163) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %163) #7
  br label %1115

1025:                                             ; preds = %679
  %1026 = landingpad { ptr, i32 }
          cleanup
  %1027 = extractvalue { ptr, i32 } %1026, 0
  store ptr %1027, ptr %18, align 8
  %1028 = extractvalue { ptr, i32 } %1026, 1
  store i32 %1028, ptr %19, align 4
  br label %1033

1029:                                             ; preds = %682
  %1030 = landingpad { ptr, i32 }
          cleanup
  %1031 = extractvalue { ptr, i32 } %1030, 0
  store ptr %1031, ptr %18, align 8
  %1032 = extractvalue { ptr, i32 } %1030, 1
  store i32 %1032, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %172) #7
  br label %1033

1033:                                             ; preds = %1029, %1025
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %170) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %170) #7
  br label %1115

1034:                                             ; preds = %690
  %1035 = landingpad { ptr, i32 }
          cleanup
  %1036 = extractvalue { ptr, i32 } %1035, 0
  store ptr %1036, ptr %18, align 8
  %1037 = extractvalue { ptr, i32 } %1035, 1
  store i32 %1037, ptr %19, align 4
  br label %1042

1038:                                             ; preds = %693
  %1039 = landingpad { ptr, i32 }
          cleanup
  %1040 = extractvalue { ptr, i32 } %1039, 0
  store ptr %1040, ptr %18, align 8
  %1041 = extractvalue { ptr, i32 } %1039, 1
  store i32 %1041, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %178) #7
  br label %1042

1042:                                             ; preds = %1038, %1034
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %176) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %176) #7
  br label %1115

1043:                                             ; preds = %712
  %1044 = landingpad { ptr, i32 }
          cleanup
  %1045 = extractvalue { ptr, i32 } %1044, 0
  store ptr %1045, ptr %18, align 8
  %1046 = extractvalue { ptr, i32 } %1044, 1
  store i32 %1046, ptr %19, align 4
  br label %1051

1047:                                             ; preds = %715
  %1048 = landingpad { ptr, i32 }
          cleanup
  %1049 = extractvalue { ptr, i32 } %1048, 0
  store ptr %1049, ptr %18, align 8
  %1050 = extractvalue { ptr, i32 } %1048, 1
  store i32 %1050, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %189) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %188) #7
  br label %1051

1051:                                             ; preds = %1047, %1043
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %186) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %186) #7
  br label %1115

1052:                                             ; preds = %729
  %1053 = landingpad { ptr, i32 }
          cleanup
  %1054 = extractvalue { ptr, i32 } %1053, 0
  store ptr %1054, ptr %18, align 8
  %1055 = extractvalue { ptr, i32 } %1053, 1
  store i32 %1055, ptr %19, align 4
  br label %1060

1056:                                             ; preds = %732
  %1057 = landingpad { ptr, i32 }
          cleanup
  %1058 = extractvalue { ptr, i32 } %1057, 0
  store ptr %1058, ptr %18, align 8
  %1059 = extractvalue { ptr, i32 } %1057, 1
  store i32 %1059, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %195) #7
  br label %1060

1060:                                             ; preds = %1056, %1052
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %193) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %193) #7
  br label %1115

1061:                                             ; preds = %747
  %1062 = landingpad { ptr, i32 }
          cleanup
  %1063 = extractvalue { ptr, i32 } %1062, 0
  store ptr %1063, ptr %18, align 8
  %1064 = extractvalue { ptr, i32 } %1062, 1
  store i32 %1064, ptr %19, align 4
  br label %1069

1065:                                             ; preds = %750
  %1066 = landingpad { ptr, i32 }
          cleanup
  %1067 = extractvalue { ptr, i32 } %1066, 0
  store ptr %1067, ptr %18, align 8
  %1068 = extractvalue { ptr, i32 } %1066, 1
  store i32 %1068, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %202) #7
  br label %1069

1069:                                             ; preds = %1065, %1061
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %200) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %200) #7
  br label %1115

1070:                                             ; preds = %758
  %1071 = landingpad { ptr, i32 }
          cleanup
  %1072 = extractvalue { ptr, i32 } %1071, 0
  store ptr %1072, ptr %18, align 8
  %1073 = extractvalue { ptr, i32 } %1071, 1
  store i32 %1073, ptr %19, align 4
  br label %1078

1074:                                             ; preds = %761
  %1075 = landingpad { ptr, i32 }
          cleanup
  %1076 = extractvalue { ptr, i32 } %1075, 0
  store ptr %1076, ptr %18, align 8
  %1077 = extractvalue { ptr, i32 } %1075, 1
  store i32 %1077, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %208) #7
  br label %1078

1078:                                             ; preds = %1074, %1070
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %206) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %206) #7
  br label %1115

1079:                                             ; preds = %776
  %1080 = landingpad { ptr, i32 }
          cleanup
  %1081 = extractvalue { ptr, i32 } %1080, 0
  store ptr %1081, ptr %18, align 8
  %1082 = extractvalue { ptr, i32 } %1080, 1
  store i32 %1082, ptr %19, align 4
  br label %1087

1083:                                             ; preds = %779
  %1084 = landingpad { ptr, i32 }
          cleanup
  %1085 = extractvalue { ptr, i32 } %1084, 0
  store ptr %1085, ptr %18, align 8
  %1086 = extractvalue { ptr, i32 } %1084, 1
  store i32 %1086, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %215) #7
  br label %1087

1087:                                             ; preds = %1083, %1079
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %213) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %213) #7
  br label %1115

1088:                                             ; preds = %787
  %1089 = landingpad { ptr, i32 }
          cleanup
  %1090 = extractvalue { ptr, i32 } %1089, 0
  store ptr %1090, ptr %18, align 8
  %1091 = extractvalue { ptr, i32 } %1089, 1
  store i32 %1091, ptr %19, align 4
  br label %1096

1092:                                             ; preds = %790
  %1093 = landingpad { ptr, i32 }
          cleanup
  %1094 = extractvalue { ptr, i32 } %1093, 0
  store ptr %1094, ptr %18, align 8
  %1095 = extractvalue { ptr, i32 } %1093, 1
  store i32 %1095, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %221) #7
  br label %1096

1096:                                             ; preds = %1092, %1088
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %219) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %219) #7
  br label %1115

1097:                                             ; preds = %805
  %1098 = landingpad { ptr, i32 }
          cleanup
  %1099 = extractvalue { ptr, i32 } %1098, 0
  store ptr %1099, ptr %18, align 8
  %1100 = extractvalue { ptr, i32 } %1098, 1
  store i32 %1100, ptr %19, align 4
  br label %1105

1101:                                             ; preds = %808
  %1102 = landingpad { ptr, i32 }
          cleanup
  %1103 = extractvalue { ptr, i32 } %1102, 0
  store ptr %1103, ptr %18, align 8
  %1104 = extractvalue { ptr, i32 } %1102, 1
  store i32 %1104, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %228) #7
  br label %1105

1105:                                             ; preds = %1101, %1097
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %226) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %226) #7
  br label %1115

1106:                                             ; preds = %816
  %1107 = landingpad { ptr, i32 }
          cleanup
  %1108 = extractvalue { ptr, i32 } %1107, 0
  store ptr %1108, ptr %18, align 8
  %1109 = extractvalue { ptr, i32 } %1107, 1
  store i32 %1109, ptr %19, align 4
  br label %1114

1110:                                             ; preds = %819
  %1111 = landingpad { ptr, i32 }
          cleanup
  %1112 = extractvalue { ptr, i32 } %1111, 0
  store ptr %1112, ptr %18, align 8
  %1113 = extractvalue { ptr, i32 } %1111, 1
  store i32 %1113, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %234) #7
  br label %1114

1114:                                             ; preds = %1110, %1106
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %232) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %232) #7
  br label %1115

1115:                                             ; preds = %1114, %1105, %1096, %1087, %1078, %1069, %1060, %1051, %1042, %1033, %1024, %1015, %1006, %997, %988, %979, %970, %961, %952, %943, %934, %925, %916, %907, %898, %889, %880, %871, %862, %853, %844, %835
  call void @llvm.lifetime.end.p0(i64 16, ptr %9) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %8) #7
  br label %1493

1116:                                             ; preds = %316
  call void @llvm.lifetime.start.p0(i64 4, ptr %235) #7
  store i32 0, ptr %235, align 4, !tbaa !9
  br label %1117

1117:                                             ; preds = %1488, %1116
  %1118 = load i32, ptr %235, align 4, !tbaa !9
  %1119 = zext i32 %1118 to i64
  %1120 = call noundef i64 @_ZN5boost5arrayINS0_IdLm7EEELm500EE4sizeEv()
  %1121 = icmp ult i64 %1119, %1120
  br i1 %1121, label %1123, label %1122

1122:                                             ; preds = %1117
  call void @llvm.lifetime.end.p0(i64 4, ptr %235) #7
  br label %1492

1123:                                             ; preds = %1117
  %1124 = load i32, ptr %235, align 4, !tbaa !9
  %1125 = zext i32 %1124 to i64
  %1126 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1125)
  %1127 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1126, i64 noundef 5)
  %1128 = load double, ptr %1127, align 8, !tbaa !11
  %1129 = fcmp oeq double %1128, 0.000000e+00
  br i1 %1129, label %1130, label %1235

1130:                                             ; preds = %1123
  store i64 1000, ptr %5, align 8, !tbaa !13
  %1131 = load i32, ptr %235, align 4, !tbaa !9
  %1132 = zext i32 %1131 to i64
  %1133 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1132)
  %1134 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1133, i64 noundef 0)
  %1135 = load double, ptr %1134, align 8, !tbaa !11
  %1136 = load i32, ptr %235, align 4, !tbaa !9
  %1137 = zext i32 %1136 to i64
  %1138 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1137)
  %1139 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1138, i64 noundef 1)
  %1140 = load double, ptr %1139, align 8, !tbaa !11
  %1141 = load i32, ptr %235, align 4, !tbaa !9
  %1142 = zext i32 %1141 to i64
  %1143 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1142)
  %1144 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1143, i64 noundef 5)
  %1145 = load double, ptr %1144, align 8, !tbaa !11
  call void @_ZN13ibeta_roots_2IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %236, double noundef %1135, double noundef %1140, double noundef %1145, i1 noundef zeroext false)
  %1146 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI13ibeta_roots_2IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_2) align 8 %236, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %1146, ptr %7, align 8, !tbaa !11
  br label %1147

1147:                                             ; preds = %1153, %1130
  %1148 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %237, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %238)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1148, ptr noundef %237, i64 noundef 279, ptr noundef %238)
  call void @llvm.lifetime.start.p0(i64 32, ptr %240) #7
  %1149 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %240, ptr noundef nonnull align 8 dereferenceable(9) %1149, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %241, ptr noundef @.str.4, i64 noundef 101)
          to label %1150 unwind label %1199

1150:                                             ; preds = %1147
  call void @llvm.lifetime.start.p0(i64 8, ptr %242) #7
  store double 0.000000e+00, ptr %242, align 8, !tbaa !11
  %1151 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %240, ptr noundef %241, i64 noundef 279, i32 noundef 1, i32 noundef 2, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %242, ptr noundef @.str.19)
          to label %1152 unwind label %1203

1152:                                             ; preds = %1150
  call void @llvm.lifetime.end.p0(i64 8, ptr %242) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %240) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %240) #7
  br label %1153

1153:                                             ; preds = %1152
  %1154 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1154, label %1147, label %1155, !llvm.loop !52

1155:                                             ; preds = %1153
  br label %1156

1156:                                             ; preds = %1162, %1155
  %1157 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %243, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %244)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1157, ptr noundef %243, i64 noundef 280, ptr noundef %244)
  call void @llvm.lifetime.start.p0(i64 32, ptr %246) #7
  %1158 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %246, ptr noundef nonnull align 8 dereferenceable(9) %1158, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %247, ptr noundef @.str.4, i64 noundef 101)
          to label %1159 unwind label %1208

1159:                                             ; preds = %1156
  call void @llvm.lifetime.start.p0(i64 4, ptr %248) #7
  store i32 27, ptr %248, align 4, !tbaa !9
  %1160 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %246, ptr noundef %247, i64 noundef 280, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %248, ptr noundef @.str.20)
          to label %1161 unwind label %1212

1161:                                             ; preds = %1159
  call void @llvm.lifetime.end.p0(i64 4, ptr %248) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %246) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %246) #7
  br label %1162

1162:                                             ; preds = %1161
  %1163 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1163, label %1156, label %1164, !llvm.loop !53

1164:                                             ; preds = %1162
  store i64 1000, ptr %5, align 8, !tbaa !13
  %1165 = load i32, ptr %235, align 4, !tbaa !9
  %1166 = zext i32 %1165 to i64
  %1167 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1166)
  %1168 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1167, i64 noundef 0)
  %1169 = load double, ptr %1168, align 8, !tbaa !11
  %1170 = load i32, ptr %235, align 4, !tbaa !9
  %1171 = zext i32 %1170 to i64
  %1172 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1171)
  %1173 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1172, i64 noundef 1)
  %1174 = load double, ptr %1173, align 8, !tbaa !11
  %1175 = load i32, ptr %235, align 4, !tbaa !9
  %1176 = zext i32 %1175 to i64
  %1177 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1176)
  %1178 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1177, i64 noundef 5)
  %1179 = load double, ptr %1178, align 8, !tbaa !11
  call void @_ZN13ibeta_roots_3IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %249, double noundef %1169, double noundef %1174, double noundef %1179, i1 noundef zeroext false)
  %1180 = call noundef double @_ZN5boost4math5tools14halley_iterateI13ibeta_roots_3IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_3) align 8 %249, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %1180, ptr %7, align 8, !tbaa !11
  br label %1181

1181:                                             ; preds = %1187, %1164
  %1182 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %250, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %251)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1182, ptr noundef %250, i64 noundef 283, ptr noundef %251)
  call void @llvm.lifetime.start.p0(i64 32, ptr %253) #7
  %1183 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %253, ptr noundef nonnull align 8 dereferenceable(9) %1183, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %254, ptr noundef @.str.4, i64 noundef 101)
          to label %1184 unwind label %1217

1184:                                             ; preds = %1181
  call void @llvm.lifetime.start.p0(i64 8, ptr %255) #7
  store double 0.000000e+00, ptr %255, align 8, !tbaa !11
  %1185 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %253, ptr noundef %254, i64 noundef 283, i32 noundef 1, i32 noundef 2, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %255, ptr noundef @.str.19)
          to label %1186 unwind label %1221

1186:                                             ; preds = %1184
  call void @llvm.lifetime.end.p0(i64 8, ptr %255) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %253) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %253) #7
  br label %1187

1187:                                             ; preds = %1186
  %1188 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1188, label %1181, label %1189, !llvm.loop !54

1189:                                             ; preds = %1187
  br label %1190

1190:                                             ; preds = %1196, %1189
  %1191 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %256, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %257)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1191, ptr noundef %256, i64 noundef 284, ptr noundef %257)
  call void @llvm.lifetime.start.p0(i64 32, ptr %259) #7
  %1192 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %259, ptr noundef nonnull align 8 dereferenceable(9) %1192, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %260, ptr noundef @.str.4, i64 noundef 101)
          to label %1193 unwind label %1226

1193:                                             ; preds = %1190
  call void @llvm.lifetime.start.p0(i64 4, ptr %261) #7
  store i32 10, ptr %261, align 4, !tbaa !9
  %1194 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %259, ptr noundef %260, i64 noundef 284, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %261, ptr noundef @.str.21)
          to label %1195 unwind label %1230

1195:                                             ; preds = %1193
  call void @llvm.lifetime.end.p0(i64 4, ptr %261) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %259) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %259) #7
  br label %1196

1196:                                             ; preds = %1195
  %1197 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1197, label %1190, label %1198, !llvm.loop !55

1198:                                             ; preds = %1196
  br label %1487

1199:                                             ; preds = %1147
  %1200 = landingpad { ptr, i32 }
          cleanup
  %1201 = extractvalue { ptr, i32 } %1200, 0
  store ptr %1201, ptr %18, align 8
  %1202 = extractvalue { ptr, i32 } %1200, 1
  store i32 %1202, ptr %19, align 4
  br label %1207

1203:                                             ; preds = %1150
  %1204 = landingpad { ptr, i32 }
          cleanup
  %1205 = extractvalue { ptr, i32 } %1204, 0
  store ptr %1205, ptr %18, align 8
  %1206 = extractvalue { ptr, i32 } %1204, 1
  store i32 %1206, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %242) #7
  br label %1207

1207:                                             ; preds = %1203, %1199
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %240) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %240) #7
  br label %1491

1208:                                             ; preds = %1156
  %1209 = landingpad { ptr, i32 }
          cleanup
  %1210 = extractvalue { ptr, i32 } %1209, 0
  store ptr %1210, ptr %18, align 8
  %1211 = extractvalue { ptr, i32 } %1209, 1
  store i32 %1211, ptr %19, align 4
  br label %1216

1212:                                             ; preds = %1159
  %1213 = landingpad { ptr, i32 }
          cleanup
  %1214 = extractvalue { ptr, i32 } %1213, 0
  store ptr %1214, ptr %18, align 8
  %1215 = extractvalue { ptr, i32 } %1213, 1
  store i32 %1215, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %248) #7
  br label %1216

1216:                                             ; preds = %1212, %1208
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %246) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %246) #7
  br label %1491

1217:                                             ; preds = %1181
  %1218 = landingpad { ptr, i32 }
          cleanup
  %1219 = extractvalue { ptr, i32 } %1218, 0
  store ptr %1219, ptr %18, align 8
  %1220 = extractvalue { ptr, i32 } %1218, 1
  store i32 %1220, ptr %19, align 4
  br label %1225

1221:                                             ; preds = %1184
  %1222 = landingpad { ptr, i32 }
          cleanup
  %1223 = extractvalue { ptr, i32 } %1222, 0
  store ptr %1223, ptr %18, align 8
  %1224 = extractvalue { ptr, i32 } %1222, 1
  store i32 %1224, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %255) #7
  br label %1225

1225:                                             ; preds = %1221, %1217
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %253) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %253) #7
  br label %1491

1226:                                             ; preds = %1190
  %1227 = landingpad { ptr, i32 }
          cleanup
  %1228 = extractvalue { ptr, i32 } %1227, 0
  store ptr %1228, ptr %18, align 8
  %1229 = extractvalue { ptr, i32 } %1227, 1
  store i32 %1229, ptr %19, align 4
  br label %1234

1230:                                             ; preds = %1193
  %1231 = landingpad { ptr, i32 }
          cleanup
  %1232 = extractvalue { ptr, i32 } %1231, 0
  store ptr %1232, ptr %18, align 8
  %1233 = extractvalue { ptr, i32 } %1231, 1
  store i32 %1233, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %261) #7
  br label %1234

1234:                                             ; preds = %1230, %1226
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %259) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %259) #7
  br label %1491

1235:                                             ; preds = %1123
  %1236 = load i32, ptr %235, align 4, !tbaa !9
  %1237 = zext i32 %1236 to i64
  %1238 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1237)
  %1239 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1238, i64 noundef 5)
  %1240 = load double, ptr %1239, align 8, !tbaa !11
  %1241 = fsub double 1.000000e+00, %1240
  %1242 = fcmp ogt double %1241, 1.000000e-03
  br i1 %1242, label %1243, label %1373

1243:                                             ; preds = %1235
  %1244 = load i32, ptr %235, align 4, !tbaa !9
  %1245 = zext i32 %1244 to i64
  %1246 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1245)
  %1247 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1246, i64 noundef 5)
  %1248 = load double, ptr %1247, align 8, !tbaa !11
  %1249 = call double @llvm.fabs.f64(double %1248)
  %1250 = call noundef double @_ZN5boost4math5tools9min_valueIdEET_v() #7
  %1251 = fmul double 2.000000e+00, %1250
  %1252 = fcmp ogt double %1249, %1251
  br i1 %1252, label %1253, label %1373

1253:                                             ; preds = %1243
  store i64 1000, ptr %5, align 8, !tbaa !13
  call void @llvm.lifetime.start.p0(i64 8, ptr %262) #7
  %1254 = load i32, ptr %235, align 4, !tbaa !9
  %1255 = zext i32 %1254 to i64
  %1256 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1255)
  %1257 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1256, i64 noundef 2)
  %1258 = load double, ptr %1257, align 8, !tbaa !11
  store double %1258, ptr %262, align 8, !tbaa !11
  %1259 = load i32, ptr %235, align 4, !tbaa !9
  %1260 = zext i32 %1259 to i64
  %1261 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1260)
  %1262 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1261, i64 noundef 0)
  %1263 = load double, ptr %1262, align 8, !tbaa !11
  %1264 = load i32, ptr %235, align 4, !tbaa !9
  %1265 = zext i32 %1264 to i64
  %1266 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1265)
  %1267 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1266, i64 noundef 1)
  %1268 = load double, ptr %1267, align 8, !tbaa !11
  %1269 = load i32, ptr %235, align 4, !tbaa !9
  %1270 = zext i32 %1269 to i64
  %1271 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1270)
  %1272 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1271, i64 noundef 5)
  %1273 = load double, ptr %1272, align 8, !tbaa !11
  call void @_ZN13ibeta_roots_2IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %263, double noundef %1263, double noundef %1268, double noundef %1273, i1 noundef zeroext false)
  %1274 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI13ibeta_roots_2IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_2) align 8 %263, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %1274, ptr %7, align 8, !tbaa !11
  br label %1275

1275:                                             ; preds = %1283, %1253
  %1276 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %264, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %265)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1276, ptr noundef %264, i64 noundef 292, ptr noundef %265)
  call void @llvm.lifetime.start.p0(i64 32, ptr %267) #7
  %1277 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %267, ptr noundef nonnull align 8 dereferenceable(9) %1277, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %268, ptr noundef @.str.4, i64 noundef 101)
          to label %1278 unwind label %1336

1278:                                             ; preds = %1275
  call void @llvm.lifetime.start.p0(i64 8, ptr %269) #7
  %1279 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %1280 = fmul double %1279, 2.000000e+02
  store double %1280, ptr %269, align 8, !tbaa !11
  %1281 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %267, ptr noundef %268, i64 noundef 292, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %262, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %269, ptr noundef @.str.22)
          to label %1282 unwind label %1340

1282:                                             ; preds = %1278
  call void @llvm.lifetime.end.p0(i64 8, ptr %269) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %267) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %267) #7
  br label %1283

1283:                                             ; preds = %1282
  %1284 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1284, label %1275, label %1285, !llvm.loop !56

1285:                                             ; preds = %1283
  br label %1286

1286:                                             ; preds = %1292, %1285
  %1287 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %270, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %271)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1287, ptr noundef %270, i64 noundef 296, ptr noundef %271)
  call void @llvm.lifetime.start.p0(i64 32, ptr %273) #7
  %1288 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %273, ptr noundef nonnull align 8 dereferenceable(9) %1288, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %274, ptr noundef @.str.4, i64 noundef 101)
          to label %1289 unwind label %1345

1289:                                             ; preds = %1286
  call void @llvm.lifetime.start.p0(i64 4, ptr %275) #7
  store i32 27, ptr %275, align 4, !tbaa !9
  %1290 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %273, ptr noundef %274, i64 noundef 296, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %275, ptr noundef @.str.20)
          to label %1291 unwind label %1349

1291:                                             ; preds = %1289
  call void @llvm.lifetime.end.p0(i64 4, ptr %275) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %273) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %273) #7
  br label %1292

1292:                                             ; preds = %1291
  %1293 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1293, label %1286, label %1294, !llvm.loop !57

1294:                                             ; preds = %1292
  store i64 1000, ptr %5, align 8, !tbaa !13
  %1295 = load i32, ptr %235, align 4, !tbaa !9
  %1296 = zext i32 %1295 to i64
  %1297 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1296)
  %1298 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1297, i64 noundef 2)
  %1299 = load double, ptr %1298, align 8, !tbaa !11
  store double %1299, ptr %262, align 8, !tbaa !11
  %1300 = load i32, ptr %235, align 4, !tbaa !9
  %1301 = zext i32 %1300 to i64
  %1302 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1301)
  %1303 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1302, i64 noundef 0)
  %1304 = load double, ptr %1303, align 8, !tbaa !11
  %1305 = load i32, ptr %235, align 4, !tbaa !9
  %1306 = zext i32 %1305 to i64
  %1307 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1306)
  %1308 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1307, i64 noundef 1)
  %1309 = load double, ptr %1308, align 8, !tbaa !11
  %1310 = load i32, ptr %235, align 4, !tbaa !9
  %1311 = zext i32 %1310 to i64
  %1312 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1311)
  %1313 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1312, i64 noundef 5)
  %1314 = load double, ptr %1313, align 8, !tbaa !11
  call void @_ZN13ibeta_roots_3IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %276, double noundef %1304, double noundef %1309, double noundef %1314, i1 noundef zeroext false)
  %1315 = call noundef double @_ZN5boost4math5tools14halley_iterateI13ibeta_roots_3IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_3) align 8 %276, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %1315, ptr %7, align 8, !tbaa !11
  br label %1316

1316:                                             ; preds = %1324, %1294
  %1317 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %277, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %278)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1317, ptr noundef %277, i64 noundef 301, ptr noundef %278)
  call void @llvm.lifetime.start.p0(i64 32, ptr %280) #7
  %1318 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %280, ptr noundef nonnull align 8 dereferenceable(9) %1318, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %281, ptr noundef @.str.4, i64 noundef 101)
          to label %1319 unwind label %1354

1319:                                             ; preds = %1316
  call void @llvm.lifetime.start.p0(i64 8, ptr %282) #7
  %1320 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %1321 = fmul double %1320, 2.000000e+02
  store double %1321, ptr %282, align 8, !tbaa !11
  %1322 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %280, ptr noundef %281, i64 noundef 301, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %262, ptr noundef @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %282, ptr noundef @.str.22)
          to label %1323 unwind label %1358

1323:                                             ; preds = %1319
  call void @llvm.lifetime.end.p0(i64 8, ptr %282) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %280) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %280) #7
  br label %1324

1324:                                             ; preds = %1323
  %1325 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1325, label %1316, label %1326, !llvm.loop !58

1326:                                             ; preds = %1324
  br label %1327

1327:                                             ; preds = %1333, %1326
  %1328 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %283, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %284)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1328, ptr noundef %283, i64 noundef 305, ptr noundef %284)
  call void @llvm.lifetime.start.p0(i64 32, ptr %286) #7
  %1329 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %286, ptr noundef nonnull align 8 dereferenceable(9) %1329, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %287, ptr noundef @.str.4, i64 noundef 101)
          to label %1330 unwind label %1363

1330:                                             ; preds = %1327
  call void @llvm.lifetime.start.p0(i64 4, ptr %288) #7
  store i32 40, ptr %288, align 4, !tbaa !9
  %1331 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %286, ptr noundef %287, i64 noundef 305, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %288, ptr noundef @.str.23)
          to label %1332 unwind label %1367

1332:                                             ; preds = %1330
  call void @llvm.lifetime.end.p0(i64 4, ptr %288) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %286) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %286) #7
  br label %1333

1333:                                             ; preds = %1332
  %1334 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1334, label %1327, label %1335, !llvm.loop !59

1335:                                             ; preds = %1333
  call void @llvm.lifetime.end.p0(i64 8, ptr %262) #7
  br label %1486

1336:                                             ; preds = %1275
  %1337 = landingpad { ptr, i32 }
          cleanup
  %1338 = extractvalue { ptr, i32 } %1337, 0
  store ptr %1338, ptr %18, align 8
  %1339 = extractvalue { ptr, i32 } %1337, 1
  store i32 %1339, ptr %19, align 4
  br label %1344

1340:                                             ; preds = %1278
  %1341 = landingpad { ptr, i32 }
          cleanup
  %1342 = extractvalue { ptr, i32 } %1341, 0
  store ptr %1342, ptr %18, align 8
  %1343 = extractvalue { ptr, i32 } %1341, 1
  store i32 %1343, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %269) #7
  br label %1344

1344:                                             ; preds = %1340, %1336
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %267) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %267) #7
  br label %1372

1345:                                             ; preds = %1286
  %1346 = landingpad { ptr, i32 }
          cleanup
  %1347 = extractvalue { ptr, i32 } %1346, 0
  store ptr %1347, ptr %18, align 8
  %1348 = extractvalue { ptr, i32 } %1346, 1
  store i32 %1348, ptr %19, align 4
  br label %1353

1349:                                             ; preds = %1289
  %1350 = landingpad { ptr, i32 }
          cleanup
  %1351 = extractvalue { ptr, i32 } %1350, 0
  store ptr %1351, ptr %18, align 8
  %1352 = extractvalue { ptr, i32 } %1350, 1
  store i32 %1352, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %275) #7
  br label %1353

1353:                                             ; preds = %1349, %1345
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %273) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %273) #7
  br label %1372

1354:                                             ; preds = %1316
  %1355 = landingpad { ptr, i32 }
          cleanup
  %1356 = extractvalue { ptr, i32 } %1355, 0
  store ptr %1356, ptr %18, align 8
  %1357 = extractvalue { ptr, i32 } %1355, 1
  store i32 %1357, ptr %19, align 4
  br label %1362

1358:                                             ; preds = %1319
  %1359 = landingpad { ptr, i32 }
          cleanup
  %1360 = extractvalue { ptr, i32 } %1359, 0
  store ptr %1360, ptr %18, align 8
  %1361 = extractvalue { ptr, i32 } %1359, 1
  store i32 %1361, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %282) #7
  br label %1362

1362:                                             ; preds = %1358, %1354
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %280) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %280) #7
  br label %1372

1363:                                             ; preds = %1327
  %1364 = landingpad { ptr, i32 }
          cleanup
  %1365 = extractvalue { ptr, i32 } %1364, 0
  store ptr %1365, ptr %18, align 8
  %1366 = extractvalue { ptr, i32 } %1364, 1
  store i32 %1366, ptr %19, align 4
  br label %1371

1367:                                             ; preds = %1330
  %1368 = landingpad { ptr, i32 }
          cleanup
  %1369 = extractvalue { ptr, i32 } %1368, 0
  store ptr %1369, ptr %18, align 8
  %1370 = extractvalue { ptr, i32 } %1368, 1
  store i32 %1370, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %288) #7
  br label %1371

1371:                                             ; preds = %1367, %1363
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %286) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %286) #7
  br label %1372

1372:                                             ; preds = %1371, %1362, %1353, %1344
  call void @llvm.lifetime.end.p0(i64 8, ptr %262) #7
  br label %1491

1373:                                             ; preds = %1243, %1235
  %1374 = load i32, ptr %235, align 4, !tbaa !9
  %1375 = zext i32 %1374 to i64
  %1376 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1375)
  %1377 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1376, i64 noundef 5)
  %1378 = load double, ptr %1377, align 8, !tbaa !11
  %1379 = fcmp oeq double 1.000000e+00, %1378
  br i1 %1379, label %1380, label %1485

1380:                                             ; preds = %1373
  store i64 1000, ptr %5, align 8, !tbaa !13
  %1381 = load i32, ptr %235, align 4, !tbaa !9
  %1382 = zext i32 %1381 to i64
  %1383 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1382)
  %1384 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1383, i64 noundef 0)
  %1385 = load double, ptr %1384, align 8, !tbaa !11
  %1386 = load i32, ptr %235, align 4, !tbaa !9
  %1387 = zext i32 %1386 to i64
  %1388 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1387)
  %1389 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1388, i64 noundef 1)
  %1390 = load double, ptr %1389, align 8, !tbaa !11
  %1391 = load i32, ptr %235, align 4, !tbaa !9
  %1392 = zext i32 %1391 to i64
  %1393 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1392)
  %1394 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1393, i64 noundef 5)
  %1395 = load double, ptr %1394, align 8, !tbaa !11
  call void @_ZN13ibeta_roots_2IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %289, double noundef %1385, double noundef %1390, double noundef %1395, i1 noundef zeroext false)
  %1396 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI13ibeta_roots_2IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_2) align 8 %289, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %1396, ptr %7, align 8, !tbaa !11
  br label %1397

1397:                                             ; preds = %1403, %1380
  %1398 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %290, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %291)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1398, ptr noundef %290, i64 noundef 312, ptr noundef %291)
  call void @llvm.lifetime.start.p0(i64 32, ptr %293) #7
  %1399 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %293, ptr noundef nonnull align 8 dereferenceable(9) %1399, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %294, ptr noundef @.str.4, i64 noundef 101)
          to label %1400 unwind label %1449

1400:                                             ; preds = %1397
  call void @llvm.lifetime.start.p0(i64 8, ptr %295) #7
  store double 1.000000e+00, ptr %295, align 8, !tbaa !11
  %1401 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %293, ptr noundef %294, i64 noundef 312, i32 noundef 1, i32 noundef 2, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %295, ptr noundef @.str.24)
          to label %1402 unwind label %1453

1402:                                             ; preds = %1400
  call void @llvm.lifetime.end.p0(i64 8, ptr %295) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %293) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %293) #7
  br label %1403

1403:                                             ; preds = %1402
  %1404 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1404, label %1397, label %1405, !llvm.loop !60

1405:                                             ; preds = %1403
  br label %1406

1406:                                             ; preds = %1412, %1405
  %1407 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %296, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %297)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1407, ptr noundef %296, i64 noundef 313, ptr noundef %297)
  call void @llvm.lifetime.start.p0(i64 32, ptr %299) #7
  %1408 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %299, ptr noundef nonnull align 8 dereferenceable(9) %1408, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %300, ptr noundef @.str.4, i64 noundef 101)
          to label %1409 unwind label %1458

1409:                                             ; preds = %1406
  call void @llvm.lifetime.start.p0(i64 4, ptr %301) #7
  store i32 27, ptr %301, align 4, !tbaa !9
  %1410 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %299, ptr noundef %300, i64 noundef 313, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %301, ptr noundef @.str.20)
          to label %1411 unwind label %1462

1411:                                             ; preds = %1409
  call void @llvm.lifetime.end.p0(i64 4, ptr %301) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %299) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %299) #7
  br label %1412

1412:                                             ; preds = %1411
  %1413 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1413, label %1406, label %1414, !llvm.loop !61

1414:                                             ; preds = %1412
  store i64 1000, ptr %5, align 8, !tbaa !13
  %1415 = load i32, ptr %235, align 4, !tbaa !9
  %1416 = zext i32 %1415 to i64
  %1417 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1416)
  %1418 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1417, i64 noundef 0)
  %1419 = load double, ptr %1418, align 8, !tbaa !11
  %1420 = load i32, ptr %235, align 4, !tbaa !9
  %1421 = zext i32 %1420 to i64
  %1422 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1421)
  %1423 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1422, i64 noundef 1)
  %1424 = load double, ptr %1423, align 8, !tbaa !11
  %1425 = load i32, ptr %235, align 4, !tbaa !9
  %1426 = zext i32 %1425 to i64
  %1427 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %1426)
  %1428 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %1427, i64 noundef 5)
  %1429 = load double, ptr %1428, align 8, !tbaa !11
  call void @_ZN13ibeta_roots_3IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %302, double noundef %1419, double noundef %1424, double noundef %1429, i1 noundef zeroext false)
  %1430 = call noundef double @_ZN5boost4math5tools14halley_iterateI13ibeta_roots_3IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_3) align 8 %302, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %5)
  store double %1430, ptr %7, align 8, !tbaa !11
  br label %1431

1431:                                             ; preds = %1437, %1414
  %1432 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %303, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %304)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1432, ptr noundef %303, i64 noundef 316, ptr noundef %304)
  call void @llvm.lifetime.start.p0(i64 32, ptr %306) #7
  %1433 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %306, ptr noundef nonnull align 8 dereferenceable(9) %1433, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %307, ptr noundef @.str.4, i64 noundef 101)
          to label %1434 unwind label %1467

1434:                                             ; preds = %1431
  call void @llvm.lifetime.start.p0(i64 8, ptr %308) #7
  store double 1.000000e+00, ptr %308, align 8, !tbaa !11
  %1435 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %306, ptr noundef %307, i64 noundef 316, i32 noundef 1, i32 noundef 2, ptr noundef nonnull align 8 dereferenceable(8) %7, ptr noundef @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %308, ptr noundef @.str.24)
          to label %1436 unwind label %1471

1436:                                             ; preds = %1434
  call void @llvm.lifetime.end.p0(i64 8, ptr %308) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %306) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %306) #7
  br label %1437

1437:                                             ; preds = %1436
  %1438 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1438, label %1431, label %1439, !llvm.loop !62

1439:                                             ; preds = %1437
  br label %1440

1440:                                             ; preds = %1446, %1439
  %1441 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !5
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %309, ptr noundef @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %310)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %1441, ptr noundef %309, i64 noundef 317, ptr noundef %310)
  call void @llvm.lifetime.start.p0(i64 32, ptr %312) #7
  %1442 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %312, ptr noundef nonnull align 8 dereferenceable(9) %1442, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  invoke void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %313, ptr noundef @.str.4, i64 noundef 101)
          to label %1443 unwind label %1476

1443:                                             ; preds = %1440
  call void @llvm.lifetime.start.p0(i64 4, ptr %314) #7
  store i32 10, ptr %314, align 4, !tbaa !9
  %1444 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %312, ptr noundef %313, i64 noundef 317, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %314, ptr noundef @.str.21)
          to label %1445 unwind label %1480

1445:                                             ; preds = %1443
  call void @llvm.lifetime.end.p0(i64 4, ptr %314) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %312) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %312) #7
  br label %1446

1446:                                             ; preds = %1445
  %1447 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %1447, label %1440, label %1448, !llvm.loop !63

1448:                                             ; preds = %1446
  br label %1485

1449:                                             ; preds = %1397
  %1450 = landingpad { ptr, i32 }
          cleanup
  %1451 = extractvalue { ptr, i32 } %1450, 0
  store ptr %1451, ptr %18, align 8
  %1452 = extractvalue { ptr, i32 } %1450, 1
  store i32 %1452, ptr %19, align 4
  br label %1457

1453:                                             ; preds = %1400
  %1454 = landingpad { ptr, i32 }
          cleanup
  %1455 = extractvalue { ptr, i32 } %1454, 0
  store ptr %1455, ptr %18, align 8
  %1456 = extractvalue { ptr, i32 } %1454, 1
  store i32 %1456, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %295) #7
  br label %1457

1457:                                             ; preds = %1453, %1449
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %293) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %293) #7
  br label %1491

1458:                                             ; preds = %1406
  %1459 = landingpad { ptr, i32 }
          cleanup
  %1460 = extractvalue { ptr, i32 } %1459, 0
  store ptr %1460, ptr %18, align 8
  %1461 = extractvalue { ptr, i32 } %1459, 1
  store i32 %1461, ptr %19, align 4
  br label %1466

1462:                                             ; preds = %1409
  %1463 = landingpad { ptr, i32 }
          cleanup
  %1464 = extractvalue { ptr, i32 } %1463, 0
  store ptr %1464, ptr %18, align 8
  %1465 = extractvalue { ptr, i32 } %1463, 1
  store i32 %1465, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %301) #7
  br label %1466

1466:                                             ; preds = %1462, %1458
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %299) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %299) #7
  br label %1491

1467:                                             ; preds = %1431
  %1468 = landingpad { ptr, i32 }
          cleanup
  %1469 = extractvalue { ptr, i32 } %1468, 0
  store ptr %1469, ptr %18, align 8
  %1470 = extractvalue { ptr, i32 } %1468, 1
  store i32 %1470, ptr %19, align 4
  br label %1475

1471:                                             ; preds = %1434
  %1472 = landingpad { ptr, i32 }
          cleanup
  %1473 = extractvalue { ptr, i32 } %1472, 0
  store ptr %1473, ptr %18, align 8
  %1474 = extractvalue { ptr, i32 } %1472, 1
  store i32 %1474, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 8, ptr %308) #7
  br label %1475

1475:                                             ; preds = %1471, %1467
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %306) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %306) #7
  br label %1491

1476:                                             ; preds = %1440
  %1477 = landingpad { ptr, i32 }
          cleanup
  %1478 = extractvalue { ptr, i32 } %1477, 0
  store ptr %1478, ptr %18, align 8
  %1479 = extractvalue { ptr, i32 } %1477, 1
  store i32 %1479, ptr %19, align 4
  br label %1484

1480:                                             ; preds = %1443
  %1481 = landingpad { ptr, i32 }
          cleanup
  %1482 = extractvalue { ptr, i32 } %1481, 0
  store ptr %1482, ptr %18, align 8
  %1483 = extractvalue { ptr, i32 } %1481, 1
  store i32 %1483, ptr %19, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %314) #7
  br label %1484

1484:                                             ; preds = %1480, %1476
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %312) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr %312) #7
  br label %1491

1485:                                             ; preds = %1448, %1373
  br label %1486

1486:                                             ; preds = %1485, %1335
  br label %1487

1487:                                             ; preds = %1486, %1198
  br label %1488

1488:                                             ; preds = %1487
  %1489 = load i32, ptr %235, align 4, !tbaa !9
  %1490 = add i32 %1489, 1
  store i32 %1490, ptr %235, align 4, !tbaa !9
  br label %1117, !llvm.loop !64

1491:                                             ; preds = %1484, %1475, %1466, %1457, %1372, %1234, %1225, %1216, %1207
  call void @llvm.lifetime.end.p0(i64 4, ptr %235) #7
  br label %1493

1492:                                             ; preds = %1122
  call void @llvm.lifetime.end.p0(i64 8, ptr %7) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %5) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %4) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %3) #7
  ret void

1493:                                             ; preds = %1491, %1115
  call void @llvm.lifetime.end.p0(i64 8, ptr %7) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %6) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %5) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr %4) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr %3) #7
  br label %1494

1494:                                             ; preds = %1493
  %1495 = load ptr, ptr %18, align 8
  %1496 = load i32, ptr %19, align 4
  %1497 = insertvalue { ptr, i32 } poison, ptr %1495, 0
  %1498 = insertvalue { ptr, i32 } %1497, i32 %1496, 1
  resume { ptr, i32 } %1498
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math4cbrtIdEENS0_5tools12promote_argsIT_fffffE4typeES4_(double noundef) #2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8), i1 noundef zeroext, double, ptr noundef nonnull align 8 dereferenceable(8)) #2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8), double noundef) unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #3 align 2

declare void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, i64 noundef, ptr noundef) #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef, i64 noundef) unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9), ptr noundef, i64 noundef, i32 noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind noalias writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8, ptr noundef nonnull align 8 dereferenceable(9), ptr noundef nonnull align 1 dereferenceable(1)) #2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv() #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #3 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv() #5

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9), ptr noundef, i64 noundef, i32 noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef nonnull align 4 dereferenceable(4), ptr noundef) #2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt4pairIddEaSEOS0_(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(16)) #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZN5boost5arrayINS0_IdLm7EEELm500EE4sizeEv() #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000), i64 noundef) #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56), i64 noundef) #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools22newton_raphson_iterateI13ibeta_roots_2IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_2) align 8, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN13ibeta_roots_2IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25), double noundef, double noundef, double noundef, i1 noundef zeroext) unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9), ptr noundef, i64 noundef, i32 noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) #2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools14halley_iterateI13ibeta_roots_3IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_3) align 8, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN13ibeta_roots_3IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25), double noundef, double noundef, double noundef, i1 noundef zeroext) unnamed_addr #3 align 2

; Function Attrs: nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fabs.f64(double) #6

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef double @_ZN5boost4math5tools9min_valueIdEET_v() #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(9)) unnamed_addr #3 align 2

attributes #0 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #7 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"any pointer", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"int", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"double", !7, i64 0}
!13 = !{!14, !14, i64 0}
!14 = !{!"long", !7, i64 0}
!15 = !{!16, !12, i64 0}
!16 = !{!"_ZTSSt4pairIddE", !12, i64 0, !12, i64 8}
!17 = !{!16, !12, i64 8}
!18 = distinct !{!18, !19}
!19 = !{!"llvm.loop.mustprogress"}
!20 = distinct !{!20, !19}
!21 = distinct !{!21, !19}
!22 = distinct !{!22, !19}
!23 = distinct !{!23, !19}
!24 = distinct !{!24, !19}
!25 = distinct !{!25, !19}
!26 = distinct !{!26, !19}
!27 = distinct !{!27, !19}
!28 = distinct !{!28, !19}
!29 = distinct !{!29, !19}
!30 = distinct !{!30, !19}
!31 = distinct !{!31, !19}
!32 = distinct !{!32, !19}
!33 = distinct !{!33, !19}
!34 = distinct !{!34, !19}
!35 = distinct !{!35, !19}
!36 = distinct !{!36, !19}
!37 = distinct !{!37, !19}
!38 = distinct !{!38, !19}
!39 = distinct !{!39, !19}
!40 = distinct !{!40, !19}
!41 = distinct !{!41, !19}
!42 = distinct !{!42, !19}
!43 = distinct !{!43, !19}
!44 = distinct !{!44, !19}
!45 = distinct !{!45, !19}
!46 = distinct !{!46, !19}
!47 = distinct !{!47, !19}
!48 = distinct !{!48, !19}
!49 = distinct !{!49, !19}
!50 = distinct !{!50, !19}
!51 = distinct !{!51, !19}
!52 = distinct !{!52, !19}
!53 = distinct !{!53, !19}
!54 = distinct !{!54, !19}
!55 = distinct !{!55, !19}
!56 = distinct !{!56, !19}
!57 = distinct !{!57, !19}
!58 = distinct !{!58, !19}
!59 = distinct !{!59, !19}
!60 = distinct !{!60, !19}
!61 = distinct !{!61, !19}
!62 = distinct !{!62, !19}
!63 = distinct !{!63, !19}
!64 = distinct !{!64, !19}


; Optimized IR (opt -passes='default<O3>'):
target datalayout = "e-m:e-p270:32:32-p271:32:32-p272:64:64-i64:64-i128:128-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"

%"class.boost::array" = type { [500 x %"class.boost::array.0"] }
%"class.boost::array.0" = type { [7 x double] }
%"struct.std::pair" = type { double, double }
%struct.cbrt_functor_noderiv = type { double }
%"class.boost::math::tools::eps_tolerance" = type { double }
%"class.boost::unit_test::basic_cstring" = type { ptr, ptr }
%"class.boost::unit_test::lazy_ostream_impl" = type { %"class.boost::unit_test::lazy_ostream.base", ptr, ptr }
%"class.boost::unit_test::lazy_ostream.base" = type <{ ptr, i8 }>
%struct.cbrt_functor_deriv = type { double }
%struct.cbrt_functor_2deriv = type { double }
%struct.ibeta_roots_2 = type <{ double, double, double, i8, [7 x i8] }>
%struct.ibeta_roots_3 = type <{ double, double, double, i8, [7 x i8] }>

@_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE = external hidden local_unnamed_addr global ptr, align 8
@.str.4 = external hidden unnamed_addr constant [102 x i8], align 1
@.str.5 = external hidden unnamed_addr constant [1 x i8], align 1
@.str.6 = external hidden unnamed_addr constant [25 x i8], align 1
@.str.7 = external hidden unnamed_addr constant [7 x i8], align 1
@.str.8 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.9 = external hidden unnamed_addr constant [6 x i8], align 1
@.str.10 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.11 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.12 = external hidden unnamed_addr constant [43 x i8], align 1
@.str.13 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.14 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.15 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.16 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.17 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.18 = external hidden unnamed_addr constant [2 x i8], align 1
@_ZZN9test_main11test_methodEvE16ibeta_small_data = external hidden constant %"class.boost::array", align 8
@.str.19 = external hidden unnamed_addr constant [4 x i8], align 1
@.str.20 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.21 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.22 = external hidden unnamed_addr constant [45 x i8], align 1
@.str.23 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.24 = external hidden unnamed_addr constant [4 x i8], align 1

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.start.p0(i64 immarg, ptr nocapture) #0

declare i32 @__gxx_personality_v0(...)

; Function Attrs: mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite)
declare void @llvm.lifetime.end.p0(i64 immarg, ptr nocapture) #0

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN9test_main11test_methodEv(ptr nocapture noundef nonnull readnone align 1 dereferenceable(1) %0) local_unnamed_addr #1 align 2 personality ptr @__gxx_personality_v0 {
  %2 = alloca double, align 8
  %3 = alloca i64, align 8
  %4 = alloca double, align 8
  %5 = alloca double, align 8
  %6 = alloca double, align 8
  %7 = alloca %"struct.std::pair", align 8
  %8 = alloca %struct.cbrt_functor_noderiv, align 8
  %9 = alloca double, align 8
  %10 = alloca %"class.boost::math::tools::eps_tolerance", align 8
  %11 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %12 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %13 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %14 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %15 = alloca double, align 8
  %16 = alloca double, align 8
  %17 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %18 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %19 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %20 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %21 = alloca i32, align 4
  %22 = alloca %struct.cbrt_functor_deriv, align 8
  %23 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %24 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %25 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %26 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %27 = alloca double, align 8
  %28 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %29 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %30 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %31 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %32 = alloca i32, align 4
  %33 = alloca %struct.cbrt_functor_2deriv, align 8
  %34 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %35 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %36 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %37 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %38 = alloca double, align 8
  %39 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %40 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %41 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %42 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %43 = alloca i32, align 4
  %44 = alloca %struct.cbrt_functor_2deriv, align 8
  %45 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %46 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %47 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %48 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %49 = alloca double, align 8
  %50 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %51 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %52 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %53 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %54 = alloca i32, align 4
  %55 = alloca %"struct.std::pair", align 8
  %56 = alloca %struct.cbrt_functor_noderiv, align 8
  %57 = alloca double, align 8
  %58 = alloca %"class.boost::math::tools::eps_tolerance", align 8
  %59 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %60 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %61 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %62 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %63 = alloca double, align 8
  %64 = alloca double, align 8
  %65 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %66 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %67 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %68 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %69 = alloca i32, align 4
  %70 = alloca %struct.cbrt_functor_deriv, align 8
  %71 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %72 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %73 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %74 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %75 = alloca double, align 8
  %76 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %77 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %78 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %79 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %80 = alloca i32, align 4
  %81 = alloca %struct.cbrt_functor_2deriv, align 8
  %82 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %83 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %84 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %85 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %86 = alloca double, align 8
  %87 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %88 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %89 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %90 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %91 = alloca i32, align 4
  %92 = alloca %struct.cbrt_functor_2deriv, align 8
  %93 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %94 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %95 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %96 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %97 = alloca double, align 8
  %98 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %99 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %100 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %101 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %102 = alloca i32, align 4
  %103 = alloca %"struct.std::pair", align 8
  %104 = alloca %struct.cbrt_functor_noderiv, align 8
  %105 = alloca double, align 8
  %106 = alloca %"class.boost::math::tools::eps_tolerance", align 8
  %107 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %108 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %109 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %110 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %111 = alloca double, align 8
  %112 = alloca double, align 8
  %113 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %114 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %115 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %116 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %117 = alloca i32, align 4
  %118 = alloca %struct.cbrt_functor_deriv, align 8
  %119 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %120 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %121 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %122 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %123 = alloca double, align 8
  %124 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %125 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %126 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %127 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %128 = alloca i32, align 4
  %129 = alloca %struct.cbrt_functor_2deriv, align 8
  %130 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %131 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %132 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %133 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %134 = alloca double, align 8
  %135 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %136 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %137 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %138 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %139 = alloca i32, align 4
  %140 = alloca %struct.cbrt_functor_2deriv, align 8
  %141 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %142 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %143 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %144 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %145 = alloca double, align 8
  %146 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %147 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %148 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %149 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %150 = alloca i32, align 4
  %151 = alloca %"struct.std::pair", align 8
  %152 = alloca %struct.cbrt_functor_noderiv, align 8
  %153 = alloca double, align 8
  %154 = alloca %"class.boost::math::tools::eps_tolerance", align 8
  %155 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %156 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %157 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %158 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %159 = alloca double, align 8
  %160 = alloca double, align 8
  %161 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %162 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %163 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %164 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %165 = alloca i32, align 4
  %166 = alloca %struct.cbrt_functor_deriv, align 8
  %167 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %168 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %169 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %170 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %171 = alloca double, align 8
  %172 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %173 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %174 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %175 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %176 = alloca i32, align 4
  %177 = alloca %struct.cbrt_functor_2deriv, align 8
  %178 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %179 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %180 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %181 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %182 = alloca double, align 8
  %183 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %184 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %185 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %186 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %187 = alloca i32, align 4
  %188 = alloca %struct.cbrt_functor_2deriv, align 8
  %189 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %190 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %191 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %192 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %193 = alloca double, align 8
  %194 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %195 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %196 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %197 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %198 = alloca i32, align 4
  %199 = alloca %struct.ibeta_roots_2, align 8
  %200 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %201 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %202 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %203 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %204 = alloca double, align 8
  %205 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %206 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %207 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %208 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %209 = alloca i32, align 4
  %210 = alloca %struct.ibeta_roots_3, align 8
  %211 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %212 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %213 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %214 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %215 = alloca double, align 8
  %216 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %217 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %218 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %219 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %220 = alloca i32, align 4
  %221 = alloca double, align 8
  %222 = alloca %struct.ibeta_roots_2, align 8
  %223 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %224 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %225 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %226 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %227 = alloca double, align 8
  %228 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %229 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %230 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %231 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %232 = alloca i32, align 4
  %233 = alloca %struct.ibeta_roots_3, align 8
  %234 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %235 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %236 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %237 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %238 = alloca double, align 8
  %239 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %240 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %241 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %242 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %243 = alloca i32, align 4
  %244 = alloca %struct.ibeta_roots_2, align 8
  %245 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %246 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %247 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %248 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %249 = alloca double, align 8
  %250 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %251 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %252 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %253 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %254 = alloca i32, align 4
  %255 = alloca %struct.ibeta_roots_3, align 8
  %256 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %257 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %258 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %259 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %260 = alloca double, align 8
  %261 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %262 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %263 = alloca %"class.boost::unit_test::lazy_ostream_impl", align 8
  %264 = alloca %"class.boost::unit_test::basic_cstring", align 8
  %265 = alloca i32, align 4
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %2) #7
  store double 1.000000e-50, ptr %2, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %3) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %4) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %5) #7
  %266 = getelementptr inbounds i8, ptr %7, i64 8
  %267 = getelementptr inbounds i8, ptr %55, i64 8
  %268 = getelementptr inbounds i8, ptr %103, i64 8
  %269 = getelementptr inbounds i8, ptr %151, i64 8
  br label %271

.preheader58:                                     ; preds = %619
  %270 = call noundef i64 @_ZN5boost5arrayINS0_IdLm7EEELm500EE4sizeEv()
  %.not = icmp eq i64 %270, 0
  br i1 %.not, label %._crit_edge, label %.lr.ph

271:                                              ; preds = %1, %619
  %272 = phi double [ 1.000000e-50, %1 ], [ %621, %619 ]
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %6) #7
  %273 = call noundef double @_ZN5boost4math4cbrtIdEENS0_5tools12promote_argsIT_fffffE4typeES4_(double noundef %272)
  store double %273, ptr %6, align 8, !tbaa !5
  %274 = fdiv double %273, 5.000000e+00
  store double %274, ptr %4, align 8, !tbaa !5
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %7) #7
  %275 = load double, ptr %2, align 8, !tbaa !5
  call void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8) %8, double noundef %275)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %9) #7
  store double 2.000000e+00, ptr %9, align 8, !tbaa !5
  call void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8) %10)
  %276 = load double, ptr %8, align 8
  %277 = load double, ptr %10, align 8
  %278 = call { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double %276, ptr noundef nonnull align 8 dereferenceable(8) %4, ptr noundef nonnull align 8 dereferenceable(8) %9, i1 noundef zeroext true, double %277, ptr noundef nonnull align 8 dereferenceable(8) %3)
  %279 = extractvalue { double, double } %278, 0
  store double %279, ptr %7, align 8
  %280 = extractvalue { double, double } %278, 1
  store double %280, ptr %266, align 8
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %9) #7
  br label %281

281:                                              ; preds = %291, %271
  %282 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %11, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %12)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %282, ptr noundef nonnull %11, i64 noundef 167, ptr noundef nonnull %12)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %13) #7
  %283 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %13, ptr noundef nonnull align 8 dereferenceable(9) %283, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %14, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %15) #7
  %284 = load double, ptr %7, align 8, !tbaa !13
  %285 = load double, ptr %266, align 8, !tbaa !15
  %286 = fadd double %284, %285
  %287 = fmul double %286, 5.000000e-01
  store double %287, ptr %15, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %16) #7
  %288 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %289 = fmul double %288, 4.000000e+00
  store double %289, ptr %16, align 8, !tbaa !5
  %290 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %13, ptr noundef nonnull %14, i64 noundef 167, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %15, ptr noundef nonnull @.str.6, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %16, ptr noundef nonnull @.str.8)
          to label %291 unwind label %623

291:                                              ; preds = %281
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #7
  %292 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %292, label %281, label %.preheader74, !llvm.loop !16

.preheader74:                                     ; preds = %291, %296
  %293 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %17, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %18)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %293, ptr noundef nonnull %17, i64 noundef 168, ptr noundef nonnull %18)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %19) #7
  %294 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %19, ptr noundef nonnull align 8 dereferenceable(9) %294, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %20, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %21) #7
  store i32 14, ptr %21, align 4, !tbaa !18
  %295 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %19, ptr noundef nonnull %20, i64 noundef 168, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %21, ptr noundef nonnull @.str.10)
          to label %296 unwind label %625

296:                                              ; preds = %.preheader74
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %21) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #7
  %297 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %297, label %.preheader74, label %298, !llvm.loop !20

298:                                              ; preds = %296
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %22, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %299 = load double, ptr %4, align 8, !tbaa !5
  %300 = fmul double %299, 5.000000e-01
  %301 = load double, ptr %6, align 8, !tbaa !5
  %302 = fmul double %301, 1.000000e+01
  %303 = load double, ptr %22, align 8
  %304 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double %303, double noundef %299, double noundef %300, double noundef %302, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %304, ptr %5, align 8, !tbaa !5
  br label %305

305:                                              ; preds = %311, %298
  %306 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %23, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %24)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %306, ptr noundef nonnull %23, i64 noundef 172, ptr noundef nonnull %24)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %25) #7
  %307 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %25, ptr noundef nonnull align 8 dereferenceable(9) %307, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %26, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %27) #7
  %308 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %309 = fmul double %308, 2.000000e+00
  store double %309, ptr %27, align 8, !tbaa !5
  %310 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %25, ptr noundef nonnull %26, i64 noundef 172, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %27, ptr noundef nonnull @.str.12)
          to label %311 unwind label %627

311:                                              ; preds = %305
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %27) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #7
  %312 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %312, label %305, label %.preheader73, !llvm.loop !21

.preheader73:                                     ; preds = %311, %316
  %313 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %28, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %29)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %313, ptr noundef nonnull %28, i64 noundef 173, ptr noundef nonnull %29)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %30) #7
  %314 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %30, ptr noundef nonnull align 8 dereferenceable(9) %314, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %31, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %32) #7
  store i32 12, ptr %32, align 4, !tbaa !18
  %315 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %30, ptr noundef nonnull %31, i64 noundef 173, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %32, ptr noundef nonnull @.str.13)
          to label %316 unwind label %629

316:                                              ; preds = %.preheader73
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %32) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #7
  %317 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %317, label %.preheader73, label %318, !llvm.loop !22

318:                                              ; preds = %316
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %33, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %319 = load double, ptr %4, align 8, !tbaa !5
  %320 = load double, ptr %6, align 8, !tbaa !5
  %321 = fdiv double %320, 1.000000e+01
  %322 = fmul double %320, 1.000000e+01
  %323 = load double, ptr %33, align 8
  %324 = call noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %323, double noundef %319, double noundef %321, double noundef %322, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %324, ptr %5, align 8, !tbaa !5
  br label %325

325:                                              ; preds = %331, %318
  %326 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %34, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %35)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %326, ptr noundef nonnull %34, i64 noundef 177, ptr noundef nonnull %35)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %36) #7
  %327 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %36, ptr noundef nonnull align 8 dereferenceable(9) %327, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %37, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %38) #7
  %328 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %329 = fmul double %328, 2.000000e+00
  store double %329, ptr %38, align 8, !tbaa !5
  %330 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %36, ptr noundef nonnull %37, i64 noundef 177, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %38, ptr noundef nonnull @.str.12)
          to label %331 unwind label %631

331:                                              ; preds = %325
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %38) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #7
  %332 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %332, label %325, label %.preheader72, !llvm.loop !23

.preheader72:                                     ; preds = %331, %336
  %333 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %39, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %40)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %333, ptr noundef nonnull %39, i64 noundef 178, ptr noundef nonnull %40)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %41) #7
  %334 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %41, ptr noundef nonnull align 8 dereferenceable(9) %334, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %42, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %43) #7
  store i32 7, ptr %43, align 4, !tbaa !18
  %335 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %41, ptr noundef nonnull %42, i64 noundef 178, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %43, ptr noundef nonnull @.str.14)
          to label %336 unwind label %633

336:                                              ; preds = %.preheader72
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %43) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #7
  %337 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %337, label %.preheader72, label %338, !llvm.loop !24

338:                                              ; preds = %336
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %44, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %339 = load double, ptr %4, align 8, !tbaa !5
  %340 = load double, ptr %6, align 8, !tbaa !5
  %341 = fdiv double %340, 1.000000e+01
  %342 = fmul double %340, 1.000000e+01
  %343 = load double, ptr %44, align 8
  %344 = call noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %343, double noundef %339, double noundef %341, double noundef %342, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %344, ptr %5, align 8, !tbaa !5
  br label %345

345:                                              ; preds = %351, %338
  %346 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %45, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %46)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %346, ptr noundef nonnull %45, i64 noundef 182, ptr noundef nonnull %46)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %47) #7
  %347 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %47, ptr noundef nonnull align 8 dereferenceable(9) %347, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %48, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %49) #7
  %348 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %349 = fmul double %348, 2.000000e+00
  store double %349, ptr %49, align 8, !tbaa !5
  %350 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %47, ptr noundef nonnull %48, i64 noundef 182, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %49, ptr noundef nonnull @.str.12)
          to label %351 unwind label %635

351:                                              ; preds = %345
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %49) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #7
  %352 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %352, label %345, label %.preheader71, !llvm.loop !25

.preheader71:                                     ; preds = %351, %356
  %353 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %50, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %51)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %353, ptr noundef nonnull %50, i64 noundef 183, ptr noundef nonnull %51)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %52) #7
  %354 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %52, ptr noundef nonnull align 8 dereferenceable(9) %354, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %53, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %54) #7
  store i32 11, ptr %54, align 4, !tbaa !18
  %355 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %52, ptr noundef nonnull %53, i64 noundef 183, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %54, ptr noundef nonnull @.str.15)
          to label %356 unwind label %637

356:                                              ; preds = %.preheader71
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %52) #7
  %357 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %357, label %.preheader71, label %358, !llvm.loop !26

358:                                              ; preds = %356
  store i64 1000, ptr %3, align 8, !tbaa !9
  %359 = load double, ptr %6, align 8, !tbaa !5
  %360 = fmul double %359, 5.000000e+00
  store double %360, ptr %4, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %55) #7
  %361 = load double, ptr %2, align 8, !tbaa !5
  call void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8) %56, double noundef %361)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %57) #7
  store double 2.000000e+00, ptr %57, align 8, !tbaa !5
  call void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8) %58)
  %362 = load double, ptr %56, align 8
  %363 = load double, ptr %58, align 8
  %364 = call { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double %362, ptr noundef nonnull align 8 dereferenceable(8) %4, ptr noundef nonnull align 8 dereferenceable(8) %57, i1 noundef zeroext true, double %363, ptr noundef nonnull align 8 dereferenceable(8) %3)
  %365 = extractvalue { double, double } %364, 0
  store double %365, ptr %55, align 8
  %366 = extractvalue { double, double } %364, 1
  store double %366, ptr %267, align 8
  %367 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt4pairIddEaSEOS0_(ptr noundef nonnull align 8 dereferenceable(16) %7, ptr noundef nonnull align 8 dereferenceable(16) %55) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %57) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %55) #7
  br label %368

368:                                              ; preds = %378, %358
  %369 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %59, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %60)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %369, ptr noundef nonnull %59, i64 noundef 190, ptr noundef nonnull %60)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %61) #7
  %370 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %61, ptr noundef nonnull align 8 dereferenceable(9) %370, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %62, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %63) #7
  %371 = load double, ptr %7, align 8, !tbaa !13
  %372 = load double, ptr %266, align 8, !tbaa !15
  %373 = fadd double %371, %372
  %374 = fmul double %373, 5.000000e-01
  store double %374, ptr %63, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %64) #7
  %375 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %376 = fmul double %375, 4.000000e+00
  store double %376, ptr %64, align 8, !tbaa !5
  %377 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %61, ptr noundef nonnull %62, i64 noundef 190, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %63, ptr noundef nonnull @.str.6, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %64, ptr noundef nonnull @.str.8)
          to label %378 unwind label %639

378:                                              ; preds = %368
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %64) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %63) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #7
  %379 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %379, label %368, label %.preheader70, !llvm.loop !27

.preheader70:                                     ; preds = %378, %383
  %380 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %65, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %66)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %380, ptr noundef nonnull %65, i64 noundef 191, ptr noundef nonnull %66)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %67) #7
  %381 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %67, ptr noundef nonnull align 8 dereferenceable(9) %381, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %68, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %69) #7
  store i32 14, ptr %69, align 4, !tbaa !18
  %382 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %67, ptr noundef nonnull %68, i64 noundef 191, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %69, ptr noundef nonnull @.str.10)
          to label %383 unwind label %641

383:                                              ; preds = %.preheader70
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %69) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %67) #7
  %384 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %384, label %.preheader70, label %385, !llvm.loop !28

385:                                              ; preds = %383
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %70, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %386 = load double, ptr %4, align 8, !tbaa !5
  %387 = load double, ptr %6, align 8, !tbaa !5
  %388 = fdiv double %387, 1.000000e+01
  %389 = fmul double %387, 1.000000e+01
  %390 = load double, ptr %70, align 8
  %391 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double %390, double noundef %386, double noundef %388, double noundef %389, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %391, ptr %5, align 8, !tbaa !5
  br label %392

392:                                              ; preds = %398, %385
  %393 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %71, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %72)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %393, ptr noundef nonnull %71, i64 noundef 195, ptr noundef nonnull %72)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %73) #7
  %394 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %73, ptr noundef nonnull align 8 dereferenceable(9) %394, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %74, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %75) #7
  %395 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %396 = fmul double %395, 2.000000e+00
  store double %396, ptr %75, align 8, !tbaa !5
  %397 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %73, ptr noundef nonnull %74, i64 noundef 195, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %75, ptr noundef nonnull @.str.12)
          to label %398 unwind label %643

398:                                              ; preds = %392
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %75) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #7
  %399 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %399, label %392, label %.preheader69, !llvm.loop !29

.preheader69:                                     ; preds = %398, %403
  %400 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %76, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %77)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %400, ptr noundef nonnull %76, i64 noundef 196, ptr noundef nonnull %77)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %78) #7
  %401 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %78, ptr noundef nonnull align 8 dereferenceable(9) %401, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %79, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %80) #7
  store i32 12, ptr %80, align 4, !tbaa !18
  %402 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %78, ptr noundef nonnull %79, i64 noundef 196, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %80, ptr noundef nonnull @.str.13)
          to label %403 unwind label %645

403:                                              ; preds = %.preheader69
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %80) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %78) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %78) #7
  %404 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %404, label %.preheader69, label %405, !llvm.loop !30

405:                                              ; preds = %403
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %81, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %406 = load double, ptr %4, align 8, !tbaa !5
  %407 = load double, ptr %6, align 8, !tbaa !5
  %408 = fdiv double %407, 1.000000e+01
  %409 = fmul double %407, 1.000000e+01
  %410 = load double, ptr %81, align 8
  %411 = call noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %410, double noundef %406, double noundef %408, double noundef %409, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %411, ptr %5, align 8, !tbaa !5
  br label %412

412:                                              ; preds = %418, %405
  %413 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %82, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %83)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %413, ptr noundef nonnull %82, i64 noundef 200, ptr noundef nonnull %83)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %84) #7
  %414 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %84, ptr noundef nonnull align 8 dereferenceable(9) %414, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %85, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %86) #7
  %415 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %416 = fmul double %415, 2.000000e+00
  store double %416, ptr %86, align 8, !tbaa !5
  %417 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %84, ptr noundef nonnull %85, i64 noundef 200, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %86, ptr noundef nonnull @.str.12)
          to label %418 unwind label %647

418:                                              ; preds = %412
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %86) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %84) #7
  %419 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %419, label %412, label %.preheader68, !llvm.loop !31

.preheader68:                                     ; preds = %418, %423
  %420 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %87, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %88)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %420, ptr noundef nonnull %87, i64 noundef 201, ptr noundef nonnull %88)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %89) #7
  %421 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %89, ptr noundef nonnull align 8 dereferenceable(9) %421, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %90, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %91) #7
  store i32 7, ptr %91, align 4, !tbaa !18
  %422 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %89, ptr noundef nonnull %90, i64 noundef 201, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %91, ptr noundef nonnull @.str.14)
          to label %423 unwind label %649

423:                                              ; preds = %.preheader68
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %91) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %89) #7
  %424 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %424, label %.preheader68, label %425, !llvm.loop !32

425:                                              ; preds = %423
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %92, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %426 = load double, ptr %4, align 8, !tbaa !5
  %427 = load double, ptr %6, align 8, !tbaa !5
  %428 = fdiv double %427, 1.000000e+01
  %429 = fmul double %427, 1.000000e+01
  %430 = load double, ptr %92, align 8
  %431 = call noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %430, double noundef %426, double noundef %428, double noundef %429, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %431, ptr %5, align 8, !tbaa !5
  br label %432

432:                                              ; preds = %438, %425
  %433 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %93, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %94)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %433, ptr noundef nonnull %93, i64 noundef 205, ptr noundef nonnull %94)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %95) #7
  %434 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %95, ptr noundef nonnull align 8 dereferenceable(9) %434, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %96, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %97) #7
  %435 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %436 = fmul double %435, 2.000000e+00
  store double %436, ptr %97, align 8, !tbaa !5
  %437 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %95, ptr noundef nonnull %96, i64 noundef 205, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %97, ptr noundef nonnull @.str.12)
          to label %438 unwind label %651

438:                                              ; preds = %432
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %97) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %95) #7
  %439 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %439, label %432, label %.preheader67, !llvm.loop !33

.preheader67:                                     ; preds = %438, %443
  %440 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %98, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %99)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %440, ptr noundef nonnull %98, i64 noundef 206, ptr noundef nonnull %99)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %100) #7
  %441 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %100, ptr noundef nonnull align 8 dereferenceable(9) %441, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %101, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %102) #7
  store i32 11, ptr %102, align 4, !tbaa !18
  %442 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %100, ptr noundef nonnull %101, i64 noundef 206, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %102, ptr noundef nonnull @.str.15)
          to label %443 unwind label %653

443:                                              ; preds = %.preheader67
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %102) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %100) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %100) #7
  %444 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %444, label %.preheader67, label %445, !llvm.loop !34

445:                                              ; preds = %443
  store i64 1000, ptr %3, align 8, !tbaa !9
  %446 = load double, ptr %6, align 8, !tbaa !5
  %447 = fmul double %446, 9.000000e-01
  store double %447, ptr %4, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %103) #7
  %448 = load double, ptr %2, align 8, !tbaa !5
  call void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8) %104, double noundef %448)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %105) #7
  store double 2.000000e+00, ptr %105, align 8, !tbaa !5
  call void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8) %106)
  %449 = load double, ptr %104, align 8
  %450 = load double, ptr %106, align 8
  %451 = call { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double %449, ptr noundef nonnull align 8 dereferenceable(8) %4, ptr noundef nonnull align 8 dereferenceable(8) %105, i1 noundef zeroext true, double %450, ptr noundef nonnull align 8 dereferenceable(8) %3)
  %452 = extractvalue { double, double } %451, 0
  store double %452, ptr %103, align 8
  %453 = extractvalue { double, double } %451, 1
  store double %453, ptr %268, align 8
  %454 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt4pairIddEaSEOS0_(ptr noundef nonnull align 8 dereferenceable(16) %7, ptr noundef nonnull align 8 dereferenceable(16) %103) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %105) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %103) #7
  br label %455

455:                                              ; preds = %465, %445
  %456 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %107, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %108)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %456, ptr noundef nonnull %107, i64 noundef 213, ptr noundef nonnull %108)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %109) #7
  %457 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %109, ptr noundef nonnull align 8 dereferenceable(9) %457, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %110, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %111) #7
  %458 = load double, ptr %7, align 8, !tbaa !13
  %459 = load double, ptr %266, align 8, !tbaa !15
  %460 = fadd double %458, %459
  %461 = fmul double %460, 5.000000e-01
  store double %461, ptr %111, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %112) #7
  %462 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %463 = fmul double %462, 4.000000e+00
  store double %463, ptr %112, align 8, !tbaa !5
  %464 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %109, ptr noundef nonnull %110, i64 noundef 213, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %111, ptr noundef nonnull @.str.6, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %112, ptr noundef nonnull @.str.8)
          to label %465 unwind label %655

465:                                              ; preds = %455
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %112) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %111) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %109) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %109) #7
  %466 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %466, label %455, label %.preheader66, !llvm.loop !35

.preheader66:                                     ; preds = %465, %470
  %467 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %113, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %114)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %467, ptr noundef nonnull %113, i64 noundef 214, ptr noundef nonnull %114)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %115) #7
  %468 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %115, ptr noundef nonnull align 8 dereferenceable(9) %468, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %116, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %117) #7
  store i32 12, ptr %117, align 4, !tbaa !18
  %469 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %115, ptr noundef nonnull %116, i64 noundef 214, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %117, ptr noundef nonnull @.str.13)
          to label %470 unwind label %657

470:                                              ; preds = %.preheader66
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %117) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %115) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %115) #7
  %471 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %471, label %.preheader66, label %472, !llvm.loop !36

472:                                              ; preds = %470
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %118, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %473 = load double, ptr %4, align 8, !tbaa !5
  %474 = load double, ptr %6, align 8, !tbaa !5
  %475 = fdiv double %474, 1.000000e+01
  %476 = fmul double %474, 1.000000e+01
  %477 = load double, ptr %118, align 8
  %478 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double %477, double noundef %473, double noundef %475, double noundef %476, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %478, ptr %5, align 8, !tbaa !5
  br label %479

479:                                              ; preds = %485, %472
  %480 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %119, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %120)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %480, ptr noundef nonnull %119, i64 noundef 218, ptr noundef nonnull %120)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %121) #7
  %481 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %121, ptr noundef nonnull align 8 dereferenceable(9) %481, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %122, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %123) #7
  %482 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %483 = fmul double %482, 2.000000e+00
  store double %483, ptr %123, align 8, !tbaa !5
  %484 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %121, ptr noundef nonnull %122, i64 noundef 218, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %123, ptr noundef nonnull @.str.12)
          to label %485 unwind label %659

485:                                              ; preds = %479
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %123) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %121) #7
  %486 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %486, label %479, label %.preheader65, !llvm.loop !37

.preheader65:                                     ; preds = %485, %490
  %487 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %124, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %125)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %487, ptr noundef nonnull %124, i64 noundef 219, ptr noundef nonnull %125)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %126) #7
  %488 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %126, ptr noundef nonnull align 8 dereferenceable(9) %488, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %127, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %128) #7
  store i32 5, ptr %128, align 4, !tbaa !18
  %489 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %126, ptr noundef nonnull %127, i64 noundef 219, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %128, ptr noundef nonnull @.str.16)
          to label %490 unwind label %661

490:                                              ; preds = %.preheader65
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %128) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %126) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %126) #7
  %491 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %491, label %.preheader65, label %492, !llvm.loop !38

492:                                              ; preds = %490
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %129, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %493 = load double, ptr %4, align 8, !tbaa !5
  %494 = load double, ptr %6, align 8, !tbaa !5
  %495 = fdiv double %494, 1.000000e+01
  %496 = fmul double %494, 1.000000e+01
  %497 = load double, ptr %129, align 8
  %498 = call noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %497, double noundef %493, double noundef %495, double noundef %496, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %498, ptr %5, align 8, !tbaa !5
  br label %499

499:                                              ; preds = %505, %492
  %500 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %130, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %131)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %500, ptr noundef nonnull %130, i64 noundef 223, ptr noundef nonnull %131)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %132) #7
  %501 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %132, ptr noundef nonnull align 8 dereferenceable(9) %501, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %133, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %134) #7
  %502 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %503 = fmul double %502, 2.000000e+00
  store double %503, ptr %134, align 8, !tbaa !5
  %504 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %132, ptr noundef nonnull %133, i64 noundef 223, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %134, ptr noundef nonnull @.str.12)
          to label %505 unwind label %663

505:                                              ; preds = %499
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %134) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %132) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %132) #7
  %506 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %506, label %499, label %.preheader64, !llvm.loop !39

.preheader64:                                     ; preds = %505, %510
  %507 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %135, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %136)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %507, ptr noundef nonnull %135, i64 noundef 224, ptr noundef nonnull %136)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %137) #7
  %508 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %137, ptr noundef nonnull align 8 dereferenceable(9) %508, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %138, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %139) #7
  store i32 3, ptr %139, align 4, !tbaa !18
  %509 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %137, ptr noundef nonnull %138, i64 noundef 224, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %139, ptr noundef nonnull @.str.17)
          to label %510 unwind label %665

510:                                              ; preds = %.preheader64
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %139) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %137) #7
  %511 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %511, label %.preheader64, label %512, !llvm.loop !40

512:                                              ; preds = %510
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %140, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %513 = load double, ptr %4, align 8, !tbaa !5
  %514 = load double, ptr %6, align 8, !tbaa !5
  %515 = fdiv double %514, 1.000000e+01
  %516 = fmul double %514, 1.000000e+01
  %517 = load double, ptr %140, align 8
  %518 = call noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %517, double noundef %513, double noundef %515, double noundef %516, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %518, ptr %5, align 8, !tbaa !5
  br label %519

519:                                              ; preds = %525, %512
  %520 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %141, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %142)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %520, ptr noundef nonnull %141, i64 noundef 228, ptr noundef nonnull %142)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %143) #7
  %521 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %143, ptr noundef nonnull align 8 dereferenceable(9) %521, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %144, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %145) #7
  %522 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %523 = fmul double %522, 2.000000e+00
  store double %523, ptr %145, align 8, !tbaa !5
  %524 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %143, ptr noundef nonnull %144, i64 noundef 228, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %145, ptr noundef nonnull @.str.12)
          to label %525 unwind label %667

525:                                              ; preds = %519
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %145) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %143) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %143) #7
  %526 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %526, label %519, label %.preheader63, !llvm.loop !41

.preheader63:                                     ; preds = %525, %530
  %527 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %146, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %147)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %527, ptr noundef nonnull %146, i64 noundef 229, ptr noundef nonnull %147)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %148) #7
  %528 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %148, ptr noundef nonnull align 8 dereferenceable(9) %528, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %149, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %150) #7
  store i32 4, ptr %150, align 4, !tbaa !18
  %529 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %148, ptr noundef nonnull %149, i64 noundef 229, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %150, ptr noundef nonnull @.str.18)
          to label %530 unwind label %669

530:                                              ; preds = %.preheader63
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %150) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %148) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %148) #7
  %531 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %531, label %.preheader63, label %532, !llvm.loop !42

532:                                              ; preds = %530
  store i64 1000, ptr %3, align 8, !tbaa !9
  %533 = load double, ptr %6, align 8, !tbaa !5
  %534 = fmul double %533, 1.100000e+00
  store double %534, ptr %4, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 16, ptr nonnull %151) #7
  %535 = load double, ptr %2, align 8, !tbaa !5
  call void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8) %152, double noundef %535)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %153) #7
  store double 2.000000e+00, ptr %153, align 8, !tbaa !5
  call void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8) %154)
  %536 = load double, ptr %152, align 8
  %537 = load double, ptr %154, align 8
  %538 = call { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double %536, ptr noundef nonnull align 8 dereferenceable(8) %4, ptr noundef nonnull align 8 dereferenceable(8) %153, i1 noundef zeroext true, double %537, ptr noundef nonnull align 8 dereferenceable(8) %3)
  %539 = extractvalue { double, double } %538, 0
  store double %539, ptr %151, align 8
  %540 = extractvalue { double, double } %538, 1
  store double %540, ptr %269, align 8
  %541 = call noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt4pairIddEaSEOS0_(ptr noundef nonnull align 8 dereferenceable(16) %7, ptr noundef nonnull align 8 dereferenceable(16) %151) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %153) #7
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %151) #7
  br label %542

542:                                              ; preds = %552, %532
  %543 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %155, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %156)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %543, ptr noundef nonnull %155, i64 noundef 236, ptr noundef nonnull %156)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %157) #7
  %544 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %157, ptr noundef nonnull align 8 dereferenceable(9) %544, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %158, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %159) #7
  %545 = load double, ptr %7, align 8, !tbaa !13
  %546 = load double, ptr %266, align 8, !tbaa !15
  %547 = fadd double %545, %546
  %548 = fmul double %547, 5.000000e-01
  store double %548, ptr %159, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %160) #7
  %549 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %550 = fmul double %549, 4.000000e+00
  store double %550, ptr %160, align 8, !tbaa !5
  %551 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %157, ptr noundef nonnull %158, i64 noundef 236, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %159, ptr noundef nonnull @.str.6, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %160, ptr noundef nonnull @.str.8)
          to label %552 unwind label %671

552:                                              ; preds = %542
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %160) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %159) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %157) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %157) #7
  %553 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %553, label %542, label %.preheader62, !llvm.loop !43

.preheader62:                                     ; preds = %552, %557
  %554 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %161, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %162)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %554, ptr noundef nonnull %161, i64 noundef 237, ptr noundef nonnull %162)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %163) #7
  %555 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %163, ptr noundef nonnull align 8 dereferenceable(9) %555, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %164, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %165) #7
  store i32 12, ptr %165, align 4, !tbaa !18
  %556 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %163, ptr noundef nonnull %164, i64 noundef 237, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %165, ptr noundef nonnull @.str.13)
          to label %557 unwind label %673

557:                                              ; preds = %.preheader62
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %165) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %163) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %163) #7
  %558 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %558, label %.preheader62, label %559, !llvm.loop !44

559:                                              ; preds = %557
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %166, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %560 = load double, ptr %4, align 8, !tbaa !5
  %561 = load double, ptr %6, align 8, !tbaa !5
  %562 = fdiv double %561, 1.000000e+01
  %563 = fmul double %561, 1.000000e+01
  %564 = load double, ptr %166, align 8
  %565 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double %564, double noundef %560, double noundef %562, double noundef %563, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %565, ptr %5, align 8, !tbaa !5
  br label %566

566:                                              ; preds = %572, %559
  %567 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %167, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %168)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %567, ptr noundef nonnull %167, i64 noundef 241, ptr noundef nonnull %168)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %169) #7
  %568 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %169, ptr noundef nonnull align 8 dereferenceable(9) %568, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %170, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %171) #7
  %569 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %570 = fmul double %569, 2.000000e+00
  store double %570, ptr %171, align 8, !tbaa !5
  %571 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %169, ptr noundef nonnull %170, i64 noundef 241, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %171, ptr noundef nonnull @.str.12)
          to label %572 unwind label %675

572:                                              ; preds = %566
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %171) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %169) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %169) #7
  %573 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %573, label %566, label %.preheader61, !llvm.loop !45

.preheader61:                                     ; preds = %572, %577
  %574 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %172, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %173)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %574, ptr noundef nonnull %172, i64 noundef 242, ptr noundef nonnull %173)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %174) #7
  %575 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %174, ptr noundef nonnull align 8 dereferenceable(9) %575, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %175, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %176) #7
  store i32 5, ptr %176, align 4, !tbaa !18
  %576 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %174, ptr noundef nonnull %175, i64 noundef 242, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %176, ptr noundef nonnull @.str.16)
          to label %577 unwind label %677

577:                                              ; preds = %.preheader61
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %176) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %174) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %174) #7
  %578 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %578, label %.preheader61, label %579, !llvm.loop !46

579:                                              ; preds = %577
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %177, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %580 = load double, ptr %4, align 8, !tbaa !5
  %581 = load double, ptr %6, align 8, !tbaa !5
  %582 = fdiv double %581, 1.000000e+01
  %583 = fmul double %581, 1.000000e+01
  %584 = load double, ptr %177, align 8
  %585 = call noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %584, double noundef %580, double noundef %582, double noundef %583, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %585, ptr %5, align 8, !tbaa !5
  br label %586

586:                                              ; preds = %592, %579
  %587 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %178, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %179)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %587, ptr noundef nonnull %178, i64 noundef 246, ptr noundef nonnull %179)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %180) #7
  %588 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %180, ptr noundef nonnull align 8 dereferenceable(9) %588, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %181, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %182) #7
  %589 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %590 = fmul double %589, 2.000000e+00
  store double %590, ptr %182, align 8, !tbaa !5
  %591 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %180, ptr noundef nonnull %181, i64 noundef 246, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %182, ptr noundef nonnull @.str.12)
          to label %592 unwind label %679

592:                                              ; preds = %586
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %182) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %180) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %180) #7
  %593 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %593, label %586, label %.preheader60, !llvm.loop !47

.preheader60:                                     ; preds = %592, %597
  %594 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %183, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %184)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %594, ptr noundef nonnull %183, i64 noundef 247, ptr noundef nonnull %184)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %185) #7
  %595 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %185, ptr noundef nonnull align 8 dereferenceable(9) %595, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %186, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %187) #7
  store i32 3, ptr %187, align 4, !tbaa !18
  %596 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %185, ptr noundef nonnull %186, i64 noundef 247, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %187, ptr noundef nonnull @.str.17)
          to label %597 unwind label %681

597:                                              ; preds = %.preheader60
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %187) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %185) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %185) #7
  %598 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %598, label %.preheader60, label %599, !llvm.loop !48

599:                                              ; preds = %597
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8) %188, ptr noundef nonnull align 8 dereferenceable(8) %2)
  %600 = load double, ptr %4, align 8, !tbaa !5
  %601 = load double, ptr %6, align 8, !tbaa !5
  %602 = fdiv double %601, 1.000000e+01
  %603 = fmul double %601, 1.000000e+01
  %604 = load double, ptr %188, align 8
  %605 = call noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double %604, double noundef %600, double noundef %602, double noundef %603, i32 noundef 31, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %605, ptr %5, align 8, !tbaa !5
  br label %606

606:                                              ; preds = %612, %599
  %607 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %189, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %190)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %607, ptr noundef nonnull %189, i64 noundef 251, ptr noundef nonnull %190)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %191) #7
  %608 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %191, ptr noundef nonnull align 8 dereferenceable(9) %608, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %192, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %193) #7
  %609 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %610 = fmul double %609, 2.000000e+00
  store double %610, ptr %193, align 8, !tbaa !5
  %611 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %191, ptr noundef nonnull %192, i64 noundef 251, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %6, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %193, ptr noundef nonnull @.str.12)
          to label %612 unwind label %683

612:                                              ; preds = %606
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %193) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %191) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %191) #7
  %613 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %613, label %606, label %.preheader59, !llvm.loop !49

.preheader59:                                     ; preds = %612, %617
  %614 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %194, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %195)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %614, ptr noundef nonnull %194, i64 noundef 252, ptr noundef nonnull %195)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %196) #7
  %615 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %196, ptr noundef nonnull align 8 dereferenceable(9) %615, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %197, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %198) #7
  store i32 4, ptr %198, align 4, !tbaa !18
  %616 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %196, ptr noundef nonnull %197, i64 noundef 252, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %198, ptr noundef nonnull @.str.18)
          to label %617 unwind label %685

617:                                              ; preds = %.preheader59
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %198) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %196) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %196) #7
  %618 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %618, label %.preheader59, label %619, !llvm.loop !50

619:                                              ; preds = %617
  %620 = load double, ptr %2, align 8, !tbaa !5
  %621 = fmul double %620, 3.500000e+00
  store double %621, ptr %2, align 8, !tbaa !5
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #7
  %622 = fcmp olt double %621, 1.000000e+50
  br i1 %622, label %271, label %.preheader58, !llvm.loop !51

623:                                              ; preds = %281
  %624 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %15) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #7
  br label %687

625:                                              ; preds = %.preheader74
  %626 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %21) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #7
  br label %687

627:                                              ; preds = %305
  %628 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %27) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #7
  br label %687

629:                                              ; preds = %.preheader73
  %630 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %32) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %30) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %30) #7
  br label %687

631:                                              ; preds = %325
  %632 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %38) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %36) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %36) #7
  br label %687

633:                                              ; preds = %.preheader72
  %634 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %43) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %41) #7
  br label %687

635:                                              ; preds = %345
  %636 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %49) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %47) #7
  br label %687

637:                                              ; preds = %.preheader71
  %638 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %52) #7
  br label %687

639:                                              ; preds = %368
  %640 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %64) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %63) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #7
  br label %687

641:                                              ; preds = %.preheader70
  %642 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %69) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %67) #7
  br label %687

643:                                              ; preds = %392
  %644 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %75) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #7
  br label %687

645:                                              ; preds = %.preheader69
  %646 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %80) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %78) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %78) #7
  br label %687

647:                                              ; preds = %412
  %648 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %86) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %84) #7
  br label %687

649:                                              ; preds = %.preheader68
  %650 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %91) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %89) #7
  br label %687

651:                                              ; preds = %432
  %652 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %97) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %95) #7
  br label %687

653:                                              ; preds = %.preheader67
  %654 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %102) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %100) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %100) #7
  br label %687

655:                                              ; preds = %455
  %656 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %112) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %111) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %109) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %109) #7
  br label %687

657:                                              ; preds = %.preheader66
  %658 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %117) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %115) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %115) #7
  br label %687

659:                                              ; preds = %479
  %660 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %123) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %121) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %121) #7
  br label %687

661:                                              ; preds = %.preheader65
  %662 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %128) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %126) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %126) #7
  br label %687

663:                                              ; preds = %499
  %664 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %134) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %132) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %132) #7
  br label %687

665:                                              ; preds = %.preheader64
  %666 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %139) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %137) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %137) #7
  br label %687

667:                                              ; preds = %519
  %668 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %145) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %143) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %143) #7
  br label %687

669:                                              ; preds = %.preheader63
  %670 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %150) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %148) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %148) #7
  br label %687

671:                                              ; preds = %542
  %672 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %160) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %159) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %157) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %157) #7
  br label %687

673:                                              ; preds = %.preheader62
  %674 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %165) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %163) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %163) #7
  br label %687

675:                                              ; preds = %566
  %676 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %171) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %169) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %169) #7
  br label %687

677:                                              ; preds = %.preheader61
  %678 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %176) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %174) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %174) #7
  br label %687

679:                                              ; preds = %586
  %680 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %182) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %180) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %180) #7
  br label %687

681:                                              ; preds = %.preheader60
  %682 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %187) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %185) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %185) #7
  br label %687

683:                                              ; preds = %606
  %684 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %193) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %191) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %191) #7
  br label %687

685:                                              ; preds = %.preheader59
  %686 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %198) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %196) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %196) #7
  br label %687

687:                                              ; preds = %685, %683, %681, %679, %677, %675, %673, %671, %669, %667, %665, %663, %661, %659, %657, %655, %653, %651, %649, %647, %645, %643, %641, %639, %637, %635, %633, %631, %629, %627, %625, %623
  %.pn49 = phi { ptr, i32 } [ %686, %685 ], [ %684, %683 ], [ %682, %681 ], [ %680, %679 ], [ %678, %677 ], [ %676, %675 ], [ %674, %673 ], [ %672, %671 ], [ %670, %669 ], [ %668, %667 ], [ %666, %665 ], [ %664, %663 ], [ %662, %661 ], [ %660, %659 ], [ %658, %657 ], [ %656, %655 ], [ %654, %653 ], [ %652, %651 ], [ %650, %649 ], [ %648, %647 ], [ %646, %645 ], [ %644, %643 ], [ %642, %641 ], [ %640, %639 ], [ %638, %637 ], [ %636, %635 ], [ %634, %633 ], [ %632, %631 ], [ %630, %629 ], [ %628, %627 ], [ %626, %625 ], [ %624, %623 ]
  call void @llvm.lifetime.end.p0(i64 16, ptr nonnull %7) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %6) #7
  br label %884

._crit_edge:                                      ; preds = %.loopexit, %.preheader58
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %5) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %4) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %3) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %2) #7
  ret void

.lr.ph:                                           ; preds = %.preheader58, %.loopexit
  %688 = phi i64 [ %881, %.loopexit ], [ 0, %.preheader58 ]
  %.075 = phi i32 [ %880, %.loopexit ], [ 0, %.preheader58 ]
  %689 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %690 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %689, i64 noundef 5)
  %691 = load double, ptr %690, align 8, !tbaa !5
  %692 = fcmp oeq double %691, 0.000000e+00
  br i1 %692, label %693, label %745

693:                                              ; preds = %.lr.ph
  store i64 1000, ptr %3, align 8, !tbaa !9
  %694 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %695 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %694, i64 noundef 0)
  %696 = load double, ptr %695, align 8, !tbaa !5
  %697 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %698 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %697, i64 noundef 1)
  %699 = load double, ptr %698, align 8, !tbaa !5
  %700 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %701 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %700, i64 noundef 5)
  %702 = load double, ptr %701, align 8, !tbaa !5
  call void @_ZN13ibeta_roots_2IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %199, double noundef %696, double noundef %699, double noundef %702, i1 noundef zeroext false)
  %703 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI13ibeta_roots_2IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef nonnull byval(%struct.ibeta_roots_2) align 8 %199, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %703, ptr %5, align 8, !tbaa !5
  br label %704

704:                                              ; preds = %708, %693
  %705 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %200, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %201)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %705, ptr noundef nonnull %200, i64 noundef 279, ptr noundef nonnull %201)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %202) #7
  %706 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %202, ptr noundef nonnull align 8 dereferenceable(9) %706, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %203, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %204) #7
  store double 0.000000e+00, ptr %204, align 8, !tbaa !5
  %707 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %202, ptr noundef nonnull %203, i64 noundef 279, i32 noundef 1, i32 noundef 2, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %204, ptr noundef nonnull @.str.19)
          to label %708 unwind label %737

708:                                              ; preds = %704
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %204) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %202) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %202) #7
  %709 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %709, label %704, label %.preheader52, !llvm.loop !52

.preheader52:                                     ; preds = %708, %713
  %710 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %205, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %206)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %710, ptr noundef nonnull %205, i64 noundef 280, ptr noundef nonnull %206)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %207) #7
  %711 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %207, ptr noundef nonnull align 8 dereferenceable(9) %711, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %208, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %209) #7
  store i32 27, ptr %209, align 4, !tbaa !18
  %712 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %207, ptr noundef nonnull %208, i64 noundef 280, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %209, ptr noundef nonnull @.str.20)
          to label %713 unwind label %739

713:                                              ; preds = %.preheader52
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %209) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %207) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %207) #7
  %714 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %714, label %.preheader52, label %715, !llvm.loop !53

715:                                              ; preds = %713
  store i64 1000, ptr %3, align 8, !tbaa !9
  %716 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %717 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %716, i64 noundef 0)
  %718 = load double, ptr %717, align 8, !tbaa !5
  %719 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %720 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %719, i64 noundef 1)
  %721 = load double, ptr %720, align 8, !tbaa !5
  %722 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %723 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %722, i64 noundef 5)
  %724 = load double, ptr %723, align 8, !tbaa !5
  call void @_ZN13ibeta_roots_3IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %210, double noundef %718, double noundef %721, double noundef %724, i1 noundef zeroext false)
  %725 = call noundef double @_ZN5boost4math5tools14halley_iterateI13ibeta_roots_3IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef nonnull byval(%struct.ibeta_roots_3) align 8 %210, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %725, ptr %5, align 8, !tbaa !5
  br label %726

726:                                              ; preds = %730, %715
  %727 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %211, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %212)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %727, ptr noundef nonnull %211, i64 noundef 283, ptr noundef nonnull %212)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %213) #7
  %728 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %213, ptr noundef nonnull align 8 dereferenceable(9) %728, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %214, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %215) #7
  store double 0.000000e+00, ptr %215, align 8, !tbaa !5
  %729 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %213, ptr noundef nonnull %214, i64 noundef 283, i32 noundef 1, i32 noundef 2, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %215, ptr noundef nonnull @.str.19)
          to label %730 unwind label %741

730:                                              ; preds = %726
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %215) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %213) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %213) #7
  %731 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %731, label %726, label %.preheader, !llvm.loop !54

.preheader:                                       ; preds = %730, %735
  %732 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %216, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %217)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %732, ptr noundef nonnull %216, i64 noundef 284, ptr noundef nonnull %217)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %218) #7
  %733 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %218, ptr noundef nonnull align 8 dereferenceable(9) %733, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %219, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %220) #7
  store i32 10, ptr %220, align 4, !tbaa !18
  %734 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %218, ptr noundef nonnull %219, i64 noundef 284, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %220, ptr noundef nonnull @.str.21)
          to label %735 unwind label %743

735:                                              ; preds = %.preheader
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %220) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %218) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %218) #7
  %736 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %736, label %.preheader, label %.loopexit, !llvm.loop !55

737:                                              ; preds = %704
  %738 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %204) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %202) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %202) #7
  br label %884

739:                                              ; preds = %.preheader52
  %740 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %209) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %207) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %207) #7
  br label %884

741:                                              ; preds = %726
  %742 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %215) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %213) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %213) #7
  br label %884

743:                                              ; preds = %.preheader
  %744 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %220) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %218) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %218) #7
  br label %884

745:                                              ; preds = %.lr.ph
  %746 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %747 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %746, i64 noundef 5)
  %748 = load double, ptr %747, align 8, !tbaa !5
  %749 = fsub double 1.000000e+00, %748
  %750 = fcmp ogt double %749, 1.000000e-03
  br i1 %750, label %751, label %823

751:                                              ; preds = %745
  %752 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %753 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %752, i64 noundef 5)
  %754 = load double, ptr %753, align 8, !tbaa !5
  %755 = call double @llvm.fabs.f64(double %754)
  %756 = call noundef double @_ZN5boost4math5tools9min_valueIdEET_v() #7
  %757 = fmul double %756, 2.000000e+00
  %758 = fcmp ogt double %755, %757
  br i1 %758, label %759, label %823

759:                                              ; preds = %751
  store i64 1000, ptr %3, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %221) #7
  %760 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %761 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %760, i64 noundef 2)
  %762 = load double, ptr %761, align 8, !tbaa !5
  store double %762, ptr %221, align 8, !tbaa !5
  %763 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %764 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %763, i64 noundef 0)
  %765 = load double, ptr %764, align 8, !tbaa !5
  %766 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %767 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %766, i64 noundef 1)
  %768 = load double, ptr %767, align 8, !tbaa !5
  %769 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %770 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %769, i64 noundef 5)
  %771 = load double, ptr %770, align 8, !tbaa !5
  call void @_ZN13ibeta_roots_2IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %222, double noundef %765, double noundef %768, double noundef %771, i1 noundef zeroext false)
  %772 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI13ibeta_roots_2IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef nonnull byval(%struct.ibeta_roots_2) align 8 %222, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %772, ptr %5, align 8, !tbaa !5
  br label %773

773:                                              ; preds = %779, %759
  %774 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %223, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %224)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %774, ptr noundef nonnull %223, i64 noundef 292, ptr noundef nonnull %224)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %225) #7
  %775 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %225, ptr noundef nonnull align 8 dereferenceable(9) %775, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %226, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %227) #7
  %776 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %777 = fmul double %776, 2.000000e+02
  store double %777, ptr %227, align 8, !tbaa !5
  %778 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %225, ptr noundef nonnull %226, i64 noundef 292, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %221, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %227, ptr noundef nonnull @.str.22)
          to label %779 unwind label %814

779:                                              ; preds = %773
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %227) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %225) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %225) #7
  %780 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %780, label %773, label %.preheader54, !llvm.loop !56

.preheader54:                                     ; preds = %779, %784
  %781 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %228, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %229)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %781, ptr noundef nonnull %228, i64 noundef 296, ptr noundef nonnull %229)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %230) #7
  %782 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %230, ptr noundef nonnull align 8 dereferenceable(9) %782, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %231, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %232) #7
  store i32 27, ptr %232, align 4, !tbaa !18
  %783 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %230, ptr noundef nonnull %231, i64 noundef 296, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %232, ptr noundef nonnull @.str.20)
          to label %784 unwind label %816

784:                                              ; preds = %.preheader54
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %232) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %230) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %230) #7
  %785 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %785, label %.preheader54, label %786, !llvm.loop !57

786:                                              ; preds = %784
  store i64 1000, ptr %3, align 8, !tbaa !9
  %787 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %788 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %787, i64 noundef 2)
  %789 = load double, ptr %788, align 8, !tbaa !5
  store double %789, ptr %221, align 8, !tbaa !5
  %790 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %791 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %790, i64 noundef 0)
  %792 = load double, ptr %791, align 8, !tbaa !5
  %793 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %794 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %793, i64 noundef 1)
  %795 = load double, ptr %794, align 8, !tbaa !5
  %796 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %797 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %796, i64 noundef 5)
  %798 = load double, ptr %797, align 8, !tbaa !5
  call void @_ZN13ibeta_roots_3IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %233, double noundef %792, double noundef %795, double noundef %798, i1 noundef zeroext false)
  %799 = call noundef double @_ZN5boost4math5tools14halley_iterateI13ibeta_roots_3IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef nonnull byval(%struct.ibeta_roots_3) align 8 %233, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %799, ptr %5, align 8, !tbaa !5
  br label %800

800:                                              ; preds = %806, %786
  %801 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %234, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %235)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %801, ptr noundef nonnull %234, i64 noundef 301, ptr noundef nonnull %235)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %236) #7
  %802 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %236, ptr noundef nonnull align 8 dereferenceable(9) %802, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %237, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %238) #7
  %803 = call noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() #7
  %804 = fmul double %803, 2.000000e+02
  store double %804, ptr %238, align 8, !tbaa !5
  %805 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9) %236, ptr noundef nonnull %237, i64 noundef 301, i32 noundef 1, i32 noundef 9, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %221, ptr noundef nonnull @.str.7, ptr noundef nonnull align 8 dereferenceable(8) %238, ptr noundef nonnull @.str.22)
          to label %806 unwind label %818

806:                                              ; preds = %800
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %238) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %236) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %236) #7
  %807 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %807, label %800, label %.preheader53, !llvm.loop !58

.preheader53:                                     ; preds = %806, %811
  %808 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %239, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %240)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %808, ptr noundef nonnull %239, i64 noundef 305, ptr noundef nonnull %240)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %241) #7
  %809 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %241, ptr noundef nonnull align 8 dereferenceable(9) %809, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %242, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %243) #7
  store i32 40, ptr %243, align 4, !tbaa !18
  %810 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %241, ptr noundef nonnull %242, i64 noundef 305, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %243, ptr noundef nonnull @.str.23)
          to label %811 unwind label %820

811:                                              ; preds = %.preheader53
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %243) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %241) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %241) #7
  %812 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %812, label %.preheader53, label %813, !llvm.loop !59

813:                                              ; preds = %811
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %221) #7
  br label %.loopexit

814:                                              ; preds = %773
  %815 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %227) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %225) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %225) #7
  br label %822

816:                                              ; preds = %.preheader54
  %817 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %232) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %230) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %230) #7
  br label %822

818:                                              ; preds = %800
  %819 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %238) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %236) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %236) #7
  br label %822

820:                                              ; preds = %.preheader53
  %821 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %243) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %241) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %241) #7
  br label %822

822:                                              ; preds = %820, %818, %816, %814
  %.pn = phi { ptr, i32 } [ %821, %820 ], [ %819, %818 ], [ %817, %816 ], [ %815, %814 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %221) #7
  br label %884

823:                                              ; preds = %751, %745
  %824 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %825 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %824, i64 noundef 5)
  %826 = load double, ptr %825, align 8, !tbaa !5
  %827 = fcmp oeq double %826, 1.000000e+00
  br i1 %827, label %828, label %.loopexit

828:                                              ; preds = %823
  store i64 1000, ptr %3, align 8, !tbaa !9
  %829 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %830 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %829, i64 noundef 0)
  %831 = load double, ptr %830, align 8, !tbaa !5
  %832 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %833 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %832, i64 noundef 1)
  %834 = load double, ptr %833, align 8, !tbaa !5
  %835 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %836 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %835, i64 noundef 5)
  %837 = load double, ptr %836, align 8, !tbaa !5
  call void @_ZN13ibeta_roots_2IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %244, double noundef %831, double noundef %834, double noundef %837, i1 noundef zeroext false)
  %838 = call noundef double @_ZN5boost4math5tools22newton_raphson_iterateI13ibeta_roots_2IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef nonnull byval(%struct.ibeta_roots_2) align 8 %244, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %838, ptr %5, align 8, !tbaa !5
  br label %839

839:                                              ; preds = %843, %828
  %840 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %245, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %246)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %840, ptr noundef nonnull %245, i64 noundef 312, ptr noundef nonnull %246)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %247) #7
  %841 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %247, ptr noundef nonnull align 8 dereferenceable(9) %841, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %248, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %249) #7
  store double 1.000000e+00, ptr %249, align 8, !tbaa !5
  %842 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %247, ptr noundef nonnull %248, i64 noundef 312, i32 noundef 1, i32 noundef 2, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %249, ptr noundef nonnull @.str.24)
          to label %843 unwind label %872

843:                                              ; preds = %839
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %249) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %247) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %247) #7
  %844 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %844, label %839, label %.preheader57, !llvm.loop !60

.preheader57:                                     ; preds = %843, %848
  %845 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %250, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %251)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %845, ptr noundef nonnull %250, i64 noundef 313, ptr noundef nonnull %251)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %252) #7
  %846 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %252, ptr noundef nonnull align 8 dereferenceable(9) %846, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %253, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %254) #7
  store i32 27, ptr %254, align 4, !tbaa !18
  %847 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %252, ptr noundef nonnull %253, i64 noundef 313, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %254, ptr noundef nonnull @.str.20)
          to label %848 unwind label %874

848:                                              ; preds = %.preheader57
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %254) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %252) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %252) #7
  %849 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %849, label %.preheader57, label %850, !llvm.loop !61

850:                                              ; preds = %848
  store i64 1000, ptr %3, align 8, !tbaa !9
  %851 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %852 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %851, i64 noundef 0)
  %853 = load double, ptr %852, align 8, !tbaa !5
  %854 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %855 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %854, i64 noundef 1)
  %856 = load double, ptr %855, align 8, !tbaa !5
  %857 = call noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000) @_ZZN9test_main11test_methodEvE16ibeta_small_data, i64 noundef %688)
  %858 = call noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56) %857, i64 noundef 5)
  %859 = load double, ptr %858, align 8, !tbaa !5
  call void @_ZN13ibeta_roots_3IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25) %255, double noundef %853, double noundef %856, double noundef %859, i1 noundef zeroext false)
  %860 = call noundef double @_ZN5boost4math5tools14halley_iterateI13ibeta_roots_3IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef nonnull byval(%struct.ibeta_roots_3) align 8 %255, double noundef 5.000000e-01, double noundef 0.000000e+00, double noundef 1.000000e+00, i32 noundef 53, ptr noundef nonnull align 8 dereferenceable(8) %3)
  store double %860, ptr %5, align 8, !tbaa !5
  br label %861

861:                                              ; preds = %865, %850
  %862 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %256, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %257)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %862, ptr noundef nonnull %256, i64 noundef 316, ptr noundef nonnull %257)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %258) #7
  %863 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %258, ptr noundef nonnull align 8 dereferenceable(9) %863, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %259, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %260) #7
  store double 1.000000e+00, ptr %260, align 8, !tbaa !5
  %864 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %258, ptr noundef nonnull %259, i64 noundef 316, i32 noundef 1, i32 noundef 2, ptr noundef nonnull align 8 dereferenceable(8) %5, ptr noundef nonnull @.str.11, ptr noundef nonnull align 8 dereferenceable(8) %260, ptr noundef nonnull @.str.24)
          to label %865 unwind label %876

865:                                              ; preds = %861
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %260) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %258) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %258) #7
  %866 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %866, label %861, label %.preheader55, !llvm.loop !62

.preheader55:                                     ; preds = %865, %870
  %867 = load ptr, ptr @_ZN5boost9unit_test12_GLOBAL__N_113unit_test_logE, align 8, !tbaa !11
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %261, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16) %262)
  call void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8) %867, ptr noundef nonnull %261, i64 noundef 317, ptr noundef nonnull %262)
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %263) #7
  %868 = call noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv()
  call void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind nonnull writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8 %263, ptr noundef nonnull align 8 dereferenceable(9) %868, ptr noundef nonnull align 1 dereferenceable(1) @.str.5)
  call void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16) %264, ptr noundef nonnull @.str.4, i64 noundef 101)
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %265) #7
  store i32 10, ptr %265, align 4, !tbaa !18
  %869 = invoke noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9) %263, ptr noundef nonnull %264, i64 noundef 317, i32 noundef 1, i32 noundef 5, ptr noundef nonnull align 8 dereferenceable(8) %3, ptr noundef nonnull @.str.9, ptr noundef nonnull align 4 dereferenceable(4) %265, ptr noundef nonnull @.str.21)
          to label %870 unwind label %878

870:                                              ; preds = %.preheader55
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %265) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %263) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %263) #7
  %871 = call noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv()
  br i1 %871, label %.preheader55, label %.loopexit, !llvm.loop !63

872:                                              ; preds = %839
  %873 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %249) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %247) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %247) #7
  br label %884

874:                                              ; preds = %.preheader57
  %875 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %254) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %252) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %252) #7
  br label %884

876:                                              ; preds = %861
  %877 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %260) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %258) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %258) #7
  br label %884

878:                                              ; preds = %.preheader55
  %879 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %265) #7
  call void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(32) %263) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %263) #7
  br label %884

.loopexit:                                        ; preds = %870, %735, %823, %813
  %880 = add i32 %.075, 1
  %881 = zext i32 %880 to i64
  %882 = call noundef i64 @_ZN5boost5arrayINS0_IdLm7EEELm500EE4sizeEv()
  %883 = icmp ugt i64 %882, %881
  br i1 %883, label %.lr.ph, label %._crit_edge, !llvm.loop !64

884:                                              ; preds = %737, %739, %741, %743, %822, %872, %874, %876, %878, %687
  %.pn49.pn = phi { ptr, i32 } [ %.pn49, %687 ], [ %744, %743 ], [ %742, %741 ], [ %740, %739 ], [ %738, %737 ], [ %.pn, %822 ], [ %879, %878 ], [ %877, %876 ], [ %875, %874 ], [ %873, %872 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %5) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %4) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %3) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %2) #7
  resume { ptr, i32 } %.pn49.pn
}

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math4cbrtIdEENS0_5tools12promote_argsIT_fffffE4typeES4_(double noundef) local_unnamed_addr #2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local { double, double } @_ZN5boost4math5tools22bracket_and_solve_rootI20cbrt_functor_noderivdNS1_13eps_toleranceIdEEEESt4pairIT0_S7_ET_RKS7_SB_bT1_Rm(double, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8), i1 noundef zeroext, double, ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN20cbrt_functor_noderivC2Ed(ptr noundef nonnull align 8 dereferenceable(8), double noundef) unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5boost4math5tools13eps_toleranceIdEC2Ev(ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #3 align 2

declare void @_ZN5boost9unit_test15unit_test_log_t14set_checkpointENS0_13basic_cstringIKcEEmS4_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, i64 noundef, ptr noundef) local_unnamed_addr #4

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5boost9unit_test13basic_cstringIKcEC2ImEEPS2_T_(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef, i64 noundef) unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5boost9unit_test13basic_cstringIKcEC2Ev(ptr noundef nonnull align 8 dereferenceable(16)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS0_16check_is_close_tEdddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_RKT2_SH_(ptr noundef nonnull align 8 dereferenceable(9), ptr noundef, i64 noundef, i32 noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZN5boost9unit_testlsIA1_cEENS0_17lazy_ostream_implINS0_12lazy_ostreamET_RKS5_EERKS4_S7_(ptr dead_on_unwind noalias writable sret(%"class.boost::unit_test::lazy_ostream_impl") align 8, ptr noundef nonnull align 8 dereferenceable(9), ptr noundef nonnull align 1 dereferenceable(1)) local_unnamed_addr #2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(9) ptr @_ZN5boost9unit_test12lazy_ostream8instanceEv() local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef double @_ZNSt14numeric_limitsIdE7epsilonEv() local_unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10dummy_condEv() local_unnamed_addr #5

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_7le_implEmiEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9), ptr noundef, i64 noundef, i32 noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef nonnull align 4 dereferenceable(4), ptr noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools22newton_raphson_iterateI18cbrt_functor_derivdEET0_T_S4_S4_S4_iRm(double, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN18cbrt_functor_derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools14halley_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN19cbrt_functor_2derivC2ERKd(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools16schroder_iterateI19cbrt_functor_2derivdEET0_T_S4_S4_S4_iRm(double, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(16) ptr @_ZNSt4pairIddEaSEOS0_(ptr noundef nonnull align 8 dereferenceable(16), ptr noundef nonnull align 8 dereferenceable(16)) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZN5boost5arrayINS0_IdLm7EEELm500EE4sizeEv() local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(56) ptr @_ZNK5boost5arrayINS0_IdLm7EEELm500EEixEm(ptr noundef nonnull align 8 dereferenceable(28000), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(8) ptr @_ZNK5boost5arrayIdLm7EEixEm(ptr noundef nonnull align 8 dereferenceable(56), i64 noundef) local_unnamed_addr #3 align 2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools22newton_raphson_iterateI13ibeta_roots_2IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_2) align 8, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN13ibeta_roots_2IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25), double noundef, double noundef, double noundef, i1 noundef zeroext) unnamed_addr #3 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN5boost10test_tools9tt_detail10check_frwdINS1_15equal_impl_frwdEddEEbT_RKNS_9unit_test12lazy_ostreamENS5_13basic_cstringIKcEEmNS1_10tool_levelENS1_10check_typeERKT0_PSA_RKT1_SH_(ptr noundef nonnull align 8 dereferenceable(9), ptr noundef, i64 noundef, i32 noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef, ptr noundef nonnull align 8 dereferenceable(8), ptr noundef) local_unnamed_addr #2

; Function Attrs: mustprogress uwtable
declare dso_local noundef double @_ZN5boost4math5tools14halley_iterateI13ibeta_roots_3IdNS0_8policies6policyINS4_14default_policyES6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_S6_EEEdEET0_T_S9_S9_S9_iRm(ptr noundef byval(%struct.ibeta_roots_3) align 8, double noundef, double noundef, double noundef, i32 noundef, ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #1

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN13ibeta_roots_3IdN5boost4math8policies6policyINS2_14default_policyES4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_S4_EEEC2Edddb(ptr noundef nonnull align 8 dereferenceable(25), double noundef, double noundef, double noundef, i1 noundef zeroext) unnamed_addr #3 align 2

; Function Attrs: mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none)
declare double @llvm.fabs.f64(double) #6

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef double @_ZN5boost4math5tools9min_valueIdEET_v() local_unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZN5boost9unit_test12lazy_ostreamD2Ev(ptr noundef nonnull align 8 dereferenceable(9)) unnamed_addr #3 align 2

attributes #0 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #1 = { mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #2 = { inlinehint mustprogress uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #3 = { mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #4 = { "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #5 = { inlinehint mustprogress nounwind uwtable "min-legal-vector-width"="0" "no-trapping-math"="true" "stack-protector-buffer-size"="8" "target-cpu"="x86-64" "target-features"="+cmov,+cx8,+fxsr,+mmx,+sse,+sse2,+x87" "tune-cpu"="generic" }
attributes #6 = { mustprogress nocallback nofree nosync nounwind speculatable willreturn memory(none) }
attributes #7 = { nounwind }

!llvm.module.flags = !{!0, !1, !2, !3}
!llvm.ident = !{!4}

!0 = !{i32 1, !"wchar_size", i32 4}
!1 = !{i32 8, !"PIC Level", i32 2}
!2 = !{i32 7, !"PIE Level", i32 2}
!3 = !{i32 7, !"uwtable", i32 2}
!4 = !{!"clang version 19.1.0 (git@github.com:llvm/llvm-project.git a4bf6cd7cfb1a1421ba92bca9d017b49936c55e4)"}
!5 = !{!6, !6, i64 0}
!6 = !{!"double", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"long", !7, i64 0}
!11 = !{!12, !12, i64 0}
!12 = !{!"any pointer", !7, i64 0}
!13 = !{!14, !6, i64 0}
!14 = !{!"_ZTSSt4pairIddE", !6, i64 0, !6, i64 8}
!15 = !{!14, !6, i64 8}
!16 = distinct !{!16, !17}
!17 = !{!"llvm.loop.mustprogress"}
!18 = !{!19, !19, i64 0}
!19 = !{!"int", !7, i64 0}
!20 = distinct !{!20, !17}
!21 = distinct !{!21, !17}
!22 = distinct !{!22, !17}
!23 = distinct !{!23, !17}
!24 = distinct !{!24, !17}
!25 = distinct !{!25, !17}
!26 = distinct !{!26, !17}
!27 = distinct !{!27, !17}
!28 = distinct !{!28, !17}
!29 = distinct !{!29, !17}
!30 = distinct !{!30, !17}
!31 = distinct !{!31, !17}
!32 = distinct !{!32, !17}
!33 = distinct !{!33, !17}
!34 = distinct !{!34, !17}
!35 = distinct !{!35, !17}
!36 = distinct !{!36, !17}
!37 = distinct !{!37, !17}
!38 = distinct !{!38, !17}
!39 = distinct !{!39, !17}
!40 = distinct !{!40, !17}
!41 = distinct !{!41, !17}
!42 = distinct !{!42, !17}
!43 = distinct !{!43, !17}
!44 = distinct !{!44, !17}
!45 = distinct !{!45, !17}
!46 = distinct !{!46, !17}
!47 = distinct !{!47, !17}
!48 = distinct !{!48, !17}
!49 = distinct !{!49, !17}
!50 = distinct !{!50, !17}
!51 = distinct !{!51, !17}
!52 = distinct !{!52, !17}
!53 = distinct !{!53, !17}
!54 = distinct !{!54, !17}
!55 = distinct !{!55, !17}
!56 = distinct !{!56, !17}
!57 = distinct !{!57, !17}
!58 = distinct !{!58, !17}
!59 = distinct !{!59, !17}
!60 = distinct !{!60, !17}
!61 = distinct !{!61, !17}
!62 = distinct !{!62, !17}
!63 = distinct !{!63, !17}
!64 = distinct !{!64, !17}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,LICMPass,LoopRotatePass,LoopSimplifyPass,LoopUnrollPass,PostOrderFunctionAttrsPass,SROAPass,SimplifyCFGPass