blob: eb4e0c91a7243d317262a0549f9a93e5e13d7b92 [file] [log] [blame]
// Generated by llvm2cpp - DO NOT MODIFY!
Function* makeLLVMFunction(Module *mod) {
// Type Definitions
PointerType* PointerTy_0 = PointerType::get(IntegerType::get(mod->getContext(), 8), 0);
std::vector<const Type*>FuncTy_1_args;
FuncTy_1_args.push_back(IntegerType::get(mod->getContext(), 32));
FuncTy_1_args.push_back(PointerTy_0);
FunctionType* FuncTy_1 = FunctionType::get(
/*Result=*/PointerTy_0,
/*Params=*/FuncTy_1_args,
/*isVarArg=*/false);
std::vector<const Type*>StructTy_struct_gc_fields;
std::vector<const Type*>StructTy_struct_gcRoot_fields;
std::vector<const Type*>FuncTy_6_args;
FunctionType* FuncTy_6 = FunctionType::get(
/*Result=*/IntegerType::get(mod->getContext(), 32),
/*Params=*/FuncTy_6_args,
/*isVarArg=*/true);
PointerType* PointerTy_5 = PointerType::get(FuncTy_6, 0);
PointerType* PointerTy_4 = PointerType::get(PointerTy_5, 0);
StructTy_struct_gcRoot_fields.push_back(PointerTy_4);
StructType* StructTy_struct_gcRoot = StructType::get(mod->getContext(), StructTy_struct_gcRoot_fields, /*isPacked=*/false);
mod->addTypeName("struct.gcRoot", StructTy_struct_gcRoot);
StructTy_struct_gc_fields.push_back(StructTy_struct_gcRoot);
StructType* StructTy_struct_gc = StructType::get(mod->getContext(), StructTy_struct_gc_fields, /*isPacked=*/false);
mod->addTypeName("struct.gc", StructTy_struct_gc);
PointerType* PointerTy_3 = PointerType::get(StructTy_struct_gc, 0);
PointerType* PointerTy_2 = PointerType::get(PointerTy_3, 0);
PointerType* PointerTy_7 = PointerType::get(PointerTy_0, 0);
std::vector<const Type*>FuncTy_9_args;
FuncTy_9_args.push_back(PointerTy_7);
FuncTy_9_args.push_back(PointerTy_0);
FunctionType* FuncTy_9 = FunctionType::get(
/*Result=*/Type::getVoidTy(mod->getContext()),
/*Params=*/FuncTy_9_args,
/*isVarArg=*/false);
std::vector<const Type*>FuncTy_11_args;
FuncTy_11_args.push_back(IntegerType::get(mod->getContext(), 32));
FunctionType* FuncTy_11 = FunctionType::get(
/*Result=*/PointerTy_0,
/*Params=*/FuncTy_11_args,
/*isVarArg=*/false);
std::vector<const Type*>StructTy_struct_mvm__MutatorThread_fields;
std::vector<const Type*>StructTy_struct_mvm__Thread_fields;
std::vector<const Type*>StructTy_struct_mvm__CircularBase_fields;
StructTy_struct_mvm__CircularBase_fields.push_back(PointerTy_4);
PATypeHolder StructTy_struct_mvm__CircularBase_fwd = OpaqueType::get(mod->getContext());
PointerType* PointerTy_13 = PointerType::get(StructTy_struct_mvm__CircularBase_fwd, 0);
StructTy_struct_mvm__CircularBase_fields.push_back(PointerTy_13);
StructTy_struct_mvm__CircularBase_fields.push_back(PointerTy_13);
StructType* StructTy_struct_mvm__CircularBase = StructType::get(mod->getContext(), StructTy_struct_mvm__CircularBase_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::CircularBase", StructTy_struct_mvm__CircularBase);
cast<OpaqueType>(StructTy_struct_mvm__CircularBase_fwd.get())->refineAbstractTypeTo(StructTy_struct_mvm__CircularBase);
StructTy_struct_mvm__CircularBase = cast<StructType>(StructTy_struct_mvm__CircularBase_fwd.get());
StructTy_struct_mvm__Thread_fields.push_back(StructTy_struct_mvm__CircularBase);
StructTy_struct_mvm__Thread_fields.push_back(IntegerType::get(mod->getContext(), 32));
std::vector<const Type*>StructTy_struct_mvm__VirtualMachine_fields;
StructTy_struct_mvm__VirtualMachine_fields.push_back(PointerTy_4);
std::vector<const Type*>StructTy_struct_mvm__BumpPtrAllocator_fields;
std::vector<const Type*>StructTy_struct_mvm__SpinLock_fields;
StructTy_struct_mvm__SpinLock_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructType* StructTy_struct_mvm__SpinLock = StructType::get(mod->getContext(), StructTy_struct_mvm__SpinLock_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::SpinLock", StructTy_struct_mvm__SpinLock);
StructTy_struct_mvm__BumpPtrAllocator_fields.push_back(StructTy_struct_mvm__SpinLock);
std::vector<const Type*>StructTy_struct_llvm__BumpPtrAllocator_fields;
StructTy_struct_llvm__BumpPtrAllocator_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_llvm__BumpPtrAllocator_fields.push_back(IntegerType::get(mod->getContext(), 32));
PointerType* PointerTy_16 = PointerType::get(StructTy_struct_gcRoot, 0);
StructTy_struct_llvm__BumpPtrAllocator_fields.push_back(PointerTy_16);
std::vector<const Type*>StructTy_struct_llvm__MemSlab_fields;
StructTy_struct_llvm__MemSlab_fields.push_back(IntegerType::get(mod->getContext(), 32));
PATypeHolder PointerTy_17_fwd = OpaqueType::get(mod->getContext());
StructTy_struct_llvm__MemSlab_fields.push_back(PointerTy_17_fwd);
StructType* StructTy_struct_llvm__MemSlab = StructType::get(mod->getContext(), StructTy_struct_llvm__MemSlab_fields, /*isPacked=*/false);
mod->addTypeName("struct.llvm::MemSlab", StructTy_struct_llvm__MemSlab);
PointerType* PointerTy_17 = PointerType::get(StructTy_struct_llvm__MemSlab, 0);
cast<OpaqueType>(PointerTy_17_fwd.get())->refineAbstractTypeTo(PointerTy_17);
PointerTy_17 = cast<PointerType>(PointerTy_17_fwd.get());
StructTy_struct_llvm__BumpPtrAllocator_fields.push_back(PointerTy_17);
StructTy_struct_llvm__BumpPtrAllocator_fields.push_back(PointerTy_0);
StructTy_struct_llvm__BumpPtrAllocator_fields.push_back(PointerTy_0);
StructTy_struct_llvm__BumpPtrAllocator_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructType* StructTy_struct_llvm__BumpPtrAllocator = StructType::get(mod->getContext(), StructTy_struct_llvm__BumpPtrAllocator_fields, /*isPacked=*/false);
mod->addTypeName("struct.llvm::BumpPtrAllocator", StructTy_struct_llvm__BumpPtrAllocator);
StructTy_struct_mvm__BumpPtrAllocator_fields.push_back(StructTy_struct_llvm__BumpPtrAllocator);
StructType* StructTy_struct_mvm__BumpPtrAllocator = StructType::get(mod->getContext(), StructTy_struct_mvm__BumpPtrAllocator_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::BumpPtrAllocator", StructTy_struct_mvm__BumpPtrAllocator);
PointerType* PointerTy_15 = PointerType::get(StructTy_struct_mvm__BumpPtrAllocator, 0);
StructTy_struct_mvm__VirtualMachine_fields.push_back(PointerTy_15);
PATypeHolder StructTy_struct_mvm__Thread_fwd = OpaqueType::get(mod->getContext());
PointerType* PointerTy_18 = PointerType::get(StructTy_struct_mvm__Thread_fwd, 0);
StructTy_struct_mvm__VirtualMachine_fields.push_back(PointerTy_18);
StructTy_struct_mvm__VirtualMachine_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__SpinLock);
std::vector<const Type*>StructTy_struct_mvm__ReferenceQueue_fields;
StructTy_struct_mvm__ReferenceQueue_fields.push_back(PointerTy_2);
StructTy_struct_mvm__ReferenceQueue_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__ReferenceQueue_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__ReferenceQueue_fields.push_back(StructTy_struct_mvm__SpinLock);
StructTy_struct_mvm__ReferenceQueue_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructType* StructTy_struct_mvm__ReferenceQueue = StructType::get(mod->getContext(), StructTy_struct_mvm__ReferenceQueue_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::ReferenceQueue", StructTy_struct_mvm__ReferenceQueue);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__ReferenceQueue);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__ReferenceQueue);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__ReferenceQueue);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__SpinLock);
StructTy_struct_mvm__VirtualMachine_fields.push_back(PointerTy_2);
StructTy_struct_mvm__VirtualMachine_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__VirtualMachine_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__VirtualMachine_fields.push_back(PointerTy_2);
StructTy_struct_mvm__VirtualMachine_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__VirtualMachine_fields.push_back(IntegerType::get(mod->getContext(), 32));
std::vector<const Type*>StructTy_struct_mvm__Cond_fields;
std::vector<const Type*>StructTy_union_pthread_cond_t_fields;
std::vector<const Type*>StructTy_struct__2__13_fields;
StructTy_struct__2__13_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct__2__13_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct__2__13_fields.push_back(IntegerType::get(mod->getContext(), 64));
StructTy_struct__2__13_fields.push_back(IntegerType::get(mod->getContext(), 64));
StructTy_struct__2__13_fields.push_back(IntegerType::get(mod->getContext(), 64));
StructTy_struct__2__13_fields.push_back(PointerTy_0);
StructTy_struct__2__13_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct__2__13_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructType* StructTy_struct__2__13 = StructType::get(mod->getContext(), StructTy_struct__2__13_fields, /*isPacked=*/false);
mod->addTypeName("struct..2._13", StructTy_struct__2__13);
StructTy_union_pthread_cond_t_fields.push_back(StructTy_struct__2__13);
ArrayType* ArrayTy_19 = ArrayType::get(IntegerType::get(mod->getContext(), 32), 1);
StructTy_union_pthread_cond_t_fields.push_back(ArrayTy_19);
StructType* StructTy_union_pthread_cond_t = StructType::get(mod->getContext(), StructTy_union_pthread_cond_t_fields, /*isPacked=*/false);
mod->addTypeName("union.pthread_cond_t", StructTy_union_pthread_cond_t);
StructTy_struct_mvm__Cond_fields.push_back(StructTy_union_pthread_cond_t);
StructType* StructTy_struct_mvm__Cond = StructType::get(mod->getContext(), StructTy_struct_mvm__Cond_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::Cond", StructTy_struct_mvm__Cond);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__Cond);
std::vector<const Type*>StructTy_struct_mvm__LockNormal_fields;
std::vector<const Type*>StructTy_struct_mvm__Lock_fields;
StructTy_struct_mvm__Lock_fields.push_back(PointerTy_4);
StructTy_struct_mvm__Lock_fields.push_back(PointerTy_18);
std::vector<const Type*>StructTy_union_pthread_mutex_t_fields;
std::vector<const Type*>StructTy_struct__1__pthread_mutex_s_fields;
StructTy_struct__1__pthread_mutex_s_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct__1__pthread_mutex_s_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct__1__pthread_mutex_s_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct__1__pthread_mutex_s_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct__1__pthread_mutex_s_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct__1__pthread_mutex_s_fields.push_back(StructTy_struct_mvm__SpinLock);
StructType* StructTy_struct__1__pthread_mutex_s = StructType::get(mod->getContext(), StructTy_struct__1__pthread_mutex_s_fields, /*isPacked=*/false);
mod->addTypeName("struct..1__pthread_mutex_s", StructTy_struct__1__pthread_mutex_s);
StructTy_union_pthread_mutex_t_fields.push_back(StructTy_struct__1__pthread_mutex_s);
StructType* StructTy_union_pthread_mutex_t = StructType::get(mod->getContext(), StructTy_union_pthread_mutex_t_fields, /*isPacked=*/false);
mod->addTypeName("union.pthread_mutex_t", StructTy_union_pthread_mutex_t);
StructTy_struct_mvm__Lock_fields.push_back(StructTy_union_pthread_mutex_t);
StructType* StructTy_struct_mvm__Lock = StructType::get(mod->getContext(), StructTy_struct_mvm__Lock_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::Lock", StructTy_struct_mvm__Lock);
StructTy_struct_mvm__LockNormal_fields.push_back(StructTy_struct_mvm__Lock);
StructType* StructTy_struct_mvm__LockNormal = StructType::get(mod->getContext(), StructTy_struct_mvm__LockNormal_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::LockNormal", StructTy_struct_mvm__LockNormal);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__LockNormal);
StructTy_struct_mvm__VirtualMachine_fields.push_back(PointerTy_2);
StructTy_struct_mvm__VirtualMachine_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__VirtualMachine_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__LockNormal);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__Cond);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__SpinLock);
StructTy_struct_mvm__VirtualMachine_fields.push_back(PointerTy_16);
std::vector<const Type*>StructTy_struct_mvm__CollectionRV_fields;
StructTy_struct_mvm__CollectionRV_fields.push_back(StructTy_struct_mvm__LockNormal);
StructTy_struct_mvm__CollectionRV_fields.push_back(StructTy_struct_mvm__Cond);
StructTy_struct_mvm__CollectionRV_fields.push_back(StructTy_struct_mvm__Cond);
StructTy_struct_mvm__CollectionRV_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__CollectionRV_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_struct_mvm__CollectionRV_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructType* StructTy_struct_mvm__CollectionRV = StructType::get(mod->getContext(), StructTy_struct_mvm__CollectionRV_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::CollectionRV", StructTy_struct_mvm__CollectionRV);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__CollectionRV);
std::vector<const Type*>StructTy_struct_mvm__StartEndFunctionMap_fields;
std::vector<const Type*>StructTy_struct_mvm__FunctionMap_fields;
std::vector<const Type*>StructTy_struct_std__map_const_char_j3__ClassPrimitive__std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_______fields;
std::vector<const Type*>StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_______fields;
std::vector<const Type*>StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_________Rb_tree_impl_std__less_const_char__false__fields;
std::vector<const Type*>StructTy_struct_std__less_const_char__fields;
StructTy_struct_std__less_const_char__fields.push_back(IntegerType::get(mod->getContext(), 8));
StructType* StructTy_struct_std__less_const_char_ = StructType::get(mod->getContext(), StructTy_struct_std__less_const_char__fields, /*isPacked=*/true);
mod->addTypeName("struct.std::less<const char>", StructTy_struct_std__less_const_char_);
StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_________Rb_tree_impl_std__less_const_char__false__fields.push_back(StructTy_struct_std__less_const_char_);
std::vector<const Type*>StructTy_struct_std___Rb_tree_node_base_fields;
StructTy_struct_std___Rb_tree_node_base_fields.push_back(IntegerType::get(mod->getContext(), 32));
PATypeHolder StructTy_struct_std___Rb_tree_node_base_fwd = OpaqueType::get(mod->getContext());
PointerType* PointerTy_20 = PointerType::get(StructTy_struct_std___Rb_tree_node_base_fwd, 0);
StructTy_struct_std___Rb_tree_node_base_fields.push_back(PointerTy_20);
StructTy_struct_std___Rb_tree_node_base_fields.push_back(PointerTy_20);
StructTy_struct_std___Rb_tree_node_base_fields.push_back(PointerTy_20);
StructType* StructTy_struct_std___Rb_tree_node_base = StructType::get(mod->getContext(), StructTy_struct_std___Rb_tree_node_base_fields, /*isPacked=*/false);
mod->addTypeName("struct.std::_Rb_tree_node_base", StructTy_struct_std___Rb_tree_node_base);
cast<OpaqueType>(StructTy_struct_std___Rb_tree_node_base_fwd.get())->refineAbstractTypeTo(StructTy_struct_std___Rb_tree_node_base);
StructTy_struct_std___Rb_tree_node_base = cast<StructType>(StructTy_struct_std___Rb_tree_node_base_fwd.get());
StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_________Rb_tree_impl_std__less_const_char__false__fields.push_back(StructTy_struct_std___Rb_tree_node_base);
StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_________Rb_tree_impl_std__less_const_char__false__fields.push_back(IntegerType::get(mod->getContext(), 32));
StructType* StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_________Rb_tree_impl_std__less_const_char__false_ = StructType::get(mod->getContext(), StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_________Rb_tree_impl_std__less_const_char__false__fields, /*isPacked=*/false);
mod->addTypeName("struct.std::_Rb_tree<const char,std::pair<const char, j3::ClassPrimitive*>,std::_Select1st<std::pair<const char, j3::ClassPrimitive*> >,std::less<const char>,std::allocator<std::pair<const char, j3::ClassPrimitive*> > >::_Rb_tree_impl<std::less<const char>,false>", StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_________Rb_tree_impl_std__less_const_char__false_);
StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_______fields.push_back(StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_________Rb_tree_impl_std__less_const_char__false_);
StructType* StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive______ = StructType::get(mod->getContext(), StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_______fields, /*isPacked=*/false);
mod->addTypeName("struct.std::_Rb_tree<const char,std::pair<const char, j3::ClassPrimitive*>,std::_Select1st<std::pair<const char, j3::ClassPrimitive*> >,std::less<const char>,std::allocator<std::pair<const char, j3::ClassPrimitive*> > >", StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive______);
StructTy_struct_std__map_const_char_j3__ClassPrimitive__std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_______fields.push_back(StructTy_struct_std___Rb_tree_const_char_std__pair_const_char__j3__ClassPrimitive___std___Select1st_std__pair_const_char__j3__ClassPrimitive_____std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive______);
StructType* StructTy_struct_std__map_const_char_j3__ClassPrimitive__std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive______ = StructType::get(mod->getContext(), StructTy_struct_std__map_const_char_j3__ClassPrimitive__std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_______fields, /*isPacked=*/false);
mod->addTypeName("struct.std::map<const char,j3::ClassPrimitive*,std::less<const char>,std::allocator<std::pair<const char, j3::ClassPrimitive*> > >", StructTy_struct_std__map_const_char_j3__ClassPrimitive__std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive______);
StructTy_struct_mvm__FunctionMap_fields.push_back(StructTy_struct_std__map_const_char_j3__ClassPrimitive__std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive______);
StructTy_struct_mvm__FunctionMap_fields.push_back(StructTy_struct_mvm__SpinLock);
StructType* StructTy_struct_mvm__FunctionMap = StructType::get(mod->getContext(), StructTy_struct_mvm__FunctionMap_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::FunctionMap", StructTy_struct_mvm__FunctionMap);
StructTy_struct_mvm__StartEndFunctionMap_fields.push_back(StructTy_struct_mvm__FunctionMap);
StructType* StructTy_struct_mvm__StartEndFunctionMap = StructType::get(mod->getContext(), StructTy_struct_mvm__StartEndFunctionMap_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::StartEndFunctionMap", StructTy_struct_mvm__StartEndFunctionMap);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__StartEndFunctionMap);
StructTy_struct_mvm__VirtualMachine_fields.push_back(StructTy_struct_mvm__StartEndFunctionMap);
StructType* StructTy_struct_mvm__VirtualMachine = StructType::get(mod->getContext(), StructTy_struct_mvm__VirtualMachine_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::VirtualMachine", StructTy_struct_mvm__VirtualMachine);
PointerType* PointerTy_14 = PointerType::get(StructTy_struct_mvm__VirtualMachine, 0);
StructTy_struct_mvm__Thread_fields.push_back(PointerTy_14);
StructTy_struct_mvm__Thread_fields.push_back(PointerTy_0);
StructTy_struct_mvm__Thread_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_struct_mvm__Thread_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_struct_mvm__Thread_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_struct_mvm__Thread_fields.push_back(PointerTy_0);
StructTy_struct_mvm__Thread_fields.push_back(PointerTy_0);
std::vector<const Type*>FuncTy_22_args;
FuncTy_22_args.push_back(PointerTy_18);
FunctionType* FuncTy_22 = FunctionType::get(
/*Result=*/Type::getVoidTy(mod->getContext()),
/*Params=*/FuncTy_22_args,
/*isVarArg=*/false);
PointerType* PointerTy_21 = PointerType::get(FuncTy_22, 0);
StructTy_struct_mvm__Thread_fields.push_back(PointerTy_21);
std::vector<const Type*>StructTy_struct_mvm__KnownFrame_fields;
PATypeHolder PointerTy_23_fwd = OpaqueType::get(mod->getContext());
StructTy_struct_mvm__KnownFrame_fields.push_back(PointerTy_23_fwd);
StructTy_struct_mvm__KnownFrame_fields.push_back(PointerTy_0);
StructType* StructTy_struct_mvm__KnownFrame = StructType::get(mod->getContext(), StructTy_struct_mvm__KnownFrame_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::KnownFrame", StructTy_struct_mvm__KnownFrame);
PointerType* PointerTy_23 = PointerType::get(StructTy_struct_mvm__KnownFrame, 0);
cast<OpaqueType>(PointerTy_23_fwd.get())->refineAbstractTypeTo(PointerTy_23);
PointerTy_23 = cast<PointerType>(PointerTy_23_fwd.get());
StructTy_struct_mvm__Thread_fields.push_back(PointerTy_23);
StructType* StructTy_struct_mvm__Thread = StructType::get(mod->getContext(), StructTy_struct_mvm__Thread_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::Thread", StructTy_struct_mvm__Thread);
cast<OpaqueType>(StructTy_struct_mvm__Thread_fwd.get())->refineAbstractTypeTo(StructTy_struct_mvm__Thread);
StructTy_struct_mvm__Thread = cast<StructType>(StructTy_struct_mvm__Thread_fwd.get());
StructTy_struct_mvm__MutatorThread_fields.push_back(StructTy_struct_mvm__Thread);
StructTy_struct_mvm__MutatorThread_fields.push_back(StructTy_struct_mvm__BumpPtrAllocator);
StructTy_struct_mvm__MutatorThread_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_struct_mvm__MutatorThread_fields.push_back(PointerTy_21);
StructType* StructTy_struct_mvm__MutatorThread = StructType::get(mod->getContext(), StructTy_struct_mvm__MutatorThread_fields, /*isPacked=*/false);
mod->addTypeName("struct.mvm::MutatorThread", StructTy_struct_mvm__MutatorThread);
PointerType* PointerTy_12 = PointerType::get(StructTy_struct_mvm__MutatorThread, 0);
PointerType* PointerTy_24 = PointerType::get(IntegerType::get(mod->getContext(), 32), 0);
std::vector<const Type*>StructTy_JavaObject_fields;
ArrayType* ArrayTy_VT = ArrayType::get(PointerTy_5, 0);
mod->addTypeName("VT", ArrayTy_VT);
PointerType* PointerTy_26 = PointerType::get(ArrayTy_VT, 0);
StructTy_JavaObject_fields.push_back(PointerTy_26);
StructTy_JavaObject_fields.push_back(PointerTy_0);
StructType* StructTy_JavaObject = StructType::get(mod->getContext(), StructTy_JavaObject_fields, /*isPacked=*/false);
mod->addTypeName("JavaObject", StructTy_JavaObject);
PointerType* PointerTy_25 = PointerType::get(StructTy_JavaObject, 0);
std::vector<const Type*>FuncTy_28_args;
FunctionType* FuncTy_28 = FunctionType::get(
/*Result=*/Type::getVoidTy(mod->getContext()),
/*Params=*/FuncTy_28_args,
/*isVarArg=*/false);
PointerType* PointerTy_29 = PointerType::get(PointerTy_25, 0);
std::vector<const Type*>FuncTy_31_args;
FuncTy_31_args.push_back(PointerTy_25);
FuncTy_31_args.push_back(IntegerType::get(mod->getContext(), 32));
FuncTy_31_args.push_back(IntegerType::get(mod->getContext(), 32));
FuncTy_31_args.push_back(IntegerType::get(mod->getContext(), 32));
FunctionType* FuncTy_31 = FunctionType::get(
/*Result=*/PointerTy_25,
/*Params=*/FuncTy_31_args,
/*isVarArg=*/false);
PointerType* PointerTy_32 = PointerType::get(PointerTy_26, 0);
std::vector<const Type*>FuncTy_34_args;
FuncTy_34_args.push_back(PointerTy_25);
FuncTy_34_args.push_back(PointerTy_25);
FuncTy_34_args.push_back(PointerTy_25);
FuncTy_34_args.push_back(IntegerType::get(mod->getContext(), 32));
FuncTy_34_args.push_back(IntegerType::get(mod->getContext(), 32));
FunctionType* FuncTy_34 = FunctionType::get(
/*Result=*/PointerTy_25,
/*Params=*/FuncTy_34_args,
/*isVarArg=*/false);
std::vector<const Type*>StructTy_36_fields;
std::vector<const Type*>StructTy_37_fields;
std::vector<const Type*>StructTy_38_fields;
StructTy_38_fields.push_back(StructTy_JavaObject);
StructTy_38_fields.push_back(PointerTy_25);
StructTy_38_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_38_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_38_fields.push_back(IntegerType::get(mod->getContext(), 32));
StructTy_38_fields.push_back(PointerTy_25);
StructTy_38_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_38_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_38_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_38_fields.push_back(PointerTy_25);
StructTy_38_fields.push_back(PointerTy_25);
StructTy_38_fields.push_back(PointerTy_25);
StructTy_38_fields.push_back(PointerTy_25);
StructTy_38_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructType* StructTy_38 = StructType::get(mod->getContext(), StructTy_38_fields, /*isPacked=*/false);
StructTy_37_fields.push_back(StructTy_38);
StructTy_37_fields.push_back(PointerTy_25);
StructTy_37_fields.push_back(PointerTy_25);
StructTy_37_fields.push_back(PointerTy_25);
StructTy_37_fields.push_back(PointerTy_25);
StructTy_37_fields.push_back(PointerTy_25);
StructTy_37_fields.push_back(PointerTy_25);
StructTy_37_fields.push_back(PointerTy_25);
StructType* StructTy_37 = StructType::get(mod->getContext(), StructTy_37_fields, /*isPacked=*/false);
StructTy_36_fields.push_back(StructTy_37);
StructTy_36_fields.push_back(PointerTy_25);
StructTy_36_fields.push_back(PointerTy_25);
StructTy_36_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_36_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructType* StructTy_36 = StructType::get(mod->getContext(), StructTy_36_fields, /*isPacked=*/false);
std::vector<const Type*>StructTy_40_fields;
StructTy_40_fields.push_back(StructTy_38);
StructTy_40_fields.push_back(PointerTy_25);
StructType* StructTy_40 = StructType::get(mod->getContext(), StructTy_40_fields, /*isPacked=*/false);
std::vector<const Type*>StructTy_42_fields;
std::vector<const Type*>StructTy_43_fields;
StructTy_43_fields.push_back(StructTy_38);
StructType* StructTy_43 = StructType::get(mod->getContext(), StructTy_43_fields, /*isPacked=*/false);
StructTy_42_fields.push_back(StructTy_43);
StructTy_42_fields.push_back(PointerTy_25);
StructTy_42_fields.push_back(IntegerType::get(mod->getContext(), 8));
StructTy_42_fields.push_back(PointerTy_25);
StructType* StructTy_42 = StructType::get(mod->getContext(), StructTy_42_fields, /*isPacked=*/false);
std::vector<const Type*>StructTy_45_fields;
StructTy_45_fields.push_back(PointerTy_25);
StructTy_45_fields.push_back(PointerTy_25);
StructTy_45_fields.push_back(PointerTy_25);
StructTy_45_fields.push_back(PointerTy_25);
StructType* StructTy_45 = StructType::get(mod->getContext(), StructTy_45_fields, /*isPacked=*/false);
std::vector<const Type*>FuncTy_47_args;
FuncTy_47_args.push_back(IntegerType::get(mod->getContext(), 1));
FuncTy_47_args.push_back(IntegerType::get(mod->getContext(), 1));
FuncTy_47_args.push_back(IntegerType::get(mod->getContext(), 1));
FuncTy_47_args.push_back(IntegerType::get(mod->getContext(), 1));
FuncTy_47_args.push_back(IntegerType::get(mod->getContext(), 1));
FunctionType* FuncTy_47 = FunctionType::get(
/*Result=*/Type::getVoidTy(mod->getContext()),
/*Params=*/FuncTy_47_args,
/*isVarArg=*/false);
std::vector<const Type*>FuncTy_49_args;
FuncTy_49_args.push_back(PointerTy_24);
FuncTy_49_args.push_back(IntegerType::get(mod->getContext(), 32));
FuncTy_49_args.push_back(IntegerType::get(mod->getContext(), 32));
FunctionType* FuncTy_49 = FunctionType::get(
/*Result=*/IntegerType::get(mod->getContext(), 32),
/*Params=*/FuncTy_49_args,
/*isVarArg=*/false);
// Function Declarations
Function* func_llvm_gcroot = Function::Create(
/*Type=*/FuncTy_9,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"llvm.gcroot", mod); // (external, no body)
func_llvm_gcroot->setCallingConv(CallingConv::C);
AttrListPtr func_llvm_gcroot_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoUnwind;
Attrs.push_back(PAWI);
func_llvm_gcroot_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
func_llvm_gcroot->setAttributes(func_llvm_gcroot_PAL);
Function* func_llvm_frameaddress = Function::Create(
/*Type=*/FuncTy_11,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"llvm.frameaddress", mod); // (external, no body)
func_llvm_frameaddress->setCallingConv(CallingConv::C);
AttrListPtr func_llvm_frameaddress_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoUnwind | Attribute::ReadNone;
Attrs.push_back(PAWI);
func_llvm_frameaddress_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
func_llvm_frameaddress->setAttributes(func_llvm_frameaddress_PAL);
Function* func_abort = Function::Create(
/*Type=*/FuncTy_28,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"abort", mod); // (external, no body)
func_abort->setCallingConv(CallingConv::C);
AttrListPtr func_abort_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoReturn | Attribute::NoUnwind;
Attrs.push_back(PAWI);
func_abort_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
func_abort->setAttributes(func_abort_PAL);
Function* func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III = Function::Create(
/*Type=*/FuncTy_31,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III", mod);
func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III->setCallingConv(CallingConv::C);
AttrListPtr func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoInline;
Attrs.push_back(PAWI);
func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III->setAttributes(func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III_PAL);
Function* func_JnJVM_org_mmtk_utility_alloc_BumpPointer_allocSlow__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2II = Function::Create(
/*Type=*/FuncTy_34,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"JnJVM_org_mmtk_utility_alloc_BumpPointer_allocSlow__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2II", mod);
func_JnJVM_org_mmtk_utility_alloc_BumpPointer_allocSlow__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2II->setCallingConv(CallingConv::C);
AttrListPtr func_JnJVM_org_mmtk_utility_alloc_BumpPointer_allocSlow__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2II_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoInline;
Attrs.push_back(PAWI);
func_JnJVM_org_mmtk_utility_alloc_BumpPointer_allocSlow__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2II_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
func_JnJVM_org_mmtk_utility_alloc_BumpPointer_allocSlow__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2II->setAttributes(func_JnJVM_org_mmtk_utility_alloc_BumpPointer_allocSlow__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2II_PAL);
Function* func_JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III = Function::Create(
/*Type=*/FuncTy_31,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III", mod);
func_JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III->setCallingConv(CallingConv::C);
AttrListPtr func_JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoInline;
Attrs.push_back(PAWI);
func_JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
func_JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III->setAttributes(func_JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III_PAL);
Function* func_llvm_memory_barrier = Function::Create(
/*Type=*/FuncTy_47,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"llvm.memory.barrier", mod); // (external, no body)
func_llvm_memory_barrier->setCallingConv(CallingConv::C);
AttrListPtr func_llvm_memory_barrier_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoUnwind;
Attrs.push_back(PAWI);
func_llvm_memory_barrier_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
func_llvm_memory_barrier->setAttributes(func_llvm_memory_barrier_PAL);
Function* func_llvm_atomic_cmp_swap_i32_p0i32 = Function::Create(
/*Type=*/FuncTy_49,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"llvm.atomic.cmp.swap.i32.p0i32", mod); // (external, no body)
func_llvm_atomic_cmp_swap_i32_p0i32->setCallingConv(CallingConv::C);
AttrListPtr func_llvm_atomic_cmp_swap_i32_p0i32_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 1U; PAWI.Attrs = 0 | Attribute::NoCapture;
Attrs.push_back(PAWI);
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoUnwind;
Attrs.push_back(PAWI);
func_llvm_atomic_cmp_swap_i32_p0i32_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
func_llvm_atomic_cmp_swap_i32_p0i32->setAttributes(func_llvm_atomic_cmp_swap_i32_p0i32_PAL);
Function* func__ZN3mvm6Thread5yieldEv = Function::Create(
/*Type=*/FuncTy_28,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"_ZN3mvm6Thread5yieldEv", mod); // (external, no body)
func__ZN3mvm6Thread5yieldEv->setCallingConv(CallingConv::C);
AttrListPtr func__ZN3mvm6Thread5yieldEv_PAL;
func__ZN3mvm6Thread5yieldEv->setAttributes(func__ZN3mvm6Thread5yieldEv_PAL);
// Global Variable Declarations
GlobalVariable* gvar_struct_final_object67 = new GlobalVariable(/*Module=*/ *mod,
/*Type=*/StructTy_36,
/*isConstant=*/false,
/*Linkage=*/GlobalValue::InternalLinkage,
/*Initializer=*/0, // has initializer, specified below
/*Name=*/"final object67");
GlobalVariable* gvar_struct_final_object2 = new GlobalVariable(/*Module=*/ *mod,
/*Type=*/StructTy_40,
/*isConstant=*/false,
/*Linkage=*/GlobalValue::InternalLinkage,
/*Initializer=*/0, // has initializer, specified below
/*Name=*/"final object2");
GlobalVariable* gvar_struct_final_object32 = new GlobalVariable(/*Module=*/ *mod,
/*Type=*/StructTy_42,
/*isConstant=*/false,
/*Linkage=*/GlobalValue::InternalLinkage,
/*Initializer=*/0, // has initializer, specified below
/*Name=*/"final object32");
GlobalVariable* gvar_struct_org_mmtk_utility_DoublyLinkedList_static = new GlobalVariable(/*Module=*/ *mod,
/*Type=*/StructTy_45,
/*isConstant=*/false,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Initializer=*/0, // has initializer, specified below
/*Name=*/"org_mmtk_utility_DoublyLinkedList_static");
GlobalVariable* gvar_struct_final_object85 = new GlobalVariable(/*Module=*/ *mod,
/*Type=*/StructTy_36,
/*isConstant=*/false,
/*Linkage=*/GlobalValue::InternalLinkage,
/*Initializer=*/0, // has initializer, specified below
/*Name=*/"final object85");
GlobalVariable* gvar_struct_final_object101 = new GlobalVariable(/*Module=*/ *mod,
/*Type=*/StructTy_42,
/*isConstant=*/false,
/*Linkage=*/GlobalValue::InternalLinkage,
/*Initializer=*/0, // has initializer, specified below
/*Name=*/"final object101");
GlobalVariable* gvar_struct_final_object122 = new GlobalVariable(/*Module=*/ *mod,
/*Type=*/StructTy_36,
/*isConstant=*/false,
/*Linkage=*/GlobalValue::InternalLinkage,
/*Initializer=*/0, // has initializer, specified below
/*Name=*/"final object122");
// Constant Definitions
ConstantInt* const_int32_50 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("1"), 10));
ConstantPointerNull* const_ptr_51 = ConstantPointerNull::get(PointerTy_3);
ConstantPointerNull* const_ptr_52 = ConstantPointerNull::get(PointerTy_0);
ConstantInt* const_int32_53 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("3"), 10));
ConstantInt* const_int32_54 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("-4"), 10));
ConstantInt* const_int32_55 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("0"), 10));
ConstantInt* const_int32_56 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("2146435072"), 10));
ConstantInt* const_int32_57 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("2"), 10));
ConstantInt* const_int32_58 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("8193"), 10));
ConstantInt* const_int32_59 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("4"), 10));
ConstantInt* const_int32_60 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("7"), 10));
ConstantInt* const_int32_61 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("8"), 10));
ConstantInt* const_int32_62 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("-1"), 10));
ConstantInt* const_int32_63 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("63"), 10));
ConstantInt* const_int32_64 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("127"), 10));
ConstantInt* const_int32_65 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("255"), 10));
ConstantInt* const_int32_66 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("511"), 10));
ConstantInt* const_int32_67 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("2047"), 10));
ConstantInt* const_int32_68 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("10"), 10));
ConstantInt* const_int32_69 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("32"), 10));
ConstantInt* const_int32_70 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("12"), 10));
ConstantInt* const_int32_71 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("5"), 10));
ConstantInt* const_int32_72 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("16"), 10));
ConstantInt* const_int32_73 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("6"), 10));
ConstantInt* const_int32_74 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("20"), 10));
ConstantInt* const_int32_75 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("26"), 10));
ConstantPointerNull* const_ptr_76 = ConstantPointerNull::get(PointerTy_25);
std::vector<Constant*> const_ptr_77_indices;
const_ptr_77_indices.push_back(const_int32_55);
const_ptr_77_indices.push_back(const_int32_57);
Constant* const_ptr_77 = ConstantExpr::getGetElementPtr(gvar_struct_final_object67, &const_ptr_77_indices[0], const_ptr_77_indices.size());
ConstantInt* const_int8_78 = ConstantInt::get(mod->getContext(), APInt(8, StringRef("-4"), 10));
std::vector<Constant*> const_ptr_79_indices;
const_ptr_79_indices.push_back(const_int32_55);
const_ptr_79_indices.push_back(const_int32_50);
Constant* const_ptr_79 = ConstantExpr::getGetElementPtr(gvar_struct_final_object2, &const_ptr_79_indices[0], const_ptr_79_indices.size());
std::vector<Constant*> const_ptr_80_indices;
const_ptr_80_indices.push_back(const_int32_55);
const_ptr_80_indices.push_back(const_int32_50);
Constant* const_ptr_80 = ConstantExpr::getGetElementPtr(gvar_struct_final_object32, &const_ptr_80_indices[0], const_ptr_80_indices.size());
std::vector<Constant*> const_ptr_81_indices;
const_ptr_81_indices.push_back(const_int32_55);
const_ptr_81_indices.push_back(const_int32_53);
Constant* const_ptr_81 = ConstantExpr::getGetElementPtr(gvar_struct_final_object32, &const_ptr_81_indices[0], const_ptr_81_indices.size());
ConstantInt* const_int32_82 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("-32"), 10));
ConstantPointerNull* const_ptr_83 = ConstantPointerNull::get(PointerTy_26);
std::vector<Constant*> const_ptr_84_indices;
const_ptr_84_indices.push_back(const_int32_55);
const_ptr_84_indices.push_back(const_int32_57);
Constant* const_ptr_84 = ConstantExpr::getGetElementPtr(gvar_struct_org_mmtk_utility_DoublyLinkedList_static, &const_ptr_84_indices[0], const_ptr_84_indices.size());
ConstantInt* const_int32_85 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("1000"), 10));
ConstantInt* const_int1_86 = ConstantInt::get(mod->getContext(), APInt(1, StringRef("-1"), 10));
std::vector<Constant*> const_ptr_87_indices;
const_ptr_87_indices.push_back(const_int32_55);
const_ptr_87_indices.push_back(const_int32_57);
Constant* const_ptr_87 = ConstantExpr::getGetElementPtr(gvar_struct_final_object85, &const_ptr_87_indices[0], const_ptr_87_indices.size());
std::vector<Constant*> const_ptr_88_indices;
const_ptr_88_indices.push_back(const_int32_55);
const_ptr_88_indices.push_back(const_int32_50);
Constant* const_ptr_88 = ConstantExpr::getGetElementPtr(gvar_struct_final_object101, &const_ptr_88_indices[0], const_ptr_88_indices.size());
std::vector<Constant*> const_ptr_89_indices;
const_ptr_89_indices.push_back(const_int32_55);
const_ptr_89_indices.push_back(const_int32_53);
Constant* const_ptr_89 = ConstantExpr::getGetElementPtr(gvar_struct_final_object101, &const_ptr_89_indices[0], const_ptr_89_indices.size());
std::vector<Constant*> const_ptr_90_indices;
const_ptr_90_indices.push_back(const_int32_55);
const_ptr_90_indices.push_back(const_int32_57);
Constant* const_ptr_90 = ConstantExpr::getGetElementPtr(gvar_struct_final_object122, &const_ptr_90_indices[0], const_ptr_90_indices.size());
// Global Variable Definitions
Function* func_gcmalloc = Function::Create(
/*Type=*/FuncTy_1,
/*Linkage=*/GlobalValue::ExternalLinkage,
/*Name=*/"gcmalloc", mod);
func_gcmalloc->setCallingConv(CallingConv::C);
func_gcmalloc->setGC("vmkit");
AttrListPtr func_gcmalloc_PAL;
func_gcmalloc->setAttributes(func_gcmalloc_PAL);
Function::arg_iterator args = func_gcmalloc->arg_begin();
Value* int32_sz = args++;
int32_sz->setName("sz");
Value* ptr__VT = args++;
ptr__VT->setName("_VT");
BasicBlock* label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III.exit",func_gcmalloc,0);
BasicBlock* label_tableswitch_i_i6 = BasicBlock::Create(mod->getContext(), "tableswitch.i.i6",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II.exit.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_4_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*4.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_6_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*6.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_7_i_i1_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*7.i.i1.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_8_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*8.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_9_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*9.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT16_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT16.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT17_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT17.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT18_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT18.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT19_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT19.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT20_i_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT20.i.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I.exit.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF__i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IFNE_i_i_i = BasicBlock::Create(mod->getContext(), "false IFNE.i.i.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II.exit.i.i.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2_exit_i_i_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2.exit.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IFEQ_i_i_i = BasicBlock::Create(mod->getContext(), "false IFEQ.i.i.i",func_gcmalloc,0);
BasicBlock* label_tableswitch3_i_i9 = BasicBlock::Create(mod->getContext(), "tableswitch3.i.i9",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II.exit.i2.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_4_i_i_i3_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*4.i.i.i3.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_6_i_i_i4_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*6.i.i.i4.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_7_i_i1_i5_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*7.i.i1.i5.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_8_i_i_i6_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*8.i.i.i6.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_9_i_i_i7_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*9.i.i.i7.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT16_i_i_i8_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT16.i.i.i8.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT17_i_i_i9_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT17.i.i.i9.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT18_i_i_i10_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT18.i.i.i10.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT19_i_i_i11_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT19.i.i.i11.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT20_i_i_i12_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT20.i.i.i12.i.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I.exit.i13.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF__i14_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*.i14.i.i",func_gcmalloc,0);
BasicBlock* label_false_IFNE_i18_i_i = BasicBlock::Create(mod->getContext(), "false IFNE.i18.i.i",func_gcmalloc,0);
BasicBlock* label_tableswitch5_i_i11 = BasicBlock::Create(mod->getContext(), "tableswitch5.i.i11",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII_exit_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII.exit.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II.exit.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_4_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*4.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_6_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*6.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_7_i_i1_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*7.i.i1.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_8_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*8.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_9_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*9.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT16_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT16.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT17_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT17.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT18_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT18.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT19_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT19.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IF_ICMPGT20_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IF_ICMPGT20.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I.exit.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF__i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*.i.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III.exit.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII.exit",func_gcmalloc,0);
BasicBlock* label_tableswitch_i_i = BasicBlock::Create(mod->getContext(), "tableswitch.i.i",func_gcmalloc,0);
BasicBlock* label_tableswitch1_i_i = BasicBlock::Create(mod->getContext(), "tableswitch1.i.i",func_gcmalloc,0);
BasicBlock* label_tableswitch2_i_i = BasicBlock::Create(mod->getContext(), "tableswitch2.i.i",func_gcmalloc,0);
BasicBlock* label_tableswitch3_i_i = BasicBlock::Create(mod->getContext(), "tableswitch3.i.i",func_gcmalloc,0);
BasicBlock* label_true_IF_NULL_i1_i_i3_i_i = BasicBlock::Create(mod->getContext(), "true IF*NULL.i1.i.i3.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_1_i3_i_i5_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*1.i3.i.i5.i.i",func_gcmalloc,0);
BasicBlock* label_true_IFNULL_i5_i_i6_i_i = BasicBlock::Create(mod->getContext(), "true IFNULL.i5.i.i6.i.i",func_gcmalloc,0);
BasicBlock* label_bb_i_i32_i = BasicBlock::Create(mod->getContext(), "bb.i.i32.i",func_gcmalloc,0);
BasicBlock* label_bb1_i_i33_i = BasicBlock::Create(mod->getContext(), "bb1.i.i33.i",func_gcmalloc,0);
BasicBlock* label_bb2_i_i34_i = BasicBlock::Create(mod->getContext(), "bb2.i.i34.i",func_gcmalloc,0);
BasicBlock* label_bb4_preheader_i_i35_i = BasicBlock::Create(mod->getContext(), "bb4.preheader.i.i35.i",func_gcmalloc,0);
BasicBlock* label_bb3_i_i36_i = BasicBlock::Create(mod->getContext(), "bb3.i.i36.i",func_gcmalloc,0);
BasicBlock* label_false_IFNE_i7_i_i8_i_i = BasicBlock::Create(mod->getContext(), "false IFNE.i7.i.i8.i.i",func_gcmalloc,0);
BasicBlock* label_true_IFNULL3_i8_i_i9_i_i = BasicBlock::Create(mod->getContext(), "true IFNULL3.i8.i.i9.i.i",func_gcmalloc,0);
BasicBlock* label_tableswitch4_i_i = BasicBlock::Create(mod->getContext(), "tableswitch4.i.i",func_gcmalloc,0);
BasicBlock* label_tableswitch5_i_i = BasicBlock::Create(mod->getContext(), "tableswitch5.i.i",func_gcmalloc,0);
BasicBlock* label_true_IF_NULL_i1_i_i_i_i = BasicBlock::Create(mod->getContext(), "true IF*NULL.i1.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_GOTO_or_IF_1_i3_i_i_i_i = BasicBlock::Create(mod->getContext(), "GOTO or IF*1.i3.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_true_IFNULL_i5_i_i_i_i = BasicBlock::Create(mod->getContext(), "true IFNULL.i5.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_bb_i_i_i = BasicBlock::Create(mod->getContext(), "bb.i.i.i",func_gcmalloc,0);
BasicBlock* label_bb1_i_i_i = BasicBlock::Create(mod->getContext(), "bb1.i.i.i",func_gcmalloc,0);
BasicBlock* label_bb2_i_i_i = BasicBlock::Create(mod->getContext(), "bb2.i.i.i",func_gcmalloc,0);
BasicBlock* label_bb4_preheader_i_i_i = BasicBlock::Create(mod->getContext(), "bb4.preheader.i.i.i",func_gcmalloc,0);
BasicBlock* label_bb3_i_i_i = BasicBlock::Create(mod->getContext(), "bb3.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IFNE_i7_i_i_i_i = BasicBlock::Create(mod->getContext(), "false IFNE.i7.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_true_IFNULL3_i8_i_i_i_i = BasicBlock::Create(mod->getContext(), "true IFNULL3.i8.i.i.i.i",func_gcmalloc,0);
BasicBlock* label_false_IFNE_i = BasicBlock::Create(mod->getContext(), "false IFNE.i",func_gcmalloc,0);
BasicBlock* label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit = BasicBlock::Create(mod->getContext(), "JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II.exit",func_gcmalloc,0);
// Block JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III.exit (label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit)
AllocaInst* ptr_res = new AllocaInst(PointerTy_3, "res", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
ptr_res->setAlignment(4);
new StoreInst(const_ptr_51, ptr_res, false, label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
CastInst* ptr_res1 = new BitCastInst(ptr_res, PointerTy_7, "res1", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
std::vector<Value*> void_92_params;
void_92_params.push_back(ptr_res1);
void_92_params.push_back(const_ptr_52);
CallInst* void_92 = CallInst::Create(func_llvm_gcroot, void_92_params.begin(), void_92_params.end(), "", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
void_92->setCallingConv(CallingConv::C);
void_92->setTailCall(false);AttrListPtr void_92_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoUnwind;
Attrs.push_back(PAWI);
void_92_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
void_92->setAttributes(void_92_PAL);
BinaryOperator* int32_93 = BinaryOperator::Create(Instruction::Add, int32_sz, const_int32_53, "", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
BinaryOperator* int32_94 = BinaryOperator::Create(Instruction::And, int32_93, const_int32_54, "", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
CallInst* ptr_95 = CallInst::Create(func_llvm_frameaddress, const_int32_55, "", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
ptr_95->setCallingConv(CallingConv::C);
ptr_95->setTailCall(false);AttrListPtr ptr_95_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoUnwind;
Attrs.push_back(PAWI);
ptr_95_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
ptr_95->setAttributes(ptr_95_PAL);
CastInst* int32_96 = new PtrToIntInst(ptr_95, IntegerType::get(mod->getContext(), 32), "", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
BinaryOperator* int32_97 = BinaryOperator::Create(Instruction::And, int32_96, const_int32_56, "", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
CastInst* ptr_98 = new IntToPtrInst(int32_97, PointerTy_12, "", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
std::vector<Value*> ptr_99_indices;
ptr_99_indices.push_back(const_int32_55);
ptr_99_indices.push_back(const_int32_57);
Instruction* ptr_99 = GetElementPtrInst::Create(ptr_98, ptr_99_indices.begin(), ptr_99_indices.end(), "", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
LoadInst* int32_100 = new LoadInst(ptr_99, "", false, label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
ICmpInst* int1_101 = new ICmpInst(*label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit, ICmpInst::ICMP_SLT, int32_94, const_int32_58, "");
SelectInst* int32_retval_i = SelectInst::Create(int1_101, const_int32_55, const_int32_59, "retval.i", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
CastInst* ptr_tmp1 = new IntToPtrInst(int32_100, PointerTy_25, "tmp1", label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
SwitchInst* void_102 = SwitchInst::Create(int32_retval_i, label_tableswitch_i_i6, 7, label_JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III_exit);
void_102->addCase(const_int32_55, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i);
void_102->addCase(const_int32_57, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i);
void_102->addCase(const_int32_53, label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
void_102->addCase(const_int32_59, label_tableswitch3_i_i9);
void_102->addCase(const_int32_60, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i);
void_102->addCase(const_int32_61, label_tableswitch5_i_i11);
// Block tableswitch.i.i6 (label_tableswitch_i_i6)
CallInst* void_103 = CallInst::Create(func_abort, "", label_tableswitch_i_i6);
void_103->setCallingConv(CallingConv::C);
void_103->setTailCall(false);AttrListPtr void_103_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoReturn | Attribute::NoUnwind;
Attrs.push_back(PAWI);
void_103_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
void_103->setAttributes(void_103_PAL);
new UnreachableInst(mod->getContext(), label_tableswitch_i_i6);
// Block JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II.exit.i.i.i (label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i)
GetElementPtrInst* ptr_105 = GetElementPtrInst::Create(ptr_tmp1, const_int32_59, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i);
CastInst* ptr_106 = new BitCastInst(ptr_105, PointerTy_29, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i);
LoadInst* ptr_107 = new LoadInst(ptr_106, "", false, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i);
BinaryOperator* int32_108 = BinaryOperator::Create(Instruction::Add, int32_94, const_int32_62, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i);
ICmpInst* int1_109 = new ICmpInst(*label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i, ICmpInst::ICMP_SGT, int32_108, const_int32_63, "");
BranchInst::Create(label_GOTO_or_IF_4_i_i_i_i_i, label_false_IF_ICMPGT16_i_i_i_i_i, int1_109, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i_i);
// Block GOTO or IF*4.i.i.i.i.i (label_GOTO_or_IF_4_i_i_i_i_i)
ICmpInst* int1_111 = new ICmpInst(*label_GOTO_or_IF_4_i_i_i_i_i, ICmpInst::ICMP_SGT, int32_108, const_int32_64, "");
BranchInst::Create(label_GOTO_or_IF_6_i_i_i_i_i, label_false_IF_ICMPGT17_i_i_i_i_i, int1_111, label_GOTO_or_IF_4_i_i_i_i_i);
// Block GOTO or IF*6.i.i.i.i.i (label_GOTO_or_IF_6_i_i_i_i_i)
ICmpInst* int1_113 = new ICmpInst(*label_GOTO_or_IF_6_i_i_i_i_i, ICmpInst::ICMP_SGT, int32_108, const_int32_65, "");
BranchInst::Create(label_GOTO_or_IF_7_i_i1_i_i_i, label_false_IF_ICMPGT18_i_i_i_i_i, int1_113, label_GOTO_or_IF_6_i_i_i_i_i);
// Block GOTO or IF*7.i.i1.i.i.i (label_GOTO_or_IF_7_i_i1_i_i_i)
ICmpInst* int1_115 = new ICmpInst(*label_GOTO_or_IF_7_i_i1_i_i_i, ICmpInst::ICMP_SGT, int32_108, const_int32_66, "");
BranchInst::Create(label_GOTO_or_IF_8_i_i_i_i_i, label_false_IF_ICMPGT19_i_i_i_i_i, int1_115, label_GOTO_or_IF_7_i_i1_i_i_i);
// Block GOTO or IF*8.i.i.i.i.i (label_GOTO_or_IF_8_i_i_i_i_i)
ICmpInst* int1_117 = new ICmpInst(*label_GOTO_or_IF_8_i_i_i_i_i, ICmpInst::ICMP_SGT, int32_108, const_int32_67, "");
BranchInst::Create(label_GOTO_or_IF_9_i_i_i_i_i, label_false_IF_ICMPGT20_i_i_i_i_i, int1_117, label_GOTO_or_IF_8_i_i_i_i_i);
// Block GOTO or IF*9.i.i.i.i.i (label_GOTO_or_IF_9_i_i_i_i_i)
BinaryOperator* int32_119 = BinaryOperator::Create(Instruction::AShr, int32_108, const_int32_68, "", label_GOTO_or_IF_9_i_i_i_i_i);
BinaryOperator* int32_120 = BinaryOperator::Create(Instruction::Add, int32_119, const_int32_69, "", label_GOTO_or_IF_9_i_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i, label_GOTO_or_IF_9_i_i_i_i_i);
// Block false IF_ICMPGT16.i.i.i.i.i (label_false_IF_ICMPGT16_i_i_i_i_i)
BinaryOperator* int32_122 = BinaryOperator::Create(Instruction::AShr, int32_108, const_int32_57, "", label_false_IF_ICMPGT16_i_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i, label_false_IF_ICMPGT16_i_i_i_i_i);
// Block false IF_ICMPGT17.i.i.i.i.i (label_false_IF_ICMPGT17_i_i_i_i_i)
BinaryOperator* int32_124 = BinaryOperator::Create(Instruction::AShr, int32_108, const_int32_59, "", label_false_IF_ICMPGT17_i_i_i_i_i);
BinaryOperator* int32_125 = BinaryOperator::Create(Instruction::Add, int32_124, const_int32_70, "", label_false_IF_ICMPGT17_i_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i, label_false_IF_ICMPGT17_i_i_i_i_i);
// Block false IF_ICMPGT18.i.i.i.i.i (label_false_IF_ICMPGT18_i_i_i_i_i)
BinaryOperator* int32_127 = BinaryOperator::Create(Instruction::AShr, int32_108, const_int32_71, "", label_false_IF_ICMPGT18_i_i_i_i_i);
BinaryOperator* int32_128 = BinaryOperator::Create(Instruction::Add, int32_127, const_int32_72, "", label_false_IF_ICMPGT18_i_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i, label_false_IF_ICMPGT18_i_i_i_i_i);
// Block false IF_ICMPGT19.i.i.i.i.i (label_false_IF_ICMPGT19_i_i_i_i_i)
BinaryOperator* int32_130 = BinaryOperator::Create(Instruction::AShr, int32_108, const_int32_73, "", label_false_IF_ICMPGT19_i_i_i_i_i);
BinaryOperator* int32_131 = BinaryOperator::Create(Instruction::Add, int32_130, const_int32_74, "", label_false_IF_ICMPGT19_i_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i, label_false_IF_ICMPGT19_i_i_i_i_i);
// Block false IF_ICMPGT20.i.i.i.i.i (label_false_IF_ICMPGT20_i_i_i_i_i)
BinaryOperator* int32_133 = BinaryOperator::Create(Instruction::AShr, int32_108, const_int32_61, "", label_false_IF_ICMPGT20_i_i_i_i_i);
BinaryOperator* int32_134 = BinaryOperator::Create(Instruction::Add, int32_133, const_int32_75, "", label_false_IF_ICMPGT20_i_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i, label_false_IF_ICMPGT20_i_i_i_i_i);
// Block JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I.exit.i.i.i (label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i)
PHINode* int32_136 = PHINode::Create(IntegerType::get(mod->getContext(), 32), "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i);
int32_136->reserveOperandSpace(6);
int32_136->addIncoming(int32_122, label_false_IF_ICMPGT16_i_i_i_i_i);
int32_136->addIncoming(int32_125, label_false_IF_ICMPGT17_i_i_i_i_i);
int32_136->addIncoming(int32_128, label_false_IF_ICMPGT18_i_i_i_i_i);
int32_136->addIncoming(int32_131, label_false_IF_ICMPGT19_i_i_i_i_i);
int32_136->addIncoming(int32_134, label_false_IF_ICMPGT20_i_i_i_i_i);
int32_136->addIncoming(int32_120, label_GOTO_or_IF_9_i_i_i_i_i);
std::vector<Value*> ptr_137_indices;
ptr_137_indices.push_back(const_int32_50);
ptr_137_indices.push_back(const_int32_50);
Instruction* ptr_137 = GetElementPtrInst::Create(ptr_107, ptr_137_indices.begin(), ptr_137_indices.end(), "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i);
LoadInst* ptr_138 = new LoadInst(ptr_137, "", false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i);
BinaryOperator* int32_139 = BinaryOperator::Create(Instruction::Add, int32_136, const_int32_50, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i);
CastInst* ptr_140 = new BitCastInst(ptr_138, PointerTy_24, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i);
GetElementPtrInst* ptr_141 = GetElementPtrInst::Create(ptr_140, int32_139, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i);
LoadInst* int32_142 = new LoadInst(ptr_141, "", false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i);
ICmpInst* int1_143 = new ICmpInst(*label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i, ICmpInst::ICMP_EQ, int32_142, const_int32_55, "");
BranchInst::Create(label_GOTO_or_IF__i_i_i, label_false_IFNE_i_i_i, int1_143, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i_i);
// Block GOTO or IF*.i.i.i (label_GOTO_or_IF__i_i_i)
std::vector<Value*> ptr_145_params;
ptr_145_params.push_back(ptr_107);
ptr_145_params.push_back(int32_94);
ptr_145_params.push_back(const_int32_55);
ptr_145_params.push_back(const_int32_55);
CallInst* ptr_145 = CallInst::Create(func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III, ptr_145_params.begin(), ptr_145_params.end(), "", label_GOTO_or_IF__i_i_i);
ptr_145->setCallingConv(CallingConv::C);
ptr_145->setTailCall(false);AttrListPtr ptr_145_PAL;
ptr_145->setAttributes(ptr_145_PAL);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_GOTO_or_IF__i_i_i);
// Block false IFNE.i.i.i (label_false_IFNE_i_i_i)
CastInst* ptr_147 = new IntToPtrInst(int32_142, PointerTy_29, "", label_false_IFNE_i_i_i);
LoadInst* ptr_148 = new LoadInst(ptr_147, "", false, label_false_IFNE_i_i_i);
CastInst* int32_149 = new PtrToIntInst(ptr_148, IntegerType::get(mod->getContext(), 32), "", label_false_IFNE_i_i_i);
new StoreInst(int32_149, ptr_141, false, label_false_IFNE_i_i_i);
new StoreInst(const_ptr_76, ptr_147, false, label_false_IFNE_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII_exit_i, label_false_IFNE_i_i_i);
// Block JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II.exit.i.i.i (label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i)
GetElementPtrInst* ptr_153 = GetElementPtrInst::Create(ptr_tmp1, const_int32_57, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
CastInst* ptr_154 = new BitCastInst(ptr_153, PointerTy_29, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
LoadInst* ptr_155 = new LoadInst(ptr_154, "", false, label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
GetElementPtrInst* ptr_156 = GetElementPtrInst::Create(ptr_155, const_int32_50, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
CastInst* ptr_157 = new BitCastInst(ptr_156, PointerTy_29, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
LoadInst* ptr_158 = new LoadInst(ptr_157, "", false, label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
CastInst* int32_159 = new PtrToIntInst(ptr_158, IntegerType::get(mod->getContext(), 32), "", label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
BinaryOperator* int32_160 = BinaryOperator::Create(Instruction::Add, int32_159, int32_94, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
std::vector<Value*> ptr_161_indices;
ptr_161_indices.push_back(const_int32_50);
ptr_161_indices.push_back(const_int32_50);
Instruction* ptr_161 = GetElementPtrInst::Create(ptr_155, ptr_161_indices.begin(), ptr_161_indices.end(), "", label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
LoadInst* ptr_162 = new LoadInst(ptr_161, "", false, label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
CastInst* int32_163 = new PtrToIntInst(ptr_162, IntegerType::get(mod->getContext(), 32), "", label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
ICmpInst* int1_164 = new ICmpInst(*label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i, ICmpInst::ICMP_UGT, int32_160, int32_163, "");
BranchInst::Create(label_false_IFEQ_i_i_i, label_JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2_exit_i_i_i, int1_164, label_JnJVM_org_mmtk_utility_alloc_Allocator_alignAllocationNoFill__Lorg_vmmagic_unboxed_Address_2II_exit_i_i_i);
// Block JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2.exit.i.i.i (label_JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2_exit_i_i_i)
std::vector<Value*> ptr_166_indices;
ptr_166_indices.push_back(const_int32_50);
ptr_166_indices.push_back(const_int32_55);
Instruction* ptr_166 = GetElementPtrInst::Create(ptr_155, ptr_166_indices.begin(), ptr_166_indices.end(), "", label_JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2_exit_i_i_i);
CastInst* ptr__c_i_i_i = new IntToPtrInst(int32_160, PointerTy_26, ".c.i.i.i", label_JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2_exit_i_i_i);
new StoreInst(ptr__c_i_i_i, ptr_166, false, label_JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2_exit_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2_exit_i_i_i);
// Block false IFEQ.i.i.i (label_false_IFEQ_i_i_i)
CastInst* ptr_169 = new IntToPtrInst(int32_160, PointerTy_25, "", label_false_IFEQ_i_i_i);
std::vector<Value*> ptr_170_params;
ptr_170_params.push_back(ptr_155);
ptr_170_params.push_back(ptr_158);
ptr_170_params.push_back(ptr_169);
ptr_170_params.push_back(const_int32_55);
ptr_170_params.push_back(const_int32_55);
CallInst* ptr_170 = CallInst::Create(func_JnJVM_org_mmtk_utility_alloc_BumpPointer_allocSlow__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2II, ptr_170_params.begin(), ptr_170_params.end(), "", label_false_IFEQ_i_i_i);
ptr_170->setCallingConv(CallingConv::C);
ptr_170->setTailCall(false);AttrListPtr ptr_170_PAL;
ptr_170->setAttributes(ptr_170_PAL);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_false_IFEQ_i_i_i);
// Block tableswitch3.i.i9 (label_tableswitch3_i_i9)
std::vector<Value*> ptr_172_indices;
ptr_172_indices.push_back(const_int32_57);
ptr_172_indices.push_back(const_int32_50);
Instruction* ptr_172 = GetElementPtrInst::Create(ptr_tmp1, ptr_172_indices.begin(), ptr_172_indices.end(), "", label_tableswitch3_i_i9);
LoadInst* ptr_173 = new LoadInst(ptr_172, "", false, label_tableswitch3_i_i9);
CastInst* ptr_174 = new BitCastInst(ptr_173, PointerTy_25, "", label_tableswitch3_i_i9);
std::vector<Value*> ptr_175_params;
ptr_175_params.push_back(ptr_174);
ptr_175_params.push_back(int32_94);
ptr_175_params.push_back(const_int32_55);
ptr_175_params.push_back(const_int32_55);
CallInst* ptr_175 = CallInst::Create(func_JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III, ptr_175_params.begin(), ptr_175_params.end(), "", label_tableswitch3_i_i9);
ptr_175->setCallingConv(CallingConv::C);
ptr_175->setTailCall(false);AttrListPtr ptr_175_PAL;
ptr_175->setAttributes(ptr_175_PAL);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_tableswitch3_i_i9);
// Block JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II.exit.i2.i.i (label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i)
GetElementPtrInst* ptr_177 = GetElementPtrInst::Create(ptr_tmp1, const_int32_53, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i);
CastInst* ptr_178 = new BitCastInst(ptr_177, PointerTy_29, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i);
LoadInst* ptr_179 = new LoadInst(ptr_178, "", false, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i);
BinaryOperator* int32_180 = BinaryOperator::Create(Instruction::Add, int32_94, const_int32_62, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i);
ICmpInst* int1_181 = new ICmpInst(*label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i, ICmpInst::ICMP_SGT, int32_180, const_int32_63, "");
BranchInst::Create(label_GOTO_or_IF_4_i_i_i3_i_i, label_false_IF_ICMPGT16_i_i_i8_i_i, int1_181, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i2_i_i);
// Block GOTO or IF*4.i.i.i3.i.i (label_GOTO_or_IF_4_i_i_i3_i_i)
ICmpInst* int1_183 = new ICmpInst(*label_GOTO_or_IF_4_i_i_i3_i_i, ICmpInst::ICMP_SGT, int32_180, const_int32_64, "");
BranchInst::Create(label_GOTO_or_IF_6_i_i_i4_i_i, label_false_IF_ICMPGT17_i_i_i9_i_i, int1_183, label_GOTO_or_IF_4_i_i_i3_i_i);
// Block GOTO or IF*6.i.i.i4.i.i (label_GOTO_or_IF_6_i_i_i4_i_i)
ICmpInst* int1_185 = new ICmpInst(*label_GOTO_or_IF_6_i_i_i4_i_i, ICmpInst::ICMP_SGT, int32_180, const_int32_65, "");
BranchInst::Create(label_GOTO_or_IF_7_i_i1_i5_i_i, label_false_IF_ICMPGT18_i_i_i10_i_i, int1_185, label_GOTO_or_IF_6_i_i_i4_i_i);
// Block GOTO or IF*7.i.i1.i5.i.i (label_GOTO_or_IF_7_i_i1_i5_i_i)
ICmpInst* int1_187 = new ICmpInst(*label_GOTO_or_IF_7_i_i1_i5_i_i, ICmpInst::ICMP_SGT, int32_180, const_int32_66, "");
BranchInst::Create(label_GOTO_or_IF_8_i_i_i6_i_i, label_false_IF_ICMPGT19_i_i_i11_i_i, int1_187, label_GOTO_or_IF_7_i_i1_i5_i_i);
// Block GOTO or IF*8.i.i.i6.i.i (label_GOTO_or_IF_8_i_i_i6_i_i)
ICmpInst* int1_189 = new ICmpInst(*label_GOTO_or_IF_8_i_i_i6_i_i, ICmpInst::ICMP_SGT, int32_180, const_int32_67, "");
BranchInst::Create(label_GOTO_or_IF_9_i_i_i7_i_i, label_false_IF_ICMPGT20_i_i_i12_i_i, int1_189, label_GOTO_or_IF_8_i_i_i6_i_i);
// Block GOTO or IF*9.i.i.i7.i.i (label_GOTO_or_IF_9_i_i_i7_i_i)
BinaryOperator* int32_191 = BinaryOperator::Create(Instruction::AShr, int32_180, const_int32_68, "", label_GOTO_or_IF_9_i_i_i7_i_i);
BinaryOperator* int32_192 = BinaryOperator::Create(Instruction::Add, int32_191, const_int32_69, "", label_GOTO_or_IF_9_i_i_i7_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i, label_GOTO_or_IF_9_i_i_i7_i_i);
// Block false IF_ICMPGT16.i.i.i8.i.i (label_false_IF_ICMPGT16_i_i_i8_i_i)
BinaryOperator* int32_194 = BinaryOperator::Create(Instruction::AShr, int32_180, const_int32_57, "", label_false_IF_ICMPGT16_i_i_i8_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i, label_false_IF_ICMPGT16_i_i_i8_i_i);
// Block false IF_ICMPGT17.i.i.i9.i.i (label_false_IF_ICMPGT17_i_i_i9_i_i)
BinaryOperator* int32_196 = BinaryOperator::Create(Instruction::AShr, int32_180, const_int32_59, "", label_false_IF_ICMPGT17_i_i_i9_i_i);
BinaryOperator* int32_197 = BinaryOperator::Create(Instruction::Add, int32_196, const_int32_70, "", label_false_IF_ICMPGT17_i_i_i9_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i, label_false_IF_ICMPGT17_i_i_i9_i_i);
// Block false IF_ICMPGT18.i.i.i10.i.i (label_false_IF_ICMPGT18_i_i_i10_i_i)
BinaryOperator* int32_199 = BinaryOperator::Create(Instruction::AShr, int32_180, const_int32_71, "", label_false_IF_ICMPGT18_i_i_i10_i_i);
BinaryOperator* int32_200 = BinaryOperator::Create(Instruction::Add, int32_199, const_int32_72, "", label_false_IF_ICMPGT18_i_i_i10_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i, label_false_IF_ICMPGT18_i_i_i10_i_i);
// Block false IF_ICMPGT19.i.i.i11.i.i (label_false_IF_ICMPGT19_i_i_i11_i_i)
BinaryOperator* int32_202 = BinaryOperator::Create(Instruction::AShr, int32_180, const_int32_73, "", label_false_IF_ICMPGT19_i_i_i11_i_i);
BinaryOperator* int32_203 = BinaryOperator::Create(Instruction::Add, int32_202, const_int32_74, "", label_false_IF_ICMPGT19_i_i_i11_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i, label_false_IF_ICMPGT19_i_i_i11_i_i);
// Block false IF_ICMPGT20.i.i.i12.i.i (label_false_IF_ICMPGT20_i_i_i12_i_i)
BinaryOperator* int32_205 = BinaryOperator::Create(Instruction::AShr, int32_180, const_int32_61, "", label_false_IF_ICMPGT20_i_i_i12_i_i);
BinaryOperator* int32_206 = BinaryOperator::Create(Instruction::Add, int32_205, const_int32_75, "", label_false_IF_ICMPGT20_i_i_i12_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i, label_false_IF_ICMPGT20_i_i_i12_i_i);
// Block JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I.exit.i13.i.i (label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i)
PHINode* int32_208 = PHINode::Create(IntegerType::get(mod->getContext(), 32), "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i);
int32_208->reserveOperandSpace(6);
int32_208->addIncoming(int32_194, label_false_IF_ICMPGT16_i_i_i8_i_i);
int32_208->addIncoming(int32_197, label_false_IF_ICMPGT17_i_i_i9_i_i);
int32_208->addIncoming(int32_200, label_false_IF_ICMPGT18_i_i_i10_i_i);
int32_208->addIncoming(int32_203, label_false_IF_ICMPGT19_i_i_i11_i_i);
int32_208->addIncoming(int32_206, label_false_IF_ICMPGT20_i_i_i12_i_i);
int32_208->addIncoming(int32_192, label_GOTO_or_IF_9_i_i_i7_i_i);
std::vector<Value*> ptr_209_indices;
ptr_209_indices.push_back(const_int32_50);
ptr_209_indices.push_back(const_int32_50);
Instruction* ptr_209 = GetElementPtrInst::Create(ptr_179, ptr_209_indices.begin(), ptr_209_indices.end(), "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i);
LoadInst* ptr_210 = new LoadInst(ptr_209, "", false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i);
BinaryOperator* int32_211 = BinaryOperator::Create(Instruction::Add, int32_208, const_int32_50, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i);
CastInst* ptr_212 = new BitCastInst(ptr_210, PointerTy_24, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i);
GetElementPtrInst* ptr_213 = GetElementPtrInst::Create(ptr_212, int32_211, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i);
LoadInst* int32_214 = new LoadInst(ptr_213, "", false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i);
ICmpInst* int1_215 = new ICmpInst(*label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i, ICmpInst::ICMP_EQ, int32_214, const_int32_55, "");
BranchInst::Create(label_GOTO_or_IF__i14_i_i, label_false_IFNE_i18_i_i, int1_215, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i13_i_i);
// Block GOTO or IF*.i14.i.i (label_GOTO_or_IF__i14_i_i)
std::vector<Value*> ptr_217_params;
ptr_217_params.push_back(ptr_179);
ptr_217_params.push_back(int32_94);
ptr_217_params.push_back(const_int32_55);
ptr_217_params.push_back(const_int32_55);
CallInst* ptr_217 = CallInst::Create(func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III, ptr_217_params.begin(), ptr_217_params.end(), "", label_GOTO_or_IF__i14_i_i);
ptr_217->setCallingConv(CallingConv::C);
ptr_217->setTailCall(false);AttrListPtr ptr_217_PAL;
ptr_217->setAttributes(ptr_217_PAL);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_GOTO_or_IF__i14_i_i);
// Block false IFNE.i18.i.i (label_false_IFNE_i18_i_i)
CastInst* ptr_219 = new IntToPtrInst(int32_214, PointerTy_29, "", label_false_IFNE_i18_i_i);
LoadInst* ptr_220 = new LoadInst(ptr_219, "", false, label_false_IFNE_i18_i_i);
CastInst* int32_221 = new PtrToIntInst(ptr_220, IntegerType::get(mod->getContext(), 32), "", label_false_IFNE_i18_i_i);
new StoreInst(int32_221, ptr_213, false, label_false_IFNE_i18_i_i);
new StoreInst(const_ptr_76, ptr_219, false, label_false_IFNE_i18_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII_exit_i, label_false_IFNE_i18_i_i);
// Block tableswitch5.i.i11 (label_tableswitch5_i_i11)
std::vector<Value*> ptr_225_indices;
ptr_225_indices.push_back(const_int32_53);
ptr_225_indices.push_back(const_int32_50);
Instruction* ptr_225 = GetElementPtrInst::Create(ptr_tmp1, ptr_225_indices.begin(), ptr_225_indices.end(), "", label_tableswitch5_i_i11);
LoadInst* ptr_226 = new LoadInst(ptr_225, "", false, label_tableswitch5_i_i11);
CastInst* ptr_227 = new BitCastInst(ptr_226, PointerTy_25, "", label_tableswitch5_i_i11);
std::vector<Value*> ptr_228_params;
ptr_228_params.push_back(ptr_227);
ptr_228_params.push_back(int32_94);
ptr_228_params.push_back(const_int32_55);
ptr_228_params.push_back(const_int32_55);
CallInst* ptr_228 = CallInst::Create(func_JnJVM_org_mmtk_utility_alloc_LargeObjectAllocator_alloc__III, ptr_228_params.begin(), ptr_228_params.end(), "", label_tableswitch5_i_i11);
ptr_228->setCallingConv(CallingConv::C);
ptr_228->setTailCall(false);AttrListPtr ptr_228_PAL;
ptr_228->setAttributes(ptr_228_PAL);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_tableswitch5_i_i11);
// Block JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII.exit.i (label_JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII_exit_i)
PHINode* int32__in = PHINode::Create(IntegerType::get(mod->getContext(), 32), ".in", label_JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII_exit_i);
int32__in->reserveOperandSpace(2);
int32__in->addIncoming(int32_142, label_false_IFNE_i_i_i);
int32__in->addIncoming(int32_214, label_false_IFNE_i18_i_i);
CastInst* ptr_230 = new IntToPtrInst(int32__in, PointerTy_25, "", label_JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII_exit_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII_exit_i);
// Block JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II.exit.i.i (label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i)
std::vector<Value*> ptr_232_indices;
ptr_232_indices.push_back(const_int32_59);
ptr_232_indices.push_back(const_int32_50);
Instruction* ptr_232 = GetElementPtrInst::Create(ptr_tmp1, ptr_232_indices.begin(), ptr_232_indices.end(), "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i);
LoadInst* ptr_233 = new LoadInst(ptr_232, "", false, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i);
CastInst* ptr_234 = new BitCastInst(ptr_233, PointerTy_25, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i);
BinaryOperator* int32_235 = BinaryOperator::Create(Instruction::Add, int32_94, const_int32_62, "", label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i);
ICmpInst* int1_236 = new ICmpInst(*label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i, ICmpInst::ICMP_SGT, int32_235, const_int32_63, "");
BranchInst::Create(label_GOTO_or_IF_4_i_i_i_i, label_false_IF_ICMPGT16_i_i_i_i, int1_236, label_JnJVM_org_mmtk_utility_alloc_Allocator_getMaximumAlignedSize__II_exit_i_i);
// Block GOTO or IF*4.i.i.i.i (label_GOTO_or_IF_4_i_i_i_i)
ICmpInst* int1_238 = new ICmpInst(*label_GOTO_or_IF_4_i_i_i_i, ICmpInst::ICMP_SGT, int32_235, const_int32_64, "");
BranchInst::Create(label_GOTO_or_IF_6_i_i_i_i, label_false_IF_ICMPGT17_i_i_i_i, int1_238, label_GOTO_or_IF_4_i_i_i_i);
// Block GOTO or IF*6.i.i.i.i (label_GOTO_or_IF_6_i_i_i_i)
ICmpInst* int1_240 = new ICmpInst(*label_GOTO_or_IF_6_i_i_i_i, ICmpInst::ICMP_SGT, int32_235, const_int32_65, "");
BranchInst::Create(label_GOTO_or_IF_7_i_i1_i_i, label_false_IF_ICMPGT18_i_i_i_i, int1_240, label_GOTO_or_IF_6_i_i_i_i);
// Block GOTO or IF*7.i.i1.i.i (label_GOTO_or_IF_7_i_i1_i_i)
ICmpInst* int1_242 = new ICmpInst(*label_GOTO_or_IF_7_i_i1_i_i, ICmpInst::ICMP_SGT, int32_235, const_int32_66, "");
BranchInst::Create(label_GOTO_or_IF_8_i_i_i_i, label_false_IF_ICMPGT19_i_i_i_i, int1_242, label_GOTO_or_IF_7_i_i1_i_i);
// Block GOTO or IF*8.i.i.i.i (label_GOTO_or_IF_8_i_i_i_i)
ICmpInst* int1_244 = new ICmpInst(*label_GOTO_or_IF_8_i_i_i_i, ICmpInst::ICMP_SGT, int32_235, const_int32_67, "");
BranchInst::Create(label_GOTO_or_IF_9_i_i_i_i, label_false_IF_ICMPGT20_i_i_i_i, int1_244, label_GOTO_or_IF_8_i_i_i_i);
// Block GOTO or IF*9.i.i.i.i (label_GOTO_or_IF_9_i_i_i_i)
BinaryOperator* int32_246 = BinaryOperator::Create(Instruction::AShr, int32_235, const_int32_68, "", label_GOTO_or_IF_9_i_i_i_i);
BinaryOperator* int32_247 = BinaryOperator::Create(Instruction::Add, int32_246, const_int32_69, "", label_GOTO_or_IF_9_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i, label_GOTO_or_IF_9_i_i_i_i);
// Block false IF_ICMPGT16.i.i.i.i (label_false_IF_ICMPGT16_i_i_i_i)
BinaryOperator* int32_249 = BinaryOperator::Create(Instruction::AShr, int32_235, const_int32_57, "", label_false_IF_ICMPGT16_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i, label_false_IF_ICMPGT16_i_i_i_i);
// Block false IF_ICMPGT17.i.i.i.i (label_false_IF_ICMPGT17_i_i_i_i)
BinaryOperator* int32_251 = BinaryOperator::Create(Instruction::AShr, int32_235, const_int32_59, "", label_false_IF_ICMPGT17_i_i_i_i);
BinaryOperator* int32_252 = BinaryOperator::Create(Instruction::Add, int32_251, const_int32_70, "", label_false_IF_ICMPGT17_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i, label_false_IF_ICMPGT17_i_i_i_i);
// Block false IF_ICMPGT18.i.i.i.i (label_false_IF_ICMPGT18_i_i_i_i)
BinaryOperator* int32_254 = BinaryOperator::Create(Instruction::AShr, int32_235, const_int32_71, "", label_false_IF_ICMPGT18_i_i_i_i);
BinaryOperator* int32_255 = BinaryOperator::Create(Instruction::Add, int32_254, const_int32_72, "", label_false_IF_ICMPGT18_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i, label_false_IF_ICMPGT18_i_i_i_i);
// Block false IF_ICMPGT19.i.i.i.i (label_false_IF_ICMPGT19_i_i_i_i)
BinaryOperator* int32_257 = BinaryOperator::Create(Instruction::AShr, int32_235, const_int32_73, "", label_false_IF_ICMPGT19_i_i_i_i);
BinaryOperator* int32_258 = BinaryOperator::Create(Instruction::Add, int32_257, const_int32_74, "", label_false_IF_ICMPGT19_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i, label_false_IF_ICMPGT19_i_i_i_i);
// Block false IF_ICMPGT20.i.i.i.i (label_false_IF_ICMPGT20_i_i_i_i)
BinaryOperator* int32_260 = BinaryOperator::Create(Instruction::AShr, int32_235, const_int32_61, "", label_false_IF_ICMPGT20_i_i_i_i);
BinaryOperator* int32_261 = BinaryOperator::Create(Instruction::Add, int32_260, const_int32_75, "", label_false_IF_ICMPGT20_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i, label_false_IF_ICMPGT20_i_i_i_i);
// Block JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I.exit.i.i (label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i)
PHINode* int32_263 = PHINode::Create(IntegerType::get(mod->getContext(), 32), "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
int32_263->reserveOperandSpace(6);
int32_263->addIncoming(int32_249, label_false_IF_ICMPGT16_i_i_i_i);
int32_263->addIncoming(int32_252, label_false_IF_ICMPGT17_i_i_i_i);
int32_263->addIncoming(int32_255, label_false_IF_ICMPGT18_i_i_i_i);
int32_263->addIncoming(int32_258, label_false_IF_ICMPGT19_i_i_i_i);
int32_263->addIncoming(int32_261, label_false_IF_ICMPGT20_i_i_i_i);
int32_263->addIncoming(int32_247, label_GOTO_or_IF_9_i_i_i_i);
GetElementPtrInst* ptr_264 = GetElementPtrInst::Create(ptr_233, const_int32_70, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
CastInst* ptr_265 = new BitCastInst(ptr_264, PointerTy_7, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
LoadInst* ptr_266 = new LoadInst(ptr_265, "", false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
BinaryOperator* int32_267 = BinaryOperator::Create(Instruction::Add, int32_263, const_int32_50, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
CastInst* ptr_268 = new BitCastInst(ptr_266, PointerTy_24, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
GetElementPtrInst* ptr_269 = GetElementPtrInst::Create(ptr_268, int32_267, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
LoadInst* int32_270 = new LoadInst(ptr_269, "", false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
ICmpInst* int1_271 = new ICmpInst(*label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i, ICmpInst::ICMP_EQ, int32_270, const_int32_55, "");
BranchInst::Create(label_GOTO_or_IF__i_i, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i, int1_271, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_getSizeClass__I_exit_i_i);
// Block GOTO or IF*.i.i (label_GOTO_or_IF__i_i)
std::vector<Value*> ptr_273_params;
ptr_273_params.push_back(ptr_234);
ptr_273_params.push_back(int32_94);
ptr_273_params.push_back(const_int32_55);
ptr_273_params.push_back(const_int32_55);
CallInst* ptr_273 = CallInst::Create(func_JnJVM_org_mmtk_utility_alloc_Allocator_allocSlow__III, ptr_273_params.begin(), ptr_273_params.end(), "", label_GOTO_or_IF__i_i);
ptr_273->setCallingConv(CallingConv::C);
ptr_273->setTailCall(false);AttrListPtr ptr_273_PAL;
ptr_273->setAttributes(ptr_273_PAL);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_GOTO_or_IF__i_i);
// Block JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III.exit.i (label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i)
CastInst* ptr_275 = new IntToPtrInst(int32_270, PointerTy_25, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i);
CastInst* ptr_276 = new IntToPtrInst(int32_270, PointerTy_29, "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i);
LoadInst* ptr_277 = new LoadInst(ptr_276, "", false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i);
CastInst* int32_278 = new PtrToIntInst(ptr_277, IntegerType::get(mod->getContext(), 32), "", label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i);
new StoreInst(int32_278, ptr_269, false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i);
new StoreInst(const_ptr_76, ptr_276, false, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i);
// Block JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII.exit (label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit)
PHINode* ptr_282 = PHINode::Create(PointerTy_25, "", label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit);
ptr_282->reserveOperandSpace(9);
ptr_282->addIncoming(ptr_228, label_tableswitch5_i_i11);
ptr_282->addIncoming(ptr_230, label_JnJVM_org_mmtk_plan_MutatorContext_alloc__IIIII_exit_i);
ptr_282->addIncoming(ptr_217, label_GOTO_or_IF__i14_i_i);
ptr_282->addIncoming(ptr_175, label_tableswitch3_i_i9);
ptr_282->addIncoming(ptr_158, label_JnJVM_org_mmtk_utility_alloc_Allocator_fillAlignmentGap__Lorg_vmmagic_unboxed_Address_2Lorg_vmmagic_unboxed_Address_2_exit_i_i_i);
ptr_282->addIncoming(ptr_170, label_false_IFEQ_i_i_i);
ptr_282->addIncoming(ptr_145, label_GOTO_or_IF__i_i_i);
ptr_282->addIncoming(ptr_275, label_JnJVM_org_mmtk_utility_alloc_SegregatedFreeList_alloc__III_exit_i);
ptr_282->addIncoming(ptr_273, label_GOTO_or_IF__i_i);
CastInst* ptr_283 = new BitCastInst(ptr_282, PointerTy_3, "", label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit);
new StoreInst(ptr_283, ptr_res, false, label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit);
std::vector<Value*> ptr_285_indices;
ptr_285_indices.push_back(const_int32_55);
ptr_285_indices.push_back(const_int32_55);
Instruction* ptr_285 = GetElementPtrInst::Create(ptr_282, ptr_285_indices.begin(), ptr_285_indices.end(), "", label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit);
CastInst* ptr_VT_c_i_c = new BitCastInst(ptr__VT, PointerTy_26, "VT.c.i.c", label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit);
new StoreInst(ptr_VT_c_i_c, ptr_285, false, label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit);
LoadInst* ptr_287 = new LoadInst(ptr_res, "", false, label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit);
SwitchInst* void_288 = SwitchInst::Create(int32_retval_i, label_tableswitch_i_i, 7, label_JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII_exit);
void_288->addCase(const_int32_55, label_false_IFNE_i);
void_288->addCase(const_int32_57, label_tableswitch1_i_i);
void_288->addCase(const_int32_53, label_tableswitch2_i_i);
void_288->addCase(const_int32_59, label_tableswitch3_i_i);
void_288->addCase(const_int32_60, label_tableswitch4_i_i);
void_288->addCase(const_int32_61, label_tableswitch5_i_i);
// Block tableswitch.i.i (label_tableswitch_i_i)
CallInst* void_289 = CallInst::Create(func_abort, "", label_tableswitch_i_i);
void_289->setCallingConv(CallingConv::C);
void_289->setTailCall(false);AttrListPtr void_289_PAL;
{
SmallVector<AttributeWithIndex, 4> Attrs;
AttributeWithIndex PAWI;
PAWI.Index = 4294967295U; PAWI.Attrs = 0 | Attribute::NoReturn | Attribute::NoUnwind;
Attrs.push_back(PAWI);
void_289_PAL = AttrListPtr::get(Attrs.begin(), Attrs.end());
}
void_289->setAttributes(void_289_PAL);
new UnreachableInst(mod->getContext(), label_tableswitch_i_i);
// Block tableswitch1.i.i (label_tableswitch1_i_i)
LoadInst* ptr_291 = new LoadInst(const_ptr_77, "", false, label_tableswitch1_i_i);
CastInst* int32_292 = new PtrToIntInst(ptr_291, IntegerType::get(mod->getContext(), 32), "", label_tableswitch1_i_i);
GetElementPtrInst* ptr_293 = GetElementPtrInst::Create(ptr_287, const_int32_50, "", label_tableswitch1_i_i);
CastInst* ptr_294 = new BitCastInst(ptr_293, PointerTy_0, "", label_tableswitch1_i_i);
LoadInst* int8_295 = new LoadInst(ptr_294, "", false, label_tableswitch1_i_i);
BinaryOperator* int8_296 = BinaryOperator::Create(Instruction::And, int8_295, const_int8_78, "", label_tableswitch1_i_i);
CastInst* int8_297 = new TruncInst(int32_292, IntegerType::get(mod->getContext(), 8), "", label_tableswitch1_i_i);
BinaryOperator* int8_298 = BinaryOperator::Create(Instruction::Or, int8_296, int8_297, "", label_tableswitch1_i_i);
new StoreInst(int8_298, ptr_294, false, label_tableswitch1_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit, label_tableswitch1_i_i);
// Block tableswitch2.i.i (label_tableswitch2_i_i)
GetElementPtrInst* ptr_301 = GetElementPtrInst::Create(ptr_287, const_int32_50, "", label_tableswitch2_i_i);
CastInst* ptr_302 = new BitCastInst(ptr_301, PointerTy_24, "", label_tableswitch2_i_i);
LoadInst* int32_303 = new LoadInst(ptr_302, "", false, label_tableswitch2_i_i);
BinaryOperator* int32_304 = BinaryOperator::Create(Instruction::And, int32_303, const_int32_57, "", label_tableswitch2_i_i);
LoadInst* ptr_305 = new LoadInst(const_ptr_79, "", false, label_tableswitch2_i_i);
CastInst* int32_306 = new PtrToIntInst(ptr_305, IntegerType::get(mod->getContext(), 32), "", label_tableswitch2_i_i);
BinaryOperator* int32_307 = BinaryOperator::Create(Instruction::Or, int32_306, int32_304, "", label_tableswitch2_i_i);
CastInst* ptr_308 = new BitCastInst(ptr_301, PointerTy_0, "", label_tableswitch2_i_i);
CastInst* int8_trunc = new TruncInst(int32_303, IntegerType::get(mod->getContext(), 8), "trunc", label_tableswitch2_i_i);
BinaryOperator* int8_309 = BinaryOperator::Create(Instruction::And, int8_trunc, const_int8_78, "", label_tableswitch2_i_i);
CastInst* int8_310 = new TruncInst(int32_307, IntegerType::get(mod->getContext(), 8), "", label_tableswitch2_i_i);
BinaryOperator* int8_311 = BinaryOperator::Create(Instruction::Or, int8_310, int8_309, "", label_tableswitch2_i_i);
new StoreInst(int8_311, ptr_308, false, label_tableswitch2_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit, label_tableswitch2_i_i);
// Block tableswitch3.i.i (label_tableswitch3_i_i)
LoadInst* ptr_314 = new LoadInst(const_ptr_80, "", false, label_tableswitch3_i_i);
CastInst* int32_315 = new PtrToIntInst(ptr_314, IntegerType::get(mod->getContext(), 32), "", label_tableswitch3_i_i);
BinaryOperator* int32_316 = BinaryOperator::Create(Instruction::Or, int32_315, const_int32_57, "", label_tableswitch3_i_i);
GetElementPtrInst* ptr_317 = GetElementPtrInst::Create(ptr_287, const_int32_50, "", label_tableswitch3_i_i);
CastInst* ptr_318 = new BitCastInst(ptr_317, PointerTy_0, "", label_tableswitch3_i_i);
LoadInst* int8_319 = new LoadInst(ptr_318, "", false, label_tableswitch3_i_i);
BinaryOperator* int8_320 = BinaryOperator::Create(Instruction::And, int8_319, const_int8_78, "", label_tableswitch3_i_i);
CastInst* int8_321 = new TruncInst(int32_316, IntegerType::get(mod->getContext(), 8), "", label_tableswitch3_i_i);
BinaryOperator* int8_322 = BinaryOperator::Create(Instruction::Or, int8_321, int8_320, "", label_tableswitch3_i_i);
new StoreInst(int8_322, ptr_318, false, label_tableswitch3_i_i);
LoadInst* ptr_324 = new LoadInst(const_ptr_81, "", false, label_tableswitch3_i_i);
CastInst* int32_325 = new PtrToIntInst(ptr_287, IntegerType::get(mod->getContext(), 32), "", label_tableswitch3_i_i);
BinaryOperator* int32_326 = BinaryOperator::Create(Instruction::And, int32_325, const_int32_82, "", label_tableswitch3_i_i);
CastInst* ptr_327 = new IntToPtrInst(int32_326, PointerTy_25, "", label_tableswitch3_i_i);
std::vector<Value*> ptr_328_indices;
ptr_328_indices.push_back(const_int32_57);
ptr_328_indices.push_back(const_int32_50);
Instruction* ptr_328 = GetElementPtrInst::Create(ptr_324, ptr_328_indices.begin(), ptr_328_indices.end(), "", label_tableswitch3_i_i);
LoadInst* ptr_329 = new LoadInst(ptr_328, "", false, label_tableswitch3_i_i);
GetElementPtrInst* ptr_330 = GetElementPtrInst::Create(ptr_329, const_int32_70, "", label_tableswitch3_i_i);
CastInst* ptr_331 = new BitCastInst(ptr_330, PointerTy_7, "", label_tableswitch3_i_i);
LoadInst* ptr_332 = new LoadInst(ptr_331, "", false, label_tableswitch3_i_i);
ICmpInst* int1_333 = new ICmpInst(*label_tableswitch3_i_i, ICmpInst::ICMP_EQ, ptr_332, const_ptr_52, "");
BranchInst::Create(label_true_IF_NULL_i1_i_i3_i_i, label_true_IFNULL_i5_i_i6_i_i, int1_333, label_tableswitch3_i_i);
// Block true IF*NULL.i1.i.i3.i.i (label_true_IF_NULL_i1_i_i3_i_i)
std::vector<Value*> ptr_335_indices;
ptr_335_indices.push_back(const_int32_55);
ptr_335_indices.push_back(const_int32_55);
Instruction* ptr_335 = GetElementPtrInst::Create(ptr_327, ptr_335_indices.begin(), ptr_335_indices.end(), "", label_true_IF_NULL_i1_i_i3_i_i);
new StoreInst(const_ptr_83, ptr_335, false, label_true_IF_NULL_i1_i_i3_i_i);
GetElementPtrInst* ptr_337 = GetElementPtrInst::Create(ptr_329, const_int32_61, "", label_true_IF_NULL_i1_i_i3_i_i);
CastInst* ptr_338 = new BitCastInst(ptr_337, PointerTy_29, "", label_true_IF_NULL_i1_i_i3_i_i);
LoadInst* ptr_339 = new LoadInst(ptr_338, "", false, label_true_IF_NULL_i1_i_i3_i_i);
LoadInst* ptr_340 = new LoadInst(const_ptr_84, "", false, label_true_IF_NULL_i1_i_i3_i_i);
CastInst* int32_341 = new PtrToIntInst(ptr_340, IntegerType::get(mod->getContext(), 32), "", label_true_IF_NULL_i1_i_i3_i_i);
BinaryOperator* int32_342 = BinaryOperator::Create(Instruction::Add, int32_341, int32_326, "", label_true_IF_NULL_i1_i_i3_i_i);
CastInst* ptr_343 = new IntToPtrInst(int32_342, PointerTy_29, "", label_true_IF_NULL_i1_i_i3_i_i);
new StoreInst(ptr_339, ptr_343, false, label_true_IF_NULL_i1_i_i3_i_i);
LoadInst* ptr_345 = new LoadInst(ptr_338, "", false, label_true_IF_NULL_i1_i_i3_i_i);
ICmpInst* int1_346 = new ICmpInst(*label_true_IF_NULL_i1_i_i3_i_i, ICmpInst::ICMP_EQ, ptr_345, const_ptr_76, "");
BranchInst::Create(label_GOTO_or_IF_1_i3_i_i5_i_i, label_false_IFNE_i7_i_i8_i_i, int1_346, label_true_IF_NULL_i1_i_i3_i_i);
// Block GOTO or IF*1.i3.i.i5.i.i (label_GOTO_or_IF_1_i3_i_i5_i_i)
CastInst* ptr_348 = new BitCastInst(ptr_337, PointerTy_32, "", label_GOTO_or_IF_1_i3_i_i5_i_i);
CastInst* ptr__c_i2_i_i4_i_i = new IntToPtrInst(int32_326, PointerTy_26, ".c.i2.i.i4.i.i", label_GOTO_or_IF_1_i3_i_i5_i_i);
new StoreInst(ptr__c_i2_i_i4_i_i, ptr_348, false, label_GOTO_or_IF_1_i3_i_i5_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit, label_true_IFNULL3_i8_i_i9_i_i, int1_333, label_GOTO_or_IF_1_i3_i_i5_i_i);
// Block true IFNULL.i5.i.i6.i.i (label_true_IFNULL_i5_i_i6_i_i)
GetElementPtrInst* ptr_351 = GetElementPtrInst::Create(ptr_332, const_int32_61, "", label_true_IFNULL_i5_i_i6_i_i);
CastInst* ptr_352 = new BitCastInst(ptr_351, PointerTy_24, "", label_true_IFNULL_i5_i_i6_i_i);
BranchInst::Create(label_bb2_i_i34_i, label_true_IFNULL_i5_i_i6_i_i);
// Block bb.i.i32.i (label_bb_i_i32_i)
Argument* fwdref_355 = new Argument(IntegerType::get(mod->getContext(), 1));
BranchInst::Create(label_true_IF_NULL_i1_i_i3_i_i, label_bb1_i_i33_i, fwdref_355, label_bb_i_i32_i);
// Block bb1.i.i33.i (label_bb1_i_i33_i)
Argument* fwdref_357 = new Argument(IntegerType::get(mod->getContext(), 32));
BinaryOperator* int32_356 = BinaryOperator::Create(Instruction::Add, fwdref_357, const_int32_50, "", label_bb1_i_i33_i);
BranchInst::Create(label_bb2_i_i34_i, label_bb1_i_i33_i);
// Block bb2.i.i34.i (label_bb2_i_i34_i)
PHINode* int32_359 = PHINode::Create(IntegerType::get(mod->getContext(), 32), "", label_bb2_i_i34_i);
int32_359->reserveOperandSpace(2);
int32_359->addIncoming(const_int32_55, label_true_IFNULL_i5_i_i6_i_i);
int32_359->addIncoming(int32_356, label_bb1_i_i33_i);
ICmpInst* int1_360 = new ICmpInst(*label_bb2_i_i34_i, ICmpInst::ICMP_ULT, int32_359, const_int32_85, "");
std::vector<Value*> void_361_params;
void_361_params.push_back(const_int1_86);
void_361_params.push_back(const_int1_86);
void_361_params.push_back(const_int1_86);
void_361_params.push_back(const_int1_86);
void_361_params.push_back(const_int1_86);
CallInst* void_361 = CallInst::Create(func_llvm_memory_barrier, void_361_params.begin(), void_361_params.end(), "", label_bb2_i_i34_i);
void_361->setCallingConv(CallingConv::C);
void_361->setTailCall(false);AttrListPtr void_361_PAL;
void_361->setAttributes(void_361_PAL);
std::vector<Value*> int32_362_params;
int32_362_params.push_back(ptr_352);
int32_362_params.push_back(const_int32_55);
int32_362_params.push_back(const_int32_50);
CallInst* int32_362 = CallInst::Create(func_llvm_atomic_cmp_swap_i32_p0i32, int32_362_params.begin(), int32_362_params.end(), "", label_bb2_i_i34_i);
int32_362->setCallingConv(CallingConv::C);
int32_362->setTailCall(false);AttrListPtr int32_362_PAL;
int32_362->setAttributes(int32_362_PAL);
std::vector<Value*> void_363_params;
void_363_params.push_back(const_int1_86);
void_363_params.push_back(const_int1_86);
void_363_params.push_back(const_int1_86);
void_363_params.push_back(const_int1_86);
void_363_params.push_back(const_int1_86);
CallInst* void_363 = CallInst::Create(func_llvm_memory_barrier, void_363_params.begin(), void_363_params.end(), "", label_bb2_i_i34_i);
void_363->setCallingConv(CallingConv::C);
void_363->setTailCall(false);AttrListPtr void_363_PAL;
void_363->setAttributes(void_363_PAL);
ICmpInst* int1_364 = new ICmpInst(*label_bb2_i_i34_i, ICmpInst::ICMP_EQ, int32_362, const_int32_55, "");
BranchInst::Create(label_bb_i_i32_i, label_bb4_preheader_i_i35_i, int1_360, label_bb2_i_i34_i);
// Block bb4.preheader.i.i35.i (label_bb4_preheader_i_i35_i)
BranchInst::Create(label_true_IF_NULL_i1_i_i3_i_i, label_bb3_i_i36_i, int1_364, label_bb4_preheader_i_i35_i);
// Block bb3.i.i36.i (label_bb3_i_i36_i)
CallInst* void_367 = CallInst::Create(func__ZN3mvm6Thread5yieldEv, "", label_bb3_i_i36_i);
void_367->setCallingConv(CallingConv::C);
void_367->setTailCall(false);AttrListPtr void_367_PAL;
void_367->setAttributes(void_367_PAL);
std::vector<Value*> void_368_params;
void_368_params.push_back(const_int1_86);
void_368_params.push_back(const_int1_86);
void_368_params.push_back(const_int1_86);
void_368_params.push_back(const_int1_86);
void_368_params.push_back(const_int1_86);
CallInst* void_368 = CallInst::Create(func_llvm_memory_barrier, void_368_params.begin(), void_368_params.end(), "", label_bb3_i_i36_i);
void_368->setCallingConv(CallingConv::C);
void_368->setTailCall(false);AttrListPtr void_368_PAL;
void_368->setAttributes(void_368_PAL);
std::vector<Value*> int32_369_params;
int32_369_params.push_back(ptr_352);
int32_369_params.push_back(const_int32_55);
int32_369_params.push_back(const_int32_50);
CallInst* int32_369 = CallInst::Create(func_llvm_atomic_cmp_swap_i32_p0i32, int32_369_params.begin(), int32_369_params.end(), "", label_bb3_i_i36_i);
int32_369->setCallingConv(CallingConv::C);
int32_369->setTailCall(false);AttrListPtr int32_369_PAL;
int32_369->setAttributes(int32_369_PAL);
std::vector<Value*> void_370_params;
void_370_params.push_back(const_int1_86);
void_370_params.push_back(const_int1_86);
void_370_params.push_back(const_int1_86);
void_370_params.push_back(const_int1_86);
void_370_params.push_back(const_int1_86);
CallInst* void_370 = CallInst::Create(func_llvm_memory_barrier, void_370_params.begin(), void_370_params.end(), "", label_bb3_i_i36_i);
void_370->setCallingConv(CallingConv::C);
void_370->setTailCall(false);AttrListPtr void_370_PAL;
void_370->setAttributes(void_370_PAL);
ICmpInst* int1_371 = new ICmpInst(*label_bb3_i_i36_i, ICmpInst::ICMP_EQ, int32_369, const_int32_55, "");
BranchInst::Create(label_true_IF_NULL_i1_i_i3_i_i, label_bb3_i_i36_i, int1_371, label_bb3_i_i36_i);
// Block false IFNE.i7.i.i8.i.i (label_false_IFNE_i7_i_i8_i_i)
std::vector<Value*> ptr_373_indices;
ptr_373_indices.push_back(const_int32_55);
ptr_373_indices.push_back(const_int32_55);
Instruction* ptr_373 = GetElementPtrInst::Create(ptr_345, ptr_373_indices.begin(), ptr_373_indices.end(), "", label_false_IFNE_i7_i_i8_i_i);
CastInst* ptr__c1_i6_i_i7_i_i = new IntToPtrInst(int32_326, PointerTy_26, ".c1.i6.i.i7.i.i", label_false_IFNE_i7_i_i8_i_i);
new StoreInst(ptr__c1_i6_i_i7_i_i, ptr_373, false, label_false_IFNE_i7_i_i8_i_i);
BranchInst::Create(label_GOTO_or_IF_1_i3_i_i5_i_i, label_false_IFNE_i7_i_i8_i_i);
// Block true IFNULL3.i8.i.i9.i.i (label_true_IFNULL3_i8_i_i9_i_i)
GetElementPtrInst* ptr_376 = GetElementPtrInst::Create(ptr_332, const_int32_61, "", label_true_IFNULL3_i8_i_i9_i_i);
CastInst* ptr_377 = new BitCastInst(ptr_376, PointerTy_24, "", label_true_IFNULL3_i8_i_i9_i_i);
new StoreInst(const_int32_55, ptr_377, false, label_true_IFNULL3_i8_i_i9_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit, label_true_IFNULL3_i8_i_i9_i_i);
// Block tableswitch4.i.i (label_tableswitch4_i_i)
LoadInst* ptr_380 = new LoadInst(const_ptr_87, "", false, label_tableswitch4_i_i);
CastInst* int32_381 = new PtrToIntInst(ptr_380, IntegerType::get(mod->getContext(), 32), "", label_tableswitch4_i_i);
GetElementPtrInst* ptr_382 = GetElementPtrInst::Create(ptr_287, const_int32_50, "", label_tableswitch4_i_i);
CastInst* ptr_383 = new BitCastInst(ptr_382, PointerTy_0, "", label_tableswitch4_i_i);
LoadInst* int8_384 = new LoadInst(ptr_383, "", false, label_tableswitch4_i_i);
BinaryOperator* int8_385 = BinaryOperator::Create(Instruction::And, int8_384, const_int8_78, "", label_tableswitch4_i_i);
CastInst* int8_386 = new TruncInst(int32_381, IntegerType::get(mod->getContext(), 8), "", label_tableswitch4_i_i);
BinaryOperator* int8_387 = BinaryOperator::Create(Instruction::Or, int8_385, int8_386, "", label_tableswitch4_i_i);
new StoreInst(int8_387, ptr_383, false, label_tableswitch4_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit, label_tableswitch4_i_i);
// Block tableswitch5.i.i (label_tableswitch5_i_i)
LoadInst* ptr_390 = new LoadInst(const_ptr_88, "", false, label_tableswitch5_i_i);
CastInst* int32_391 = new PtrToIntInst(ptr_390, IntegerType::get(mod->getContext(), 32), "", label_tableswitch5_i_i);
BinaryOperator* int32_392 = BinaryOperator::Create(Instruction::Or, int32_391, const_int32_57, "", label_tableswitch5_i_i);
GetElementPtrInst* ptr_393 = GetElementPtrInst::Create(ptr_287, const_int32_50, "", label_tableswitch5_i_i);
CastInst* ptr_394 = new BitCastInst(ptr_393, PointerTy_0, "", label_tableswitch5_i_i);
LoadInst* int8_395 = new LoadInst(ptr_394, "", false, label_tableswitch5_i_i);
BinaryOperator* int8_396 = BinaryOperator::Create(Instruction::And, int8_395, const_int8_78, "", label_tableswitch5_i_i);
CastInst* int8_397 = new TruncInst(int32_392, IntegerType::get(mod->getContext(), 8), "", label_tableswitch5_i_i);
BinaryOperator* int8_398 = BinaryOperator::Create(Instruction::Or, int8_397, int8_396, "", label_tableswitch5_i_i);
new StoreInst(int8_398, ptr_394, false, label_tableswitch5_i_i);
LoadInst* ptr_400 = new LoadInst(const_ptr_89, "", false, label_tableswitch5_i_i);
CastInst* int32_401 = new PtrToIntInst(ptr_287, IntegerType::get(mod->getContext(), 32), "", label_tableswitch5_i_i);
BinaryOperator* int32_402 = BinaryOperator::Create(Instruction::And, int32_401, const_int32_82, "", label_tableswitch5_i_i);
CastInst* ptr_403 = new IntToPtrInst(int32_402, PointerTy_25, "", label_tableswitch5_i_i);
std::vector<Value*> ptr_404_indices;
ptr_404_indices.push_back(const_int32_57);
ptr_404_indices.push_back(const_int32_50);
Instruction* ptr_404 = GetElementPtrInst::Create(ptr_400, ptr_404_indices.begin(), ptr_404_indices.end(), "", label_tableswitch5_i_i);
LoadInst* ptr_405 = new LoadInst(ptr_404, "", false, label_tableswitch5_i_i);
GetElementPtrInst* ptr_406 = GetElementPtrInst::Create(ptr_405, const_int32_70, "", label_tableswitch5_i_i);
CastInst* ptr_407 = new BitCastInst(ptr_406, PointerTy_7, "", label_tableswitch5_i_i);
LoadInst* ptr_408 = new LoadInst(ptr_407, "", false, label_tableswitch5_i_i);
ICmpInst* int1_409 = new ICmpInst(*label_tableswitch5_i_i, ICmpInst::ICMP_EQ, ptr_408, const_ptr_52, "");
BranchInst::Create(label_true_IF_NULL_i1_i_i_i_i, label_true_IFNULL_i5_i_i_i_i, int1_409, label_tableswitch5_i_i);
// Block true IF*NULL.i1.i.i.i.i (label_true_IF_NULL_i1_i_i_i_i)
std::vector<Value*> ptr_411_indices;
ptr_411_indices.push_back(const_int32_55);
ptr_411_indices.push_back(const_int32_55);
Instruction* ptr_411 = GetElementPtrInst::Create(ptr_403, ptr_411_indices.begin(), ptr_411_indices.end(), "", label_true_IF_NULL_i1_i_i_i_i);
new StoreInst(const_ptr_83, ptr_411, false, label_true_IF_NULL_i1_i_i_i_i);
GetElementPtrInst* ptr_413 = GetElementPtrInst::Create(ptr_405, const_int32_61, "", label_true_IF_NULL_i1_i_i_i_i);
CastInst* ptr_414 = new BitCastInst(ptr_413, PointerTy_29, "", label_true_IF_NULL_i1_i_i_i_i);
LoadInst* ptr_415 = new LoadInst(ptr_414, "", false, label_true_IF_NULL_i1_i_i_i_i);
LoadInst* ptr_416 = new LoadInst(const_ptr_84, "", false, label_true_IF_NULL_i1_i_i_i_i);
CastInst* int32_417 = new PtrToIntInst(ptr_416, IntegerType::get(mod->getContext(), 32), "", label_true_IF_NULL_i1_i_i_i_i);
BinaryOperator* int32_418 = BinaryOperator::Create(Instruction::Add, int32_417, int32_402, "", label_true_IF_NULL_i1_i_i_i_i);
CastInst* ptr_419 = new IntToPtrInst(int32_418, PointerTy_29, "", label_true_IF_NULL_i1_i_i_i_i);
new StoreInst(ptr_415, ptr_419, false, label_true_IF_NULL_i1_i_i_i_i);
LoadInst* ptr_421 = new LoadInst(ptr_414, "", false, label_true_IF_NULL_i1_i_i_i_i);
ICmpInst* int1_422 = new ICmpInst(*label_true_IF_NULL_i1_i_i_i_i, ICmpInst::ICMP_EQ, ptr_421, const_ptr_76, "");
BranchInst::Create(label_GOTO_or_IF_1_i3_i_i_i_i, label_false_IFNE_i7_i_i_i_i, int1_422, label_true_IF_NULL_i1_i_i_i_i);
// Block GOTO or IF*1.i3.i.i.i.i (label_GOTO_or_IF_1_i3_i_i_i_i)
CastInst* ptr_424 = new BitCastInst(ptr_413, PointerTy_32, "", label_GOTO_or_IF_1_i3_i_i_i_i);
CastInst* ptr__c_i2_i_i_i_i = new IntToPtrInst(int32_402, PointerTy_26, ".c.i2.i.i.i.i", label_GOTO_or_IF_1_i3_i_i_i_i);
new StoreInst(ptr__c_i2_i_i_i_i, ptr_424, false, label_GOTO_or_IF_1_i3_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit, label_true_IFNULL3_i8_i_i_i_i, int1_409, label_GOTO_or_IF_1_i3_i_i_i_i);
// Block true IFNULL.i5.i.i.i.i (label_true_IFNULL_i5_i_i_i_i)
GetElementPtrInst* ptr_427 = GetElementPtrInst::Create(ptr_408, const_int32_61, "", label_true_IFNULL_i5_i_i_i_i);
CastInst* ptr_428 = new BitCastInst(ptr_427, PointerTy_24, "", label_true_IFNULL_i5_i_i_i_i);
BranchInst::Create(label_bb2_i_i_i, label_true_IFNULL_i5_i_i_i_i);
// Block bb.i.i.i (label_bb_i_i_i)
Argument* fwdref_431 = new Argument(IntegerType::get(mod->getContext(), 1));
BranchInst::Create(label_true_IF_NULL_i1_i_i_i_i, label_bb1_i_i_i, fwdref_431, label_bb_i_i_i);
// Block bb1.i.i.i (label_bb1_i_i_i)
Argument* fwdref_433 = new Argument(IntegerType::get(mod->getContext(), 32));
BinaryOperator* int32_432 = BinaryOperator::Create(Instruction::Add, fwdref_433, const_int32_50, "", label_bb1_i_i_i);
BranchInst::Create(label_bb2_i_i_i, label_bb1_i_i_i);
// Block bb2.i.i.i (label_bb2_i_i_i)
PHINode* int32_435 = PHINode::Create(IntegerType::get(mod->getContext(), 32), "", label_bb2_i_i_i);
int32_435->reserveOperandSpace(2);
int32_435->addIncoming(const_int32_55, label_true_IFNULL_i5_i_i_i_i);
int32_435->addIncoming(int32_432, label_bb1_i_i_i);
ICmpInst* int1_436 = new ICmpInst(*label_bb2_i_i_i, ICmpInst::ICMP_ULT, int32_435, const_int32_85, "");
std::vector<Value*> void_437_params;
void_437_params.push_back(const_int1_86);
void_437_params.push_back(const_int1_86);
void_437_params.push_back(const_int1_86);
void_437_params.push_back(const_int1_86);
void_437_params.push_back(const_int1_86);
CallInst* void_437 = CallInst::Create(func_llvm_memory_barrier, void_437_params.begin(), void_437_params.end(), "", label_bb2_i_i_i);
void_437->setCallingConv(CallingConv::C);
void_437->setTailCall(false);AttrListPtr void_437_PAL;
void_437->setAttributes(void_437_PAL);
std::vector<Value*> int32_438_params;
int32_438_params.push_back(ptr_428);
int32_438_params.push_back(const_int32_55);
int32_438_params.push_back(const_int32_50);
CallInst* int32_438 = CallInst::Create(func_llvm_atomic_cmp_swap_i32_p0i32, int32_438_params.begin(), int32_438_params.end(), "", label_bb2_i_i_i);
int32_438->setCallingConv(CallingConv::C);
int32_438->setTailCall(false);AttrListPtr int32_438_PAL;
int32_438->setAttributes(int32_438_PAL);
std::vector<Value*> void_439_params;
void_439_params.push_back(const_int1_86);
void_439_params.push_back(const_int1_86);
void_439_params.push_back(const_int1_86);
void_439_params.push_back(const_int1_86);
void_439_params.push_back(const_int1_86);
CallInst* void_439 = CallInst::Create(func_llvm_memory_barrier, void_439_params.begin(), void_439_params.end(), "", label_bb2_i_i_i);
void_439->setCallingConv(CallingConv::C);
void_439->setTailCall(false);AttrListPtr void_439_PAL;
void_439->setAttributes(void_439_PAL);
ICmpInst* int1_440 = new ICmpInst(*label_bb2_i_i_i, ICmpInst::ICMP_EQ, int32_438, const_int32_55, "");
BranchInst::Create(label_bb_i_i_i, label_bb4_preheader_i_i_i, int1_436, label_bb2_i_i_i);
// Block bb4.preheader.i.i.i (label_bb4_preheader_i_i_i)
BranchInst::Create(label_true_IF_NULL_i1_i_i_i_i, label_bb3_i_i_i, int1_440, label_bb4_preheader_i_i_i);
// Block bb3.i.i.i (label_bb3_i_i_i)
CallInst* void_443 = CallInst::Create(func__ZN3mvm6Thread5yieldEv, "", label_bb3_i_i_i);
void_443->setCallingConv(CallingConv::C);
void_443->setTailCall(false);AttrListPtr void_443_PAL;
void_443->setAttributes(void_443_PAL);
std::vector<Value*> void_444_params;
void_444_params.push_back(const_int1_86);
void_444_params.push_back(const_int1_86);
void_444_params.push_back(const_int1_86);
void_444_params.push_back(const_int1_86);
void_444_params.push_back(const_int1_86);
CallInst* void_444 = CallInst::Create(func_llvm_memory_barrier, void_444_params.begin(), void_444_params.end(), "", label_bb3_i_i_i);
void_444->setCallingConv(CallingConv::C);
void_444->setTailCall(false);AttrListPtr void_444_PAL;
void_444->setAttributes(void_444_PAL);
std::vector<Value*> int32_445_params;
int32_445_params.push_back(ptr_428);
int32_445_params.push_back(const_int32_55);
int32_445_params.push_back(const_int32_50);
CallInst* int32_445 = CallInst::Create(func_llvm_atomic_cmp_swap_i32_p0i32, int32_445_params.begin(), int32_445_params.end(), "", label_bb3_i_i_i);
int32_445->setCallingConv(CallingConv::C);
int32_445->setTailCall(false);AttrListPtr int32_445_PAL;
int32_445->setAttributes(int32_445_PAL);
std::vector<Value*> void_446_params;
void_446_params.push_back(const_int1_86);
void_446_params.push_back(const_int1_86);
void_446_params.push_back(const_int1_86);
void_446_params.push_back(const_int1_86);
void_446_params.push_back(const_int1_86);
CallInst* void_446 = CallInst::Create(func_llvm_memory_barrier, void_446_params.begin(), void_446_params.end(), "", label_bb3_i_i_i);
void_446->setCallingConv(CallingConv::C);
void_446->setTailCall(false);AttrListPtr void_446_PAL;
void_446->setAttributes(void_446_PAL);
ICmpInst* int1_447 = new ICmpInst(*label_bb3_i_i_i, ICmpInst::ICMP_EQ, int32_445, const_int32_55, "");
BranchInst::Create(label_true_IF_NULL_i1_i_i_i_i, label_bb3_i_i_i, int1_447, label_bb3_i_i_i);
// Block false IFNE.i7.i.i.i.i (label_false_IFNE_i7_i_i_i_i)
std::vector<Value*> ptr_449_indices;
ptr_449_indices.push_back(const_int32_55);
ptr_449_indices.push_back(const_int32_55);
Instruction* ptr_449 = GetElementPtrInst::Create(ptr_421, ptr_449_indices.begin(), ptr_449_indices.end(), "", label_false_IFNE_i7_i_i_i_i);
CastInst* ptr__c1_i6_i_i_i_i = new IntToPtrInst(int32_402, PointerTy_26, ".c1.i6.i.i.i.i", label_false_IFNE_i7_i_i_i_i);
new StoreInst(ptr__c1_i6_i_i_i_i, ptr_449, false, label_false_IFNE_i7_i_i_i_i);
BranchInst::Create(label_GOTO_or_IF_1_i3_i_i_i_i, label_false_IFNE_i7_i_i_i_i);
// Block true IFNULL3.i8.i.i.i.i (label_true_IFNULL3_i8_i_i_i_i)
GetElementPtrInst* ptr_452 = GetElementPtrInst::Create(ptr_408, const_int32_61, "", label_true_IFNULL3_i8_i_i_i_i);
CastInst* ptr_453 = new BitCastInst(ptr_452, PointerTy_24, "", label_true_IFNULL3_i8_i_i_i_i);
new StoreInst(const_int32_55, ptr_453, false, label_true_IFNULL3_i8_i_i_i_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit, label_true_IFNULL3_i8_i_i_i_i);
// Block false IFNE.i (label_false_IFNE_i)
LoadInst* ptr_456 = new LoadInst(const_ptr_90, "", false, label_false_IFNE_i);
CastInst* int32_457 = new PtrToIntInst(ptr_456, IntegerType::get(mod->getContext(), 32), "", label_false_IFNE_i);
GetElementPtrInst* ptr_458 = GetElementPtrInst::Create(ptr_287, const_int32_50, "", label_false_IFNE_i);
CastInst* ptr_459 = new BitCastInst(ptr_458, PointerTy_0, "", label_false_IFNE_i);
LoadInst* int8_460 = new LoadInst(ptr_459, "", false, label_false_IFNE_i);
BinaryOperator* int8_461 = BinaryOperator::Create(Instruction::And, int8_460, const_int8_78, "", label_false_IFNE_i);
CastInst* int8_462 = new TruncInst(int32_457, IntegerType::get(mod->getContext(), 8), "", label_false_IFNE_i);
BinaryOperator* int8_463 = BinaryOperator::Create(Instruction::Or, int8_461, int8_462, "", label_false_IFNE_i);
new StoreInst(int8_463, ptr_459, false, label_false_IFNE_i);
BranchInst::Create(label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit, label_false_IFNE_i);
// Block JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II.exit (label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit)
LoadInst* ptr_466 = new LoadInst(ptr_res, "", false, label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit);
CastInst* ptr_467 = new BitCastInst(ptr_466, PointerTy_0, "", label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit);
ReturnInst::Create(mod->getContext(), ptr_467, label_JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II_exit);
// Resolve Forward References
fwdref_355->replaceAllUsesWith(int1_364); delete fwdref_355;
fwdref_433->replaceAllUsesWith(int32_435); delete fwdref_433;
fwdref_357->replaceAllUsesWith(int32_359); delete fwdref_357;
fwdref_431->replaceAllUsesWith(int1_440); delete fwdref_431;
return func_gcmalloc;
}