; LLVM IR from ronan-kerviche/glip-lib :: GLIP-Lib/src/Modules (LayoutLoader)

; 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.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%"struct.std::_Rb_tree_iterator.83" = type { ptr }
%"struct.std::pair.122" = type { %"class.std::__cxx11::basic_string", %"class.Glip::CoreGL::HdlTextureFormat" }
%"class.Glip::CoreGL::HdlTextureFormat" = type { %"class.Glip::CoreGL::HdlAbstractTextureFormat.base", [4 x i8] }
%"class.Glip::CoreGL::HdlAbstractTextureFormat.base" = type <{ ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 }>
%"struct.std::pair.120" = type <{ %"struct.std::_Rb_tree_iterator.83", i8, [7 x i8] }>
%"class.Glip::Modules::LayoutLoader" = type { ptr, i8, %"class.std::__cxx11::basic_string", %"class.std::vector", %"class.std::vector.3", %"class.std::vector", %"class.std::map", %"class.std::map.11", %"class.std::map.16", %"class.std::map.21", %"class.std::map.26", %"class.std::vector", %"class.std::map", %"class.std::map.11", %"class.std::map.16", %"class.std::map.26", %"class.std::map.31" }
%"class.std::vector.3" = type { %"struct.std::_Vector_base.4" }
%"struct.std::_Vector_base.4" = type { %"struct.std::_Vector_base<Glip::Modules::LayoutLoaderKeyword, std::allocator<Glip::Modules::LayoutLoaderKeyword>>::_Vector_impl" }
%"struct.std::_Vector_base<Glip::Modules::LayoutLoaderKeyword, std::allocator<Glip::Modules::LayoutLoaderKeyword>>::_Vector_impl" = type { %"struct.std::_Vector_base<Glip::Modules::LayoutLoaderKeyword, std::allocator<Glip::Modules::LayoutLoaderKeyword>>::_Vector_impl_data" }
%"struct.std::_Vector_base<Glip::Modules::LayoutLoaderKeyword, std::allocator<Glip::Modules::LayoutLoaderKeyword>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::map.21" = type { %"class.std::_Rb_tree.22" }
%"class.std::_Rb_tree.22" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::FilterLayout>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::FilterLayout>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::FilterLayout>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::FilterLayout>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.std::_Rb_tree_header" = type { %"struct.std::_Rb_tree_node_base", i64 }
%"struct.std::_Rb_tree_node_base" = type { i32, ptr, ptr, ptr }
%"class.std::vector" = type { %"struct.std::_Vector_base" }
%"struct.std::_Vector_base" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl" = type { %"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" }
%"struct.std::_Vector_base<std::__cxx11::basic_string<char>, std::allocator<std::__cxx11::basic_string<char>>>::_Vector_impl_data" = type { ptr, ptr, ptr }
%"class.std::map" = type { %"class.std::_Rb_tree" }
%"class.std::_Rb_tree" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CoreGL::HdlTextureFormat>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CoreGL::HdlTextureFormat>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CoreGL::HdlTextureFormat>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CoreGL::HdlTextureFormat>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"class.std::map.11" = type { %"class.std::_Rb_tree.12" }
%"class.std::_Rb_tree.12" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CoreGL::ShaderSource>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CoreGL::ShaderSource>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CoreGL::ShaderSource>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CoreGL::ShaderSource>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"class.std::map.16" = type { %"class.std::_Rb_tree.17" }
%"class.std::_Rb_tree.17" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::GeometryModel>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::GeometryModel>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::GeometryModel>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::GeometryModel>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"class.std::map.26" = type { %"class.std::_Rb_tree.27" }
%"class.std::_Rb_tree.27" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::PipelineLayout>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::PipelineLayout>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::PipelineLayout>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::CorePipeline::PipelineLayout>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"class.std::map.31" = type { %"class.std::_Rb_tree.32" }
%"class.std::_Rb_tree.32" = type { %"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::Modules::LayoutLoaderModule *>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::Modules::LayoutLoaderModule *>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" }
%"struct.std::_Rb_tree<std::__cxx11::basic_string<char>, std::pair<const std::__cxx11::basic_string<char>, Glip::Modules::LayoutLoaderModule *>, std::_Select1st<std::pair<const std::__cxx11::basic_string<char>, Glip::Modules::LayoutLoaderModule *>>, std::less<std::__cxx11::basic_string<char>>>::_Rb_tree_impl" = type { [8 x i8], %"struct.std::_Rb_tree_header" }
%"struct.Glip::Modules::VanillaParserSpace::Element" = type <{ %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %"class.std::__cxx11::basic_string", %"class.std::vector", i8, i8, i8, i8, i32, i32, [4 x i8] }>
%"struct.std::pair.84" = type { %"class.std::__cxx11::basic_string", %"class.Glip::CoreGL::HdlTextureFormat" }

@_ZTIN4Glip9ExceptionE = external constant ptr
@.str.58 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.83 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.84 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.87 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.88 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.89 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.90 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.91 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.92 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.93 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.94 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.95 = external hidden unnamed_addr constant [35 x i8], align 1
@.str.96 = external hidden unnamed_addr constant [35 x i8], align 1
@.str.97 = external hidden unnamed_addr constant [35 x i8], align 1
@.str.98 = external hidden unnamed_addr constant [35 x i8], align 1
@.str.99 = external hidden unnamed_addr constant [39 x i8], align 1

declare i32 @__gxx_personality_v0(...)

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #0 align 2

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

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

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #2 align 2

declare ptr @__cxa_allocate_exception(i64)

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #3

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef, ptr noundef nonnull align 8 dereferenceable(32)) #2

declare void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i32 noundef, ptr noundef nonnull align 4 dereferenceable(4)) unnamed_addr #4

; Function Attrs: nounwind
declare void @_ZN4Glip9ExceptionD1Ev(ptr noundef nonnull align 8 dereferenceable(152)) unnamed_addr #5

declare void @__cxa_throw(ptr, ptr, ptr)

declare void @__cxa_free_exception(ptr)

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4Glip7Modules12LayoutLoader16preliminaryTestsERKNS0_18VanillaParserSpace7ElementERKiS7_S7_S7_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(624), ptr noundef nonnull align 8 dereferenceable(164), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 8 dereferenceable(32)) #2 align 2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) #3

; Function Attrs: nocallback nofree nounwind willreturn memory(argmem: readwrite)
declare void @llvm.memcpy.p0.p0.i64(ptr noalias nocapture writeonly, ptr noalias nocapture readonly, i64, i1 immarg) #6

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #0

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48)) #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE4findERSC_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(32)) #2 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) #0 align 2

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4Glip7Modules12LayoutLoader19buildRequiredFormatERKNS0_18VanillaParserSpace7ElementE(ptr noundef nonnull align 8 dereferenceable(624) %0, ptr noundef nonnull align 8 dereferenceable(164) %1) #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca ptr, align 8
  %4 = alloca ptr, align 8
  %5 = alloca i32, align 4
  %6 = alloca i32, align 4
  %7 = alloca i32, align 4
  %8 = alloca i32, align 4
  %9 = alloca %"class.std::__cxx11::basic_string", align 8
  %10 = alloca %"class.std::allocator", align 1
  %11 = alloca ptr, align 8
  %12 = alloca i32, align 4
  %13 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %14 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %15 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %16 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %17 = alloca %"class.std::__cxx11::basic_string", align 8
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca i32, align 4
  %21 = alloca i1, align 1
  %22 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %23 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %24 = alloca %"class.std::__cxx11::basic_string", align 8
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca %"class.std::__cxx11::basic_string", align 8
  %27 = alloca i32, align 4
  %28 = alloca i1, align 1
  %29 = alloca i32, align 4
  %30 = alloca i32, align 4
  %31 = alloca i32, align 4
  %32 = alloca i32, align 4
  %33 = alloca i32, align 4
  %34 = alloca i32, align 4
  %35 = alloca i32, align 4
  %36 = alloca i32, align 4
  %37 = alloca i32, align 4
  %38 = alloca %"class.std::__cxx11::basic_string", align 8
  %39 = alloca %"class.std::__cxx11::basic_string", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::__cxx11::basic_string", align 8
  %42 = alloca %"class.std::__cxx11::basic_string", align 8
  %43 = alloca i32, align 4
  %44 = alloca i1, align 1
  %45 = alloca %"class.std::__cxx11::basic_string", align 8
  %46 = alloca %"class.std::__cxx11::basic_string", align 8
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca %"class.std::__cxx11::basic_string", align 8
  %49 = alloca %"class.std::__cxx11::basic_string", align 8
  %50 = alloca i32, align 4
  %51 = alloca i1, align 1
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::__cxx11::basic_string", align 8
  %54 = alloca %"class.std::__cxx11::basic_string", align 8
  %55 = alloca %"class.std::__cxx11::basic_string", align 8
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca i32, align 4
  %58 = alloca i1, align 1
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca %"class.std::__cxx11::basic_string", align 8
  %61 = alloca %"class.std::__cxx11::basic_string", align 8
  %62 = alloca %"class.std::__cxx11::basic_string", align 8
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca i32, align 4
  %65 = alloca i1, align 1
  %66 = alloca %"class.std::__cxx11::basic_string", align 8
  %67 = alloca %"class.std::__cxx11::basic_string", align 8
  %68 = alloca %"class.std::__cxx11::basic_string", align 8
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca %"class.std::__cxx11::basic_string", align 8
  %71 = alloca i32, align 4
  %72 = alloca i1, align 1
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca %"class.std::__cxx11::basic_string", align 8
  %75 = alloca %"class.std::__cxx11::basic_string", align 8
  %76 = alloca %"class.std::__cxx11::basic_string", align 8
  %77 = alloca %"class.std::__cxx11::basic_string", align 8
  %78 = alloca i32, align 4
  %79 = alloca i1, align 1
  %80 = alloca %"class.std::__cxx11::basic_string", align 8
  %81 = alloca %"class.std::__cxx11::basic_string", align 8
  %82 = alloca %"class.std::__cxx11::basic_string", align 8
  %83 = alloca %"class.std::__cxx11::basic_string", align 8
  %84 = alloca %"class.std::__cxx11::basic_string", align 8
  %85 = alloca i32, align 4
  %86 = alloca i1, align 1
  %87 = alloca %"class.std::__cxx11::basic_string", align 8
  %88 = alloca %"class.std::__cxx11::basic_string", align 8
  %89 = alloca %"class.std::__cxx11::basic_string", align 8
  %90 = alloca %"class.std::__cxx11::basic_string", align 8
  %91 = alloca %"class.std::__cxx11::basic_string", align 8
  %92 = alloca i32, align 4
  %93 = alloca i1, align 1
  %94 = alloca %"class.std::__cxx11::basic_string", align 8
  %95 = alloca %"class.std::__cxx11::basic_string", align 8
  %96 = alloca %"class.std::__cxx11::basic_string", align 8
  %97 = alloca %"class.std::__cxx11::basic_string", align 8
  %98 = alloca %"class.std::__cxx11::basic_string", align 8
  %99 = alloca i32, align 4
  %100 = alloca i1, align 1
  %101 = alloca %"class.std::__cxx11::basic_string", align 8
  %102 = alloca %"class.std::__cxx11::basic_string", align 8
  %103 = alloca %"class.std::__cxx11::basic_string", align 8
  %104 = alloca %"class.std::__cxx11::basic_string", align 8
  %105 = alloca %"class.std::__cxx11::basic_string", align 8
  %106 = alloca i32, align 4
  %107 = alloca i1, align 1
  %108 = alloca %"struct.std::pair.122", align 8
  %109 = alloca %"class.Glip::CoreGL::HdlTextureFormat", align 8
  %110 = alloca %"struct.std::pair.120", align 8
  store ptr %0, ptr %3, align 8, !tbaa !5
  store ptr %1, ptr %4, align 8, !tbaa !5
  %111 = load ptr, ptr %3, align 8
  %112 = load ptr, ptr %4, align 8, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr %5) #8
  store i32 1, ptr %5, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %6) #8
  store i32 1, ptr %6, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %7) #8
  store i32 10, ptr %7, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %8) #8
  store i32 -1, ptr %8, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 32, ptr %9) #8
  call void @llvm.lifetime.start.p0(i64 1, ptr %10) #8
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %10) #8
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %9, ptr noundef @.str.83, ptr noundef nonnull align 1 dereferenceable(1) %10)
          to label %113 unwind label %150

113:                                              ; preds = %2
  invoke void @_ZN4Glip7Modules12LayoutLoader16preliminaryTestsERKNS0_18VanillaParserSpace7ElementERKiS7_S7_S7_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(624) %111, ptr noundef nonnull align 8 dereferenceable(164) %112, ptr noundef nonnull align 4 dereferenceable(4) %5, ptr noundef nonnull align 4 dereferenceable(4) %6, ptr noundef nonnull align 4 dereferenceable(4) %7, ptr noundef nonnull align 4 dereferenceable(4) %8, ptr noundef nonnull align 8 dereferenceable(32) %9)
          to label %114 unwind label %154

114:                                              ; preds = %113
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #8
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %10) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %10) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %9) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %8) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %6) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %5) #8
  call void @llvm.lifetime.start.p0(i64 8, ptr %13) #8
  %115 = getelementptr inbounds %"class.Glip::Modules::LayoutLoader", ptr %111, i32 0, i32 12
  %116 = load ptr, ptr %4, align 8, !tbaa !5
  %117 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %116, i32 0, i32 4
  %118 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %117, i64 noundef 0) #8
  %119 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE4findERSC_(ptr noundef nonnull align 8 dereferenceable(48) %115, ptr noundef nonnull align 8 dereferenceable(32) %118)
  %120 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.83", ptr %13, i32 0, i32 0
  store ptr %119, ptr %120, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %14) #8
  %121 = getelementptr inbounds %"class.Glip::Modules::LayoutLoader", ptr %111, i32 0, i32 12
  %122 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %121) #8
  %123 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.83", ptr %14, i32 0, i32 0
  store ptr %122, ptr %123, align 8
  %124 = call noundef zeroext i1 @_ZSteqRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 8 dereferenceable(8) %14) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %14) #8
  br i1 %124, label %125, label %182

125:                                              ; preds = %114
  call void @llvm.lifetime.start.p0(i64 8, ptr %15) #8
  %126 = getelementptr inbounds %"class.Glip::Modules::LayoutLoader", ptr %111, i32 0, i32 6
  %127 = load ptr, ptr %4, align 8, !tbaa !5
  %128 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %127, i32 0, i32 4
  %129 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %128, i64 noundef 0) #8
  %130 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE4findERSC_(ptr noundef nonnull align 8 dereferenceable(48) %126, ptr noundef nonnull align 8 dereferenceable(32) %129)
  %131 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.83", ptr %15, i32 0, i32 0
  store ptr %130, ptr %131, align 8
  call void @llvm.memcpy.p0.p0.i64(ptr align 8 %13, ptr align 8 %15, i64 8, i1 false), !tbaa.struct !11
  call void @llvm.lifetime.end.p0(i64 8, ptr %15) #8
  call void @llvm.lifetime.start.p0(i64 8, ptr %16) #8
  %132 = getelementptr inbounds %"class.Glip::Modules::LayoutLoader", ptr %111, i32 0, i32 6
  %133 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %132) #8
  %134 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.83", ptr %16, i32 0, i32 0
  store ptr %133, ptr %134, align 8
  %135 = call noundef zeroext i1 @_ZSteqRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8) %13, ptr noundef nonnull align 8 dereferenceable(8) %16) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %16) #8
  br i1 %135, label %136, label %181

136:                                              ; preds = %125
  store i1 true, ptr %21, align 1
  %137 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %17) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %18) #8
  %138 = load ptr, ptr %4, align 8, !tbaa !5
  %139 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %138, i32 0, i32 4
  %140 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %139, i64 noundef 0) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %18, ptr noundef @.str.84, ptr noundef nonnull align 8 dereferenceable(32) %140)
          to label %141 unwind label %159

141:                                              ; preds = %136
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %17, ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef @.str.85)
          to label %142 unwind label %163

142:                                              ; preds = %141
  %143 = load ptr, ptr %4, align 8, !tbaa !5
  %144 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %143, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef nonnull align 8 dereferenceable(32) %144)
          to label %145 unwind label %167

145:                                              ; preds = %142
  %146 = load ptr, ptr %4, align 8, !tbaa !5
  %147 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %146, i32 0, i32 9
  %148 = load i32, ptr %147, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %20) #8
  store i32 5, ptr %20, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %137, ptr noundef nonnull align 8 dereferenceable(32) %17, ptr noundef %19, i32 noundef %148, ptr noundef nonnull align 4 dereferenceable(4) %20)
          to label %149 unwind label %171

149:                                              ; preds = %145
  store i1 false, ptr %21, align 1
  invoke void @__cxa_throw(ptr %137, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %171

150:                                              ; preds = %2
  %151 = landingpad { ptr, i32 }
          cleanup
  %152 = extractvalue { ptr, i32 } %151, 0
  store ptr %152, ptr %11, align 8
  %153 = extractvalue { ptr, i32 } %151, 1
  store i32 %153, ptr %12, align 4
  br label %158

154:                                              ; preds = %113
  %155 = landingpad { ptr, i32 }
          cleanup
  %156 = extractvalue { ptr, i32 } %155, 0
  store ptr %156, ptr %11, align 8
  %157 = extractvalue { ptr, i32 } %155, 1
  store i32 %157, ptr %12, align 4
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %9) #8
  br label %158

158:                                              ; preds = %154, %150
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %10) #8
  call void @llvm.lifetime.end.p0(i64 1, ptr %10) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %9) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %8) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %7) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %6) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %5) #8
  br label %999

159:                                              ; preds = %136
  %160 = landingpad { ptr, i32 }
          cleanup
  %161 = extractvalue { ptr, i32 } %160, 0
  store ptr %161, ptr %11, align 8
  %162 = extractvalue { ptr, i32 } %160, 1
  store i32 %162, ptr %12, align 4
  br label %177

163:                                              ; preds = %141
  %164 = landingpad { ptr, i32 }
          cleanup
  %165 = extractvalue { ptr, i32 } %164, 0
  store ptr %165, ptr %11, align 8
  %166 = extractvalue { ptr, i32 } %164, 1
  store i32 %166, ptr %12, align 4
  br label %176

167:                                              ; preds = %142
  %168 = landingpad { ptr, i32 }
          cleanup
  %169 = extractvalue { ptr, i32 } %168, 0
  store ptr %169, ptr %11, align 8
  %170 = extractvalue { ptr, i32 } %168, 1
  store i32 %170, ptr %12, align 4
  br label %175

171:                                              ; preds = %149, %145
  %172 = landingpad { ptr, i32 }
          cleanup
  %173 = extractvalue { ptr, i32 } %172, 0
  store ptr %173, ptr %11, align 8
  %174 = extractvalue { ptr, i32 } %172, 1
  store i32 %174, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %20) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #8
  br label %175

175:                                              ; preds = %171, %167
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %17) #8
  br label %176

176:                                              ; preds = %175, %163
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #8
  br label %177

177:                                              ; preds = %176, %159
  call void @llvm.lifetime.end.p0(i64 32, ptr %18) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %17) #8
  %178 = load i1, ptr %21, align 1
  br i1 %178, label %179, label %180

179:                                              ; preds = %177
  call void @__cxa_free_exception(ptr %137) #8
  br label %180

180:                                              ; preds = %179, %177
  br label %998

181:                                              ; preds = %125
  br label %182

182:                                              ; preds = %181, %114
  call void @llvm.lifetime.start.p0(i64 8, ptr %22) #8
  %183 = getelementptr inbounds %"class.Glip::Modules::LayoutLoader", ptr %111, i32 0, i32 6
  %184 = load ptr, ptr %4, align 8, !tbaa !5
  %185 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %184, i32 0, i32 2
  %186 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE4findERSC_(ptr noundef nonnull align 8 dereferenceable(48) %183, ptr noundef nonnull align 8 dereferenceable(32) %185)
  %187 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.83", ptr %22, i32 0, i32 0
  store ptr %186, ptr %187, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr %23) #8
  %188 = getelementptr inbounds %"class.Glip::Modules::LayoutLoader", ptr %111, i32 0, i32 6
  %189 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %188) #8
  %190 = getelementptr inbounds %"struct.std::_Rb_tree_iterator.83", ptr %23, i32 0, i32 0
  store ptr %189, ptr %190, align 8
  %191 = call noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8) %22, ptr noundef nonnull align 8 dereferenceable(8) %23) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %23) #8
  br i1 %191, label %192, label %227

192:                                              ; preds = %182
  store i1 true, ptr %28, align 1
  %193 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %24) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %25) #8
  %194 = load ptr, ptr %4, align 8, !tbaa !5
  %195 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %194, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %25, ptr noundef @.str.86, ptr noundef nonnull align 8 dereferenceable(32) %195)
          to label %196 unwind label %205

196:                                              ; preds = %192
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %24, ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef @.str.87)
          to label %197 unwind label %209

197:                                              ; preds = %196
  %198 = load ptr, ptr %4, align 8, !tbaa !5
  %199 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %198, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef nonnull align 8 dereferenceable(32) %199)
          to label %200 unwind label %213

200:                                              ; preds = %197
  %201 = load ptr, ptr %4, align 8, !tbaa !5
  %202 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %201, i32 0, i32 9
  %203 = load i32, ptr %202, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %27) #8
  store i32 5, ptr %27, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %193, ptr noundef nonnull align 8 dereferenceable(32) %24, ptr noundef %26, i32 noundef %203, ptr noundef nonnull align 4 dereferenceable(4) %27)
          to label %204 unwind label %217

204:                                              ; preds = %200
  store i1 false, ptr %28, align 1
  invoke void @__cxa_throw(ptr %193, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %217

205:                                              ; preds = %192
  %206 = landingpad { ptr, i32 }
          cleanup
  %207 = extractvalue { ptr, i32 } %206, 0
  store ptr %207, ptr %11, align 8
  %208 = extractvalue { ptr, i32 } %206, 1
  store i32 %208, ptr %12, align 4
  br label %223

209:                                              ; preds = %196
  %210 = landingpad { ptr, i32 }
          cleanup
  %211 = extractvalue { ptr, i32 } %210, 0
  store ptr %211, ptr %11, align 8
  %212 = extractvalue { ptr, i32 } %210, 1
  store i32 %212, ptr %12, align 4
  br label %222

213:                                              ; preds = %197
  %214 = landingpad { ptr, i32 }
          cleanup
  %215 = extractvalue { ptr, i32 } %214, 0
  store ptr %215, ptr %11, align 8
  %216 = extractvalue { ptr, i32 } %214, 1
  store i32 %216, ptr %12, align 4
  br label %221

217:                                              ; preds = %204, %200
  %218 = landingpad { ptr, i32 }
          cleanup
  %219 = extractvalue { ptr, i32 } %218, 0
  store ptr %219, ptr %11, align 8
  %220 = extractvalue { ptr, i32 } %218, 1
  store i32 %220, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %27) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #8
  br label %221

221:                                              ; preds = %217, %213
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %24) #8
  br label %222

222:                                              ; preds = %221, %209
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #8
  br label %223

223:                                              ; preds = %222, %205
  call void @llvm.lifetime.end.p0(i64 32, ptr %25) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %24) #8
  %224 = load i1, ptr %28, align 1
  br i1 %224, label %225, label %226

225:                                              ; preds = %223
  call void @__cxa_free_exception(ptr %193) #8
  br label %226

226:                                              ; preds = %225, %223
  br label %997

227:                                              ; preds = %182
  call void @llvm.lifetime.start.p0(i64 4, ptr %29) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %30) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %31) #8
  store i32 0, ptr %31, align 4, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 4, ptr %32) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %33) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %34) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %35) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %36) #8
  call void @llvm.lifetime.start.p0(i64 4, ptr %37) #8
  %228 = load ptr, ptr %4, align 8, !tbaa !5
  %229 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %228, i32 0, i32 4
  %230 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %229) #8
  %231 = icmp ugt i64 %230, 1
  br i1 %231, label %232, label %298

232:                                              ; preds = %227
  %233 = load ptr, ptr %4, align 8, !tbaa !5
  %234 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %233, i32 0, i32 4
  %235 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %234, i64 noundef 1) #8
  %236 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %235, ptr noundef @.str.88)
  br i1 %236, label %237, label %241

237:                                              ; preds = %232
  %238 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %239 = getelementptr inbounds %"struct.std::pair.84", ptr %238, i32 0, i32 1
  %240 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat8getWidthEv(ptr noundef nonnull align 8 dereferenceable(52) %239)
  store i32 %240, ptr %29, align 4, !tbaa !9
  br label %297

241:                                              ; preds = %232
  %242 = load ptr, ptr %4, align 8, !tbaa !5
  %243 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %242, i32 0, i32 4
  %244 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %243, i64 noundef 1) #8
  %245 = call noundef zeroext i1 @_ZN4Glip10fromStringIiEEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_(ptr noundef nonnull align 8 dereferenceable(32) %244, ptr noundef nonnull align 4 dereferenceable(4) %29)
  br i1 %245, label %296, label %246

246:                                              ; preds = %241
  store i1 true, ptr %44, align 1
  %247 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %38) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %39) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %40) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %41) #8
  %248 = load ptr, ptr %4, align 8, !tbaa !5
  %249 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %248, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %41, ptr noundef @.str.89, ptr noundef nonnull align 8 dereferenceable(32) %249)
          to label %250 unwind label %264

250:                                              ; preds = %246
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %40, ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef @.str.90)
          to label %251 unwind label %268

251:                                              ; preds = %250
  %252 = load ptr, ptr %4, align 8, !tbaa !5
  %253 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %252, i32 0, i32 4
  %254 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %253, i64 noundef 0) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %39, ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull align 8 dereferenceable(32) %254)
          to label %255 unwind label %272

255:                                              ; preds = %251
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %38, ptr noundef nonnull align 8 dereferenceable(32) %39, ptr noundef @.str.58)
          to label %256 unwind label %276

256:                                              ; preds = %255
  %257 = load ptr, ptr %4, align 8, !tbaa !5
  %258 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %257, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %42, ptr noundef nonnull align 8 dereferenceable(32) %258)
          to label %259 unwind label %280

259:                                              ; preds = %256
  %260 = load ptr, ptr %4, align 8, !tbaa !5
  %261 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %260, i32 0, i32 9
  %262 = load i32, ptr %261, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %43) #8
  store i32 5, ptr %43, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %247, ptr noundef nonnull align 8 dereferenceable(32) %38, ptr noundef %42, i32 noundef %262, ptr noundef nonnull align 4 dereferenceable(4) %43)
          to label %263 unwind label %284

263:                                              ; preds = %259
  store i1 false, ptr %44, align 1
  invoke void @__cxa_throw(ptr %247, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %284

264:                                              ; preds = %246
  %265 = landingpad { ptr, i32 }
          cleanup
  %266 = extractvalue { ptr, i32 } %265, 0
  store ptr %266, ptr %11, align 8
  %267 = extractvalue { ptr, i32 } %265, 1
  store i32 %267, ptr %12, align 4
  br label %292

268:                                              ; preds = %250
  %269 = landingpad { ptr, i32 }
          cleanup
  %270 = extractvalue { ptr, i32 } %269, 0
  store ptr %270, ptr %11, align 8
  %271 = extractvalue { ptr, i32 } %269, 1
  store i32 %271, ptr %12, align 4
  br label %291

272:                                              ; preds = %251
  %273 = landingpad { ptr, i32 }
          cleanup
  %274 = extractvalue { ptr, i32 } %273, 0
  store ptr %274, ptr %11, align 8
  %275 = extractvalue { ptr, i32 } %273, 1
  store i32 %275, ptr %12, align 4
  br label %290

276:                                              ; preds = %255
  %277 = landingpad { ptr, i32 }
          cleanup
  %278 = extractvalue { ptr, i32 } %277, 0
  store ptr %278, ptr %11, align 8
  %279 = extractvalue { ptr, i32 } %277, 1
  store i32 %279, ptr %12, align 4
  br label %289

280:                                              ; preds = %256
  %281 = landingpad { ptr, i32 }
          cleanup
  %282 = extractvalue { ptr, i32 } %281, 0
  store ptr %282, ptr %11, align 8
  %283 = extractvalue { ptr, i32 } %281, 1
  store i32 %283, ptr %12, align 4
  br label %288

284:                                              ; preds = %263, %259
  %285 = landingpad { ptr, i32 }
          cleanup
  %286 = extractvalue { ptr, i32 } %285, 0
  store ptr %286, ptr %11, align 8
  %287 = extractvalue { ptr, i32 } %285, 1
  store i32 %287, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %43) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %42) #8
  br label %288

288:                                              ; preds = %284, %280
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #8
  br label %289

289:                                              ; preds = %288, %276
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #8
  br label %290

290:                                              ; preds = %289, %272
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #8
  br label %291

291:                                              ; preds = %290, %268
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #8
  br label %292

292:                                              ; preds = %291, %264
  call void @llvm.lifetime.end.p0(i64 32, ptr %41) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %40) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %39) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %38) #8
  %293 = load i1, ptr %44, align 1
  br i1 %293, label %294, label %295

294:                                              ; preds = %292
  call void @__cxa_free_exception(ptr %247) #8
  br label %295

295:                                              ; preds = %294, %292
  br label %996

296:                                              ; preds = %241
  br label %297

297:                                              ; preds = %296, %237
  br label %302

298:                                              ; preds = %227
  %299 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %300 = getelementptr inbounds %"struct.std::pair.84", ptr %299, i32 0, i32 1
  %301 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat8getWidthEv(ptr noundef nonnull align 8 dereferenceable(52) %300)
  store i32 %301, ptr %29, align 4, !tbaa !9
  br label %302

302:                                              ; preds = %298, %297
  %303 = load ptr, ptr %4, align 8, !tbaa !5
  %304 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %303, i32 0, i32 4
  %305 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %304) #8
  %306 = icmp ugt i64 %305, 2
  br i1 %306, label %307, label %373

307:                                              ; preds = %302
  %308 = load ptr, ptr %4, align 8, !tbaa !5
  %309 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %308, i32 0, i32 4
  %310 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %309, i64 noundef 2) #8
  %311 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %310, ptr noundef @.str.88)
  br i1 %311, label %312, label %316

312:                                              ; preds = %307
  %313 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %314 = getelementptr inbounds %"struct.std::pair.84", ptr %313, i32 0, i32 1
  %315 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getHeightEv(ptr noundef nonnull align 8 dereferenceable(52) %314)
  store i32 %315, ptr %30, align 4, !tbaa !9
  br label %372

316:                                              ; preds = %307
  %317 = load ptr, ptr %4, align 8, !tbaa !5
  %318 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %317, i32 0, i32 4
  %319 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %318, i64 noundef 2) #8
  %320 = call noundef zeroext i1 @_ZN4Glip10fromStringIiEEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_(ptr noundef nonnull align 8 dereferenceable(32) %319, ptr noundef nonnull align 4 dereferenceable(4) %30)
  br i1 %320, label %371, label %321

321:                                              ; preds = %316
  store i1 true, ptr %51, align 1
  %322 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %45) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %46) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %47) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %48) #8
  %323 = load ptr, ptr %4, align 8, !tbaa !5
  %324 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %323, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %48, ptr noundef @.str.91, ptr noundef nonnull align 8 dereferenceable(32) %324)
          to label %325 unwind label %339

325:                                              ; preds = %321
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %47, ptr noundef nonnull align 8 dereferenceable(32) %48, ptr noundef @.str.90)
          to label %326 unwind label %343

326:                                              ; preds = %325
  %327 = load ptr, ptr %4, align 8, !tbaa !5
  %328 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %327, i32 0, i32 4
  %329 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %328, i64 noundef 0) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %46, ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef nonnull align 8 dereferenceable(32) %329)
          to label %330 unwind label %347

330:                                              ; preds = %326
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %45, ptr noundef nonnull align 8 dereferenceable(32) %46, ptr noundef @.str.58)
          to label %331 unwind label %351

331:                                              ; preds = %330
  %332 = load ptr, ptr %4, align 8, !tbaa !5
  %333 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %332, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %49, ptr noundef nonnull align 8 dereferenceable(32) %333)
          to label %334 unwind label %355

334:                                              ; preds = %331
  %335 = load ptr, ptr %4, align 8, !tbaa !5
  %336 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %335, i32 0, i32 9
  %337 = load i32, ptr %336, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %50) #8
  store i32 5, ptr %50, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %322, ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef %49, i32 noundef %337, ptr noundef nonnull align 4 dereferenceable(4) %50)
          to label %338 unwind label %359

338:                                              ; preds = %334
  store i1 false, ptr %51, align 1
  invoke void @__cxa_throw(ptr %322, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %359

339:                                              ; preds = %321
  %340 = landingpad { ptr, i32 }
          cleanup
  %341 = extractvalue { ptr, i32 } %340, 0
  store ptr %341, ptr %11, align 8
  %342 = extractvalue { ptr, i32 } %340, 1
  store i32 %342, ptr %12, align 4
  br label %367

343:                                              ; preds = %325
  %344 = landingpad { ptr, i32 }
          cleanup
  %345 = extractvalue { ptr, i32 } %344, 0
  store ptr %345, ptr %11, align 8
  %346 = extractvalue { ptr, i32 } %344, 1
  store i32 %346, ptr %12, align 4
  br label %366

347:                                              ; preds = %326
  %348 = landingpad { ptr, i32 }
          cleanup
  %349 = extractvalue { ptr, i32 } %348, 0
  store ptr %349, ptr %11, align 8
  %350 = extractvalue { ptr, i32 } %348, 1
  store i32 %350, ptr %12, align 4
  br label %365

351:                                              ; preds = %330
  %352 = landingpad { ptr, i32 }
          cleanup
  %353 = extractvalue { ptr, i32 } %352, 0
  store ptr %353, ptr %11, align 8
  %354 = extractvalue { ptr, i32 } %352, 1
  store i32 %354, ptr %12, align 4
  br label %364

355:                                              ; preds = %331
  %356 = landingpad { ptr, i32 }
          cleanup
  %357 = extractvalue { ptr, i32 } %356, 0
  store ptr %357, ptr %11, align 8
  %358 = extractvalue { ptr, i32 } %356, 1
  store i32 %358, ptr %12, align 4
  br label %363

359:                                              ; preds = %338, %334
  %360 = landingpad { ptr, i32 }
          cleanup
  %361 = extractvalue { ptr, i32 } %360, 0
  store ptr %361, ptr %11, align 8
  %362 = extractvalue { ptr, i32 } %360, 1
  store i32 %362, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %50) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #8
  br label %363

363:                                              ; preds = %359, %355
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #8
  br label %364

364:                                              ; preds = %363, %351
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #8
  br label %365

365:                                              ; preds = %364, %347
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #8
  br label %366

366:                                              ; preds = %365, %343
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %48) #8
  br label %367

367:                                              ; preds = %366, %339
  call void @llvm.lifetime.end.p0(i64 32, ptr %48) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %47) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %46) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %45) #8
  %368 = load i1, ptr %51, align 1
  br i1 %368, label %369, label %370

369:                                              ; preds = %367
  call void @__cxa_free_exception(ptr %322) #8
  br label %370

370:                                              ; preds = %369, %367
  br label %996

371:                                              ; preds = %316
  br label %372

372:                                              ; preds = %371, %312
  br label %377

373:                                              ; preds = %302
  %374 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %375 = getelementptr inbounds %"struct.std::pair.84", ptr %374, i32 0, i32 1
  %376 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getHeightEv(ptr noundef nonnull align 8 dereferenceable(52) %375)
  store i32 %376, ptr %30, align 4, !tbaa !9
  br label %377

377:                                              ; preds = %373, %372
  %378 = load ptr, ptr %4, align 8, !tbaa !5
  %379 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %378, i32 0, i32 4
  %380 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %379) #8
  %381 = icmp ugt i64 %380, 3
  br i1 %381, label %382, label %397

382:                                              ; preds = %377
  %383 = load ptr, ptr %4, align 8, !tbaa !5
  %384 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %383, i32 0, i32 4
  %385 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %384, i64 noundef 3) #8
  %386 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %385, ptr noundef @.str.88)
  br i1 %386, label %387, label %391

387:                                              ; preds = %382
  %388 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %389 = getelementptr inbounds %"struct.std::pair.84", ptr %388, i32 0, i32 1
  %390 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getGLModeEv(ptr noundef nonnull align 8 dereferenceable(52) %389)
  store i32 %390, ptr %32, align 4, !tbaa !9
  br label %396

391:                                              ; preds = %382
  %392 = load ptr, ptr %4, align 8, !tbaa !5
  %393 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %392, i32 0, i32 4
  %394 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %393, i64 noundef 3) #8
  %395 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %394)
  store i32 %395, ptr %32, align 4, !tbaa !9
  br label %396

396:                                              ; preds = %391, %387
  br label %401

397:                                              ; preds = %377
  %398 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %399 = getelementptr inbounds %"struct.std::pair.84", ptr %398, i32 0, i32 1
  %400 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getGLModeEv(ptr noundef nonnull align 8 dereferenceable(52) %399)
  store i32 %400, ptr %32, align 4, !tbaa !9
  br label %401

401:                                              ; preds = %397, %396
  %402 = load ptr, ptr %4, align 8, !tbaa !5
  %403 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %402, i32 0, i32 4
  %404 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %403) #8
  %405 = icmp ugt i64 %404, 4
  br i1 %405, label %406, label %421

406:                                              ; preds = %401
  %407 = load ptr, ptr %4, align 8, !tbaa !5
  %408 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %407, i32 0, i32 4
  %409 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %408, i64 noundef 4) #8
  %410 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %409, ptr noundef @.str.88)
  br i1 %410, label %411, label %415

411:                                              ; preds = %406
  %412 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %413 = getelementptr inbounds %"struct.std::pair.84", ptr %412, i32 0, i32 1
  %414 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat10getGLDepthEv(ptr noundef nonnull align 8 dereferenceable(52) %413)
  store i32 %414, ptr %33, align 4, !tbaa !9
  br label %420

415:                                              ; preds = %406
  %416 = load ptr, ptr %4, align 8, !tbaa !5
  %417 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %416, i32 0, i32 4
  %418 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %417, i64 noundef 4) #8
  %419 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %418)
  store i32 %419, ptr %33, align 4, !tbaa !9
  br label %420

420:                                              ; preds = %415, %411
  br label %425

421:                                              ; preds = %401
  %422 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %423 = getelementptr inbounds %"struct.std::pair.84", ptr %422, i32 0, i32 1
  %424 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat10getGLDepthEv(ptr noundef nonnull align 8 dereferenceable(52) %423)
  store i32 %424, ptr %33, align 4, !tbaa !9
  br label %425

425:                                              ; preds = %421, %420
  %426 = load ptr, ptr %4, align 8, !tbaa !5
  %427 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %426, i32 0, i32 4
  %428 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %427) #8
  %429 = icmp ugt i64 %428, 5
  br i1 %429, label %430, label %445

430:                                              ; preds = %425
  %431 = load ptr, ptr %4, align 8, !tbaa !5
  %432 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %431, i32 0, i32 4
  %433 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %432, i64 noundef 5) #8
  %434 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %433, ptr noundef @.str.88)
  br i1 %434, label %435, label %439

435:                                              ; preds = %430
  %436 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %437 = getelementptr inbounds %"struct.std::pair.84", ptr %436, i32 0, i32 1
  %438 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMinFilterEv(ptr noundef nonnull align 8 dereferenceable(52) %437)
  store i32 %438, ptr %34, align 4, !tbaa !9
  br label %444

439:                                              ; preds = %430
  %440 = load ptr, ptr %4, align 8, !tbaa !5
  %441 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %440, i32 0, i32 4
  %442 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %441, i64 noundef 5) #8
  %443 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %442)
  store i32 %443, ptr %34, align 4, !tbaa !9
  br label %444

444:                                              ; preds = %439, %435
  br label %449

445:                                              ; preds = %425
  %446 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %447 = getelementptr inbounds %"struct.std::pair.84", ptr %446, i32 0, i32 1
  %448 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMinFilterEv(ptr noundef nonnull align 8 dereferenceable(52) %447)
  store i32 %448, ptr %34, align 4, !tbaa !9
  br label %449

449:                                              ; preds = %445, %444
  %450 = load ptr, ptr %4, align 8, !tbaa !5
  %451 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %450, i32 0, i32 4
  %452 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %451) #8
  %453 = icmp ugt i64 %452, 6
  br i1 %453, label %454, label %469

454:                                              ; preds = %449
  %455 = load ptr, ptr %4, align 8, !tbaa !5
  %456 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %455, i32 0, i32 4
  %457 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %456, i64 noundef 6) #8
  %458 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %457, ptr noundef @.str.88)
  br i1 %458, label %459, label %463

459:                                              ; preds = %454
  %460 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %461 = getelementptr inbounds %"struct.std::pair.84", ptr %460, i32 0, i32 1
  %462 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMagFilterEv(ptr noundef nonnull align 8 dereferenceable(52) %461)
  store i32 %462, ptr %35, align 4, !tbaa !9
  br label %468

463:                                              ; preds = %454
  %464 = load ptr, ptr %4, align 8, !tbaa !5
  %465 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %464, i32 0, i32 4
  %466 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %465, i64 noundef 6) #8
  %467 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %466)
  store i32 %467, ptr %35, align 4, !tbaa !9
  br label %468

468:                                              ; preds = %463, %459
  br label %473

469:                                              ; preds = %449
  %470 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %471 = getelementptr inbounds %"struct.std::pair.84", ptr %470, i32 0, i32 1
  %472 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMagFilterEv(ptr noundef nonnull align 8 dereferenceable(52) %471)
  store i32 %472, ptr %35, align 4, !tbaa !9
  br label %473

473:                                              ; preds = %469, %468
  %474 = load ptr, ptr %4, align 8, !tbaa !5
  %475 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %474, i32 0, i32 4
  %476 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %475) #8
  %477 = icmp ugt i64 %476, 7
  br i1 %477, label %478, label %493

478:                                              ; preds = %473
  %479 = load ptr, ptr %4, align 8, !tbaa !5
  %480 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %479, i32 0, i32 4
  %481 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %480, i64 noundef 7) #8
  %482 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %481, ptr noundef @.str.88)
  br i1 %482, label %483, label %487

483:                                              ; preds = %478
  %484 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %485 = getelementptr inbounds %"struct.std::pair.84", ptr %484, i32 0, i32 1
  %486 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getSWrappingEv(ptr noundef nonnull align 8 dereferenceable(52) %485)
  store i32 %486, ptr %36, align 4, !tbaa !9
  br label %492

487:                                              ; preds = %478
  %488 = load ptr, ptr %4, align 8, !tbaa !5
  %489 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %488, i32 0, i32 4
  %490 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %489, i64 noundef 7) #8
  %491 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %490)
  store i32 %491, ptr %36, align 4, !tbaa !9
  br label %492

492:                                              ; preds = %487, %483
  br label %497

493:                                              ; preds = %473
  %494 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %495 = getelementptr inbounds %"struct.std::pair.84", ptr %494, i32 0, i32 1
  %496 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getSWrappingEv(ptr noundef nonnull align 8 dereferenceable(52) %495)
  store i32 %496, ptr %36, align 4, !tbaa !9
  br label %497

497:                                              ; preds = %493, %492
  %498 = load ptr, ptr %4, align 8, !tbaa !5
  %499 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %498, i32 0, i32 4
  %500 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %499) #8
  %501 = icmp ugt i64 %500, 8
  br i1 %501, label %502, label %517

502:                                              ; preds = %497
  %503 = load ptr, ptr %4, align 8, !tbaa !5
  %504 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %503, i32 0, i32 4
  %505 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %504, i64 noundef 8) #8
  %506 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %505, ptr noundef @.str.88)
  br i1 %506, label %507, label %511

507:                                              ; preds = %502
  %508 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %509 = getelementptr inbounds %"struct.std::pair.84", ptr %508, i32 0, i32 1
  %510 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getTWrappingEv(ptr noundef nonnull align 8 dereferenceable(52) %509)
  store i32 %510, ptr %37, align 4, !tbaa !9
  br label %516

511:                                              ; preds = %502
  %512 = load ptr, ptr %4, align 8, !tbaa !5
  %513 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %512, i32 0, i32 4
  %514 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %513, i64 noundef 8) #8
  %515 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %514)
  store i32 %515, ptr %37, align 4, !tbaa !9
  br label %516

516:                                              ; preds = %511, %507
  br label %521

517:                                              ; preds = %497
  %518 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %519 = getelementptr inbounds %"struct.std::pair.84", ptr %518, i32 0, i32 1
  %520 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getTWrappingEv(ptr noundef nonnull align 8 dereferenceable(52) %519)
  store i32 %520, ptr %37, align 4, !tbaa !9
  br label %521

521:                                              ; preds = %517, %516
  %522 = load ptr, ptr %4, align 8, !tbaa !5
  %523 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %522, i32 0, i32 4
  %524 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %523) #8
  %525 = icmp ugt i64 %524, 9
  br i1 %525, label %526, label %592

526:                                              ; preds = %521
  %527 = load ptr, ptr %4, align 8, !tbaa !5
  %528 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %527, i32 0, i32 4
  %529 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %528, i64 noundef 9) #8
  %530 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %529, ptr noundef @.str.88)
  br i1 %530, label %531, label %535

531:                                              ; preds = %526
  %532 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %533 = getelementptr inbounds %"struct.std::pair.84", ptr %532, i32 0, i32 1
  %534 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat11getMaxLevelEv(ptr noundef nonnull align 8 dereferenceable(52) %533)
  store i32 %534, ptr %31, align 4, !tbaa !9
  br label %591

535:                                              ; preds = %526
  %536 = load ptr, ptr %4, align 8, !tbaa !5
  %537 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %536, i32 0, i32 4
  %538 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %537, i64 noundef 9) #8
  %539 = call noundef zeroext i1 @_ZN4Glip10fromStringIiEEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_(ptr noundef nonnull align 8 dereferenceable(32) %538, ptr noundef nonnull align 4 dereferenceable(4) %31)
  br i1 %539, label %590, label %540

540:                                              ; preds = %535
  store i1 true, ptr %58, align 1
  %541 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %52) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %53) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %54) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %55) #8
  %542 = load ptr, ptr %4, align 8, !tbaa !5
  %543 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %542, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %55, ptr noundef @.str.92, ptr noundef nonnull align 8 dereferenceable(32) %543)
          to label %544 unwind label %558

544:                                              ; preds = %540
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %54, ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef @.str.90)
          to label %545 unwind label %562

545:                                              ; preds = %544
  %546 = load ptr, ptr %4, align 8, !tbaa !5
  %547 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %546, i32 0, i32 4
  %548 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %547, i64 noundef 8) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %53, ptr noundef nonnull align 8 dereferenceable(32) %54, ptr noundef nonnull align 8 dereferenceable(32) %548)
          to label %549 unwind label %566

549:                                              ; preds = %545
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %52, ptr noundef nonnull align 8 dereferenceable(32) %53, ptr noundef @.str.58)
          to label %550 unwind label %570

550:                                              ; preds = %549
  %551 = load ptr, ptr %4, align 8, !tbaa !5
  %552 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %551, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef nonnull align 8 dereferenceable(32) %552)
          to label %553 unwind label %574

553:                                              ; preds = %550
  %554 = load ptr, ptr %4, align 8, !tbaa !5
  %555 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %554, i32 0, i32 9
  %556 = load i32, ptr %555, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %57) #8
  store i32 5, ptr %57, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %541, ptr noundef nonnull align 8 dereferenceable(32) %52, ptr noundef %56, i32 noundef %556, ptr noundef nonnull align 4 dereferenceable(4) %57)
          to label %557 unwind label %578

557:                                              ; preds = %553
  store i1 false, ptr %58, align 1
  invoke void @__cxa_throw(ptr %541, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %578

558:                                              ; preds = %540
  %559 = landingpad { ptr, i32 }
          cleanup
  %560 = extractvalue { ptr, i32 } %559, 0
  store ptr %560, ptr %11, align 8
  %561 = extractvalue { ptr, i32 } %559, 1
  store i32 %561, ptr %12, align 4
  br label %586

562:                                              ; preds = %544
  %563 = landingpad { ptr, i32 }
          cleanup
  %564 = extractvalue { ptr, i32 } %563, 0
  store ptr %564, ptr %11, align 8
  %565 = extractvalue { ptr, i32 } %563, 1
  store i32 %565, ptr %12, align 4
  br label %585

566:                                              ; preds = %545
  %567 = landingpad { ptr, i32 }
          cleanup
  %568 = extractvalue { ptr, i32 } %567, 0
  store ptr %568, ptr %11, align 8
  %569 = extractvalue { ptr, i32 } %567, 1
  store i32 %569, ptr %12, align 4
  br label %584

570:                                              ; preds = %549
  %571 = landingpad { ptr, i32 }
          cleanup
  %572 = extractvalue { ptr, i32 } %571, 0
  store ptr %572, ptr %11, align 8
  %573 = extractvalue { ptr, i32 } %571, 1
  store i32 %573, ptr %12, align 4
  br label %583

574:                                              ; preds = %550
  %575 = landingpad { ptr, i32 }
          cleanup
  %576 = extractvalue { ptr, i32 } %575, 0
  store ptr %576, ptr %11, align 8
  %577 = extractvalue { ptr, i32 } %575, 1
  store i32 %577, ptr %12, align 4
  br label %582

578:                                              ; preds = %557, %553
  %579 = landingpad { ptr, i32 }
          cleanup
  %580 = extractvalue { ptr, i32 } %579, 0
  store ptr %580, ptr %11, align 8
  %581 = extractvalue { ptr, i32 } %579, 1
  store i32 %581, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %57) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #8
  br label %582

582:                                              ; preds = %578, %574
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #8
  br label %583

583:                                              ; preds = %582, %570
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #8
  br label %584

584:                                              ; preds = %583, %566
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %54) #8
  br label %585

585:                                              ; preds = %584, %562
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #8
  br label %586

586:                                              ; preds = %585, %558
  call void @llvm.lifetime.end.p0(i64 32, ptr %55) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %54) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %53) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %52) #8
  %587 = load i1, ptr %58, align 1
  br i1 %587, label %588, label %589

588:                                              ; preds = %586
  call void @__cxa_free_exception(ptr %541) #8
  br label %589

589:                                              ; preds = %588, %586
  br label %996

590:                                              ; preds = %535
  br label %591

591:                                              ; preds = %590, %531
  br label %596

592:                                              ; preds = %521
  %593 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %13) #8
  %594 = getelementptr inbounds %"struct.std::pair.84", ptr %593, i32 0, i32 1
  %595 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat11getMaxLevelEv(ptr noundef nonnull align 8 dereferenceable(52) %594)
  store i32 %595, ptr %31, align 4, !tbaa !9
  br label %596

596:                                              ; preds = %592, %591
  %597 = load i32, ptr %32, align 4, !tbaa !9
  %598 = icmp eq i32 %597, 0
  br i1 %598, label %599, label %649

599:                                              ; preds = %596
  store i1 true, ptr %65, align 1
  %600 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %59) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %60) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %61) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %62) #8
  %601 = load ptr, ptr %4, align 8, !tbaa !5
  %602 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %601, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %62, ptr noundef @.str.93, ptr noundef nonnull align 8 dereferenceable(32) %602)
          to label %603 unwind label %617

603:                                              ; preds = %599
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %61, ptr noundef nonnull align 8 dereferenceable(32) %62, ptr noundef @.str.90)
          to label %604 unwind label %621

604:                                              ; preds = %603
  %605 = load ptr, ptr %4, align 8, !tbaa !5
  %606 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %605, i32 0, i32 4
  %607 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %606, i64 noundef 2) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %60, ptr noundef nonnull align 8 dereferenceable(32) %61, ptr noundef nonnull align 8 dereferenceable(32) %607)
          to label %608 unwind label %625

608:                                              ; preds = %604
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %59, ptr noundef nonnull align 8 dereferenceable(32) %60, ptr noundef @.str.58)
          to label %609 unwind label %629

609:                                              ; preds = %608
  %610 = load ptr, ptr %4, align 8, !tbaa !5
  %611 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %610, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef nonnull align 8 dereferenceable(32) %611)
          to label %612 unwind label %633

612:                                              ; preds = %609
  %613 = load ptr, ptr %4, align 8, !tbaa !5
  %614 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %613, i32 0, i32 9
  %615 = load i32, ptr %614, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %64) #8
  store i32 5, ptr %64, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %600, ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef %63, i32 noundef %615, ptr noundef nonnull align 4 dereferenceable(4) %64)
          to label %616 unwind label %637

616:                                              ; preds = %612
  store i1 false, ptr %65, align 1
  invoke void @__cxa_throw(ptr %600, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %637

617:                                              ; preds = %599
  %618 = landingpad { ptr, i32 }
          cleanup
  %619 = extractvalue { ptr, i32 } %618, 0
  store ptr %619, ptr %11, align 8
  %620 = extractvalue { ptr, i32 } %618, 1
  store i32 %620, ptr %12, align 4
  br label %645

621:                                              ; preds = %603
  %622 = landingpad { ptr, i32 }
          cleanup
  %623 = extractvalue { ptr, i32 } %622, 0
  store ptr %623, ptr %11, align 8
  %624 = extractvalue { ptr, i32 } %622, 1
  store i32 %624, ptr %12, align 4
  br label %644

625:                                              ; preds = %604
  %626 = landingpad { ptr, i32 }
          cleanup
  %627 = extractvalue { ptr, i32 } %626, 0
  store ptr %627, ptr %11, align 8
  %628 = extractvalue { ptr, i32 } %626, 1
  store i32 %628, ptr %12, align 4
  br label %643

629:                                              ; preds = %608
  %630 = landingpad { ptr, i32 }
          cleanup
  %631 = extractvalue { ptr, i32 } %630, 0
  store ptr %631, ptr %11, align 8
  %632 = extractvalue { ptr, i32 } %630, 1
  store i32 %632, ptr %12, align 4
  br label %642

633:                                              ; preds = %609
  %634 = landingpad { ptr, i32 }
          cleanup
  %635 = extractvalue { ptr, i32 } %634, 0
  store ptr %635, ptr %11, align 8
  %636 = extractvalue { ptr, i32 } %634, 1
  store i32 %636, ptr %12, align 4
  br label %641

637:                                              ; preds = %616, %612
  %638 = landingpad { ptr, i32 }
          cleanup
  %639 = extractvalue { ptr, i32 } %638, 0
  store ptr %639, ptr %11, align 8
  %640 = extractvalue { ptr, i32 } %638, 1
  store i32 %640, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %64) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #8
  br label %641

641:                                              ; preds = %637, %633
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #8
  br label %642

642:                                              ; preds = %641, %629
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %60) #8
  br label %643

643:                                              ; preds = %642, %625
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #8
  br label %644

644:                                              ; preds = %643, %621
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #8
  br label %645

645:                                              ; preds = %644, %617
  call void @llvm.lifetime.end.p0(i64 32, ptr %62) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %61) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %60) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %59) #8
  %646 = load i1, ptr %65, align 1
  br i1 %646, label %647, label %648

647:                                              ; preds = %645
  call void @__cxa_free_exception(ptr %600) #8
  br label %648

648:                                              ; preds = %647, %645
  br label %996

649:                                              ; preds = %596
  %650 = load i32, ptr %33, align 4, !tbaa !9
  %651 = icmp eq i32 %650, 0
  br i1 %651, label %652, label %702

652:                                              ; preds = %649
  store i1 true, ptr %72, align 1
  %653 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %66) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %67) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %68) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %69) #8
  %654 = load ptr, ptr %4, align 8, !tbaa !5
  %655 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %654, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %69, ptr noundef @.str.94, ptr noundef nonnull align 8 dereferenceable(32) %655)
          to label %656 unwind label %670

656:                                              ; preds = %652
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %68, ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef @.str.90)
          to label %657 unwind label %674

657:                                              ; preds = %656
  %658 = load ptr, ptr %4, align 8, !tbaa !5
  %659 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %658, i32 0, i32 4
  %660 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %659, i64 noundef 3) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %67, ptr noundef nonnull align 8 dereferenceable(32) %68, ptr noundef nonnull align 8 dereferenceable(32) %660)
          to label %661 unwind label %678

661:                                              ; preds = %657
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %66, ptr noundef nonnull align 8 dereferenceable(32) %67, ptr noundef @.str.58)
          to label %662 unwind label %682

662:                                              ; preds = %661
  %663 = load ptr, ptr %4, align 8, !tbaa !5
  %664 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %663, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef nonnull align 8 dereferenceable(32) %664)
          to label %665 unwind label %686

665:                                              ; preds = %662
  %666 = load ptr, ptr %4, align 8, !tbaa !5
  %667 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %666, i32 0, i32 9
  %668 = load i32, ptr %667, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %71) #8
  store i32 5, ptr %71, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %653, ptr noundef nonnull align 8 dereferenceable(32) %66, ptr noundef %70, i32 noundef %668, ptr noundef nonnull align 4 dereferenceable(4) %71)
          to label %669 unwind label %690

669:                                              ; preds = %665
  store i1 false, ptr %72, align 1
  invoke void @__cxa_throw(ptr %653, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %690

670:                                              ; preds = %652
  %671 = landingpad { ptr, i32 }
          cleanup
  %672 = extractvalue { ptr, i32 } %671, 0
  store ptr %672, ptr %11, align 8
  %673 = extractvalue { ptr, i32 } %671, 1
  store i32 %673, ptr %12, align 4
  br label %698

674:                                              ; preds = %656
  %675 = landingpad { ptr, i32 }
          cleanup
  %676 = extractvalue { ptr, i32 } %675, 0
  store ptr %676, ptr %11, align 8
  %677 = extractvalue { ptr, i32 } %675, 1
  store i32 %677, ptr %12, align 4
  br label %697

678:                                              ; preds = %657
  %679 = landingpad { ptr, i32 }
          cleanup
  %680 = extractvalue { ptr, i32 } %679, 0
  store ptr %680, ptr %11, align 8
  %681 = extractvalue { ptr, i32 } %679, 1
  store i32 %681, ptr %12, align 4
  br label %696

682:                                              ; preds = %661
  %683 = landingpad { ptr, i32 }
          cleanup
  %684 = extractvalue { ptr, i32 } %683, 0
  store ptr %684, ptr %11, align 8
  %685 = extractvalue { ptr, i32 } %683, 1
  store i32 %685, ptr %12, align 4
  br label %695

686:                                              ; preds = %662
  %687 = landingpad { ptr, i32 }
          cleanup
  %688 = extractvalue { ptr, i32 } %687, 0
  store ptr %688, ptr %11, align 8
  %689 = extractvalue { ptr, i32 } %687, 1
  store i32 %689, ptr %12, align 4
  br label %694

690:                                              ; preds = %669, %665
  %691 = landingpad { ptr, i32 }
          cleanup
  %692 = extractvalue { ptr, i32 } %691, 0
  store ptr %692, ptr %11, align 8
  %693 = extractvalue { ptr, i32 } %691, 1
  store i32 %693, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %71) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #8
  br label %694

694:                                              ; preds = %690, %686
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %66) #8
  br label %695

695:                                              ; preds = %694, %682
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #8
  br label %696

696:                                              ; preds = %695, %678
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #8
  br label %697

697:                                              ; preds = %696, %674
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #8
  br label %698

698:                                              ; preds = %697, %670
  call void @llvm.lifetime.end.p0(i64 32, ptr %69) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %68) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %67) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %66) #8
  %699 = load i1, ptr %72, align 1
  br i1 %699, label %700, label %701

700:                                              ; preds = %698
  call void @__cxa_free_exception(ptr %653) #8
  br label %701

701:                                              ; preds = %700, %698
  br label %996

702:                                              ; preds = %649
  %703 = load i32, ptr %34, align 4, !tbaa !9
  %704 = icmp eq i32 %703, 0
  br i1 %704, label %705, label %755

705:                                              ; preds = %702
  store i1 true, ptr %79, align 1
  %706 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %73) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %74) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %75) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %76) #8
  %707 = load ptr, ptr %4, align 8, !tbaa !5
  %708 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %707, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %76, ptr noundef @.str.95, ptr noundef nonnull align 8 dereferenceable(32) %708)
          to label %709 unwind label %723

709:                                              ; preds = %705
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %75, ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef @.str.90)
          to label %710 unwind label %727

710:                                              ; preds = %709
  %711 = load ptr, ptr %4, align 8, !tbaa !5
  %712 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %711, i32 0, i32 4
  %713 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %712, i64 noundef 4) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %74, ptr noundef nonnull align 8 dereferenceable(32) %75, ptr noundef nonnull align 8 dereferenceable(32) %713)
          to label %714 unwind label %731

714:                                              ; preds = %710
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %73, ptr noundef nonnull align 8 dereferenceable(32) %74, ptr noundef @.str.58)
          to label %715 unwind label %735

715:                                              ; preds = %714
  %716 = load ptr, ptr %4, align 8, !tbaa !5
  %717 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %716, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull align 8 dereferenceable(32) %717)
          to label %718 unwind label %739

718:                                              ; preds = %715
  %719 = load ptr, ptr %4, align 8, !tbaa !5
  %720 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %719, i32 0, i32 9
  %721 = load i32, ptr %720, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %78) #8
  store i32 5, ptr %78, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %706, ptr noundef nonnull align 8 dereferenceable(32) %73, ptr noundef %77, i32 noundef %721, ptr noundef nonnull align 4 dereferenceable(4) %78)
          to label %722 unwind label %743

722:                                              ; preds = %718
  store i1 false, ptr %79, align 1
  invoke void @__cxa_throw(ptr %706, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %743

723:                                              ; preds = %705
  %724 = landingpad { ptr, i32 }
          cleanup
  %725 = extractvalue { ptr, i32 } %724, 0
  store ptr %725, ptr %11, align 8
  %726 = extractvalue { ptr, i32 } %724, 1
  store i32 %726, ptr %12, align 4
  br label %751

727:                                              ; preds = %709
  %728 = landingpad { ptr, i32 }
          cleanup
  %729 = extractvalue { ptr, i32 } %728, 0
  store ptr %729, ptr %11, align 8
  %730 = extractvalue { ptr, i32 } %728, 1
  store i32 %730, ptr %12, align 4
  br label %750

731:                                              ; preds = %710
  %732 = landingpad { ptr, i32 }
          cleanup
  %733 = extractvalue { ptr, i32 } %732, 0
  store ptr %733, ptr %11, align 8
  %734 = extractvalue { ptr, i32 } %732, 1
  store i32 %734, ptr %12, align 4
  br label %749

735:                                              ; preds = %714
  %736 = landingpad { ptr, i32 }
          cleanup
  %737 = extractvalue { ptr, i32 } %736, 0
  store ptr %737, ptr %11, align 8
  %738 = extractvalue { ptr, i32 } %736, 1
  store i32 %738, ptr %12, align 4
  br label %748

739:                                              ; preds = %715
  %740 = landingpad { ptr, i32 }
          cleanup
  %741 = extractvalue { ptr, i32 } %740, 0
  store ptr %741, ptr %11, align 8
  %742 = extractvalue { ptr, i32 } %740, 1
  store i32 %742, ptr %12, align 4
  br label %747

743:                                              ; preds = %722, %718
  %744 = landingpad { ptr, i32 }
          cleanup
  %745 = extractvalue { ptr, i32 } %744, 0
  store ptr %745, ptr %11, align 8
  %746 = extractvalue { ptr, i32 } %744, 1
  store i32 %746, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %78) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #8
  br label %747

747:                                              ; preds = %743, %739
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #8
  br label %748

748:                                              ; preds = %747, %735
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #8
  br label %749

749:                                              ; preds = %748, %731
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #8
  br label %750

750:                                              ; preds = %749, %727
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #8
  br label %751

751:                                              ; preds = %750, %723
  call void @llvm.lifetime.end.p0(i64 32, ptr %76) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %75) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %74) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %73) #8
  %752 = load i1, ptr %79, align 1
  br i1 %752, label %753, label %754

753:                                              ; preds = %751
  call void @__cxa_free_exception(ptr %706) #8
  br label %754

754:                                              ; preds = %753, %751
  br label %996

755:                                              ; preds = %702
  %756 = load i32, ptr %35, align 4, !tbaa !9
  %757 = icmp eq i32 %756, 0
  br i1 %757, label %758, label %808

758:                                              ; preds = %755
  store i1 true, ptr %86, align 1
  %759 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %80) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %81) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %82) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %83) #8
  %760 = load ptr, ptr %4, align 8, !tbaa !5
  %761 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %760, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %83, ptr noundef @.str.96, ptr noundef nonnull align 8 dereferenceable(32) %761)
          to label %762 unwind label %776

762:                                              ; preds = %758
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %82, ptr noundef nonnull align 8 dereferenceable(32) %83, ptr noundef @.str.90)
          to label %763 unwind label %780

763:                                              ; preds = %762
  %764 = load ptr, ptr %4, align 8, !tbaa !5
  %765 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %764, i32 0, i32 4
  %766 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %765, i64 noundef 5) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %81, ptr noundef nonnull align 8 dereferenceable(32) %82, ptr noundef nonnull align 8 dereferenceable(32) %766)
          to label %767 unwind label %784

767:                                              ; preds = %763
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %80, ptr noundef nonnull align 8 dereferenceable(32) %81, ptr noundef @.str.58)
          to label %768 unwind label %788

768:                                              ; preds = %767
  %769 = load ptr, ptr %4, align 8, !tbaa !5
  %770 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %769, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %84, ptr noundef nonnull align 8 dereferenceable(32) %770)
          to label %771 unwind label %792

771:                                              ; preds = %768
  %772 = load ptr, ptr %4, align 8, !tbaa !5
  %773 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %772, i32 0, i32 9
  %774 = load i32, ptr %773, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %85) #8
  store i32 5, ptr %85, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %759, ptr noundef nonnull align 8 dereferenceable(32) %80, ptr noundef %84, i32 noundef %774, ptr noundef nonnull align 4 dereferenceable(4) %85)
          to label %775 unwind label %796

775:                                              ; preds = %771
  store i1 false, ptr %86, align 1
  invoke void @__cxa_throw(ptr %759, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %796

776:                                              ; preds = %758
  %777 = landingpad { ptr, i32 }
          cleanup
  %778 = extractvalue { ptr, i32 } %777, 0
  store ptr %778, ptr %11, align 8
  %779 = extractvalue { ptr, i32 } %777, 1
  store i32 %779, ptr %12, align 4
  br label %804

780:                                              ; preds = %762
  %781 = landingpad { ptr, i32 }
          cleanup
  %782 = extractvalue { ptr, i32 } %781, 0
  store ptr %782, ptr %11, align 8
  %783 = extractvalue { ptr, i32 } %781, 1
  store i32 %783, ptr %12, align 4
  br label %803

784:                                              ; preds = %763
  %785 = landingpad { ptr, i32 }
          cleanup
  %786 = extractvalue { ptr, i32 } %785, 0
  store ptr %786, ptr %11, align 8
  %787 = extractvalue { ptr, i32 } %785, 1
  store i32 %787, ptr %12, align 4
  br label %802

788:                                              ; preds = %767
  %789 = landingpad { ptr, i32 }
          cleanup
  %790 = extractvalue { ptr, i32 } %789, 0
  store ptr %790, ptr %11, align 8
  %791 = extractvalue { ptr, i32 } %789, 1
  store i32 %791, ptr %12, align 4
  br label %801

792:                                              ; preds = %768
  %793 = landingpad { ptr, i32 }
          cleanup
  %794 = extractvalue { ptr, i32 } %793, 0
  store ptr %794, ptr %11, align 8
  %795 = extractvalue { ptr, i32 } %793, 1
  store i32 %795, ptr %12, align 4
  br label %800

796:                                              ; preds = %775, %771
  %797 = landingpad { ptr, i32 }
          cleanup
  %798 = extractvalue { ptr, i32 } %797, 0
  store ptr %798, ptr %11, align 8
  %799 = extractvalue { ptr, i32 } %797, 1
  store i32 %799, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %85) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %84) #8
  br label %800

800:                                              ; preds = %796, %792
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %80) #8
  br label %801

801:                                              ; preds = %800, %788
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %81) #8
  br label %802

802:                                              ; preds = %801, %784
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %82) #8
  br label %803

803:                                              ; preds = %802, %780
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %83) #8
  br label %804

804:                                              ; preds = %803, %776
  call void @llvm.lifetime.end.p0(i64 32, ptr %83) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %82) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %81) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %80) #8
  %805 = load i1, ptr %86, align 1
  br i1 %805, label %806, label %807

806:                                              ; preds = %804
  call void @__cxa_free_exception(ptr %759) #8
  br label %807

807:                                              ; preds = %806, %804
  br label %996

808:                                              ; preds = %755
  %809 = load i32, ptr %36, align 4, !tbaa !9
  %810 = icmp eq i32 %809, 0
  br i1 %810, label %811, label %861

811:                                              ; preds = %808
  store i1 true, ptr %93, align 1
  %812 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %87) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %88) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %89) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %90) #8
  %813 = load ptr, ptr %4, align 8, !tbaa !5
  %814 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %813, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %90, ptr noundef @.str.97, ptr noundef nonnull align 8 dereferenceable(32) %814)
          to label %815 unwind label %829

815:                                              ; preds = %811
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %89, ptr noundef nonnull align 8 dereferenceable(32) %90, ptr noundef @.str.90)
          to label %816 unwind label %833

816:                                              ; preds = %815
  %817 = load ptr, ptr %4, align 8, !tbaa !5
  %818 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %817, i32 0, i32 4
  %819 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %818, i64 noundef 6) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %88, ptr noundef nonnull align 8 dereferenceable(32) %89, ptr noundef nonnull align 8 dereferenceable(32) %819)
          to label %820 unwind label %837

820:                                              ; preds = %816
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %87, ptr noundef nonnull align 8 dereferenceable(32) %88, ptr noundef @.str.58)
          to label %821 unwind label %841

821:                                              ; preds = %820
  %822 = load ptr, ptr %4, align 8, !tbaa !5
  %823 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %822, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %91, ptr noundef nonnull align 8 dereferenceable(32) %823)
          to label %824 unwind label %845

824:                                              ; preds = %821
  %825 = load ptr, ptr %4, align 8, !tbaa !5
  %826 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %825, i32 0, i32 9
  %827 = load i32, ptr %826, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %92) #8
  store i32 5, ptr %92, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %812, ptr noundef nonnull align 8 dereferenceable(32) %87, ptr noundef %91, i32 noundef %827, ptr noundef nonnull align 4 dereferenceable(4) %92)
          to label %828 unwind label %849

828:                                              ; preds = %824
  store i1 false, ptr %93, align 1
  invoke void @__cxa_throw(ptr %812, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %849

829:                                              ; preds = %811
  %830 = landingpad { ptr, i32 }
          cleanup
  %831 = extractvalue { ptr, i32 } %830, 0
  store ptr %831, ptr %11, align 8
  %832 = extractvalue { ptr, i32 } %830, 1
  store i32 %832, ptr %12, align 4
  br label %857

833:                                              ; preds = %815
  %834 = landingpad { ptr, i32 }
          cleanup
  %835 = extractvalue { ptr, i32 } %834, 0
  store ptr %835, ptr %11, align 8
  %836 = extractvalue { ptr, i32 } %834, 1
  store i32 %836, ptr %12, align 4
  br label %856

837:                                              ; preds = %816
  %838 = landingpad { ptr, i32 }
          cleanup
  %839 = extractvalue { ptr, i32 } %838, 0
  store ptr %839, ptr %11, align 8
  %840 = extractvalue { ptr, i32 } %838, 1
  store i32 %840, ptr %12, align 4
  br label %855

841:                                              ; preds = %820
  %842 = landingpad { ptr, i32 }
          cleanup
  %843 = extractvalue { ptr, i32 } %842, 0
  store ptr %843, ptr %11, align 8
  %844 = extractvalue { ptr, i32 } %842, 1
  store i32 %844, ptr %12, align 4
  br label %854

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

849:                                              ; preds = %828, %824
  %850 = landingpad { ptr, i32 }
          cleanup
  %851 = extractvalue { ptr, i32 } %850, 0
  store ptr %851, ptr %11, align 8
  %852 = extractvalue { ptr, i32 } %850, 1
  store i32 %852, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %92) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %91) #8
  br label %853

853:                                              ; preds = %849, %845
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %87) #8
  br label %854

854:                                              ; preds = %853, %841
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %88) #8
  br label %855

855:                                              ; preds = %854, %837
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %89) #8
  br label %856

856:                                              ; preds = %855, %833
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %90) #8
  br label %857

857:                                              ; preds = %856, %829
  call void @llvm.lifetime.end.p0(i64 32, ptr %90) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %89) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %88) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %87) #8
  %858 = load i1, ptr %93, align 1
  br i1 %858, label %859, label %860

859:                                              ; preds = %857
  call void @__cxa_free_exception(ptr %812) #8
  br label %860

860:                                              ; preds = %859, %857
  br label %996

861:                                              ; preds = %808
  %862 = load i32, ptr %36, align 4, !tbaa !9
  %863 = icmp eq i32 %862, 0
  br i1 %863, label %864, label %914

864:                                              ; preds = %861
  store i1 true, ptr %100, align 1
  %865 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %94) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %95) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %96) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %97) #8
  %866 = load ptr, ptr %4, align 8, !tbaa !5
  %867 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %866, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %97, ptr noundef @.str.98, ptr noundef nonnull align 8 dereferenceable(32) %867)
          to label %868 unwind label %882

868:                                              ; preds = %864
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %96, ptr noundef nonnull align 8 dereferenceable(32) %97, ptr noundef @.str.90)
          to label %869 unwind label %886

869:                                              ; preds = %868
  %870 = load ptr, ptr %4, align 8, !tbaa !5
  %871 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %870, i32 0, i32 4
  %872 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %871, i64 noundef 7) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %95, ptr noundef nonnull align 8 dereferenceable(32) %96, ptr noundef nonnull align 8 dereferenceable(32) %872)
          to label %873 unwind label %890

873:                                              ; preds = %869
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %94, ptr noundef nonnull align 8 dereferenceable(32) %95, ptr noundef @.str.58)
          to label %874 unwind label %894

874:                                              ; preds = %873
  %875 = load ptr, ptr %4, align 8, !tbaa !5
  %876 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %875, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %98, ptr noundef nonnull align 8 dereferenceable(32) %876)
          to label %877 unwind label %898

877:                                              ; preds = %874
  %878 = load ptr, ptr %4, align 8, !tbaa !5
  %879 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %878, i32 0, i32 9
  %880 = load i32, ptr %879, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %99) #8
  store i32 5, ptr %99, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %865, ptr noundef nonnull align 8 dereferenceable(32) %94, ptr noundef %98, i32 noundef %880, ptr noundef nonnull align 4 dereferenceable(4) %99)
          to label %881 unwind label %902

881:                                              ; preds = %877
  store i1 false, ptr %100, align 1
  invoke void @__cxa_throw(ptr %865, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %902

882:                                              ; preds = %864
  %883 = landingpad { ptr, i32 }
          cleanup
  %884 = extractvalue { ptr, i32 } %883, 0
  store ptr %884, ptr %11, align 8
  %885 = extractvalue { ptr, i32 } %883, 1
  store i32 %885, ptr %12, align 4
  br label %910

886:                                              ; preds = %868
  %887 = landingpad { ptr, i32 }
          cleanup
  %888 = extractvalue { ptr, i32 } %887, 0
  store ptr %888, ptr %11, align 8
  %889 = extractvalue { ptr, i32 } %887, 1
  store i32 %889, ptr %12, align 4
  br label %909

890:                                              ; preds = %869
  %891 = landingpad { ptr, i32 }
          cleanup
  %892 = extractvalue { ptr, i32 } %891, 0
  store ptr %892, ptr %11, align 8
  %893 = extractvalue { ptr, i32 } %891, 1
  store i32 %893, ptr %12, align 4
  br label %908

894:                                              ; preds = %873
  %895 = landingpad { ptr, i32 }
          cleanup
  %896 = extractvalue { ptr, i32 } %895, 0
  store ptr %896, ptr %11, align 8
  %897 = extractvalue { ptr, i32 } %895, 1
  store i32 %897, ptr %12, align 4
  br label %907

898:                                              ; preds = %874
  %899 = landingpad { ptr, i32 }
          cleanup
  %900 = extractvalue { ptr, i32 } %899, 0
  store ptr %900, ptr %11, align 8
  %901 = extractvalue { ptr, i32 } %899, 1
  store i32 %901, ptr %12, align 4
  br label %906

902:                                              ; preds = %881, %877
  %903 = landingpad { ptr, i32 }
          cleanup
  %904 = extractvalue { ptr, i32 } %903, 0
  store ptr %904, ptr %11, align 8
  %905 = extractvalue { ptr, i32 } %903, 1
  store i32 %905, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %99) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %98) #8
  br label %906

906:                                              ; preds = %902, %898
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %94) #8
  br label %907

907:                                              ; preds = %906, %894
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %95) #8
  br label %908

908:                                              ; preds = %907, %890
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %96) #8
  br label %909

909:                                              ; preds = %908, %886
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %97) #8
  br label %910

910:                                              ; preds = %909, %882
  call void @llvm.lifetime.end.p0(i64 32, ptr %97) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %96) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %95) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %94) #8
  %911 = load i1, ptr %100, align 1
  br i1 %911, label %912, label %913

912:                                              ; preds = %910
  call void @__cxa_free_exception(ptr %865) #8
  br label %913

913:                                              ; preds = %912, %910
  br label %996

914:                                              ; preds = %861
  %915 = load i32, ptr %31, align 4, !tbaa !9
  %916 = icmp slt i32 %915, 0
  br i1 %916, label %917, label %967

917:                                              ; preds = %914
  store i1 true, ptr %107, align 1
  %918 = call ptr @__cxa_allocate_exception(i64 152) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %101) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %102) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %103) #8
  call void @llvm.lifetime.start.p0(i64 32, ptr %104) #8
  %919 = load ptr, ptr %4, align 8, !tbaa !5
  %920 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %919, i32 0, i32 2
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %104, ptr noundef @.str.99, ptr noundef nonnull align 8 dereferenceable(32) %920)
          to label %921 unwind label %935

921:                                              ; preds = %917
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %103, ptr noundef nonnull align 8 dereferenceable(32) %104, ptr noundef @.str.90)
          to label %922 unwind label %939

922:                                              ; preds = %921
  %923 = load ptr, ptr %4, align 8, !tbaa !5
  %924 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %923, i32 0, i32 4
  %925 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %924, i64 noundef 4) #8
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %102, ptr noundef nonnull align 8 dereferenceable(32) %103, ptr noundef nonnull align 8 dereferenceable(32) %925)
          to label %926 unwind label %943

926:                                              ; preds = %922
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind writable sret(%"class.std::__cxx11::basic_string") align 8 %101, ptr noundef nonnull align 8 dereferenceable(32) %102, ptr noundef @.str.58)
          to label %927 unwind label %947

927:                                              ; preds = %926
  %928 = load ptr, ptr %4, align 8, !tbaa !5
  %929 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %928, i32 0, i32 0
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %105, ptr noundef nonnull align 8 dereferenceable(32) %929)
          to label %930 unwind label %951

930:                                              ; preds = %927
  %931 = load ptr, ptr %4, align 8, !tbaa !5
  %932 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %931, i32 0, i32 9
  %933 = load i32, ptr %932, align 4, !tbaa !12
  call void @llvm.lifetime.start.p0(i64 4, ptr %106) #8
  store i32 5, ptr %106, align 4, !tbaa !22
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %918, ptr noundef nonnull align 8 dereferenceable(32) %101, ptr noundef %105, i32 noundef %933, ptr noundef nonnull align 4 dereferenceable(4) %106)
          to label %934 unwind label %955

934:                                              ; preds = %930
  store i1 false, ptr %107, align 1
  invoke void @__cxa_throw(ptr %918, ptr @_ZTIN4Glip9ExceptionE, ptr @_ZN4Glip9ExceptionD1Ev) #9
          to label %1004 unwind label %955

935:                                              ; preds = %917
  %936 = landingpad { ptr, i32 }
          cleanup
  %937 = extractvalue { ptr, i32 } %936, 0
  store ptr %937, ptr %11, align 8
  %938 = extractvalue { ptr, i32 } %936, 1
  store i32 %938, ptr %12, align 4
  br label %963

939:                                              ; preds = %921
  %940 = landingpad { ptr, i32 }
          cleanup
  %941 = extractvalue { ptr, i32 } %940, 0
  store ptr %941, ptr %11, align 8
  %942 = extractvalue { ptr, i32 } %940, 1
  store i32 %942, ptr %12, align 4
  br label %962

943:                                              ; preds = %922
  %944 = landingpad { ptr, i32 }
          cleanup
  %945 = extractvalue { ptr, i32 } %944, 0
  store ptr %945, ptr %11, align 8
  %946 = extractvalue { ptr, i32 } %944, 1
  store i32 %946, ptr %12, align 4
  br label %961

947:                                              ; preds = %926
  %948 = landingpad { ptr, i32 }
          cleanup
  %949 = extractvalue { ptr, i32 } %948, 0
  store ptr %949, ptr %11, align 8
  %950 = extractvalue { ptr, i32 } %948, 1
  store i32 %950, ptr %12, align 4
  br label %960

951:                                              ; preds = %927
  %952 = landingpad { ptr, i32 }
          cleanup
  %953 = extractvalue { ptr, i32 } %952, 0
  store ptr %953, ptr %11, align 8
  %954 = extractvalue { ptr, i32 } %952, 1
  store i32 %954, ptr %12, align 4
  br label %959

955:                                              ; preds = %934, %930
  %956 = landingpad { ptr, i32 }
          cleanup
  %957 = extractvalue { ptr, i32 } %956, 0
  store ptr %957, ptr %11, align 8
  %958 = extractvalue { ptr, i32 } %956, 1
  store i32 %958, ptr %12, align 4
  call void @llvm.lifetime.end.p0(i64 4, ptr %106) #8
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %105) #8
  br label %959

959:                                              ; preds = %955, %951
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %101) #8
  br label %960

960:                                              ; preds = %959, %947
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %102) #8
  br label %961

961:                                              ; preds = %960, %943
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %103) #8
  br label %962

962:                                              ; preds = %961, %939
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %104) #8
  br label %963

963:                                              ; preds = %962, %935
  call void @llvm.lifetime.end.p0(i64 32, ptr %104) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %103) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %102) #8
  call void @llvm.lifetime.end.p0(i64 32, ptr %101) #8
  %964 = load i1, ptr %107, align 1
  br i1 %964, label %965, label %966

965:                                              ; preds = %963
  call void @__cxa_free_exception(ptr %918) #8
  br label %966

966:                                              ; preds = %965, %963
  br label %996

967:                                              ; preds = %914
  %968 = getelementptr inbounds %"class.Glip::Modules::LayoutLoader", ptr %111, i32 0, i32 6
  call void @llvm.lifetime.start.p0(i64 88, ptr %108) #8
  %969 = load ptr, ptr %4, align 8, !tbaa !5
  %970 = getelementptr inbounds %"struct.Glip::Modules::VanillaParserSpace::Element", ptr %969, i32 0, i32 2
  call void @llvm.lifetime.start.p0(i64 56, ptr %109) #8
  %971 = load i32, ptr %29, align 4, !tbaa !9
  %972 = load i32, ptr %30, align 4, !tbaa !9
  %973 = load i32, ptr %32, align 4, !tbaa !9
  %974 = load i32, ptr %33, align 4, !tbaa !9
  %975 = load i32, ptr %34, align 4, !tbaa !9
  %976 = load i32, ptr %35, align 4, !tbaa !9
  %977 = load i32, ptr %36, align 4, !tbaa !9
  %978 = load i32, ptr %37, align 4, !tbaa !9
  %979 = load i32, ptr %31, align 4, !tbaa !9
  call void @_ZN4Glip6CoreGL16HdlTextureFormatC1Eiijjjjjjii(ptr noundef nonnull align 8 dereferenceable(52) %109, i32 noundef %971, i32 noundef %972, i32 noundef %973, i32 noundef %974, i32 noundef %975, i32 noundef %976, i32 noundef %977, i32 noundef %978, i32 noundef 0, i32 noundef %979)
  invoke void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEC2IRKS5_S8_TnNSt9enable_ifIXaaclsr5_PCCPE22_MoveConstructiblePairIT_T0_EEclsr5_PCCPE30_ImplicitlyMoveConvertiblePairISE_SF_EEEbE4typeELb1EEEOSE_OSF_(ptr noundef nonnull align 8 dereferenceable(88) %108, ptr noundef nonnull align 8 dereferenceable(32) %970, ptr noundef nonnull align 8 dereferenceable(52) %109)
          to label %980 unwind label %987

980:                                              ; preds = %967
  %981 = invoke { ptr, i8 } @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE6insertISB_IS5_S8_EEENSt9enable_ifIXsr16is_constructibleISD_T_EE5valueESB_ISt17_Rb_tree_iteratorISD_EbEE4typeEOSJ_(ptr noundef nonnull align 8 dereferenceable(48) %968, ptr noundef nonnull align 8 dereferenceable(88) %108)
          to label %982 unwind label %991

982:                                              ; preds = %980
  %983 = getelementptr inbounds { ptr, i8 }, ptr %110, i32 0, i32 0
  %984 = extractvalue { ptr, i8 } %981, 0
  store ptr %984, ptr %983, align 8
  %985 = getelementptr inbounds { ptr, i8 }, ptr %110, i32 0, i32 1
  %986 = extractvalue { ptr, i8 } %981, 1
  store i8 %986, ptr %985, align 8
  call void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEED2Ev(ptr noundef nonnull align 8 dereferenceable(88) %108) #8
  call void @_ZN4Glip6CoreGL24HdlAbstractTextureFormatD2Ev(ptr noundef nonnull align 8 dereferenceable(52) %109) #8
  call void @llvm.lifetime.end.p0(i64 56, ptr %109) #8
  call void @llvm.lifetime.end.p0(i64 88, ptr %108) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #8
  call void @llvm.lifetime.end.p0(i64 8, ptr %13) #8
  ret void

987:                                              ; preds = %967
  %988 = landingpad { ptr, i32 }
          cleanup
  %989 = extractvalue { ptr, i32 } %988, 0
  store ptr %989, ptr %11, align 8
  %990 = extractvalue { ptr, i32 } %988, 1
  store i32 %990, ptr %12, align 4
  br label %995

991:                                              ; preds = %980
  %992 = landingpad { ptr, i32 }
          cleanup
  %993 = extractvalue { ptr, i32 } %992, 0
  store ptr %993, ptr %11, align 8
  %994 = extractvalue { ptr, i32 } %992, 1
  store i32 %994, ptr %12, align 4
  call void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEED2Ev(ptr noundef nonnull align 8 dereferenceable(88) %108) #8
  br label %995

995:                                              ; preds = %991, %987
  call void @_ZN4Glip6CoreGL24HdlAbstractTextureFormatD2Ev(ptr noundef nonnull align 8 dereferenceable(52) %109) #8
  call void @llvm.lifetime.end.p0(i64 56, ptr %109) #8
  call void @llvm.lifetime.end.p0(i64 88, ptr %108) #8
  br label %996

996:                                              ; preds = %995, %966, %913, %860, %807, %754, %701, %648, %589, %370, %295
  call void @llvm.lifetime.end.p0(i64 4, ptr %37) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %36) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %35) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %34) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %33) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %32) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %31) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %30) #8
  call void @llvm.lifetime.end.p0(i64 4, ptr %29) #8
  br label %997

997:                                              ; preds = %996, %226
  call void @llvm.lifetime.end.p0(i64 8, ptr %22) #8
  br label %998

998:                                              ; preds = %997, %180
  call void @llvm.lifetime.end.p0(i64 8, ptr %13) #8
  br label %999

999:                                              ; preds = %998, %158
  %1000 = load ptr, ptr %11, align 8
  %1001 = load i32, ptr %12, align 4
  %1002 = insertvalue { ptr, i32 } poison, ptr %1000, 0
  %1003 = insertvalue { ptr, i32 } %1002, i32 %1001, 1
  resume { ptr, i32 } %1003

1004:                                             ; preds = %934, %881, %828, %775, %722, %669, %616, %557, %338, %263, %204, %149
  unreachable
}

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) #0

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) #7

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat8getWidthEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN4Glip10fromStringIiEEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 4 dereferenceable(4)) #2

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getHeightEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getGLModeEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

declare noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32)) #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat10getGLDepthEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMinFilterEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMagFilterEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getSWrappingEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getTWrappingEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat11getMaxLevelEv(ptr noundef nonnull align 8 dereferenceable(52)) #4

; Function Attrs: mustprogress uwtable
declare dso_local { ptr, i8 } @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE6insertISB_IS5_S8_EEENSt9enable_ifIXsr16is_constructibleISD_T_EE5valueESB_ISt17_Rb_tree_iteratorISD_EbEE4typeEOSJ_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(88)) #2 align 2

declare void @_ZN4Glip6CoreGL16HdlTextureFormatC1Eiijjjjjjii(ptr noundef nonnull align 8 dereferenceable(52), i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEC2IRKS5_S8_TnNSt9enable_ifIXaaclsr5_PCCPE22_MoveConstructiblePairIT_T0_EEclsr5_PCCPE30_ImplicitlyMoveConvertiblePairISE_SF_EEEbE4typeELb1EEEOSE_OSF_(ptr noundef nonnull align 8 dereferenceable(88), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(52)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEED2Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #7 align 2

; Function Attrs: nounwind
declare void @_ZN4Glip6CoreGL24HdlAbstractTextureFormatD2Ev(ptr noundef nonnull align 8 dereferenceable(52)) unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #0 align 2

attributes #0 = { 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 #1 = { nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { 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 = { 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 #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 = { nounwind "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 nounwind willreturn memory(argmem: readwrite) }
attributes #7 = { 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 #8 = { nounwind }
attributes #9 = { noreturn }

!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 = !{i64 0, i64 8, !5}
!12 = !{!13, !10, i64 156}
!13 = !{!"_ZTSN4Glip7Modules18VanillaParserSpace7ElementE", !14, i64 0, !14, i64 32, !14, i64 64, !14, i64 96, !17, i64 128, !21, i64 152, !21, i64 153, !21, i64 154, !10, i64 156, !10, i64 160}
!14 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !15, i64 0, !16, i64 8, !7, i64 16}
!15 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !6, i64 0}
!16 = !{!"long", !7, i64 0}
!17 = !{!"_ZTSSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !18, i64 0}
!18 = !{!"_ZTSSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !19, i64 0}
!19 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE12_Vector_implE", !20, i64 0}
!20 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_Vector_impl_dataE", !6, i64 0, !6, i64 8, !6, i64 16}
!21 = !{!"bool", !7, i64 0}
!22 = !{!23, !23, i64 0}
!23 = !{!"_ZTSN4Glip9Exception4TypeE", !7, i64 0}


; 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.std::__cxx11::basic_string" = type { %"struct.std::__cxx11::basic_string<char>::_Alloc_hider", i64, %union.anon }
%"struct.std::__cxx11::basic_string<char>::_Alloc_hider" = type { ptr }
%union.anon = type { i64, [8 x i8] }
%"class.std::allocator" = type { i8 }
%"struct.std::_Rb_tree_iterator.83" = type { ptr }
%"struct.std::pair.122" = type { %"class.std::__cxx11::basic_string", %"class.Glip::CoreGL::HdlTextureFormat" }
%"class.Glip::CoreGL::HdlTextureFormat" = type { %"class.Glip::CoreGL::HdlAbstractTextureFormat.base", [4 x i8] }
%"class.Glip::CoreGL::HdlAbstractTextureFormat.base" = type <{ ptr, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32, i32 }>

@_ZTIN4Glip9ExceptionE = external constant ptr
@.str.58 = external hidden unnamed_addr constant [3 x i8], align 1
@.str.83 = external hidden unnamed_addr constant [15 x i8], align 1
@.str.84 = external hidden unnamed_addr constant [22 x i8], align 1
@.str.85 = external hidden unnamed_addr constant [17 x i8], align 1
@.str.86 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.87 = external hidden unnamed_addr constant [26 x i8], align 1
@.str.88 = external hidden unnamed_addr constant [2 x i8], align 1
@.str.89 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.90 = external hidden unnamed_addr constant [13 x i8], align 1
@.str.91 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.92 = external hidden unnamed_addr constant [32 x i8], align 1
@.str.93 = external hidden unnamed_addr constant [30 x i8], align 1
@.str.94 = external hidden unnamed_addr constant [31 x i8], align 1
@.str.95 = external hidden unnamed_addr constant [35 x i8], align 1
@.str.96 = external hidden unnamed_addr constant [35 x i8], align 1
@.str.97 = external hidden unnamed_addr constant [35 x i8], align 1
@.str.99 = external hidden unnamed_addr constant [39 x i8], align 1

declare i32 @__gxx_personality_v0(...)

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #0 align 2

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

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

; Function Attrs: mustprogress nounwind uwtable
declare void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #2 align 2

declare ptr @__cxa_allocate_exception(i64) local_unnamed_addr

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #3

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef, ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2

declare void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef, i32 noundef, ptr noundef nonnull align 4 dereferenceable(4)) unnamed_addr #4

; Function Attrs: nounwind
declare void @_ZN4Glip9ExceptionD1Ev(ptr noundef nonnull align 8 dereferenceable(152)) unnamed_addr #5

declare void @__cxa_throw(ptr, ptr, ptr) local_unnamed_addr

declare void @__cxa_free_exception(ptr) local_unnamed_addr

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZN4Glip7Modules12LayoutLoader16preliminaryTestsERKNS0_18VanillaParserSpace7ElementERKiS7_S7_S7_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(624), ptr noundef nonnull align 8 dereferenceable(164), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 4 dereferenceable(4), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2 align 2

; Function Attrs: mustprogress uwtable
declare void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress uwtable
declare dso_local void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind noalias writable sret(%"class.std::__cxx11::basic_string") align 8, ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #3

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0

; Function Attrs: mustprogress nounwind uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48)) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
declare dso_local ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE4findERSC_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #2 align 2

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

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24), i64 noundef) local_unnamed_addr #0 align 2

; Function Attrs: mustprogress uwtable
define dso_local void @_ZN4Glip7Modules12LayoutLoader19buildRequiredFormatERKNS0_18VanillaParserSpace7ElementE(ptr noundef nonnull align 8 dereferenceable(624) %0, ptr noundef nonnull align 8 dereferenceable(164) %1) local_unnamed_addr #2 align 2 personality ptr @__gxx_personality_v0 {
  %3 = alloca i32, align 4
  %4 = alloca i32, align 4
  %5 = alloca i32, align 4
  %6 = alloca i32, align 4
  %7 = alloca %"class.std::__cxx11::basic_string", align 8
  %8 = alloca %"class.std::allocator", align 1
  %9 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %10 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %11 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %12 = alloca %"class.std::__cxx11::basic_string", align 8
  %13 = alloca %"class.std::__cxx11::basic_string", align 8
  %14 = alloca %"class.std::__cxx11::basic_string", align 8
  %15 = alloca i32, align 4
  %16 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %17 = alloca %"struct.std::_Rb_tree_iterator.83", align 8
  %18 = alloca %"class.std::__cxx11::basic_string", align 8
  %19 = alloca %"class.std::__cxx11::basic_string", align 8
  %20 = alloca %"class.std::__cxx11::basic_string", align 8
  %21 = alloca i32, align 4
  %22 = alloca i32, align 4
  %23 = alloca i32, align 4
  %24 = alloca i32, align 4
  %25 = alloca %"class.std::__cxx11::basic_string", align 8
  %26 = alloca %"class.std::__cxx11::basic_string", align 8
  %27 = alloca %"class.std::__cxx11::basic_string", align 8
  %28 = alloca %"class.std::__cxx11::basic_string", align 8
  %29 = alloca %"class.std::__cxx11::basic_string", align 8
  %30 = alloca i32, align 4
  %31 = alloca %"class.std::__cxx11::basic_string", align 8
  %32 = alloca %"class.std::__cxx11::basic_string", align 8
  %33 = alloca %"class.std::__cxx11::basic_string", align 8
  %34 = alloca %"class.std::__cxx11::basic_string", align 8
  %35 = alloca %"class.std::__cxx11::basic_string", align 8
  %36 = alloca i32, align 4
  %37 = alloca %"class.std::__cxx11::basic_string", align 8
  %38 = alloca %"class.std::__cxx11::basic_string", align 8
  %39 = alloca %"class.std::__cxx11::basic_string", align 8
  %40 = alloca %"class.std::__cxx11::basic_string", align 8
  %41 = alloca %"class.std::__cxx11::basic_string", align 8
  %42 = alloca i32, align 4
  %43 = alloca %"class.std::__cxx11::basic_string", align 8
  %44 = alloca %"class.std::__cxx11::basic_string", align 8
  %45 = alloca %"class.std::__cxx11::basic_string", align 8
  %46 = alloca %"class.std::__cxx11::basic_string", align 8
  %47 = alloca %"class.std::__cxx11::basic_string", align 8
  %48 = alloca i32, align 4
  %49 = alloca %"class.std::__cxx11::basic_string", align 8
  %50 = alloca %"class.std::__cxx11::basic_string", align 8
  %51 = alloca %"class.std::__cxx11::basic_string", align 8
  %52 = alloca %"class.std::__cxx11::basic_string", align 8
  %53 = alloca %"class.std::__cxx11::basic_string", align 8
  %54 = alloca i32, align 4
  %55 = alloca %"class.std::__cxx11::basic_string", align 8
  %56 = alloca %"class.std::__cxx11::basic_string", align 8
  %57 = alloca %"class.std::__cxx11::basic_string", align 8
  %58 = alloca %"class.std::__cxx11::basic_string", align 8
  %59 = alloca %"class.std::__cxx11::basic_string", align 8
  %60 = alloca i32, align 4
  %61 = alloca %"class.std::__cxx11::basic_string", align 8
  %62 = alloca %"class.std::__cxx11::basic_string", align 8
  %63 = alloca %"class.std::__cxx11::basic_string", align 8
  %64 = alloca %"class.std::__cxx11::basic_string", align 8
  %65 = alloca %"class.std::__cxx11::basic_string", align 8
  %66 = alloca i32, align 4
  %67 = alloca %"class.std::__cxx11::basic_string", align 8
  %68 = alloca %"class.std::__cxx11::basic_string", align 8
  %69 = alloca %"class.std::__cxx11::basic_string", align 8
  %70 = alloca %"class.std::__cxx11::basic_string", align 8
  %71 = alloca %"class.std::__cxx11::basic_string", align 8
  %72 = alloca i32, align 4
  %73 = alloca %"class.std::__cxx11::basic_string", align 8
  %74 = alloca %"class.std::__cxx11::basic_string", align 8
  %75 = alloca %"class.std::__cxx11::basic_string", align 8
  %76 = alloca %"class.std::__cxx11::basic_string", align 8
  %77 = alloca %"class.std::__cxx11::basic_string", align 8
  %78 = alloca i32, align 4
  %79 = alloca %"struct.std::pair.122", align 8
  %80 = alloca %"class.Glip::CoreGL::HdlTextureFormat", align 8
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %3) #7
  store i32 1, ptr %3, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %4) #7
  store i32 1, ptr %4, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %5) #7
  store i32 10, ptr %5, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %6) #7
  store i32 -1, ptr %6, align 4, !tbaa !5
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %7) #7
  call void @llvm.lifetime.start.p0(i64 1, ptr nonnull %8) #7
  call void @_ZNSaIcEC2Ev(ptr noundef nonnull align 1 dereferenceable(1) %8) #7
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2IS3_EEPKcRKS3_(ptr noundef nonnull align 8 dereferenceable(32) %7, ptr noundef nonnull @.str.83, ptr noundef nonnull align 1 dereferenceable(1) %8)
          to label %81 unwind label %104

81:                                               ; preds = %2
  invoke void @_ZN4Glip7Modules12LayoutLoader16preliminaryTestsERKNS0_18VanillaParserSpace7ElementERKiS7_S7_S7_RKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(624) %0, ptr noundef nonnull align 8 dereferenceable(164) %1, ptr noundef nonnull align 4 dereferenceable(4) %3, ptr noundef nonnull align 4 dereferenceable(4) %4, ptr noundef nonnull align 4 dereferenceable(4) %5, ptr noundef nonnull align 4 dereferenceable(4) %6, ptr noundef nonnull align 8 dereferenceable(32) %7)
          to label %82 unwind label %106

82:                                               ; preds = %81
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #7
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %8) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %8) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %7) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %6) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %5) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %4) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %3) #7
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %9) #7
  %83 = getelementptr inbounds i8, ptr %0, i64 384
  %84 = getelementptr inbounds i8, ptr %1, i64 128
  %85 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 0) #7
  %86 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE4findERSC_(ptr noundef nonnull align 8 dereferenceable(48) %83, ptr noundef nonnull align 8 dereferenceable(32) %85)
  store ptr %86, ptr %9, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %10) #7
  %87 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %83) #7
  store ptr %87, ptr %10, align 8
  %88 = call noundef zeroext i1 @_ZSteqRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8) %9, ptr noundef nonnull align 8 dereferenceable(8) %10) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %10) #7
  br i1 %88, label %89, label %117

89:                                               ; preds = %82
  %90 = getelementptr inbounds i8, ptr %0, i64 120
  %91 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 0) #7
  %92 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE4findERSC_(ptr noundef nonnull align 8 dereferenceable(48) %90, ptr noundef nonnull align 8 dereferenceable(32) %91)
  store ptr %92, ptr %9, align 8, !tbaa !9
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %11) #7
  %93 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %90) #7
  store ptr %93, ptr %11, align 8
  %94 = call noundef zeroext i1 @_ZSteqRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8) %9, ptr noundef nonnull align 8 dereferenceable(8) %11) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %11) #7
  br i1 %94, label %95, label %117

95:                                               ; preds = %89
  %96 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %12) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %13) #7
  %97 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 0) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %13, ptr noundef nonnull @.str.84, ptr noundef nonnull align 8 dereferenceable(32) %97)
          to label %98 unwind label %.thread

98:                                               ; preds = %95
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %12, ptr noundef nonnull align 8 dereferenceable(32) %13, ptr noundef nonnull @.str.85)
          to label %99 unwind label %.thread313

99:                                               ; preds = %98
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %14, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %100 unwind label %111

100:                                              ; preds = %99
  %101 = getelementptr inbounds i8, ptr %1, i64 156
  %102 = load i32, ptr %101, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %15) #7
  store i32 5, ptr %15, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %96, ptr noundef nonnull align 8 dereferenceable(32) %12, ptr noundef nonnull %14, i32 noundef %102, ptr noundef nonnull align 4 dereferenceable(4) %15)
          to label %103 unwind label %113

103:                                              ; preds = %100
  invoke void @__cxa_throw(ptr nonnull %96, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %113

104:                                              ; preds = %2
  %105 = landingpad { ptr, i32 }
          cleanup
  br label %108

106:                                              ; preds = %81
  %107 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %7) #7
  br label %108

108:                                              ; preds = %106, %104
  %.pn = phi { ptr, i32 } [ %107, %106 ], [ %105, %104 ]
  call void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1) %8) #7
  call void @llvm.lifetime.end.p0(i64 1, ptr nonnull %8) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %7) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %6) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %5) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %4) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %3) #7
  br label %544

.thread:                                          ; preds = %95
  %109 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #7
  br label %116

.thread313:                                       ; preds = %98
  %110 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #7
  br label %116

111:                                              ; preds = %99
  %112 = landingpad { ptr, i32 }
          cleanup
  br label %115

113:                                              ; preds = %103, %100
  %.0237 = phi i1 [ false, %103 ], [ true, %100 ]
  %114 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %15) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %14) #7
  br label %115

115:                                              ; preds = %111, %113
  %.1238 = phi i1 [ %.0237, %113 ], [ true, %111 ]
  %.pn304 = phi { ptr, i32 } [ %114, %113 ], [ %112, %111 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %12) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %13) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %13) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %12) #7
  br i1 %.1238, label %116, label %543

116:                                              ; preds = %.thread313, %.thread, %115
  %.pn304.pn.pn312 = phi { ptr, i32 } [ %109, %.thread ], [ %.pn304, %115 ], [ %110, %.thread313 ]
  call void @__cxa_free_exception(ptr %96) #7
  br label %543

117:                                              ; preds = %89, %82
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %16) #7
  %118 = getelementptr inbounds i8, ptr %0, i64 120
  %119 = getelementptr inbounds i8, ptr %1, i64 64
  %120 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE4findERSC_(ptr noundef nonnull align 8 dereferenceable(48) %118, ptr noundef nonnull align 8 dereferenceable(32) %119)
  store ptr %120, ptr %16, align 8
  call void @llvm.lifetime.start.p0(i64 8, ptr nonnull %17) #7
  %121 = call ptr @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE3endEv(ptr noundef nonnull align 8 dereferenceable(48) %118) #7
  store ptr %121, ptr %17, align 8
  %122 = call noundef zeroext i1 @_ZStneRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8) %16, ptr noundef nonnull align 8 dereferenceable(8) %17) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %17) #7
  br i1 %122, label %123, label %139

123:                                              ; preds = %117
  %124 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %18) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %19) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %19, ptr noundef nonnull @.str.86, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %125 unwind label %.thread316

125:                                              ; preds = %123
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %18, ptr noundef nonnull align 8 dereferenceable(32) %19, ptr noundef nonnull @.str.87)
          to label %126 unwind label %.thread320

126:                                              ; preds = %125
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %20, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %127 unwind label %133

127:                                              ; preds = %126
  %128 = getelementptr inbounds i8, ptr %1, i64 156
  %129 = load i32, ptr %128, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %21) #7
  store i32 5, ptr %21, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %124, ptr noundef nonnull align 8 dereferenceable(32) %18, ptr noundef nonnull %20, i32 noundef %129, ptr noundef nonnull align 4 dereferenceable(4) %21)
          to label %130 unwind label %135

130:                                              ; preds = %127
  invoke void @__cxa_throw(ptr nonnull %124, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %135

.thread316:                                       ; preds = %123
  %131 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #7
  br label %138

.thread320:                                       ; preds = %125
  %132 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #7
  br label %138

133:                                              ; preds = %126
  %134 = landingpad { ptr, i32 }
          cleanup
  br label %137

135:                                              ; preds = %130, %127
  %.0233 = phi i1 [ false, %130 ], [ true, %127 ]
  %136 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %21) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %20) #7
  br label %137

137:                                              ; preds = %133, %135
  %.1234 = phi i1 [ %.0233, %135 ], [ true, %133 ]
  %.pn299 = phi { ptr, i32 } [ %136, %135 ], [ %134, %133 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %18) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %19) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %19) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %18) #7
  br i1 %.1234, label %138, label %542

138:                                              ; preds = %.thread320, %.thread316, %137
  %.pn299.pn.pn319 = phi { ptr, i32 } [ %131, %.thread316 ], [ %.pn299, %137 ], [ %132, %.thread320 ]
  call void @__cxa_free_exception(ptr %124) #7
  br label %542

139:                                              ; preds = %117
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %22) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %23) #7
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %24) #7
  store i32 0, ptr %24, align 4, !tbaa !5
  %140 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %141 = icmp ugt i64 %140, 1
  br i1 %141, label %142, label %177

142:                                              ; preds = %139
  %143 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 1) #7
  %144 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %143, ptr noundef nonnull @.str.88)
  br i1 %144, label %145, label %149

145:                                              ; preds = %142
  %146 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %147 = getelementptr inbounds i8, ptr %146, i64 32
  %148 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat8getWidthEv(ptr noundef nonnull align 8 dereferenceable(52) %147)
  store i32 %148, ptr %22, align 4, !tbaa !5
  br label %181

149:                                              ; preds = %142
  %150 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 1) #7
  %151 = call noundef zeroext i1 @_ZN4Glip10fromStringIiEEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_(ptr noundef nonnull align 8 dereferenceable(32) %150, ptr noundef nonnull align 4 dereferenceable(4) %22)
  br i1 %151, label %181, label %152

152:                                              ; preds = %149
  %153 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %25) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %26) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %27) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %28) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %28, ptr noundef nonnull @.str.89, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %154 unwind label %.thread323

154:                                              ; preds = %152
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %27, ptr noundef nonnull align 8 dereferenceable(32) %28, ptr noundef nonnull @.str.90)
          to label %155 unwind label %.thread327

155:                                              ; preds = %154
  %156 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 0) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %26, ptr noundef nonnull align 8 dereferenceable(32) %27, ptr noundef nonnull align 8 dereferenceable(32) %156)
          to label %157 unwind label %165

157:                                              ; preds = %155
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %25, ptr noundef nonnull align 8 dereferenceable(32) %26, ptr noundef nonnull @.str.58)
          to label %158 unwind label %167

158:                                              ; preds = %157
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %29, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %159 unwind label %169

159:                                              ; preds = %158
  %160 = getelementptr inbounds i8, ptr %1, i64 156
  %161 = load i32, ptr %160, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %30) #7
  store i32 5, ptr %30, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %153, ptr noundef nonnull align 8 dereferenceable(32) %25, ptr noundef nonnull %29, i32 noundef %161, ptr noundef nonnull align 4 dereferenceable(4) %30)
          to label %162 unwind label %171

162:                                              ; preds = %159
  invoke void @__cxa_throw(ptr nonnull %153, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %171

.thread323:                                       ; preds = %152
  %163 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #7
  br label %176

.thread327:                                       ; preds = %154
  %164 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #7
  br label %176

165:                                              ; preds = %155
  %166 = landingpad { ptr, i32 }
          cleanup
  br label %175

167:                                              ; preds = %157
  %168 = landingpad { ptr, i32 }
          cleanup
  br label %174

169:                                              ; preds = %158
  %170 = landingpad { ptr, i32 }
          cleanup
  br label %173

171:                                              ; preds = %162, %159
  %.0221 = phi i1 [ false, %162 ], [ true, %159 ]
  %172 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %30) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %29) #7
  br label %173

173:                                              ; preds = %171, %169
  %.1222 = phi i1 [ %.0221, %171 ], [ true, %169 ]
  %.pn242 = phi { ptr, i32 } [ %172, %171 ], [ %170, %169 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %25) #7
  br label %174

174:                                              ; preds = %173, %167
  %.2223 = phi i1 [ %.1222, %173 ], [ true, %167 ]
  %.pn242.pn = phi { ptr, i32 } [ %.pn242, %173 ], [ %168, %167 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %26) #7
  br label %175

175:                                              ; preds = %165, %174
  %.3224 = phi i1 [ %.2223, %174 ], [ true, %165 ]
  %.pn242.pn.pn = phi { ptr, i32 } [ %.pn242.pn, %174 ], [ %166, %165 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %27) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %28) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %28) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %27) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %26) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %25) #7
  br i1 %.3224, label %176, label %541

176:                                              ; preds = %.thread327, %.thread323, %175
  %.pn242.pn.pn.pn.pn326 = phi { ptr, i32 } [ %163, %.thread323 ], [ %.pn242.pn.pn, %175 ], [ %164, %.thread327 ]
  call void @__cxa_free_exception(ptr %153) #7
  br label %541

177:                                              ; preds = %139
  %178 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %179 = getelementptr inbounds i8, ptr %178, i64 32
  %180 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat8getWidthEv(ptr noundef nonnull align 8 dereferenceable(52) %179)
  store i32 %180, ptr %22, align 4, !tbaa !5
  br label %181

181:                                              ; preds = %145, %149, %177
  %182 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %183 = icmp ugt i64 %182, 2
  br i1 %183, label %184, label %219

184:                                              ; preds = %181
  %185 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 2) #7
  %186 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %185, ptr noundef nonnull @.str.88)
  br i1 %186, label %187, label %191

187:                                              ; preds = %184
  %188 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %189 = getelementptr inbounds i8, ptr %188, i64 32
  %190 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getHeightEv(ptr noundef nonnull align 8 dereferenceable(52) %189)
  store i32 %190, ptr %23, align 4, !tbaa !5
  br label %223

191:                                              ; preds = %184
  %192 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 2) #7
  %193 = call noundef zeroext i1 @_ZN4Glip10fromStringIiEEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_(ptr noundef nonnull align 8 dereferenceable(32) %192, ptr noundef nonnull align 4 dereferenceable(4) %23)
  br i1 %193, label %223, label %194

194:                                              ; preds = %191
  %195 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %31) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %32) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %33) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %34) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %34, ptr noundef nonnull @.str.91, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %196 unwind label %.thread330

196:                                              ; preds = %194
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %33, ptr noundef nonnull align 8 dereferenceable(32) %34, ptr noundef nonnull @.str.90)
          to label %197 unwind label %.thread334

197:                                              ; preds = %196
  %198 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 0) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %32, ptr noundef nonnull align 8 dereferenceable(32) %33, ptr noundef nonnull align 8 dereferenceable(32) %198)
          to label %199 unwind label %207

199:                                              ; preds = %197
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %31, ptr noundef nonnull align 8 dereferenceable(32) %32, ptr noundef nonnull @.str.58)
          to label %200 unwind label %209

200:                                              ; preds = %199
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %35, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %201 unwind label %211

201:                                              ; preds = %200
  %202 = getelementptr inbounds i8, ptr %1, i64 156
  %203 = load i32, ptr %202, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %36) #7
  store i32 5, ptr %36, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %195, ptr noundef nonnull align 8 dereferenceable(32) %31, ptr noundef nonnull %35, i32 noundef %203, ptr noundef nonnull align 4 dereferenceable(4) %36)
          to label %204 unwind label %213

204:                                              ; preds = %201
  invoke void @__cxa_throw(ptr nonnull %195, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %213

.thread330:                                       ; preds = %194
  %205 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #7
  br label %218

.thread334:                                       ; preds = %196
  %206 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #7
  br label %218

207:                                              ; preds = %197
  %208 = landingpad { ptr, i32 }
          cleanup
  br label %217

209:                                              ; preds = %199
  %210 = landingpad { ptr, i32 }
          cleanup
  br label %216

211:                                              ; preds = %200
  %212 = landingpad { ptr, i32 }
          cleanup
  br label %215

213:                                              ; preds = %204, %201
  %.0215 = phi i1 [ false, %204 ], [ true, %201 ]
  %214 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %36) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %35) #7
  br label %215

215:                                              ; preds = %213, %211
  %.1216 = phi i1 [ %.0215, %213 ], [ true, %211 ]
  %.pn248 = phi { ptr, i32 } [ %214, %213 ], [ %212, %211 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %31) #7
  br label %216

216:                                              ; preds = %215, %209
  %.2217 = phi i1 [ %.1216, %215 ], [ true, %209 ]
  %.pn248.pn = phi { ptr, i32 } [ %.pn248, %215 ], [ %210, %209 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %32) #7
  br label %217

217:                                              ; preds = %207, %216
  %.3218 = phi i1 [ %.2217, %216 ], [ true, %207 ]
  %.pn248.pn.pn = phi { ptr, i32 } [ %.pn248.pn, %216 ], [ %208, %207 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %33) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %34) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %34) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %33) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %32) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %31) #7
  br i1 %.3218, label %218, label %541

218:                                              ; preds = %.thread334, %.thread330, %217
  %.pn248.pn.pn.pn.pn333 = phi { ptr, i32 } [ %205, %.thread330 ], [ %.pn248.pn.pn, %217 ], [ %206, %.thread334 ]
  call void @__cxa_free_exception(ptr %195) #7
  br label %541

219:                                              ; preds = %181
  %220 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %221 = getelementptr inbounds i8, ptr %220, i64 32
  %222 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getHeightEv(ptr noundef nonnull align 8 dereferenceable(52) %221)
  store i32 %222, ptr %23, align 4, !tbaa !5
  br label %223

223:                                              ; preds = %187, %191, %219
  %224 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %225 = icmp ugt i64 %224, 3
  br i1 %225, label %226, label %236

226:                                              ; preds = %223
  %227 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 3) #7
  %228 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %227, ptr noundef nonnull @.str.88)
  br i1 %228, label %229, label %233

229:                                              ; preds = %226
  %230 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %231 = getelementptr inbounds i8, ptr %230, i64 32
  %232 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getGLModeEv(ptr noundef nonnull align 8 dereferenceable(52) %231)
  br label %240

233:                                              ; preds = %226
  %234 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 3) #7
  %235 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %234)
  br label %240

236:                                              ; preds = %223
  %237 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %238 = getelementptr inbounds i8, ptr %237, i64 32
  %239 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getGLModeEv(ptr noundef nonnull align 8 dereferenceable(52) %238)
  br label %240

240:                                              ; preds = %229, %233, %236
  %.0232 = phi i32 [ %232, %229 ], [ %235, %233 ], [ %239, %236 ]
  %241 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %242 = icmp ugt i64 %241, 4
  br i1 %242, label %243, label %253

243:                                              ; preds = %240
  %244 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 4) #7
  %245 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %244, ptr noundef nonnull @.str.88)
  br i1 %245, label %246, label %250

246:                                              ; preds = %243
  %247 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %248 = getelementptr inbounds i8, ptr %247, i64 32
  %249 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat10getGLDepthEv(ptr noundef nonnull align 8 dereferenceable(52) %248)
  br label %257

250:                                              ; preds = %243
  %251 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 4) #7
  %252 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %251)
  br label %257

253:                                              ; preds = %240
  %254 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %255 = getelementptr inbounds i8, ptr %254, i64 32
  %256 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat10getGLDepthEv(ptr noundef nonnull align 8 dereferenceable(52) %255)
  br label %257

257:                                              ; preds = %246, %250, %253
  %.0231 = phi i32 [ %249, %246 ], [ %252, %250 ], [ %256, %253 ]
  %258 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %259 = icmp ugt i64 %258, 5
  br i1 %259, label %260, label %270

260:                                              ; preds = %257
  %261 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 5) #7
  %262 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %261, ptr noundef nonnull @.str.88)
  br i1 %262, label %263, label %267

263:                                              ; preds = %260
  %264 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %265 = getelementptr inbounds i8, ptr %264, i64 32
  %266 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMinFilterEv(ptr noundef nonnull align 8 dereferenceable(52) %265)
  br label %274

267:                                              ; preds = %260
  %268 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 5) #7
  %269 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %268)
  br label %274

270:                                              ; preds = %257
  %271 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %272 = getelementptr inbounds i8, ptr %271, i64 32
  %273 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMinFilterEv(ptr noundef nonnull align 8 dereferenceable(52) %272)
  br label %274

274:                                              ; preds = %263, %267, %270
  %.0230 = phi i32 [ %266, %263 ], [ %269, %267 ], [ %273, %270 ]
  %275 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %276 = icmp ugt i64 %275, 6
  br i1 %276, label %277, label %287

277:                                              ; preds = %274
  %278 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 6) #7
  %279 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %278, ptr noundef nonnull @.str.88)
  br i1 %279, label %280, label %284

280:                                              ; preds = %277
  %281 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %282 = getelementptr inbounds i8, ptr %281, i64 32
  %283 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMagFilterEv(ptr noundef nonnull align 8 dereferenceable(52) %282)
  br label %291

284:                                              ; preds = %277
  %285 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 6) #7
  %286 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %285)
  br label %291

287:                                              ; preds = %274
  %288 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %289 = getelementptr inbounds i8, ptr %288, i64 32
  %290 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMagFilterEv(ptr noundef nonnull align 8 dereferenceable(52) %289)
  br label %291

291:                                              ; preds = %280, %284, %287
  %.0229 = phi i32 [ %283, %280 ], [ %286, %284 ], [ %290, %287 ]
  %292 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %293 = icmp ugt i64 %292, 7
  br i1 %293, label %294, label %304

294:                                              ; preds = %291
  %295 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 7) #7
  %296 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %295, ptr noundef nonnull @.str.88)
  br i1 %296, label %297, label %301

297:                                              ; preds = %294
  %298 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %299 = getelementptr inbounds i8, ptr %298, i64 32
  %300 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getSWrappingEv(ptr noundef nonnull align 8 dereferenceable(52) %299)
  br label %308

301:                                              ; preds = %294
  %302 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 7) #7
  %303 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %302)
  br label %308

304:                                              ; preds = %291
  %305 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %306 = getelementptr inbounds i8, ptr %305, i64 32
  %307 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getSWrappingEv(ptr noundef nonnull align 8 dereferenceable(52) %306)
  br label %308

308:                                              ; preds = %297, %301, %304
  %.0228 = phi i32 [ %300, %297 ], [ %303, %301 ], [ %307, %304 ]
  %309 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %310 = icmp ugt i64 %309, 8
  br i1 %310, label %311, label %321

311:                                              ; preds = %308
  %312 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 8) #7
  %313 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %312, ptr noundef nonnull @.str.88)
  br i1 %313, label %314, label %318

314:                                              ; preds = %311
  %315 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %316 = getelementptr inbounds i8, ptr %315, i64 32
  %317 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getTWrappingEv(ptr noundef nonnull align 8 dereferenceable(52) %316)
  br label %325

318:                                              ; preds = %311
  %319 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 8) #7
  %320 = call noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32) %319)
  br label %325

321:                                              ; preds = %308
  %322 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %323 = getelementptr inbounds i8, ptr %322, i64 32
  %324 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getTWrappingEv(ptr noundef nonnull align 8 dereferenceable(52) %323)
  br label %325

325:                                              ; preds = %314, %318, %321
  %.0227 = phi i32 [ %317, %314 ], [ %320, %318 ], [ %324, %321 ]
  %326 = call noundef i64 @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE4sizeEv(ptr noundef nonnull align 8 dereferenceable(24) %84) #7
  %327 = icmp ugt i64 %326, 9
  br i1 %327, label %328, label %363

328:                                              ; preds = %325
  %329 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 9) #7
  %330 = call noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32) %329, ptr noundef nonnull @.str.88)
  br i1 %330, label %331, label %335

331:                                              ; preds = %328
  %332 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %333 = getelementptr inbounds i8, ptr %332, i64 32
  %334 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat11getMaxLevelEv(ptr noundef nonnull align 8 dereferenceable(52) %333)
  store i32 %334, ptr %24, align 4, !tbaa !5
  br label %367

335:                                              ; preds = %328
  %336 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 9) #7
  %337 = call noundef zeroext i1 @_ZN4Glip10fromStringIiEEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_(ptr noundef nonnull align 8 dereferenceable(32) %336, ptr noundef nonnull align 4 dereferenceable(4) %24)
  br i1 %337, label %367, label %338

338:                                              ; preds = %335
  %339 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %37) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %38) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %39) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %40) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %40, ptr noundef nonnull @.str.92, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %340 unwind label %.thread337

340:                                              ; preds = %338
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %39, ptr noundef nonnull align 8 dereferenceable(32) %40, ptr noundef nonnull @.str.90)
          to label %341 unwind label %.thread341

341:                                              ; preds = %340
  %342 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 8) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %38, ptr noundef nonnull align 8 dereferenceable(32) %39, ptr noundef nonnull align 8 dereferenceable(32) %342)
          to label %343 unwind label %351

343:                                              ; preds = %341
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %37, ptr noundef nonnull align 8 dereferenceable(32) %38, ptr noundef nonnull @.str.58)
          to label %344 unwind label %353

344:                                              ; preds = %343
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %41, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %345 unwind label %355

345:                                              ; preds = %344
  %346 = getelementptr inbounds i8, ptr %1, i64 156
  %347 = load i32, ptr %346, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %42) #7
  store i32 5, ptr %42, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %339, ptr noundef nonnull align 8 dereferenceable(32) %37, ptr noundef nonnull %41, i32 noundef %347, ptr noundef nonnull align 4 dereferenceable(4) %42)
          to label %348 unwind label %357

348:                                              ; preds = %345
  invoke void @__cxa_throw(ptr nonnull %339, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %357

.thread337:                                       ; preds = %338
  %349 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #7
  br label %362

.thread341:                                       ; preds = %340
  %350 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #7
  br label %362

351:                                              ; preds = %341
  %352 = landingpad { ptr, i32 }
          cleanup
  br label %361

353:                                              ; preds = %343
  %354 = landingpad { ptr, i32 }
          cleanup
  br label %360

355:                                              ; preds = %344
  %356 = landingpad { ptr, i32 }
          cleanup
  br label %359

357:                                              ; preds = %348, %345
  %.0209 = phi i1 [ false, %348 ], [ true, %345 ]
  %358 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %42) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %41) #7
  br label %359

359:                                              ; preds = %357, %355
  %.1210 = phi i1 [ %.0209, %357 ], [ true, %355 ]
  %.pn254 = phi { ptr, i32 } [ %358, %357 ], [ %356, %355 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %37) #7
  br label %360

360:                                              ; preds = %359, %353
  %.2211 = phi i1 [ %.1210, %359 ], [ true, %353 ]
  %.pn254.pn = phi { ptr, i32 } [ %.pn254, %359 ], [ %354, %353 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %38) #7
  br label %361

361:                                              ; preds = %351, %360
  %.3212 = phi i1 [ %.2211, %360 ], [ true, %351 ]
  %.pn254.pn.pn = phi { ptr, i32 } [ %.pn254.pn, %360 ], [ %352, %351 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %39) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %40) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %40) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %39) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %38) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %37) #7
  br i1 %.3212, label %362, label %541

362:                                              ; preds = %.thread341, %.thread337, %361
  %.pn254.pn.pn.pn.pn340 = phi { ptr, i32 } [ %349, %.thread337 ], [ %.pn254.pn.pn, %361 ], [ %350, %.thread341 ]
  call void @__cxa_free_exception(ptr %339) #7
  br label %541

363:                                              ; preds = %325
  %364 = call noundef ptr @_ZNKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEEptEv(ptr noundef nonnull align 8 dereferenceable(8) %9) #7
  %365 = getelementptr inbounds i8, ptr %364, i64 32
  %366 = call noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat11getMaxLevelEv(ptr noundef nonnull align 8 dereferenceable(52) %365)
  store i32 %366, ptr %24, align 4, !tbaa !5
  br label %367

367:                                              ; preds = %331, %335, %363
  %368 = icmp eq i32 %.0232, 0
  br i1 %368, label %369, label %394

369:                                              ; preds = %367
  %370 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %43) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %44) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %45) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %46) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %46, ptr noundef nonnull @.str.93, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %371 unwind label %.thread344

371:                                              ; preds = %369
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %45, ptr noundef nonnull align 8 dereferenceable(32) %46, ptr noundef nonnull @.str.90)
          to label %372 unwind label %.thread348

372:                                              ; preds = %371
  %373 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 2) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %44, ptr noundef nonnull align 8 dereferenceable(32) %45, ptr noundef nonnull align 8 dereferenceable(32) %373)
          to label %374 unwind label %382

374:                                              ; preds = %372
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %43, ptr noundef nonnull align 8 dereferenceable(32) %44, ptr noundef nonnull @.str.58)
          to label %375 unwind label %384

375:                                              ; preds = %374
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %47, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %376 unwind label %386

376:                                              ; preds = %375
  %377 = getelementptr inbounds i8, ptr %1, i64 156
  %378 = load i32, ptr %377, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %48) #7
  store i32 5, ptr %48, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %370, ptr noundef nonnull align 8 dereferenceable(32) %43, ptr noundef nonnull %47, i32 noundef %378, ptr noundef nonnull align 4 dereferenceable(4) %48)
          to label %379 unwind label %388

379:                                              ; preds = %376
  invoke void @__cxa_throw(ptr nonnull %370, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %388

.thread344:                                       ; preds = %369
  %380 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %45) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %44) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #7
  br label %393

.thread348:                                       ; preds = %371
  %381 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %45) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %44) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #7
  br label %393

382:                                              ; preds = %372
  %383 = landingpad { ptr, i32 }
          cleanup
  br label %392

384:                                              ; preds = %374
  %385 = landingpad { ptr, i32 }
          cleanup
  br label %391

386:                                              ; preds = %375
  %387 = landingpad { ptr, i32 }
          cleanup
  br label %390

388:                                              ; preds = %379, %376
  %.0203 = phi i1 [ false, %379 ], [ true, %376 ]
  %389 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %48) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %47) #7
  br label %390

390:                                              ; preds = %388, %386
  %.1204 = phi i1 [ %.0203, %388 ], [ true, %386 ]
  %.pn292 = phi { ptr, i32 } [ %389, %388 ], [ %387, %386 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %43) #7
  br label %391

391:                                              ; preds = %390, %384
  %.2205 = phi i1 [ %.1204, %390 ], [ true, %384 ]
  %.pn292.pn = phi { ptr, i32 } [ %.pn292, %390 ], [ %385, %384 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %44) #7
  br label %392

392:                                              ; preds = %382, %391
  %.3206 = phi i1 [ %.2205, %391 ], [ true, %382 ]
  %.pn292.pn.pn = phi { ptr, i32 } [ %.pn292.pn, %391 ], [ %383, %382 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %45) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %46) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %46) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %45) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %44) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %43) #7
  br i1 %.3206, label %393, label %541

393:                                              ; preds = %.thread348, %.thread344, %392
  %.pn292.pn.pn.pn.pn347 = phi { ptr, i32 } [ %380, %.thread344 ], [ %.pn292.pn.pn, %392 ], [ %381, %.thread348 ]
  call void @__cxa_free_exception(ptr %370) #7
  br label %541

394:                                              ; preds = %367
  %395 = icmp eq i32 %.0231, 0
  br i1 %395, label %396, label %421

396:                                              ; preds = %394
  %397 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %49) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %50) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %51) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %52) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %52, ptr noundef nonnull @.str.94, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %398 unwind label %.thread351

398:                                              ; preds = %396
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %51, ptr noundef nonnull align 8 dereferenceable(32) %52, ptr noundef nonnull @.str.90)
          to label %399 unwind label %.thread355

399:                                              ; preds = %398
  %400 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 3) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %50, ptr noundef nonnull align 8 dereferenceable(32) %51, ptr noundef nonnull align 8 dereferenceable(32) %400)
          to label %401 unwind label %409

401:                                              ; preds = %399
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %49, ptr noundef nonnull align 8 dereferenceable(32) %50, ptr noundef nonnull @.str.58)
          to label %402 unwind label %411

402:                                              ; preds = %401
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %53, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %403 unwind label %413

403:                                              ; preds = %402
  %404 = getelementptr inbounds i8, ptr %1, i64 156
  %405 = load i32, ptr %404, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %54) #7
  store i32 5, ptr %54, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %397, ptr noundef nonnull align 8 dereferenceable(32) %49, ptr noundef nonnull %53, i32 noundef %405, ptr noundef nonnull align 4 dereferenceable(4) %54)
          to label %406 unwind label %415

406:                                              ; preds = %403
  invoke void @__cxa_throw(ptr nonnull %397, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %415

.thread351:                                       ; preds = %396
  %407 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %52) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %49) #7
  br label %420

.thread355:                                       ; preds = %398
  %408 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %52) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %49) #7
  br label %420

409:                                              ; preds = %399
  %410 = landingpad { ptr, i32 }
          cleanup
  br label %419

411:                                              ; preds = %401
  %412 = landingpad { ptr, i32 }
          cleanup
  br label %418

413:                                              ; preds = %402
  %414 = landingpad { ptr, i32 }
          cleanup
  br label %417

415:                                              ; preds = %406, %403
  %.0197 = phi i1 [ false, %406 ], [ true, %403 ]
  %416 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %54) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %53) #7
  br label %417

417:                                              ; preds = %415, %413
  %.1198 = phi i1 [ %.0197, %415 ], [ true, %413 ]
  %.pn286 = phi { ptr, i32 } [ %416, %415 ], [ %414, %413 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %49) #7
  br label %418

418:                                              ; preds = %417, %411
  %.2199 = phi i1 [ %.1198, %417 ], [ true, %411 ]
  %.pn286.pn = phi { ptr, i32 } [ %.pn286, %417 ], [ %412, %411 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %50) #7
  br label %419

419:                                              ; preds = %409, %418
  %.3200 = phi i1 [ %.2199, %418 ], [ true, %409 ]
  %.pn286.pn.pn = phi { ptr, i32 } [ %.pn286.pn, %418 ], [ %410, %409 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %51) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %52) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %52) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %51) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %50) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %49) #7
  br i1 %.3200, label %420, label %541

420:                                              ; preds = %.thread355, %.thread351, %419
  %.pn286.pn.pn.pn.pn354 = phi { ptr, i32 } [ %407, %.thread351 ], [ %.pn286.pn.pn, %419 ], [ %408, %.thread355 ]
  call void @__cxa_free_exception(ptr %397) #7
  br label %541

421:                                              ; preds = %394
  %422 = icmp eq i32 %.0230, 0
  br i1 %422, label %423, label %448

423:                                              ; preds = %421
  %424 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %55) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %56) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %57) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %58) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %58, ptr noundef nonnull @.str.95, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %425 unwind label %.thread358

425:                                              ; preds = %423
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %57, ptr noundef nonnull align 8 dereferenceable(32) %58, ptr noundef nonnull @.str.90)
          to label %426 unwind label %.thread362

426:                                              ; preds = %425
  %427 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 4) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %56, ptr noundef nonnull align 8 dereferenceable(32) %57, ptr noundef nonnull align 8 dereferenceable(32) %427)
          to label %428 unwind label %436

428:                                              ; preds = %426
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %55, ptr noundef nonnull align 8 dereferenceable(32) %56, ptr noundef nonnull @.str.58)
          to label %429 unwind label %438

429:                                              ; preds = %428
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %59, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %430 unwind label %440

430:                                              ; preds = %429
  %431 = getelementptr inbounds i8, ptr %1, i64 156
  %432 = load i32, ptr %431, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %60) #7
  store i32 5, ptr %60, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %424, ptr noundef nonnull align 8 dereferenceable(32) %55, ptr noundef nonnull %59, i32 noundef %432, ptr noundef nonnull align 4 dereferenceable(4) %60)
          to label %433 unwind label %442

433:                                              ; preds = %430
  invoke void @__cxa_throw(ptr nonnull %424, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %442

.thread358:                                       ; preds = %423
  %434 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %58) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %57) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %56) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %55) #7
  br label %447

.thread362:                                       ; preds = %425
  %435 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %58) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %57) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %56) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %55) #7
  br label %447

436:                                              ; preds = %426
  %437 = landingpad { ptr, i32 }
          cleanup
  br label %446

438:                                              ; preds = %428
  %439 = landingpad { ptr, i32 }
          cleanup
  br label %445

440:                                              ; preds = %429
  %441 = landingpad { ptr, i32 }
          cleanup
  br label %444

442:                                              ; preds = %433, %430
  %.0191 = phi i1 [ false, %433 ], [ true, %430 ]
  %443 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %60) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %59) #7
  br label %444

444:                                              ; preds = %442, %440
  %.1192 = phi i1 [ %.0191, %442 ], [ true, %440 ]
  %.pn280 = phi { ptr, i32 } [ %443, %442 ], [ %441, %440 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %55) #7
  br label %445

445:                                              ; preds = %444, %438
  %.2193 = phi i1 [ %.1192, %444 ], [ true, %438 ]
  %.pn280.pn = phi { ptr, i32 } [ %.pn280, %444 ], [ %439, %438 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %56) #7
  br label %446

446:                                              ; preds = %436, %445
  %.3194 = phi i1 [ %.2193, %445 ], [ true, %436 ]
  %.pn280.pn.pn = phi { ptr, i32 } [ %.pn280.pn, %445 ], [ %437, %436 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %57) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %58) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %58) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %57) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %56) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %55) #7
  br i1 %.3194, label %447, label %541

447:                                              ; preds = %.thread362, %.thread358, %446
  %.pn280.pn.pn.pn.pn361 = phi { ptr, i32 } [ %434, %.thread358 ], [ %.pn280.pn.pn, %446 ], [ %435, %.thread362 ]
  call void @__cxa_free_exception(ptr %424) #7
  br label %541

448:                                              ; preds = %421
  %449 = icmp eq i32 %.0229, 0
  br i1 %449, label %450, label %475

450:                                              ; preds = %448
  %451 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %61) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %62) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %63) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %64) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %64, ptr noundef nonnull @.str.96, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %452 unwind label %.thread365

452:                                              ; preds = %450
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %63, ptr noundef nonnull align 8 dereferenceable(32) %64, ptr noundef nonnull @.str.90)
          to label %453 unwind label %.thread369

453:                                              ; preds = %452
  %454 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 5) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %62, ptr noundef nonnull align 8 dereferenceable(32) %63, ptr noundef nonnull align 8 dereferenceable(32) %454)
          to label %455 unwind label %463

455:                                              ; preds = %453
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %61, ptr noundef nonnull align 8 dereferenceable(32) %62, ptr noundef nonnull @.str.58)
          to label %456 unwind label %465

456:                                              ; preds = %455
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %65, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %457 unwind label %467

457:                                              ; preds = %456
  %458 = getelementptr inbounds i8, ptr %1, i64 156
  %459 = load i32, ptr %458, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %66) #7
  store i32 5, ptr %66, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %451, ptr noundef nonnull align 8 dereferenceable(32) %61, ptr noundef nonnull %65, i32 noundef %459, ptr noundef nonnull align 4 dereferenceable(4) %66)
          to label %460 unwind label %469

460:                                              ; preds = %457
  invoke void @__cxa_throw(ptr nonnull %451, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %469

.thread365:                                       ; preds = %450
  %461 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %64) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %63) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #7
  br label %474

.thread369:                                       ; preds = %452
  %462 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %64) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %63) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #7
  br label %474

463:                                              ; preds = %453
  %464 = landingpad { ptr, i32 }
          cleanup
  br label %473

465:                                              ; preds = %455
  %466 = landingpad { ptr, i32 }
          cleanup
  br label %472

467:                                              ; preds = %456
  %468 = landingpad { ptr, i32 }
          cleanup
  br label %471

469:                                              ; preds = %460, %457
  %.0185 = phi i1 [ false, %460 ], [ true, %457 ]
  %470 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %66) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %65) #7
  br label %471

471:                                              ; preds = %469, %467
  %.1186 = phi i1 [ %.0185, %469 ], [ true, %467 ]
  %.pn274 = phi { ptr, i32 } [ %470, %469 ], [ %468, %467 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %61) #7
  br label %472

472:                                              ; preds = %471, %465
  %.2187 = phi i1 [ %.1186, %471 ], [ true, %465 ]
  %.pn274.pn = phi { ptr, i32 } [ %.pn274, %471 ], [ %466, %465 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %62) #7
  br label %473

473:                                              ; preds = %463, %472
  %.3188 = phi i1 [ %.2187, %472 ], [ true, %463 ]
  %.pn274.pn.pn = phi { ptr, i32 } [ %.pn274.pn, %472 ], [ %464, %463 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %63) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %64) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %64) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %63) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %62) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %61) #7
  br i1 %.3188, label %474, label %541

474:                                              ; preds = %.thread369, %.thread365, %473
  %.pn274.pn.pn.pn.pn368 = phi { ptr, i32 } [ %461, %.thread365 ], [ %.pn274.pn.pn, %473 ], [ %462, %.thread369 ]
  call void @__cxa_free_exception(ptr %451) #7
  br label %541

475:                                              ; preds = %448
  %476 = icmp eq i32 %.0228, 0
  br i1 %476, label %477, label %502

477:                                              ; preds = %475
  %478 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %67) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %68) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %69) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %70) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %70, ptr noundef nonnull @.str.97, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %479 unwind label %.thread372

479:                                              ; preds = %477
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %69, ptr noundef nonnull align 8 dereferenceable(32) %70, ptr noundef nonnull @.str.90)
          to label %480 unwind label %.thread376

480:                                              ; preds = %479
  %481 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 6) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %68, ptr noundef nonnull align 8 dereferenceable(32) %69, ptr noundef nonnull align 8 dereferenceable(32) %481)
          to label %482 unwind label %490

482:                                              ; preds = %480
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %67, ptr noundef nonnull align 8 dereferenceable(32) %68, ptr noundef nonnull @.str.58)
          to label %483 unwind label %492

483:                                              ; preds = %482
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %71, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %484 unwind label %494

484:                                              ; preds = %483
  %485 = getelementptr inbounds i8, ptr %1, i64 156
  %486 = load i32, ptr %485, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %72) #7
  store i32 5, ptr %72, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %478, ptr noundef nonnull align 8 dereferenceable(32) %67, ptr noundef nonnull %71, i32 noundef %486, ptr noundef nonnull align 4 dereferenceable(4) %72)
          to label %487 unwind label %496

487:                                              ; preds = %484
  invoke void @__cxa_throw(ptr nonnull %478, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %496

.thread372:                                       ; preds = %477
  %488 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %70) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %67) #7
  br label %501

.thread376:                                       ; preds = %479
  %489 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %70) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %67) #7
  br label %501

490:                                              ; preds = %480
  %491 = landingpad { ptr, i32 }
          cleanup
  br label %500

492:                                              ; preds = %482
  %493 = landingpad { ptr, i32 }
          cleanup
  br label %499

494:                                              ; preds = %483
  %495 = landingpad { ptr, i32 }
          cleanup
  br label %498

496:                                              ; preds = %487, %484
  %.0179 = phi i1 [ false, %487 ], [ true, %484 ]
  %497 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %72) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %71) #7
  br label %498

498:                                              ; preds = %496, %494
  %.1180 = phi i1 [ %.0179, %496 ], [ true, %494 ]
  %.pn268 = phi { ptr, i32 } [ %497, %496 ], [ %495, %494 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %67) #7
  br label %499

499:                                              ; preds = %498, %492
  %.2181 = phi i1 [ %.1180, %498 ], [ true, %492 ]
  %.pn268.pn = phi { ptr, i32 } [ %.pn268, %498 ], [ %493, %492 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %68) #7
  br label %500

500:                                              ; preds = %490, %499
  %.3182 = phi i1 [ %.2181, %499 ], [ true, %490 ]
  %.pn268.pn.pn = phi { ptr, i32 } [ %.pn268.pn, %499 ], [ %491, %490 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %69) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %70) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %70) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %69) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %68) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %67) #7
  br i1 %.3182, label %501, label %541

501:                                              ; preds = %.thread376, %.thread372, %500
  %.pn268.pn.pn.pn.pn375 = phi { ptr, i32 } [ %488, %.thread372 ], [ %.pn268.pn.pn, %500 ], [ %489, %.thread376 ]
  call void @__cxa_free_exception(ptr %478) #7
  br label %541

502:                                              ; preds = %475
  %503 = load i32, ptr %24, align 4, !tbaa !5
  %504 = icmp slt i32 %503, 0
  br i1 %504, label %505, label %530

505:                                              ; preds = %502
  %506 = call ptr @__cxa_allocate_exception(i64 152) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %73) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %74) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %75) #7
  call void @llvm.lifetime.start.p0(i64 32, ptr nonnull %76) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %76, ptr noundef nonnull @.str.99, ptr noundef nonnull align 8 dereferenceable(32) %119)
          to label %507 unwind label %.thread379

507:                                              ; preds = %505
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %75, ptr noundef nonnull align 8 dereferenceable(32) %76, ptr noundef nonnull @.str.90)
          to label %508 unwind label %.thread383

508:                                              ; preds = %507
  %509 = call noundef nonnull align 8 dereferenceable(32) ptr @_ZNKSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EEixEm(ptr noundef nonnull align 8 dereferenceable(24) %84, i64 noundef 4) #7
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_RKS8_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %74, ptr noundef nonnull align 8 dereferenceable(32) %75, ptr noundef nonnull align 8 dereferenceable(32) %509)
          to label %510 unwind label %518

510:                                              ; preds = %508
  invoke void @_ZStplIcSt11char_traitsIcESaIcEENSt7__cxx1112basic_stringIT_T0_T1_EEOS8_PKS5_(ptr dead_on_unwind nonnull writable sret(%"class.std::__cxx11::basic_string") align 8 %73, ptr noundef nonnull align 8 dereferenceable(32) %74, ptr noundef nonnull @.str.58)
          to label %511 unwind label %520

511:                                              ; preds = %510
  invoke void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEC2ERKS4_(ptr noundef nonnull align 8 dereferenceable(32) %77, ptr noundef nonnull align 8 dereferenceable(32) %1)
          to label %512 unwind label %522

512:                                              ; preds = %511
  %513 = getelementptr inbounds i8, ptr %1, i64 156
  %514 = load i32, ptr %513, align 4, !tbaa !11
  call void @llvm.lifetime.start.p0(i64 4, ptr nonnull %78) #7
  store i32 5, ptr %78, align 4, !tbaa !21
  invoke void @_ZN4Glip9ExceptionC1ERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEES6_iRKNS0_4TypeE(ptr noundef nonnull align 8 dereferenceable(152) %506, ptr noundef nonnull align 8 dereferenceable(32) %73, ptr noundef nonnull %77, i32 noundef %514, ptr noundef nonnull align 4 dereferenceable(4) %78)
          to label %515 unwind label %524

515:                                              ; preds = %512
  invoke void @__cxa_throw(ptr nonnull %506, ptr nonnull @_ZTIN4Glip9ExceptionE, ptr nonnull @_ZN4Glip9ExceptionD1Ev) #8
          to label %545 unwind label %524

.thread379:                                       ; preds = %505
  %516 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %76) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %74) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #7
  br label %529

.thread383:                                       ; preds = %507
  %517 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %76) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %74) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #7
  br label %529

518:                                              ; preds = %508
  %519 = landingpad { ptr, i32 }
          cleanup
  br label %528

520:                                              ; preds = %510
  %521 = landingpad { ptr, i32 }
          cleanup
  br label %527

522:                                              ; preds = %511
  %523 = landingpad { ptr, i32 }
          cleanup
  br label %526

524:                                              ; preds = %515, %512
  %.0167 = phi i1 [ false, %515 ], [ true, %512 ]
  %525 = landingpad { ptr, i32 }
          cleanup
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %78) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %77) #7
  br label %526

526:                                              ; preds = %524, %522
  %.1168 = phi i1 [ %.0167, %524 ], [ true, %522 ]
  %.pn262 = phi { ptr, i32 } [ %525, %524 ], [ %523, %522 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %73) #7
  br label %527

527:                                              ; preds = %526, %520
  %.2169 = phi i1 [ %.1168, %526 ], [ true, %520 ]
  %.pn262.pn = phi { ptr, i32 } [ %.pn262, %526 ], [ %521, %520 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %74) #7
  br label %528

528:                                              ; preds = %518, %527
  %.3170 = phi i1 [ %.2169, %527 ], [ true, %518 ]
  %.pn262.pn.pn = phi { ptr, i32 } [ %.pn262.pn, %527 ], [ %519, %518 ]
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %75) #7
  call void @_ZNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEED2Ev(ptr noundef nonnull align 8 dereferenceable(32) %76) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %76) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %75) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %74) #7
  call void @llvm.lifetime.end.p0(i64 32, ptr nonnull %73) #7
  br i1 %.3170, label %529, label %541

529:                                              ; preds = %.thread383, %.thread379, %528
  %.pn262.pn.pn.pn.pn382 = phi { ptr, i32 } [ %516, %.thread379 ], [ %.pn262.pn.pn, %528 ], [ %517, %.thread383 ]
  call void @__cxa_free_exception(ptr %506) #7
  br label %541

530:                                              ; preds = %502
  call void @llvm.lifetime.start.p0(i64 88, ptr nonnull %79) #7
  call void @llvm.lifetime.start.p0(i64 56, ptr nonnull %80) #7
  %531 = load i32, ptr %22, align 4, !tbaa !5
  %532 = load i32, ptr %23, align 4, !tbaa !5
  call void @_ZN4Glip6CoreGL16HdlTextureFormatC1Eiijjjjjjii(ptr noundef nonnull align 8 dereferenceable(52) %80, i32 noundef %531, i32 noundef %532, i32 noundef %.0232, i32 noundef %.0231, i32 noundef %.0230, i32 noundef %.0229, i32 noundef %.0228, i32 noundef %.0227, i32 noundef 0, i32 noundef %503)
  invoke void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEC2IRKS5_S8_TnNSt9enable_ifIXaaclsr5_PCCPE22_MoveConstructiblePairIT_T0_EEclsr5_PCCPE30_ImplicitlyMoveConvertiblePairISE_SF_EEEbE4typeELb1EEEOSE_OSF_(ptr noundef nonnull align 8 dereferenceable(88) %79, ptr noundef nonnull align 8 dereferenceable(32) %119, ptr noundef nonnull align 8 dereferenceable(52) %80)
          to label %533 unwind label %536

533:                                              ; preds = %530
  %534 = invoke { ptr, i8 } @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE6insertISB_IS5_S8_EEENSt9enable_ifIXsr16is_constructibleISD_T_EE5valueESB_ISt17_Rb_tree_iteratorISD_EbEE4typeEOSJ_(ptr noundef nonnull align 8 dereferenceable(48) %118, ptr noundef nonnull align 8 dereferenceable(88) %79)
          to label %535 unwind label %538

535:                                              ; preds = %533
  call void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEED2Ev(ptr noundef nonnull align 8 dereferenceable(88) %79) #7
  call void @_ZN4Glip6CoreGL24HdlAbstractTextureFormatD2Ev(ptr noundef nonnull align 8 dereferenceable(52) %80) #7
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %80) #7
  call void @llvm.lifetime.end.p0(i64 88, ptr nonnull %79) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %24) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %23) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %22) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #7
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %9) #7
  ret void

536:                                              ; preds = %530
  %537 = landingpad { ptr, i32 }
          cleanup
  br label %540

538:                                              ; preds = %533
  %539 = landingpad { ptr, i32 }
          cleanup
  call void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEED2Ev(ptr noundef nonnull align 8 dereferenceable(88) %79) #7
  br label %540

540:                                              ; preds = %538, %536
  %.pn260 = phi { ptr, i32 } [ %539, %538 ], [ %537, %536 ]
  call void @_ZN4Glip6CoreGL24HdlAbstractTextureFormatD2Ev(ptr noundef nonnull align 8 dereferenceable(52) %80) #7
  call void @llvm.lifetime.end.p0(i64 56, ptr nonnull %80) #7
  call void @llvm.lifetime.end.p0(i64 88, ptr nonnull %79) #7
  br label %541

541:                                              ; preds = %528, %529, %500, %501, %473, %474, %446, %447, %419, %420, %392, %393, %361, %362, %217, %218, %175, %176, %540
  %.pn292.pn.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn292.pn.pn.pn.pn347, %393 ], [ %.pn292.pn.pn, %392 ], [ %.pn286.pn.pn.pn.pn354, %420 ], [ %.pn286.pn.pn, %419 ], [ %.pn280.pn.pn.pn.pn361, %447 ], [ %.pn280.pn.pn, %446 ], [ %.pn274.pn.pn.pn.pn368, %474 ], [ %.pn274.pn.pn, %473 ], [ %.pn268.pn.pn.pn.pn375, %501 ], [ %.pn268.pn.pn, %500 ], [ %.pn262.pn.pn.pn.pn382, %529 ], [ %.pn262.pn.pn, %528 ], [ %.pn260, %540 ], [ %.pn254.pn.pn.pn.pn340, %362 ], [ %.pn254.pn.pn, %361 ], [ %.pn248.pn.pn.pn.pn333, %218 ], [ %.pn248.pn.pn, %217 ], [ %.pn242.pn.pn.pn.pn326, %176 ], [ %.pn242.pn.pn, %175 ]
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %24) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %23) #7
  call void @llvm.lifetime.end.p0(i64 4, ptr nonnull %22) #7
  br label %542

542:                                              ; preds = %137, %138, %541
  %.pn299.pn.pn.pn = phi { ptr, i32 } [ %.pn299.pn.pn319, %138 ], [ %.pn299, %137 ], [ %.pn292.pn.pn.pn.pn.pn, %541 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %16) #7
  br label %543

543:                                              ; preds = %115, %116, %542
  %.pn304.pn.pn.pn = phi { ptr, i32 } [ %.pn304.pn.pn312, %116 ], [ %.pn304, %115 ], [ %.pn299.pn.pn.pn, %542 ]
  call void @llvm.lifetime.end.p0(i64 8, ptr nonnull %9) #7
  br label %544

544:                                              ; preds = %543, %108
  %.pn304.pn.pn.pn.pn = phi { ptr, i32 } [ %.pn304.pn.pn.pn, %543 ], [ %.pn, %108 ]
  resume { ptr, i32 } %.pn304.pn.pn.pn.pn

545:                                              ; preds = %515, %487, %460, %433, %406, %379, %348, %204, %162, %130, %103
  unreachable
}

; Function Attrs: mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqRKSt17_Rb_tree_iteratorISt4pairIKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEESE_(ptr noundef nonnull align 8 dereferenceable(8), ptr noundef nonnull align 8 dereferenceable(8)) local_unnamed_addr #0

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local noundef zeroext i1 @_ZSteqIcSt11char_traitsIcESaIcEEbRKNSt7__cxx1112basic_stringIT_T0_T1_EEPKS5_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef) local_unnamed_addr #6

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat8getWidthEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local noundef zeroext i1 @_ZN4Glip10fromStringIiEEbRKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEERT_(ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 4 dereferenceable(4)) local_unnamed_addr #2

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getHeightEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat9getGLModeEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

declare noundef i32 @_ZN4Glip6CoreGL9getGLEnumERKNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE(ptr noundef nonnull align 8 dereferenceable(32)) local_unnamed_addr #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat10getGLDepthEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMinFilterEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getMagFilterEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getSWrappingEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat12getTWrappingEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

declare noundef i32 @_ZNK4Glip6CoreGL24HdlAbstractTextureFormat11getMaxLevelEv(ptr noundef nonnull align 8 dereferenceable(52)) local_unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local { ptr, i8 } @_ZNSt3mapINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatESt4lessIS5_ESaISt4pairIKS5_S8_EEE6insertISB_IS5_S8_EEENSt9enable_ifIXsr16is_constructibleISD_T_EE5valueESB_ISt17_Rb_tree_iteratorISD_EbEE4typeEOSJ_(ptr noundef nonnull align 8 dereferenceable(48), ptr noundef nonnull align 8 dereferenceable(88)) local_unnamed_addr #2 align 2

declare void @_ZN4Glip6CoreGL16HdlTextureFormatC1Eiijjjjjjii(ptr noundef nonnull align 8 dereferenceable(52), i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef, i32 noundef) unnamed_addr #4

; Function Attrs: mustprogress uwtable
declare dso_local void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEEC2IRKS5_S8_TnNSt9enable_ifIXaaclsr5_PCCPE22_MoveConstructiblePairIT_T0_EEclsr5_PCCPE30_ImplicitlyMoveConvertiblePairISE_SF_EEEbE4typeELb1EEEOSE_OSF_(ptr noundef nonnull align 8 dereferenceable(88), ptr noundef nonnull align 8 dereferenceable(32), ptr noundef nonnull align 8 dereferenceable(52)) unnamed_addr #2 align 2

; Function Attrs: inlinehint mustprogress nounwind uwtable
declare dso_local void @_ZNSt4pairINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEEN4Glip6CoreGL16HdlTextureFormatEED2Ev(ptr noundef nonnull align 8 dereferenceable(88)) unnamed_addr #6 align 2

; Function Attrs: nounwind
declare void @_ZN4Glip6CoreGL24HdlAbstractTextureFormatD2Ev(ptr noundef nonnull align 8 dereferenceable(52)) unnamed_addr #5

; Function Attrs: mustprogress nounwind uwtable
declare dso_local void @_ZNSt15__new_allocatorIcED2Ev(ptr noundef nonnull align 1 dereferenceable(1)) unnamed_addr #0 align 2

attributes #0 = { 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 #1 = { mustprogress nocallback nofree nosync nounwind willreturn memory(argmem: readwrite) }
attributes #2 = { 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 = { 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 #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 = { nounwind "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 = { 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 #7 = { nounwind }
attributes #8 = { noreturn }

!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 = !{!"int", !7, i64 0}
!7 = !{!"omnipotent char", !8, i64 0}
!8 = !{!"Simple C++ TBAA"}
!9 = !{!10, !10, i64 0}
!10 = !{!"any pointer", !7, i64 0}
!11 = !{!12, !6, i64 156}
!12 = !{!"_ZTSN4Glip7Modules18VanillaParserSpace7ElementE", !13, i64 0, !13, i64 32, !13, i64 64, !13, i64 96, !16, i64 128, !20, i64 152, !20, i64 153, !20, i64 154, !6, i64 156, !6, i64 160}
!13 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEE", !14, i64 0, !15, i64 8, !7, i64 16}
!14 = !{!"_ZTSNSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEE12_Alloc_hiderE", !10, i64 0}
!15 = !{!"long", !7, i64 0}
!16 = !{!"_ZTSSt6vectorINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !17, i64 0}
!17 = !{!"_ZTSSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE", !18, i64 0}
!18 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE12_Vector_implE", !19, i64 0}
!19 = !{!"_ZTSNSt12_Vector_baseINSt7__cxx1112basic_stringIcSt11char_traitsIcESaIcEEESaIS5_EE17_Vector_impl_dataE", !10, i64 0, !10, i64 8, !10, i64 16}
!20 = !{!"bool", !7, i64 0}
!21 = !{!22, !22, i64 0}
!22 = !{!"_ZTSN4Glip9Exception4TypeE", !7, i64 0}


; Effective O3 passes: EarlyCSEPass,GlobalOptPass,IPSCCPPass,InferFunctionAttrsPass,InstCombinePass,JumpThreadingPass,PromotePass,SROAPass,SimplifyCFGPass