From nicolas.geoffray at lip6.fr Mon Mar 8 13:24:54 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Mon, 08 Mar 2010 21:24:54 -0000 Subject: [vmkit-commits] [vmkit] r97986 - /vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc Message-ID: <20100308212454.61BFD2A6C12C@llvm.org> Author: geoffray Date: Mon Mar 8 15:24:54 2010 New Revision: 97986 URL: http://llvm.org/viewvc/llvm-project?rev=97986&view=rev Log: Add a llc generated file to be parsed by vmkit for gcmalloc. To obtain this file, I had to modify llc a bit, and that's why the file is not generated by Makefile. Added: vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc Added: vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc?rev=97986&view=auto ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc (added) +++ vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc Mon Mar 8 15:24:54 2010 @@ -0,0 +1,1682 @@ +// Generated by llvm2cpp - DO NOT MODIFY! + + +Function* makeLLVMFunction(Module *mod) { + +// Type Definitions +PointerType* PointerTy_0 = PointerType::get(IntegerType::get(mod->getContext(), 8), 0); + +std::vectorFuncTy_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::vectorStructTy_struct_gc_fields; +std::vectorStructTy_struct_gcRoot_fields; +std::vectorFuncTy_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::vectorFuncTy_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::vectorFuncTy_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::vectorStructTy_struct_mvm__MutatorThread_fields; +std::vectorStructTy_struct_mvm__Thread_fields; +std::vectorStructTy_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(StructTy_struct_mvm__CircularBase_fwd.get())->refineAbstractTypeTo(StructTy_struct_mvm__CircularBase); +StructTy_struct_mvm__CircularBase = cast(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::vectorStructTy_struct_mvm__VirtualMachine_fields; +StructTy_struct_mvm__VirtualMachine_fields.push_back(PointerTy_4); +std::vectorStructTy_struct_mvm__BumpPtrAllocator_fields; +std::vectorStructTy_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::vectorStructTy_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::vectorStructTy_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(PointerTy_17_fwd.get())->refineAbstractTypeTo(PointerTy_17); +PointerTy_17 = cast(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::vectorStructTy_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::vectorStructTy_struct_mvm__Cond_fields; +std::vectorStructTy_union_pthread_cond_t_fields; +std::vectorStructTy_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::vectorStructTy_struct_mvm__LockNormal_fields; +std::vectorStructTy_struct_mvm__Lock_fields; +StructTy_struct_mvm__Lock_fields.push_back(PointerTy_4); +StructTy_struct_mvm__Lock_fields.push_back(PointerTy_18); +std::vectorStructTy_union_pthread_mutex_t_fields; +std::vectorStructTy_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::vectorStructTy_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::vectorStructTy_struct_mvm__StartEndFunctionMap_fields; +std::vectorStructTy_struct_mvm__FunctionMap_fields; +std::vectorStructTy_struct_std__map_const_char_j3__ClassPrimitive__std__less_const_char__std__allocator_std__pair_const_char__j3__ClassPrimitive_______fields; +std::vectorStructTy_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::vectorStructTy_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::vectorStructTy_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", 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::vectorStructTy_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(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(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,std::_Select1st >,std::less,std::allocator > >::_Rb_tree_impl,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,std::_Select1st >,std::less,std::allocator > >", 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,std::allocator > >", 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::vectorFuncTy_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::vectorStructTy_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(PointerTy_23_fwd.get())->refineAbstractTypeTo(PointerTy_23); +PointerTy_23 = cast(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(StructTy_struct_mvm__Thread_fwd.get())->refineAbstractTypeTo(StructTy_struct_mvm__Thread); +StructTy_struct_mvm__Thread = cast(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::vectorStructTy_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::vectorFuncTy_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::vectorFuncTy_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::vectorFuncTy_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::vectorStructTy_36_fields; +std::vectorStructTy_37_fields; +std::vectorStructTy_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::vectorStructTy_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::vectorStructTy_42_fields; +std::vectorStructTy_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::vectorStructTy_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::vectorFuncTy_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::vectorFuncTy_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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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 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; +} From nicolas.geoffray at lip6.fr Mon Mar 8 13:26:47 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Mon, 08 Mar 2010 21:26:47 -0000 Subject: [vmkit-commits] [vmkit] r97987 - in /vmkit/trunk: Makefile.rules include/mvm/JIT.h lib/J3/Compiler/J3Intrinsics.cpp lib/J3/Compiler/JavaAOTCompiler.cpp lib/J3/Compiler/JavaJITCompiler.cpp lib/J3/Compiler/JavaLLVMCompiler.cpp lib/J3/Compiler/LLVMInfo.cpp lib/Mvm/Compiler/InlineMalloc.cpp lib/Mvm/Compiler/JIT.cpp tools/j3/Main.cpp tools/vmjc/vmjc.cpp tools/vmkit/Launcher.cpp Message-ID: <20100308212647.93AB82A6C12C@llvm.org> Author: geoffray Date: Mon Mar 8 15:26:47 2010 New Revision: 97987 URL: http://llvm.org/viewvc/llvm-project?rev=97987&view=rev Log: Create a LLVMContext for each compiler created, hence for each class loader. Modified: vmkit/trunk/Makefile.rules vmkit/trunk/include/mvm/JIT.h vmkit/trunk/lib/J3/Compiler/J3Intrinsics.cpp vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp vmkit/trunk/lib/Mvm/Compiler/JIT.cpp vmkit/trunk/tools/j3/Main.cpp vmkit/trunk/tools/vmjc/vmjc.cpp vmkit/trunk/tools/vmkit/Launcher.cpp Modified: vmkit/trunk/Makefile.rules URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile.rules?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/Makefile.rules (original) +++ vmkit/trunk/Makefile.rules Mon Mar 8 15:26:47 2010 @@ -137,6 +137,7 @@ $(Verb) $(LOPT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -std-compile-opts -LowerJavaRT -f $(JARNAME).bc -o $(JARNAME)-optimized.bc $(Verb) $(LLVMLD) -r -o $(LibDir)/FinalMMTk.bc $(LibDir)/MMTKAlloc.bc $(JARNAME)-optimized.bc $(LibDir)/MMTKRuntime.bc $(Verb) $(LOPT) -std-compile-opts $(LibDir)/FinalMMTk.bc -o $(LibDir)/FinalMMTk.bc + #$(Verb) $(LLC) -march=cpp -cppgen=function -cppfor=gcmalloc $(LibDir)/FinalMMTk.bc -o $(PROJ_SRC_ROOT)/lib/Mvm/Compiler/MMTkInline.inc endif Modified: vmkit/trunk/include/mvm/JIT.h URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/JIT.h?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/include/mvm/JIT.h (original) +++ vmkit/trunk/include/mvm/JIT.h Mon Mar 8 15:26:47 2010 @@ -200,7 +200,7 @@ static void copyDefinitions(llvm::Module* Dst, llvm::Module* Src); - static void AddStandardCompilePasses(); + static void addCommandLinePasses(llvm::FunctionPassManager* PM); static const char* getHostTriple(); }; Modified: vmkit/trunk/lib/J3/Compiler/J3Intrinsics.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/J3Intrinsics.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/J3Intrinsics.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/J3Intrinsics.cpp Mon Mar 8 15:26:47 2010 @@ -33,74 +33,68 @@ J3Intrinsics::J3Intrinsics(llvm::Module* module) : BaseIntrinsics(module) { + j3::llvm_runtime::makeLLVMModuleContents(module); - llvm::Module* globalModule = mvm::MvmModule::globalModule; - - if (!globalModule->getTypeByName("JavaThread")) { - j3::llvm_runtime::makeLLVMModuleContents(globalModule); - mvm::MvmModule::copyDefinitions(module, globalModule); - } - - VTType = PointerType::getUnqual(globalModule->getTypeByName("VT")); + VTType = PointerType::getUnqual(module->getTypeByName("VT")); LLVMContext& Context = module->getContext(); #ifdef ISOLATE_SHARING JnjvmType = - PointerType::getUnqual(globalModule->getTypeByName("Jnjvm")); + PointerType::getUnqual(module->getTypeByName("Jnjvm")); #endif ConstantPoolType = ptrPtrType; JavaObjectType = - PointerType::getUnqual(globalModule->getTypeByName("JavaObject")); + PointerType::getUnqual(module->getTypeByName("JavaObject")); JavaArrayType = - PointerType::getUnqual(globalModule->getTypeByName("JavaArray")); + PointerType::getUnqual(module->getTypeByName("JavaArray")); JavaCommonClassType = - PointerType::getUnqual(globalModule->getTypeByName("JavaCommonClass")); + PointerType::getUnqual(module->getTypeByName("JavaCommonClass")); JavaClassPrimitiveType = - PointerType::getUnqual(globalModule->getTypeByName("JavaClassPrimitive")); + PointerType::getUnqual(module->getTypeByName("JavaClassPrimitive")); JavaClassArrayType = - PointerType::getUnqual(globalModule->getTypeByName("JavaClassArray")); + PointerType::getUnqual(module->getTypeByName("JavaClassArray")); JavaClassType = - PointerType::getUnqual(globalModule->getTypeByName("JavaClass")); + PointerType::getUnqual(module->getTypeByName("JavaClass")); JavaArrayUInt8Type = - PointerType::getUnqual(globalModule->getTypeByName("ArrayUInt8")); + PointerType::getUnqual(module->getTypeByName("ArrayUInt8")); JavaArraySInt8Type = - PointerType::getUnqual(globalModule->getTypeByName("ArraySInt8")); + PointerType::getUnqual(module->getTypeByName("ArraySInt8")); JavaArrayUInt16Type = - PointerType::getUnqual(globalModule->getTypeByName("ArrayUInt16")); + PointerType::getUnqual(module->getTypeByName("ArrayUInt16")); JavaArraySInt16Type = - PointerType::getUnqual(globalModule->getTypeByName("ArraySInt16")); + PointerType::getUnqual(module->getTypeByName("ArraySInt16")); JavaArrayUInt32Type = - PointerType::getUnqual(globalModule->getTypeByName("ArrayUInt32")); + PointerType::getUnqual(module->getTypeByName("ArrayUInt32")); JavaArraySInt32Type = - PointerType::getUnqual(globalModule->getTypeByName("ArraySInt32")); + PointerType::getUnqual(module->getTypeByName("ArraySInt32")); JavaArrayLongType = - PointerType::getUnqual(globalModule->getTypeByName("ArrayLong")); + PointerType::getUnqual(module->getTypeByName("ArrayLong")); JavaArrayFloatType = - PointerType::getUnqual(globalModule->getTypeByName("ArrayFloat")); + PointerType::getUnqual(module->getTypeByName("ArrayFloat")); JavaArrayDoubleType = - PointerType::getUnqual(globalModule->getTypeByName("ArrayDouble")); + PointerType::getUnqual(module->getTypeByName("ArrayDouble")); JavaArrayObjectType = - PointerType::getUnqual(globalModule->getTypeByName("ArrayObject")); + PointerType::getUnqual(module->getTypeByName("ArrayObject")); JavaFieldType = - PointerType::getUnqual(globalModule->getTypeByName("JavaField")); + PointerType::getUnqual(module->getTypeByName("JavaField")); JavaMethodType = - PointerType::getUnqual(globalModule->getTypeByName("JavaMethod")); + PointerType::getUnqual(module->getTypeByName("JavaMethod")); UTF8Type = - PointerType::getUnqual(globalModule->getTypeByName("UTF8")); + PointerType::getUnqual(module->getTypeByName("UTF8")); AttributType = - PointerType::getUnqual(globalModule->getTypeByName("Attribut")); + PointerType::getUnqual(module->getTypeByName("Attribut")); JavaThreadType = - PointerType::getUnqual(globalModule->getTypeByName("JavaThread")); + PointerType::getUnqual(module->getTypeByName("JavaThread")); MutatorThreadType = - PointerType::getUnqual(globalModule->getTypeByName("MutatorThread")); + PointerType::getUnqual(module->getTypeByName("MutatorThread")); CodeLineInfoType = - PointerType::getUnqual(globalModule->getTypeByName("CodeLineInfo")); + PointerType::getUnqual(module->getTypeByName("CodeLineInfo")); JavaObjectNullConstant = Constant::getNullValue(J3Intrinsics::JavaObjectType); @@ -152,25 +146,6 @@ ClassReadyConstant = ConstantInt::get(Type::getInt8Ty(Context), ready); - globalModule->addTypeName("JavaObject", JavaObjectType->getContainedType(0)); - globalModule->addTypeName("JavaArray", JavaArrayType->getContainedType(0)); - globalModule->addTypeName("JavaCommonClass", - JavaCommonClassType->getContainedType(0)); - globalModule->addTypeName("JavaClass", JavaClassType->getContainedType(0)); - globalModule->addTypeName("JavaClassPrimitive", - JavaClassPrimitiveType->getContainedType(0)); - globalModule->addTypeName("JavaClassArray", - JavaClassArrayType->getContainedType(0)); - globalModule->addTypeName("ArrayUInt8", JavaArrayUInt8Type->getContainedType(0)); - globalModule->addTypeName("ArraySInt8", JavaArraySInt8Type->getContainedType(0)); - globalModule->addTypeName("ArrayUInt16", JavaArrayUInt16Type->getContainedType(0)); - globalModule->addTypeName("ArraySInt16", JavaArraySInt16Type->getContainedType(0)); - globalModule->addTypeName("ArraySInt32", JavaArraySInt32Type->getContainedType(0)); - globalModule->addTypeName("ArrayLong", JavaArrayLongType->getContainedType(0)); - globalModule->addTypeName("ArrayFloat", JavaArrayFloatType->getContainedType(0)); - globalModule->addTypeName("ArrayDouble", JavaArrayDoubleType->getContainedType(0)); - globalModule->addTypeName("ArrayObject", JavaArrayObjectType->getContainedType(0)); - InterfaceLookupFunction = module->getFunction("j3InterfaceLookup"); MultiCallNewFunction = module->getFunction("j3MultiCallNew"); ForceLoadedCheckFunction = module->getFunction("forceLoadedCheck"); Modified: vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp Mon Mar 8 15:26:47 2010 @@ -354,7 +354,7 @@ Module& Mod = *getLLVMModule(); varGV = new GlobalVariable(Mod, Ty, false, GlobalValue::InternalLinkage, - 0, ""); + 0, "final object"); Constant* C = ConstantExpr::getBitCast(varGV, JavaIntrinsics.JavaObjectType); @@ -1592,7 +1592,8 @@ std::vector llvmArgs; llvmArgs.push_back(JavaIntrinsics.ptrType); // class loader. - const FunctionType* FTy = FunctionType::get(Type::getVoidTy(getLLVMContext()), llvmArgs, false); + const FunctionType* FTy = FunctionType::get(Type::getVoidTy(getLLVMContext()), + llvmArgs, false); StaticInitializer = Function::Create(FTy, GlobalValue::InternalLinkage, "Init", getLLVMModule()); @@ -1616,7 +1617,6 @@ "printJavaObject", getLLVMModule()); addJavaPasses(); - } void JavaAOTCompiler::printStats() { Modified: vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp Mon Mar 8 15:26:47 2010 @@ -424,7 +424,6 @@ newArgv[1] = mainClass; JavaJITCompiler* Comp = JavaJITCompiler::CreateCompiler("JITModule"); - mvm::MvmModule::AddStandardCompilePasses(); JnjvmClassLoader* JCL = mvm::VirtualMachine::initialiseJVM(Comp); mvm::VirtualMachine* vm = mvm::VirtualMachine::createJVM(JCL); vm->runApplication(argc + 1, newArgv); Modified: vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp Mon Mar 8 15:26:47 2010 @@ -24,7 +24,7 @@ using namespace llvm; JavaLLVMCompiler::JavaLLVMCompiler(const std::string& str) : - TheModule(new llvm::Module(str, getGlobalContext())), + TheModule(new llvm::Module(str, *(new LLVMContext()))), DebugFactory(new DIFactory(*TheModule)), JavaIntrinsics(TheModule) { @@ -70,7 +70,6 @@ mvm::MvmModule::runPasses(func, JavaNativeFunctionPasses); } else { jit.javaCompile(); - mvm::MvmModule::runPasses(func, mvm::MvmModule::globalFunctionPasses); mvm::MvmModule::runPasses(func, JavaFunctionPasses); } func->setLinkage(GlobalValue::ExternalLinkage); @@ -123,7 +122,7 @@ JavaNativeFunctionPasses->add(createLowerConstantCallsPass(getIntrinsics())); JavaFunctionPasses = new FunctionPassManager(TheModule); - JavaFunctionPasses->add(new TargetData(TheModule)); + mvm::MvmModule::addCommandLinePasses(JavaFunctionPasses); if (cooperativeGC) JavaFunctionPasses->add(mvm::createLoopSafePointsPass()); Modified: vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp Mon Mar 8 15:26:47 2010 @@ -20,7 +20,6 @@ #include "mvm/JIT.h" #include "JavaConstantPool.h" -#include "JavaJIT.h" #include "JavaString.h" #include "JavaThread.h" #include "JavaTypes.h" @@ -28,7 +27,7 @@ #include "Jnjvm.h" #include "Reader.h" -#include "j3/JavaCompiler.h" +#include "j3/JavaLLVMCompiler.h" #include "j3/LLVMInfo.h" #include @@ -42,9 +41,7 @@ const TargetData* targetData = mvm::MvmModule::TheTargetData; const StructLayout* sl = 0; const StructType* structType = 0; - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)classDef->classLoader->getCompiler(); - LLVMContext& context = Mod->getLLVMModule()->getContext(); + LLVMContext& context = Compiler->getLLVMModule()->getContext(); if (classDef->super) { LLVMClassInfo* CLI = Compiler->getClassInfo(classDef->super); @@ -53,9 +50,8 @@ for (uint32 i = 0; i < classDef->nbVirtualFields; ++i) { JavaField& field = classDef->virtualFields[i]; - field.num = i + 1; Typedef* type = field.getSignature(); - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(type); + LLVMAssessorInfo& LAI = Compiler->getTypedefInfo(type); fields.push_back(LAI.llvmType); } @@ -65,26 +61,30 @@ sl = targetData->getStructLayout(structType); } else { - virtualType = Mod->getIntrinsics()->JavaObjectType; + virtualType = Compiler->getIntrinsics()->JavaObjectType; assert(virtualType && "intrinsics not iniitalized"); structType = dyn_cast(virtualType->getContainedType(0)); sl = targetData->getStructLayout(structType); } - - for (uint32 i = 0; i < classDef->nbVirtualFields; ++i) { - JavaField& field = classDef->virtualFields[i]; - field.ptrOffset = sl->getElementOffset(i + 1); - } - uint64 size = mvm::MvmModule::getTypeSize(structType); - classDef->virtualSize = (uint32)size; - classDef->alignment = sl->getAlignment(); virtualSizeConstant = ConstantInt::get(Type::getInt32Ty(context), size); + + // TODO: put that elsewhere. + if (Compiler == classDef->classLoader->getCompiler()) { + for (uint32 i = 0; i < classDef->nbVirtualFields; ++i) { + JavaField& field = classDef->virtualFields[i]; + field.ptrOffset = sl->getElementOffset(i + 1); + field.num = i + 1; + } + + classDef->virtualSize = (uint32)size; + classDef->alignment = sl->getAlignment(); - Mod->makeVT(classDef); - Mod->makeIMT(classDef); + Compiler->makeVT(classDef); + Compiler->makeIMT(classDef); + } } return virtualType; @@ -96,15 +96,12 @@ Class* cl = (Class*)classDef; std::vector fields; - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)classDef->classLoader->getCompiler(); - LLVMContext& context = Mod->getLLVMModule()->getContext(); + LLVMContext& context = Compiler->getLLVMModule()->getContext(); for (uint32 i = 0; i < classDef->nbStaticFields; ++i) { JavaField& field = classDef->staticFields[i]; - field.num = i; Typedef* type = field.getSignature(); - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(type); + LLVMAssessorInfo& LAI = Compiler->getTypedefInfo(type); fields.push_back(LAI.llvmType); } @@ -113,13 +110,17 @@ const TargetData* targetData = mvm::MvmModule::TheTargetData; const StructLayout* sl = targetData->getStructLayout(structType); - for (uint32 i = 0; i < classDef->nbStaticFields; ++i) { - JavaField& field = classDef->staticFields[i]; - field.ptrOffset = sl->getElementOffset(i); - } + // TODO: put that elsewhere. + if (Compiler == classDef->classLoader->getCompiler()) { + for (uint32 i = 0; i < classDef->nbStaticFields; ++i) { + JavaField& field = classDef->staticFields[i]; + field.num = i; + field.ptrOffset = sl->getElementOffset(i); + } - uint64 size = mvm::MvmModule::getTypeSize(structType); - cl->staticSize = size; + uint64 size = mvm::MvmModule::getTypeSize(structType); + cl->staticSize = size; + } } return staticType; } @@ -158,25 +159,13 @@ memcpy(buf, "JnJVM", 5); } - methodFunction = Compiler->getLLVMModule()->getFunction(buf); - if (!methodFunction) { - methodFunction = Function::Create(getFunctionType(), - GlobalValue::ExternalWeakLinkage, buf, - Compiler->getLLVMModule()); - } else { - assert(methodFunction->getFunctionType() == getFunctionType() && - "Type mismatch"); - if (methodFunction->isDeclaration()) { - methodFunction->setLinkage(GlobalValue::ExternalWeakLinkage); - } - } - + methodFunction = Function::Create(getFunctionType(), + GlobalValue::ExternalWeakLinkage, buf, + Compiler->getLLVMModule()); } else { - methodFunction = Function::Create(getFunctionType(), GlobalValue::ExternalWeakLinkage, "", Compiler->getLLVMModule()); - } if (Compiler->useCooperativeGC()) { @@ -211,11 +200,9 @@ Constant* LLVMMethodInfo::getOffset() { if (!offsetConstant) { - JnjvmClassLoader* JCL = methodDef->classDef->classLoader; - JavaLLVMCompiler* Mod = (JavaLLVMCompiler*)JCL->getCompiler(); - LLVMContext& context = Mod->getLLVMModule()->getContext(); + LLVMContext& context = Compiler->getLLVMModule()->getContext(); - Mod->resolveVirtualClass(methodDef->classDef); + Compiler->resolveVirtualClass(methodDef->classDef); offsetConstant = ConstantInt::get(Type::getInt32Ty(context), methodDef->offset); } @@ -224,14 +211,12 @@ Constant* LLVMFieldInfo::getOffset() { if (!offsetConstant) { - JnjvmClassLoader* JCL = fieldDef->classDef->classLoader; - JavaLLVMCompiler* Mod = (JavaLLVMCompiler*)JCL->getCompiler(); - LLVMContext& context = Mod->getLLVMModule()->getContext(); + LLVMContext& context = Compiler->getLLVMModule()->getContext(); if (isStatic(fieldDef->access)) { - Mod->resolveStaticClass(fieldDef->classDef); + Compiler->resolveStaticClass(fieldDef->classDef); } else { - Mod->resolveVirtualClass(fieldDef->classDef); + Compiler->resolveVirtualClass(fieldDef->classDef); } offsetConstant = ConstantInt::get(Type::getInt32Ty(context), fieldDef->num); @@ -246,14 +231,12 @@ std::vector llvmArgs; uint32 size = signature->nbArguments; Typedef* const* arguments = signature->getArgumentsType(); - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)signature->initialLoader->getCompiler(); - llvmArgs.push_back(Mod->getIntrinsics()->JavaObjectType); + llvmArgs.push_back(Compiler->getIntrinsics()->JavaObjectType); for (uint32 i = 0; i < size; ++i) { Typedef* type = arguments[i]; - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(type); + LLVMAssessorInfo& LAI = Compiler->getTypedefInfo(type); llvmArgs.push_back(LAI.llvmType); } @@ -261,7 +244,8 @@ llvmArgs.push_back(Mod->getIntrinsics()->ConstantPoolType); #endif - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(signature->getReturnType()); + LLVMAssessorInfo& LAI = + Compiler->getTypedefInfo(signature->getReturnType()); virtualType = FunctionType::get(LAI.llvmType, llvmArgs, false); mvm::MvmModule::unprotectIR(); } @@ -275,21 +259,20 @@ std::vector llvmArgs; uint32 size = signature->nbArguments; Typedef* const* arguments = signature->getArgumentsType(); - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)signature->initialLoader->getCompiler(); for (uint32 i = 0; i < size; ++i) { Typedef* type = arguments[i]; - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(type); + LLVMAssessorInfo& LAI = Compiler->getTypedefInfo(type); llvmArgs.push_back(LAI.llvmType); } #if defined(ISOLATE_SHARING) // cached constant pool - llvmArgs.push_back(Mod->getIntrinsics()->ConstantPoolType); + llvmArgs.push_back(Compiler->getIntrinsics()->ConstantPoolType); #endif - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(signature->getReturnType()); + LLVMAssessorInfo& LAI = + Compiler->getTypedefInfo(signature->getReturnType()); staticType = FunctionType::get(LAI.llvmType, llvmArgs, false); mvm::MvmModule::unprotectIR(); } @@ -303,20 +286,18 @@ std::vector llvmArgs; uint32 size = signature->nbArguments; Typedef* const* arguments = signature->getArgumentsType(); - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)signature->initialLoader->getCompiler(); const llvm::Type* Ty = - PointerType::getUnqual(Mod->getIntrinsics()->JavaObjectType); + PointerType::getUnqual(Compiler->getIntrinsics()->JavaObjectType); - llvmArgs.push_back(Mod->getIntrinsics()->ptrType); // JNIEnv + llvmArgs.push_back(Compiler->getIntrinsics()->ptrType); // JNIEnv llvmArgs.push_back(Ty); // Class for (uint32 i = 0; i < size; ++i) { Typedef* type = arguments[i]; - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(type); + LLVMAssessorInfo& LAI = Compiler->getTypedefInfo(type); const llvm::Type* Ty = LAI.llvmType; - if (Ty == Mod->getIntrinsics()->JavaObjectType) { + if (Ty == Compiler->getIntrinsics()->JavaObjectType) { llvmArgs.push_back(LAI.llvmTypePtr); } else { llvmArgs.push_back(LAI.llvmType); @@ -325,12 +306,13 @@ #if defined(ISOLATE_SHARING) // cached constant pool - llvmArgs.push_back(Mod->getIntrinsics()->ConstantPoolType); + llvmArgs.push_back(Compiler->getIntrinsics()->ConstantPoolType); #endif - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(signature->getReturnType()); + LLVMAssessorInfo& LAI = + Compiler->getTypedefInfo(signature->getReturnType()); const llvm::Type* RetType = - LAI.llvmType == Mod->getIntrinsics()->JavaObjectType ? + LAI.llvmType == Compiler->getIntrinsics()->JavaObjectType ? LAI.llvmTypePtr : LAI.llvmType; nativeType = FunctionType::get(RetType, llvmArgs, false); mvm::MvmModule::unprotectIR(); @@ -343,24 +325,22 @@ std::vector Args; - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)signature->initialLoader->getCompiler(); - LLVMContext& context = Mod->getLLVMModule()->getContext(); - J3Intrinsics& Intrinsics = *Mod->getIntrinsics(); + LLVMContext& context = Compiler->getLLVMModule()->getContext(); + J3Intrinsics& Intrinsics = *Compiler->getIntrinsics(); Function* res = 0; - if (Mod->isStaticCompiling()) { + if (Compiler->isStaticCompiling()) { const char* type = virt ? "virtual_buf" : "static_buf"; char* buf = (char*)alloca((signature->keyName->size << 1) + 1 + 11); signature->nativeName(buf, type); res = Function::Create(virt ? getVirtualBufType() : getStaticBufType(), GlobalValue::ExternalLinkage, buf, - Mod->getLLVMModule()); + Compiler->getLLVMModule()); } else { res = Function::Create(virt ? getVirtualBufType() : getStaticBufType(), GlobalValue::ExternalLinkage, "", - Mod->getLLVMModule()); + Compiler->getLLVMModule()); } BasicBlock* currentBlock = BasicBlock::Create(context, "enter", res); @@ -382,7 +362,7 @@ Typedef* const* arguments = signature->getArgumentsType(); for (uint32 i = 0; i < signature->nbArguments; ++i) { - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(arguments[i]); + LLVMAssessorInfo& LAI = Compiler->getTypedefInfo(arguments[i]); Value* arg = new LoadInst(ptr, "", currentBlock); if (arguments[i]->isReference()) { @@ -406,7 +386,7 @@ currentBlock = endBlock; arg = node; } else if (arguments[i]->isFloat()) { - arg = new TruncInst(arg, Mod->AssessorInfo[I_INT].llvmType, + arg = new TruncInst(arg, Compiler->AssessorInfo[I_INT].llvmType, "", currentBlock); arg = new BitCastInst(arg, LAI.llvmType, "", currentBlock); } else if (arguments[i]->isDouble()) { @@ -415,7 +395,7 @@ arg = new TruncInst(arg, LAI.llvmType, "", currentBlock); } Args.push_back(arg); - ptr = GetElementPtrInst::Create(ptr, Mod->getIntrinsics()->constantOne,"", + ptr = GetElementPtrInst::Create(ptr, Intrinsics.constantOne,"", currentBlock); } @@ -437,11 +417,9 @@ std::vector Args; - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)signature->initialLoader->getCompiler(); - J3Intrinsics& Intrinsics = *Mod->getIntrinsics(); + J3Intrinsics& Intrinsics = *Compiler->getIntrinsics(); std::string name; - if (Mod->isStaticCompiling()) { + if (Compiler->isStaticCompiling()) { name += UTF8Buffer(signature->keyName).cString(); name += virt ? "virtual_ap" : "static_ap"; } else { @@ -451,8 +429,8 @@ Function* res = Function::Create(virt ? getVirtualBufType() : getStaticBufType(), GlobalValue::InternalLinkage, name, - Mod->getLLVMModule()); - LLVMContext& context = Mod->getLLVMModule()->getContext(); + Compiler->getLLVMModule()); + LLVMContext& context = Compiler->getLLVMModule()->getContext(); BasicBlock* currentBlock = BasicBlock::Create(context, "enter", res); Function::arg_iterator i = res->arg_begin(); @@ -472,7 +450,7 @@ Typedef* const* arguments = signature->getArgumentsType(); for (uint32 i = 0; i < signature->nbArguments; ++i) { - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(arguments[i]); + LLVMAssessorInfo& LAI = Compiler->getTypedefInfo(arguments[i]); Value* arg = new VAArgInst(ap, LAI.llvmType, "", currentBlock); if (arguments[i]->isReference()) { arg = new IntToPtrInst(arg, Intrinsics.JavaObjectType, "", currentBlock); @@ -517,11 +495,9 @@ std::vector Args; std::vector FunctionArgs; - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)signature->initialLoader->getCompiler(); - J3Intrinsics& Intrinsics = *Mod->getIntrinsics(); + J3Intrinsics& Intrinsics = *Compiler->getIntrinsics(); std::string name; - if (Mod->isStaticCompiling()) { + if (Compiler->isStaticCompiling()) { name += UTF8Buffer(signature->keyName).cString(); name += virt ? "virtual_stub" : special ? "special_stub" : "static_stub"; } else { @@ -531,8 +507,8 @@ Function* stub = Function::Create((virt || special) ? getVirtualType() : getStaticType(), GlobalValue::InternalLinkage, name, - Mod->getLLVMModule()); - LLVMContext& context = Mod->getLLVMModule()->getContext(); + Compiler->getLLVMModule()); + LLVMContext& context = Compiler->getLLVMModule()->getContext(); BasicBlock* currentBlock = BasicBlock::Create(context, "enter", stub); BasicBlock* endBlock = BasicBlock::Create(context, "end", stub); @@ -551,7 +527,7 @@ for (; arg != stub->arg_end() ; ++arg) { FunctionArgs.push_back(arg); - if (Mod->useCooperativeGC()) { + if (Compiler->useCooperativeGC()) { if (arg->getType() == Intrinsics.JavaObjectType) { Value* GCArgs[2] = { new BitCastInst(arg, Intrinsics.ptrPtrType, "", currentBlock), @@ -620,13 +596,12 @@ // Lock here because we are called by arbitrary code mvm::MvmModule::protectIR(); std::vector Args; - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)signature->initialLoader->getCompiler(); - Args.push_back(Mod->getIntrinsics()->ConstantPoolType); // ctp + Args.push_back(Compiler->getIntrinsics()->ConstantPoolType); // ctp Args.push_back(getVirtualPtrType()); - Args.push_back(Mod->getIntrinsics()->JavaObjectType); - Args.push_back(Mod->AssessorInfo[I_LONG].llvmTypePtr); - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(signature->getReturnType()); + Args.push_back(Compiler->getIntrinsics()->JavaObjectType); + Args.push_back(Compiler->AssessorInfo[I_LONG].llvmTypePtr); + LLVMAssessorInfo& LAI = + Compiler->getTypedefInfo(signature->getReturnType()); virtualBufType = FunctionType::get(LAI.llvmType, Args, false); mvm::MvmModule::unprotectIR(); } @@ -637,13 +612,12 @@ if (!staticBufType) { // Lock here because we are called by arbitrary code mvm::MvmModule::protectIR(); - JavaLLVMCompiler* Mod = - (JavaLLVMCompiler*)signature->initialLoader->getCompiler(); std::vector Args; - Args.push_back(Mod->getIntrinsics()->ConstantPoolType); // ctp + Args.push_back(Compiler->getIntrinsics()->ConstantPoolType); // ctp Args.push_back(getStaticPtrType()); - Args.push_back(Mod->AssessorInfo[I_LONG].llvmTypePtr); - LLVMAssessorInfo& LAI = Mod->getTypedefInfo(signature->getReturnType()); + Args.push_back(Compiler->AssessorInfo[I_LONG].llvmTypePtr); + LLVMAssessorInfo& LAI = + Compiler->getTypedefInfo(signature->getReturnType()); staticBufType = FunctionType::get(LAI.llvmType, Args, false); mvm::MvmModule::unprotectIR(); } @@ -656,7 +630,7 @@ mvm::MvmModule::protectIR(); if (!virtualBufFunction) { virtualBufFunction = createFunctionCallBuf(true); - if (!signature->initialLoader->getCompiler()->isStaticCompiling()) { + if (!Compiler->isStaticCompiling()) { signature->setVirtualCallBuf((intptr_t) mvm::MvmModule::executionEngine->getPointerToGlobal(virtualBufFunction)); // Now that it's compiled, we don't need the IR anymore @@ -673,7 +647,7 @@ mvm::MvmModule::protectIR(); if (!virtualAPFunction) { virtualAPFunction = createFunctionCallAP(true); - if (!signature->initialLoader->getCompiler()->isStaticCompiling()) { + if (!Compiler->isStaticCompiling()) { signature->setVirtualCallAP((intptr_t) mvm::MvmModule::executionEngine->getPointerToGlobal(virtualAPFunction)); // Now that it's compiled, we don't need the IR anymore @@ -690,7 +664,7 @@ mvm::MvmModule::protectIR(); if (!staticBufFunction) { staticBufFunction = createFunctionCallBuf(false); - if (!signature->initialLoader->getCompiler()->isStaticCompiling()) { + if (!Compiler->isStaticCompiling()) { signature->setStaticCallBuf((intptr_t) mvm::MvmModule::executionEngine->getPointerToGlobal(staticBufFunction)); // Now that it's compiled, we don't need the IR anymore @@ -707,7 +681,7 @@ mvm::MvmModule::protectIR(); if (!staticAPFunction) { staticAPFunction = createFunctionCallAP(false); - if (!signature->initialLoader->getCompiler()->isStaticCompiling()) { + if (!Compiler->isStaticCompiling()) { signature->setStaticCallAP((intptr_t) mvm::MvmModule::executionEngine->getPointerToGlobal(staticAPFunction)); // Now that it's compiled, we don't need the IR anymore @@ -724,7 +698,7 @@ mvm::MvmModule::protectIR(); if (!staticStubFunction) { staticStubFunction = createFunctionStub(false, false); - if (!signature->initialLoader->getCompiler()->isStaticCompiling()) { + if (!Compiler->isStaticCompiling()) { signature->setStaticCallStub((intptr_t) mvm::MvmModule::executionEngine->getPointerToGlobal(staticStubFunction)); // Now that it's compiled, we don't need the IR anymore @@ -741,7 +715,7 @@ mvm::MvmModule::protectIR(); if (!specialStubFunction) { specialStubFunction = createFunctionStub(true, false); - if (!signature->initialLoader->getCompiler()->isStaticCompiling()) { + if (!Compiler->isStaticCompiling()) { signature->setSpecialCallStub((intptr_t) mvm::MvmModule::executionEngine->getPointerToGlobal(specialStubFunction)); // Now that it's compiled, we don't need the IR anymore @@ -758,7 +732,7 @@ mvm::MvmModule::protectIR(); if (!virtualStubFunction) { virtualStubFunction = createFunctionStub(false, true); - if (!signature->initialLoader->getCompiler()->isStaticCompiling()) { + if (!Compiler->isStaticCompiling()) { signature->setVirtualCallStub((intptr_t) mvm::MvmModule::executionEngine->getPointerToGlobal(virtualStubFunction)); // Now that it's compiled, we don't need the IR anymore @@ -814,8 +788,7 @@ PointerType::getUnqual(Type::getDoubleTy(getLLVMContext())); AssessorInfo[I_DOUBLE].logSizeInBytesConstant = 3; - AssessorInfo[I_TAB].llvmType = PointerType::getUnqual( - mvm::MvmModule::globalModule->getTypeByName("JavaObject")); + AssessorInfo[I_TAB].llvmType = JavaIntrinsics.JavaObjectType; AssessorInfo[I_TAB].llvmTypePtr = PointerType::getUnqual(AssessorInfo[I_TAB].llvmType); AssessorInfo[I_TAB].logSizeInBytesConstant = sizeof(JavaObject*) == 8 ? 3 : 2; Modified: vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp (original) +++ vmkit/trunk/lib/Mvm/Compiler/InlineMalloc.cpp Mon Mar 8 15:26:47 2010 @@ -41,8 +41,8 @@ bool InlineMalloc::runOnFunction(Function& F) { - Function* Malloc = mvm::MvmModule::globalModule->getFunction("gcmalloc"); - if (Malloc->isDeclaration()) return false; + Function* Malloc = F.getParent()->getFunction("gcmalloc"); + if (!Malloc || Malloc->isDeclaration()) return false; bool Changed = false; for (Function::iterator BI = F.begin(), BE = F.end(); BI != BE; BI++) { BasicBlock *Cur = BI; @@ -53,9 +53,8 @@ Instruction* CI = Call.getInstruction(); if (CI) { Function* F = Call.getCalledFunction(); - if (F && F->getName() == "gcmalloc") { + if (F == Malloc) { if (dyn_cast(Call.getArgument(0))) { - Call.setCalledFunction(mvm::MvmModule::globalModule->getFunction("gcmalloc")); Changed |= InlineFunction(Call, 0, mvm::MvmModule::TheTargetData); break; } Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/JIT.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/JIT.cpp (original) +++ vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Mon Mar 8 15:26:47 2010 @@ -29,7 +29,8 @@ #include #include #include -#include "llvm/Support/SourceMgr.h" +#include +#include #include #include #include @@ -55,6 +56,10 @@ namespace llvm_runtime { #include "LLVMRuntime.inc" } + + namespace mmtk_runtime { + #include "MMTkInline.inc" + } void linkVmkitGC(); } @@ -109,7 +114,7 @@ void MvmModule::loadBytecodeFile(const std::string& str) { SMDiagnostic Err; - Module* M = ParseIRFile(str, Err, getGlobalContext()); + Module* M = ParseIRFile(str, Err, globalModule->getContext()); if (M) { M->setTargetTriple(getHostTriple()); Linker::LinkModules(globalModule, M, 0); @@ -164,7 +169,6 @@ globalFunctionPasses = new FunctionPassManager(globalModule); - mvm::llvm_runtime::makeLLVMModuleContents(globalModule); //LLVMContext& Context = globalModule->getContext(); //MetadataTypeKind = Context.getMDKindID("HighLevelType"); @@ -325,7 +329,35 @@ module->setTargetTriple(MvmModule::globalModule->getTargetTriple()); LLVMContext& Context = module->getContext(); - MvmModule::copyDefinitions(module, MvmModule::globalModule); + if (MutatorThread::MMTkCollectorSize) { + // If we have found MMTk, read the gcmalloc function and set the address of + // global variables and functions used by gcmalloc. + mvm::mmtk_runtime::makeLLVMFunction(module); + if (MvmModule::executionEngine) { + for (Module::global_iterator i = module->global_begin(), + e = module->global_end(); i != e; ++i) { + if (i->isDeclaration()) { + GlobalVariable* GV = + MvmModule::globalModule->getGlobalVariable(i->getName(), true); + assert(GV && "GV can not be found"); + void* ptr = MvmModule::executionEngine->getPointerToGlobal(GV); + MvmModule::executionEngine->updateGlobalMapping(i, ptr); + } + } + for (Module::iterator i = module->begin(), e = module->end(); + i != e; ++i) { + if (i->isDeclaration() && !i->isIntrinsic()) { + Function* F = + MvmModule::globalModule->getFunction(i->getName()); + assert(F && "Function can not be found"); + void* ptr = MvmModule::executionEngine->getPointerToFunction(F); + MvmModule::executionEngine->updateGlobalMapping(i, ptr); + } + } + } + } + mvm::llvm_runtime::makeLLVMModuleContents(module); + // Type declaration ptrType = PointerType::getUnqual(Type::getInt8Ty(Context)); @@ -454,6 +486,8 @@ assert(AllocateUnresolvedFunction && "No allocateUnresolved function"); AddFinalizationCandidate = module->getFunction("addFinalizationCandidate"); assert(AddFinalizationCandidate && "No addFinalizationCandidate function"); + + MvmModule::copyDefinitions(module, MvmModule::globalModule); } const llvm::TargetData* MvmModule::TheTargetData; @@ -485,10 +519,6 @@ PM->add(P); } -namespace mvm { - llvm::FunctionPass* createInlineMallocPass(); -} - // This is equivalent to: // opt -simplifycfg -mem2reg -instcombine -jump-threading -simplifycfg // -scalarrepl -instcombine -condprop -simplifycfg -predsimplify @@ -496,17 +526,8 @@ // -instcombine -gvn -sccp -simplifycfg -instcombine -condprop -dse -adce // -simplifycfg // -void MvmModule::AddStandardCompilePasses() { - FunctionPassManager* PM = globalFunctionPasses; - PM->add(new TargetData(*MvmModule::TheTargetData)); - - addPass(PM, createVerifierPass()); // Verify that input is correct - -#ifdef WITH_MMTK - addPass(PM, createCFGSimplificationPass()); // Clean up disgusting code - addPass(PM, createInlineMallocPass()); -#endif - +static void AddStandardCompilePasses(FunctionPassManager* PM) { + addPass(PM, createCFGSimplificationPass()); // Clean up disgusting code addPass(PM, createPromoteMemoryToRegisterPass());// Kill useless allocas @@ -538,10 +559,68 @@ addPass(PM, createDeadStoreEliminationPass()); // Delete dead stores addPass(PM, createAggressiveDCEPass()); // Delete dead instructions addPass(PM, createCFGSimplificationPass()); // Merge & remove BBs +} +static cl::opt +DisableOptimizations("disable-opt", + cl::desc("Do not run any optimization passes")); + +cl::opt +StandardCompileOpts("std-compile-opts", + cl::desc("Include the standard compile time optimizations")); - PM->doInitialization(); +// The OptimizationList is automatically populated with registered Passes by the +// PassNameParser. +// +static llvm::cl::list +PassList(llvm::cl::desc("Optimizations available:")); + +namespace mvm { + llvm::FunctionPass* createInlineMallocPass(); +} + +void MvmModule::addCommandLinePasses(FunctionPassManager* PM) { + addPass(PM, new TargetData(*MvmModule::TheTargetData)); + + addPass(PM, createVerifierPass()); // Verify that input is correct + +#ifdef WITH_MMTK + addPass(PM, createCFGSimplificationPass()); // Clean up disgusting code + addPass(PM, createInlineMallocPass()); +#endif + // Create a new optimization pass for each one specified on the command line + for (unsigned i = 0; i < PassList.size(); ++i) { + // Check to see if -std-compile-opts was specified before this option. If + // so, handle it. + if (StandardCompileOpts && + StandardCompileOpts.getPosition() < PassList.getPosition(i)) { + if (!DisableOptimizations) AddStandardCompilePasses(PM); + StandardCompileOpts = false; + } + + const PassInfo *PassInf = PassList[i]; + Pass *P = 0; + if (PassInf->getNormalCtor()) + P = PassInf->getNormalCtor()(); + else + errs() << "cannot create pass: " + << PassInf->getPassName() << "\n"; + if (P) { + bool isModulePass = (P->getPassKind() == PT_Module); + if (isModulePass) + errs() << "vmkit does not support module pass: " + << PassInf->getPassName() << "\n"; + else addPass(PM, P); + + } + } + + // If -std-compile-opts was specified at the end of the pass list, add them. + if (StandardCompileOpts) { + AddStandardCompilePasses(PM); + } + PM->doInitialization(); } // We protect the creation of IR with the executionEngine lock because @@ -560,53 +639,26 @@ void MvmModule::copyDefinitions(Module* Dst, Module* Src) { - // Loop over all of the functions in the src module, mapping them over - for (Module::const_iterator I = Src->begin(), E = Src->end(); I != E; ++I) { - const Function *SF = I; // SrcFunction - if (SF->isDeclaration()) { - Function* F = Function::Create(SF->getFunctionType(), - GlobalValue::ExternalLinkage, - SF->getName(), Dst); - F->setAttributes(SF->getAttributes()); - } - } - Function* SF = Src->getFunction("gcmalloc"); - if (SF && !SF->isDeclaration()) { - Function* F = Function::Create(SF->getFunctionType(), - GlobalValue::ExternalLinkage, - SF->getName(), Dst); - F->setAttributes(SF->getAttributes()); - if (executionEngine) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(F, ptr); - } + Function* DF = Dst->getFunction("gcmalloc"); + if (SF && DF && executionEngine && !SF->isDeclaration()) { + void* ptr = executionEngine->getPointerToFunction(SF); + executionEngine->updateGlobalMapping(DF, ptr); } SF = Src->getFunction("gcmallocUnresolved"); - if (SF && !SF->isDeclaration()) { - Function* F = Function::Create(SF->getFunctionType(), - GlobalValue::ExternalLinkage, - SF->getName(), Dst); - F->setAttributes(SF->getAttributes()); - if (executionEngine) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(F, ptr); - } + DF = Dst->getFunction("gcmallocUnresolved"); + if (SF && DF && executionEngine && !SF->isDeclaration()) { + void* ptr = executionEngine->getPointerToFunction(SF); + executionEngine->updateGlobalMapping(DF, ptr); } SF = Src->getFunction("addFinalizationCandidate"); - if (SF && !SF->isDeclaration()) { - Function* F = Function::Create(SF->getFunctionType(), - GlobalValue::ExternalLinkage, - SF->getName(), Dst); - F->setAttributes(SF->getAttributes()); - if (executionEngine) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(F, ptr); - } + DF = Dst->getFunction("addFinalizationCandidate"); + if (SF && DF && executionEngine && !SF->isDeclaration()) { + void* ptr = executionEngine->getPointerToFunction(SF); + executionEngine->updateGlobalMapping(DF, ptr); } - } void JITMethodInfo::scan(void* TL, void* ip, void* addr) { Modified: vmkit/trunk/tools/j3/Main.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/j3/Main.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/tools/j3/Main.cpp (original) +++ vmkit/trunk/tools/j3/Main.cpp Mon Mar 8 15:26:47 2010 @@ -17,8 +17,10 @@ #include "../../lib/J3/VMCore/JnjvmClassLoader.h" #include "../../lib/J3/VMCore/Jnjvm.h" +#include "llvm/Support/CommandLine.h" #include "llvm/Support/ManagedStatic.h" +extern llvm::cl::opt StandardCompileOpts; using namespace j3; using namespace mvm; @@ -31,7 +33,7 @@ Collector::initialise(); // Tell the compiler to run all optimizations. - MvmModule::AddStandardCompilePasses(); + StandardCompileOpts = true; // Create the allocator that will allocate the bootstrap loader and the JVM. mvm::BumpPtrAllocator Allocator; Modified: vmkit/trunk/tools/vmjc/vmjc.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/vmjc/vmjc.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/tools/vmjc/vmjc.cpp (original) +++ vmkit/trunk/tools/vmjc/vmjc.cpp Mon Mar 8 15:26:47 2010 @@ -74,22 +74,6 @@ static cl::opt DisableOutput("disable-output", cl::desc("Disable output"), cl::init(false)); - -// The OptimizationList is automatically populated with registered Passes by the -// PassNameParser. -// -static llvm::cl::list -PassList(llvm::cl::desc("Optimizations available:")); - - -static cl::opt -DisableOptimizations("disable-opt", - cl::desc("Do not run any optimization passes")); - -static cl::opt -StandardCompileOpts("std-compile-opts", - cl::desc("Include the standard compile time optimizations")); - static cl::opt TargetTriple("mtriple", cl::desc("Override target triple for module")); @@ -122,53 +106,6 @@ WithClinit("with-clinit", cl::desc("Classes to clinit"), cl::ZeroOrMore, cl::CommaSeparated); - -inline void addPass(FunctionPassManager *PM, Pass *P) { - // Add the pass to the pass manager... - PM->add(P); -} - - -void addCommandLinePass(char** argv) { - FunctionPassManager* Passes = mvm::MvmModule::globalFunctionPasses; - Passes->add(new TargetData(*mvm::MvmModule::TheTargetData)); - - // Create a new optimization pass for each one specified on the command line - for (unsigned i = 0; i < PassList.size(); ++i) { - // Check to see if -std-compile-opts was specified before this option. If - // so, handle it. - if (StandardCompileOpts && - StandardCompileOpts.getPosition() < PassList.getPosition(i)) { - if (!DisableOptimizations) mvm::MvmModule::AddStandardCompilePasses(); - StandardCompileOpts = false; - } - - const PassInfo *PassInf = PassList[i]; - Pass *P = 0; - if (PassInf->getNormalCtor()) - P = PassInf->getNormalCtor()(); - else - errs() << argv[0] << ": cannot create pass: " - << PassInf->getPassName() << "\n"; - if (P) { - bool isModulePass = (P->getPassKind() == PT_Module); - if (isModulePass) - errs() << argv[0] << ": vmkit does not support module pass: " - << PassInf->getPassName() << "\n"; - else addPass(Passes, P); - - } - } - - // If -std-compile-opts was specified at the end of the pass list, add them. - if (StandardCompileOpts) { - mvm::MvmModule::AddStandardCompilePasses(); - } - - Passes->doInitialization(); -} - - int main(int argc, char **argv) { llvm_shutdown_obj X; // Call llvm_shutdown() on exit. try { @@ -243,7 +180,6 @@ mvm::Collector::initialise(); JnjvmClassLoader* JCL = mvm::VirtualMachine::initialiseJVM(Comp, false); - addCommandLinePass(argv); if (DisableExceptions) Comp->disableExceptions(); if (DisableStubs) Comp->generateStubs = false; Modified: vmkit/trunk/tools/vmkit/Launcher.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/vmkit/Launcher.cpp?rev=97987&r1=97986&r2=97987&view=diff ============================================================================== --- vmkit/trunk/tools/vmkit/Launcher.cpp (original) +++ vmkit/trunk/tools/vmkit/Launcher.cpp Mon Mar 8 15:26:47 2010 @@ -36,14 +36,6 @@ Interactive, RunJava, RunNet }; -// The OptimizationList is automatically populated with registered Passes by the -// PassNameParser. -// -static llvm::cl::list -PassList(llvm::cl::desc("Optimizations available:")); - - - static llvm::cl::opt VMToRun(llvm::cl::desc("Choose VM to run:"), llvm::cl::values( clEnumValN(Interactive , "i", "Run in interactive mode"), @@ -56,59 +48,6 @@ "potentially sacrificing code quality"), cl::init(false)); -static cl::opt -DisableOptimizations("disable-opt", - cl::desc("Do not run any optimization passes")); - -static cl::opt -StandardCompileOpts("std-compile-opts", - cl::desc("Include the standard compile time optimizations")); - -inline void addPass(FunctionPassManager *PM, Pass *P) { - // Add the pass to the pass manager... - PM->add(P); -} - - -void addCommandLinePass(char** argv) { - FunctionPassManager* Passes = mvm::MvmModule::globalFunctionPasses; - - Passes->add(new TargetData(*mvm::MvmModule::TheTargetData)); - // Create a new optimization pass for each one specified on the command line - for (unsigned i = 0; i < PassList.size(); ++i) { - // Check to see if -std-compile-opts was specified before this option. If - // so, handle it. - if (StandardCompileOpts && - StandardCompileOpts.getPosition() < PassList.getPosition(i)) { - if (!DisableOptimizations) mvm::MvmModule::AddStandardCompilePasses(); - StandardCompileOpts = false; - } - - const PassInfo *PassInf = PassList[i]; - Pass *P = 0; - if (PassInf->getNormalCtor()) - P = PassInf->getNormalCtor()(); - else - errs() << argv[0] << ": cannot create pass: " - << PassInf->getPassName() << "\n"; - if (P) { - bool isModulePass = (P->getPassKind() == PT_Module); - if (isModulePass) - errs() << argv[0] << ": vmkit does not support module pass: " - << PassInf->getPassName() << "\n"; - else addPass(Passes, P); - - } - } - - // If -std-compile-opts was specified at the end of the pass list, add them. - if (StandardCompileOpts) { - mvm::MvmModule::AddStandardCompilePasses(); - } - Passes->doInitialization(); - -} - int found(char** argv, int argc, const char* name) { int i = 1; for (; i < argc; i++) { @@ -141,7 +80,6 @@ #if WITH_J3 JavaJITCompiler* Comp = JavaJITCompiler::CreateCompiler("JITModule"); JnjvmClassLoader* JCL = mvm::VirtualMachine::initialiseJVM(Comp); - addCommandLinePass(argv); mvm::VirtualMachine* vm = mvm::VirtualMachine::createJVM(JCL); vm->runApplication(argc, argv); vm->waitForExit(); @@ -158,7 +96,6 @@ #if WITH_J3 JavaJITCompiler* Comp = JavaJITCompiler::CreateCompiler("JITModule"); JnjvmClassLoader* JCL = mvm::VirtualMachine::initialiseJVM(Comp); - addCommandLinePass(argv); MyCl.vmlets["java"] = (create_vm_t)(mvm::VirtualMachine::createJVM); MyCl.compilers["java"] = (mvm::Object*)JCL; #endif From nicolas.geoffray at lip6.fr Fri Mar 12 13:10:34 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Fri, 12 Mar 2010 21:10:34 -0000 Subject: [vmkit-commits] [vmkit] r98389 - /vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Message-ID: <20100312211034.6743B2A6C12E@llvm.org> Author: geoffray Date: Fri Mar 12 15:10:34 2010 New Revision: 98389 URL: http://llvm.org/viewvc/llvm-project?rev=98389&view=rev Log: Fix build. Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/JIT.cpp?rev=98389&r1=98388&r2=98389&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/JIT.cpp (original) +++ vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Fri Mar 12 15:10:34 2010 @@ -329,6 +329,7 @@ module->setTargetTriple(MvmModule::globalModule->getTargetTriple()); LLVMContext& Context = module->getContext(); +#ifdef WITH_MMTK if (MutatorThread::MMTkCollectorSize) { // If we have found MMTk, read the gcmalloc function and set the address of // global variables and functions used by gcmalloc. @@ -356,6 +357,7 @@ } } } +#endif mvm::llvm_runtime::makeLLVMModuleContents(module); From nicolas.geoffray at lip6.fr Sun Mar 14 14:51:18 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 14 Mar 2010 21:51:18 -0000 Subject: [vmkit-commits] [vmkit] r98515 - in /vmkit/trunk/lib/J3/Classpath: ClasspathConstructor.inc ClasspathMethod.inc Message-ID: <20100314215118.AA03E2A6C12C@llvm.org> Author: geoffray Date: Sun Mar 14 16:51:18 2010 New Revision: 98515 URL: http://llvm.org/viewvc/llvm-project?rev=98515&view=rev Log: Initialize the buffer with null. Modified: vmkit/trunk/lib/J3/Classpath/ClasspathConstructor.inc vmkit/trunk/lib/J3/Classpath/ClasspathMethod.inc Modified: vmkit/trunk/lib/J3/Classpath/ClasspathConstructor.inc URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Classpath/ClasspathConstructor.inc?rev=98515&r1=98514&r2=98515&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Classpath/ClasspathConstructor.inc (original) +++ vmkit/trunk/lib/J3/Classpath/ClasspathConstructor.inc Sun Mar 14 16:51:18 2010 @@ -97,6 +97,7 @@ // Allocate a buffer to store the arguments. jvalue* buf = size ? (jvalue*)alloca(size * sizeof(jvalue)) : 0; + if (size) memset(buf, 0, size * sizeof(jvalue)); if (nbArgs == size) { UserCommonClass* _cl = UserCommonClass::resolvedImplClass(vm, Clazz, false); Modified: vmkit/trunk/lib/J3/Classpath/ClasspathMethod.inc URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Classpath/ClasspathMethod.inc?rev=98515&r1=98514&r2=98515&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Classpath/ClasspathMethod.inc (original) +++ vmkit/trunk/lib/J3/Classpath/ClasspathMethod.inc Sun Mar 14 16:51:18 2010 @@ -116,6 +116,7 @@ sint32 size = sign->nbArguments; jvalue* buf = size ? (jvalue*)alloca(size * sizeof(jvalue)) : 0; + if (size) memset(buf, 0, size * sizeof(jvalue)); if (nbArgs == size) { UserCommonClass* _cl = UserCommonClass::resolvedImplClass(vm, Cl, false); From nicolas.geoffray at lip6.fr Sun Mar 14 14:52:21 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 14 Mar 2010 21:52:21 -0000 Subject: [vmkit-commits] [vmkit] r98516 - /vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp Message-ID: <20100314215221.47A032A6C12C@llvm.org> Author: geoffray Date: Sun Mar 14 16:52:21 2010 New Revision: 98516 URL: http://llvm.org/viewvc/llvm-project?rev=98516&view=rev Log: No need to delete the materializer, the module will. Modified: vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp Modified: vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp?rev=98516&r1=98515&r2=98516&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp Sun Mar 14 16:52:21 2010 @@ -33,7 +33,7 @@ } JavaLLVMLazyJITCompiler::~JavaLLVMLazyJITCompiler() { - delete TheMaterializer; + // The module already destroys the materializer. } void* JavaLLVMLazyJITCompiler::loadMethod(void* handle, const char* symbol) { From nicolas.geoffray at lip6.fr Sun Mar 14 14:54:57 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 14 Mar 2010 21:54:57 -0000 Subject: [vmkit-commits] [vmkit] r98517 - /vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp Message-ID: <20100314215457.22E032A6C12C@llvm.org> Author: geoffray Date: Sun Mar 14 16:54:56 2010 New Revision: 98517 URL: http://llvm.org/viewvc/llvm-project?rev=98517&view=rev Log: Lookup the GC info instead of getting the first one. Modified: vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp Modified: vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp?rev=98517&r1=98516&r2=98517&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/JavaJITCompiler.cpp Sun Mar 14 16:54:56 2010 @@ -82,12 +82,14 @@ mvm::BumpPtrAllocator& Alloc = currentCompiledMethod->classDef->classLoader->allocator; llvm::GCFunctionInfo* GFI = 0; - // We know the last GC info is for this method. if (F.hasGC()) { GCStrategy::iterator I = mvm::MvmModule::TheGCStrategy->end(); I--; - DEBUG(errs() << (*I)->getFunction().getName() << '\n'); - DEBUG(errs() << F.getName() << '\n'); + // TODO: see why this is not true in a non- LLVM lazy mode. + while (&(*I)->getFunction() != &F) { + assert(I != mvm::MvmModule::TheGCStrategy->begin() && "No GC info"); + I--; + } assert(&(*I)->getFunction() == &F && "GC Info and method do not correspond"); GFI = *I; @@ -116,6 +118,7 @@ } void setCurrentCompiledMethod(JavaMethod* meth, llvm::Function* func) { + assert(currentCompiledMethod == NULL && "Recursive compilation detected"); currentCompiledMethod = meth; currentCompiledFunction = func; } From nicolas.geoffray at lip6.fr Sun Mar 14 14:59:30 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 14 Mar 2010 21:59:30 -0000 Subject: [vmkit-commits] [vmkit] r98518 - in /vmkit/trunk: lib/Mvm/Compiler/JIT.cpp mmtk/mmtk-j3/Memory.cpp Message-ID: <20100314215930.E33DF2A6C12C@llvm.org> Author: geoffray Date: Sun Mar 14 16:59:30 2010 New Revision: 98518 URL: http://llvm.org/viewvc/llvm-project?rev=98518&view=rev Log: Allocate MMTk memory early on, to avoid collisions. Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp vmkit/trunk/mmtk/mmtk-j3/Memory.cpp Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/JIT.cpp?rev=98518&r1=98517&r2=98518&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/JIT.cpp (original) +++ vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Sun Mar 14 16:59:30 2010 @@ -44,6 +44,8 @@ #include "MutatorThread.h" #include "MvmGC.h" +#include + using namespace mvm; using namespace llvm; @@ -181,6 +183,20 @@ #ifdef WITH_MMTK llvm::GlobalVariable* GV = globalModule->getGlobalVariable("MMTkCollectorSize", false); if (GV && executionEngine) { + // Allocate the memory for MMTk right now, to avoid conflicts with + // other allocators. +#if defined (__MACH__) + uint32 flags = MAP_PRIVATE | MAP_ANON | MAP_FIXED; +#else + uint32 flags = MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED; +#endif + void* baseAddr = mmap((void*)0x30000000, 0x50000000, PROT_READ | PROT_WRITE, + flags, -1, 0); + if (baseAddr == MAP_FAILED) { + perror("mmap"); + abort(); + } + ConstantInt* C = dyn_cast(GV->getInitializer()); uint64_t val = C->getZExtValue(); MutatorThread::MMTkCollectorSize = val; Modified: vmkit/trunk/mmtk/mmtk-j3/Memory.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/mmtk-j3/Memory.cpp?rev=98518&r1=98517&r2=98518&view=diff ============================================================================== --- vmkit/trunk/mmtk/mmtk-j3/Memory.cpp (original) +++ vmkit/trunk/mmtk/mmtk-j3/Memory.cpp Sun Mar 14 16:59:30 2010 @@ -34,18 +34,7 @@ Java_org_j3_mmtk_Memory_dzmmap__Lorg_vmmagic_unboxed_Address_2I(JavaObject* M, void* start, sint32 size) { -#if defined (__MACH__) - uint32 flags = MAP_PRIVATE | MAP_ANON | MAP_FIXED; -#else - uint32 flags = MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED; -#endif - void* baseAddr = mmap((void*)start, size, PROT_READ | PROT_WRITE, flags, - -1, 0); - if (baseAddr == MAP_FAILED) { - perror("mmap"); - JavaThread::get()->printBacktrace(); abort(); - } - + // Already mmapped during initialization. return 0; } From nicolas.geoffray at lip6.fr Mon Mar 15 19:54:13 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Tue, 16 Mar 2010 02:54:13 -0000 Subject: [vmkit-commits] [vmkit] r98606 - in /vmkit/trunk: lib/Mvm/Compiler/JIT.cpp mmtk/mmtk-j3/Memory.cpp Message-ID: <20100316025413.BA19B2A6C12C@llvm.org> Author: geoffray Date: Mon Mar 15 21:54:13 2010 New Revision: 98606 URL: http://llvm.org/viewvc/llvm-project?rev=98606&view=rev Log: Mmap something that can be mmapped currently. This will need to be changed to something better. Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp vmkit/trunk/mmtk/mmtk-j3/Memory.cpp Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/JIT.cpp?rev=98606&r1=98605&r2=98606&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/JIT.cpp (original) +++ vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Mon Mar 15 21:54:13 2010 @@ -190,7 +190,7 @@ #else uint32 flags = MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED; #endif - void* baseAddr = mmap((void*)0x30000000, 0x50000000, PROT_READ | PROT_WRITE, + void* baseAddr = mmap((void*)0x30000000, 0x40000000, PROT_READ | PROT_WRITE, flags, -1, 0); if (baseAddr == MAP_FAILED) { perror("mmap"); Modified: vmkit/trunk/mmtk/mmtk-j3/Memory.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/mmtk-j3/Memory.cpp?rev=98606&r1=98605&r2=98606&view=diff ============================================================================== --- vmkit/trunk/mmtk/mmtk-j3/Memory.cpp (original) +++ vmkit/trunk/mmtk/mmtk-j3/Memory.cpp Mon Mar 15 21:54:13 2010 @@ -19,7 +19,7 @@ } extern "C" uintptr_t Java_org_j3_mmtk_Memory_getHeapEndConstant__ () { - return (uintptr_t)0x80000000; + return (uintptr_t)0x70000000; } extern "C" uintptr_t Java_org_j3_mmtk_Memory_getAvailableStartConstant__ () { @@ -27,7 +27,7 @@ } extern "C" uintptr_t Java_org_j3_mmtk_Memory_getAvailableEndConstant__ () { - return (uintptr_t)0x80000000; + return (uintptr_t)0x70000000; } extern "C" sint32 From nicolas.geoffray at lip6.fr Mon Mar 15 20:10:39 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Tue, 16 Mar 2010 03:10:39 -0000 Subject: [vmkit-commits] [vmkit] r98607 - /vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp Message-ID: <20100316031039.707DB2A6C12C@llvm.org> Author: geoffray Date: Mon Mar 15 22:10:39 2010 New Revision: 98607 URL: http://llvm.org/viewvc/llvm-project?rev=98607&view=rev Log: Delete the context when deleting the compiler. Modified: vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp Modified: vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp?rev=98607&r1=98606&r2=98607&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp Mon Mar 15 22:10:39 2010 @@ -99,10 +99,12 @@ } JavaLLVMCompiler::~JavaLLVMCompiler() { + LLVMContext* Context = &(TheModule->getContext()); delete TheModule; delete DebugFactory; delete JavaFunctionPasses; delete JavaNativeFunctionPasses; + delete Context; } namespace mvm { From nicolas.geoffray at lip6.fr Sat Mar 20 14:33:26 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sat, 20 Mar 2010 21:33:26 -0000 Subject: [vmkit-commits] [vmkit] r99091 - /vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp Message-ID: <20100320213326.A38AE2A6C12C@llvm.org> Author: geoffray Date: Sat Mar 20 16:33:26 2010 New Revision: 99091 URL: http://llvm.org/viewvc/llvm-project?rev=99091&view=rev Log: Attach gc info to stubs. Modified: vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp Modified: vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp?rev=99091&r1=99090&r2=99091&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp Sat Mar 20 16:33:26 2010 @@ -62,7 +62,7 @@ } else { virtualType = Compiler->getIntrinsics()->JavaObjectType; - assert(virtualType && "intrinsics not iniitalized"); + assert(virtualType && "intrinsics not initalized"); structType = dyn_cast(virtualType->getContainedType(0)); sl = targetData->getStructLayout(structType); @@ -409,7 +409,7 @@ ReturnInst::Create(context, val, currentBlock); else ReturnInst::Create(context, currentBlock); - + return res; } @@ -487,6 +487,10 @@ else ReturnInst::Create(context, currentBlock); + if (Compiler->useCooperativeGC()) { + res->setGC("vmkit"); + } + return res; } @@ -494,6 +498,7 @@ std::vector Args; std::vector FunctionArgs; + std::vector TempArgs; J3Intrinsics& Intrinsics = *Compiler->getIntrinsics(); std::string name; @@ -518,26 +523,28 @@ node = PHINode::Create(stub->getReturnType(), "", endBlock); } - Function::arg_iterator arg = stub->arg_begin(); - Value *obj = NULL; - if (virt) { - obj = arg; - Args.push_back(obj); - } - for (; arg != stub->arg_end() ; ++arg) { - FunctionArgs.push_back(arg); - if (Compiler->useCooperativeGC()) { - if (arg->getType() == Intrinsics.JavaObjectType) { - Value* GCArgs[2] = { - new BitCastInst(arg, Intrinsics.ptrPtrType, "", currentBlock), - Intrinsics.constantPtrNull - }; + for (Function::arg_iterator arg = stub->arg_begin(); + arg != stub->arg_end(); ++arg) { + Value* temp = arg; + if (Compiler->useCooperativeGC() && + arg->getType() == Intrinsics.JavaObjectType) { + temp = new AllocaInst(Intrinsics.JavaObjectType, "", currentBlock); + new StoreInst(arg, temp, "", currentBlock); + Value* GCArgs[2] = { + new BitCastInst(temp, Intrinsics.ptrPtrType, "", currentBlock), + Intrinsics.constantPtrNull + }; - CallInst::Create(Intrinsics.llvm_gc_gcroot, GCArgs, GCArgs + 2, "", - currentBlock); - } + CallInst::Create(Intrinsics.llvm_gc_gcroot, GCArgs, GCArgs + 2, "", + currentBlock); } + + TempArgs.push_back(temp); + } + + if (virt && Compiler->useCooperativeGC()) { + Args.push_back(new LoadInst(TempArgs[0], "", false, currentBlock)); } Value* val = CallInst::Create(virt ? Intrinsics.ResolveVirtualStubFunction : @@ -554,6 +561,17 @@ currentBlock = callBlock; Value* Func = new BitCastInst(val, stub->getType(), "", currentBlock); + + int i = 0; + for (Function::arg_iterator arg = stub->arg_begin(); + arg != stub->arg_end(); ++arg, ++i) { + Value* temp = arg; + if (Compiler->useCooperativeGC() && + arg->getType() == Intrinsics.JavaObjectType) { + temp = new LoadInst(TempArgs[i], "", false, currentBlock); + } + FunctionArgs.push_back(temp); + } Value* res = CallInst::Create(Func, FunctionArgs.begin(), FunctionArgs.end(), "", currentBlock); if (node) node->addIncoming(res, currentBlock); @@ -566,6 +584,10 @@ ReturnInst::Create(context, currentBlock); } + if (Compiler->useCooperativeGC()) { + stub->setGC("vmkit"); + } + return stub; } From nicolas.geoffray at lip6.fr Sun Mar 21 07:55:37 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 14:55:37 -0000 Subject: [vmkit-commits] [vmkit] r99120 - /vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp Message-ID: <20100321145537.5121A2A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 09:55:37 2010 New Revision: 99120 URL: http://llvm.org/viewvc/llvm-project?rev=99120&view=rev Log: Fix build. Modified: vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp Modified: vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp?rev=99120&r1=99119&r2=99120&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/LLVMInfo.cpp Sun Mar 21 09:55:37 2010 @@ -543,8 +543,12 @@ TempArgs.push_back(temp); } - if (virt && Compiler->useCooperativeGC()) { - Args.push_back(new LoadInst(TempArgs[0], "", false, currentBlock)); + if (virt) { + if (Compiler->useCooperativeGC()) { + Args.push_back(new LoadInst(TempArgs[0], "", false, currentBlock)); + }else { + Args.push_back(TempArgs[0]); + } } Value* val = CallInst::Create(virt ? Intrinsics.ResolveVirtualStubFunction : From nicolas.geoffray at lip6.fr Sun Mar 21 08:01:19 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 15:01:19 -0000 Subject: [vmkit-commits] [vmkit] r99121 - in /vmkit/trunk/www: index.html publications/vmkit.html pubs.html Message-ID: <20100321150119.680CF2A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 10:01:19 2010 New Revision: 99121 URL: http://llvm.org/viewvc/llvm-project?rev=99121&view=rev Log: Add VMKit paper. Added: vmkit/trunk/www/publications/vmkit.html Modified: vmkit/trunk/www/index.html vmkit/trunk/www/pubs.html Modified: vmkit/trunk/www/index.html URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/index.html?rev=99121&r1=99120&r2=99121&view=diff ============================================================================== --- vmkit/trunk/www/index.html (original) +++ vmkit/trunk/www/index.html Sun Mar 21 10:01:19 2010 @@ -58,6 +58,12 @@ able to execute these VMs. VMKit is a proof of concept implementation towards that direction.

+

Paper on the design of VMKit: +

+

The PhD thesis that initiated VMKit:

  • Nicolas Geoffray's PhD thesis Added: vmkit/trunk/www/publications/vmkit.html URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publications/vmkit.html?rev=99121&view=auto ============================================================================== --- vmkit/trunk/www/publications/vmkit.html (added) +++ vmkit/trunk/www/publications/vmkit.html Sun Mar 21 10:01:19 2010 @@ -0,0 +1,62 @@ + + + + + + VMKit: a Substrate for Managed Runtime Enviroments + + + +
    + VMKit: a Substrate for Managed Runtime Environments +
    +
    + Nicolas Geoffray +
    + +

    Abstract:

    +
    +Managed Runtime Environments (MREs), such as the JVM and the CLI, form an +attractive environment for program execution, by providing portability and +safety, via the use of a bytecode language and automatic memory management, +as well as good performance, via just-in-time (JIT) compilation. +Nevertheless, developing a fully featured MRE, including e.g. +a garbage collector and JIT compiler, is a herculean +task. As a result, new languages cannot easily take advantage of the +benefits of MREs, and it is difficult to experiment with +extensions of existing MRE based languages. + +This paper describes and evaluates VMKit, a first attempt to build a common +substrate that eases the development of high-level MREs. We have successfully +used VMKit to build two MREs: a Java Virtual Machine and a Common +Language Runtime. We provide an extensive study of the lessons learned in +developing this infrastructure, and assess the ease of implementing new +MREs or MRE extensions and the resulting performance. In +particular, it took one of the authors only one month to develop a Common +Language Runtime using VMKit. VMKit furthermore has performance comparable +to the well established open source MREs Cacao, Apache Harmony and Mono, and is +1.2 to 3 times slower than JikesRVM on most of the DaCapo +benchmarks. + +
    + +

    Bibtex:

    +
    + at inproceedings{geoffray10vmkit,
    +  author = {N. Geoffray and G. Thomas and J.Lawall and G. Muller and B. Folliot},
    +  title = {{VMKit: a Substrate for Managed Runtime Environments}},
    +  booktitle = {Virtual Execution Environment Conference (VEE 2010)},
    +  publisher = {ACM Press},
    +  year = {2010},
    +  month = {March},
    +  address = {Pittsburgh, USA}
    +}
    +
    + +

    Download:

    + + + + Modified: vmkit/trunk/www/pubs.html URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/pubs.html?rev=99121&r1=99120&r2=99121&view=diff ============================================================================== --- vmkit/trunk/www/pubs.html (original) +++ vmkit/trunk/www/pubs.html Sun Mar 21 10:01:19 2010 @@ -16,6 +16,12 @@

    VMKit related publications

    +

    2010

    +
      +
    1. VMKit: a Substrate for Managed Runtime Environments
      + Nicolas Geoffray, Gael Thomas, Julia Lawall, Gilles Muller, Bertil Folliot
      + Proc. of the Virtual Execution Environments Conference (VEE'10), Pittsburgh, USA, Mar. 2010
    2. +

    2009

    1. Fostering Systems Research with Managed Runtimes
      From nicolas.geoffray at lip6.fr Sun Mar 21 08:02:11 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 15:02:11 -0000 Subject: [vmkit-commits] [vmkit] r99122 - /vmkit/trunk/www/publications/vmkit.html Message-ID: <20100321150211.50E5C2A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 10:02:11 2010 New Revision: 99122 URL: http://llvm.org/viewvc/llvm-project?rev=99122&view=rev Log: Update authors. Modified: vmkit/trunk/www/publications/vmkit.html Modified: vmkit/trunk/www/publications/vmkit.html URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publications/vmkit.html?rev=99122&r1=99121&r2=99122&view=diff ============================================================================== --- vmkit/trunk/www/publications/vmkit.html (original) +++ vmkit/trunk/www/publications/vmkit.html Sun Mar 21 10:02:11 2010 @@ -11,7 +11,7 @@ VMKit: a Substrate for Managed Runtime Environments
      - Nicolas Geoffray + Nicolas Geoffray, Gael Thomas, Julia Lawall, Gilles Muller and Bertil Folliot

      Abstract:

      From nicolas.geoffray at lip6.fr Sun Mar 21 08:21:42 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 15:21:42 -0000 Subject: [vmkit-commits] [vmkit] r99125 - /vmkit/trunk/www/publications/vmkit.html Message-ID: <20100321152142.1E0F62A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 10:21:41 2010 New Revision: 99125 URL: http://llvm.org/viewvc/llvm-project?rev=99125&view=rev Log: Fix typo in link. Modified: vmkit/trunk/www/publications/vmkit.html Modified: vmkit/trunk/www/publications/vmkit.html URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/publications/vmkit.html?rev=99125&r1=99124&r2=99125&view=diff ============================================================================== --- vmkit/trunk/www/publications/vmkit.html (original) +++ vmkit/trunk/www/publications/vmkit.html Sun Mar 21 10:21:41 2010 @@ -55,7 +55,7 @@

      Download:

      From nicolas.geoffray at lip6.fr Sun Mar 21 08:37:49 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 15:37:49 -0000 Subject: [vmkit-commits] [vmkit] r99126 - in /vmkit/trunk/lib: J3/VMCore/JavaClass.cpp N3/VMCore/MSCorlib.inc N3/VMCore/VMClass.cpp Message-ID: <20100321153749.B8C1B2A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 10:37:49 2010 New Revision: 99126 URL: http://llvm.org/viewvc/llvm-project?rev=99126&view=rev Log: Remove compilation warnings. Modified: vmkit/trunk/lib/J3/VMCore/JavaClass.cpp vmkit/trunk/lib/N3/VMCore/MSCorlib.inc vmkit/trunk/lib/N3/VMCore/VMClass.cpp Modified: vmkit/trunk/lib/J3/VMCore/JavaClass.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/VMCore/JavaClass.cpp?rev=99126&r1=99125&r2=99126&view=diff ============================================================================== --- vmkit/trunk/lib/J3/VMCore/JavaClass.cpp (original) +++ vmkit/trunk/lib/J3/VMCore/JavaClass.cpp Sun Mar 21 10:37:49 2010 @@ -1714,7 +1714,7 @@ uint16 numPairs = reader.readU2(); for (uint16 j = 0; j < numPairs; ++j) { - uint16 nameIndex = reader.readU2(); + /* uint16 nameIndex = */ reader.readU2(); readElementValue(); } AnnotationNameIndex = typeIndex; @@ -1725,12 +1725,12 @@ if ((tag == 'B') || (tag == 'C') || (tag == 'D') || (tag == 'F') || (tag == 'J') || (tag == 'S') || (tag == 'I') || (tag == 'Z') || (tag == 's')) { - uint16 constValue = reader.readU2(); + /* uint16 constValue = */ reader.readU2(); } else if (tag == 'e') { - uint16 typeName = reader.readU2(); - uint16 constName = reader.readU2(); + /* uint16 typeName = */ reader.readU2(); + /* uint16 constName = */ reader.readU2(); } else if (tag == 'c') { - uint16 classInfoIndex = reader.readU2(); + /* uint16 classInfoIndex = */ reader.readU2(); } else if (tag == '@') { readAnnotation(); } else if (tag == '[') { Modified: vmkit/trunk/lib/N3/VMCore/MSCorlib.inc URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/MSCorlib.inc?rev=99126&r1=99125&r2=99126&view=diff ============================================================================== --- vmkit/trunk/lib/N3/VMCore/MSCorlib.inc (original) +++ vmkit/trunk/lib/N3/VMCore/MSCorlib.inc Sun Mar 21 10:37:49 2010 @@ -85,9 +85,8 @@ // The caller of the CLI function; cur = (void**)cur[0]; - - N3* vm = VMThread::get()->getVM(); + // TODO: implement me abort(); VMMethod* meth = NULL; //vm->IPToMethod(FRAME_IP(cur)); @@ -106,8 +105,7 @@ // The CLI function. cur = (void**)cur[0]; - N3* vm = VMThread::get()->getVM(); - + // TODO: implement me abort(); VMMethod* meth = NULL; //vm->IPToMethod(FRAME_IP(cur)); assert(meth && "Wrong stack"); Modified: vmkit/trunk/lib/N3/VMCore/VMClass.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/VMCore/VMClass.cpp?rev=99126&r1=99125&r2=99126&view=diff ============================================================================== --- vmkit/trunk/lib/N3/VMCore/VMClass.cpp (original) +++ vmkit/trunk/lib/N3/VMCore/VMClass.cpp Sun Mar 21 10:37:49 2010 @@ -805,7 +805,7 @@ CLIJit::compile(classDef, this); void* res = mvm::MvmModule::executionEngine->getPointerToGlobal(methPtr); code = res; - N3* vm = VMThread::get()->getVM(); + // N3* vm = VMThread::get()->getVM(); // vm->addMethodInFunctionMap(this, res); } classDef->release(); From nicolas.geoffray at lip6.fr Sun Mar 21 08:40:32 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 15:40:32 -0000 Subject: [vmkit-commits] [vmkit] r99127 - /vmkit/trunk/mmtk/mmtk-j3/Makefile Message-ID: <20100321154032.712872A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 10:40:32 2010 New Revision: 99127 URL: http://llvm.org/viewvc/llvm-project?rev=99127&view=rev Log: Includes are in the SRC dir. Modified: vmkit/trunk/mmtk/mmtk-j3/Makefile Modified: vmkit/trunk/mmtk/mmtk-j3/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/mmtk-j3/Makefile?rev=99127&r1=99126&r2=99127&view=diff ============================================================================== --- vmkit/trunk/mmtk/mmtk-j3/Makefile (original) +++ vmkit/trunk/mmtk/mmtk-j3/Makefile Sun Mar 21 10:40:32 2010 @@ -20,7 +20,7 @@ LOADABLE_MODULE = 1 USEDLIBS = -CXX.Flags += -I$(PROJ_OBJ_DIR)/../../lib/J3/VMCore +CXX.Flags += -I$(PROJ_SRC_DIR)/../../lib/J3/VMCore include $(LEVEL)/Makefile.common From nicolas.geoffray at lip6.fr Sun Mar 21 08:43:21 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 15:43:21 -0000 Subject: [vmkit-commits] [vmkit] r99128 - /vmkit/trunk/www/use_mmtk.html Message-ID: <20100321154321.8A1792A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 10:43:21 2010 New Revision: 99128 URL: http://llvm.org/viewvc/llvm-project?rev=99128&view=rev Log: Update instructions for VMKit with MMTk. Modified: vmkit/trunk/www/use_mmtk.html Modified: vmkit/trunk/www/use_mmtk.html URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/use_mmtk.html?rev=99128&r1=99127&r2=99128&view=diff ============================================================================== --- vmkit/trunk/www/use_mmtk.html (original) +++ vmkit/trunk/www/use_mmtk.html Sun Mar 21 10:43:21 2010 @@ -25,7 +25,6 @@ and build LLVM-GCC from SVN head.
    2. Update PATH to include the llvm-gcc binary.
    3. Re-configure LLVM.
    4. -
    5. Make sure to build LLVM with REQUIRES_FRAME_POINTER=1.
    6. Configure VMKit with two additional options: --with-gc=mmtk and --with-llvmgcc.
    7. Clean and make VMKit (do that each time you change the source code of VMKit):
    8. @@ -36,8 +35,7 @@
    9. Run VMKit with MMTk:
      • -
      • Release/bin/vmkit -std-compile-opts --load-bc=Release/lib/FinalMMTk.bc - -load-bc=lib/J3/LLVMRuntime/LLVMRuntime.gen.ll -java Foo
      • +
      • Release/bin/vmkit -std-compile-opts --load-bc=Release/lib/FinalMMTk.bc -java Foo
    From nicolas.geoffray at lip6.fr Sun Mar 21 08:49:23 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 15:49:23 -0000 Subject: [vmkit-commits] [vmkit] r99129 - in /vmkit/trunk/mmtk: mmtk-alloc/Makefile mmtk-fake/Makefile Message-ID: <20100321154923.D36C02A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 10:49:23 2010 New Revision: 99129 URL: http://llvm.org/viewvc/llvm-project?rev=99129&view=rev Log: Include in SRC. Modified: vmkit/trunk/mmtk/mmtk-alloc/Makefile vmkit/trunk/mmtk/mmtk-fake/Makefile Modified: vmkit/trunk/mmtk/mmtk-alloc/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/mmtk-alloc/Makefile?rev=99129&r1=99128&r2=99129&view=diff ============================================================================== --- vmkit/trunk/mmtk/mmtk-alloc/Makefile (original) +++ vmkit/trunk/mmtk/mmtk-alloc/Makefile Sun Mar 21 10:49:23 2010 @@ -20,7 +20,7 @@ LOADABLE_MODULE = 1 USEDLIBS = -CXX.Flags += -I$(PROJ_OBJ_DIR)/../../lib/J3/VMCore +CXX.Flags += -I$(PROJ_SRC_DIR)/../../lib/J3/VMCore include $(LEVEL)/Makefile.common Modified: vmkit/trunk/mmtk/mmtk-fake/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/mmtk-fake/Makefile?rev=99129&r1=99128&r2=99129&view=diff ============================================================================== --- vmkit/trunk/mmtk/mmtk-fake/Makefile (original) +++ vmkit/trunk/mmtk/mmtk-fake/Makefile Sun Mar 21 10:49:23 2010 @@ -15,7 +15,7 @@ LOADABLE_MODULE = 1 USEDLIBS = -CXX.Flags += -I$(PROJ_OBJ_DIR)/../../lib/J3/VMCore +CXX.Flags += -I$(PROJ_SRC_DIR)/../../lib/J3/VMCore include $(LEVEL)/Makefile.common From nicolas.geoffray at lip6.fr Sun Mar 21 09:31:03 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 16:31:03 -0000 Subject: [vmkit-commits] [vmkit] r99130 - in /vmkit/trunk: Makefile.rules lib/N3/Mono/Makefile lib/N3/PNetLib/Makefile lib/N3/PNetLib/PNetLib.cpp lib/N3/PNetLib/PNetString.cpp mmtk/java/Makefile Message-ID: <20100321163103.3B06E2A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 11:31:03 2010 New Revision: 99130 URL: http://llvm.org/viewvc/llvm-project?rev=99130&view=rev Log: Fix build. Modified: vmkit/trunk/Makefile.rules vmkit/trunk/lib/N3/Mono/Makefile vmkit/trunk/lib/N3/PNetLib/Makefile vmkit/trunk/lib/N3/PNetLib/PNetLib.cpp vmkit/trunk/lib/N3/PNetLib/PNetString.cpp vmkit/trunk/mmtk/java/Makefile Modified: vmkit/trunk/Makefile.rules URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile.rules?rev=99130&r1=99129&r2=99130&view=diff ============================================================================== --- vmkit/trunk/Makefile.rules (original) +++ vmkit/trunk/Makefile.rules Sun Mar 21 11:31:03 2010 @@ -130,10 +130,10 @@ ADDITIONAL_ARGS := -load-bc=$(LibDir)/MMTKRuntime.bc all:: - $(Verb) $(ANT) + $(Verb) $(ANT) -buildfile $(PROJ_SRC_ROOT)/mmtk/java/build.xml $(Echo) Building $(BuildMode) $(JARNAME).jar $(notdir $@) $(Verb) $(LOPT) -load=$(LibDir)/JITGCPass$(SHLIBEXT) -std-compile-opts -JITGCPass -f $(LibDir)/MMTKAlloc.bc -o $(LibDir)/MMTKAlloc.bc - $(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKFake$(SHLIBEXT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic -verify $(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=vmkit.properties -disable-stubs -assume-compiled -llvm-lazy + $(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKFake$(SHLIBEXT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic -verify $(PROJ_SRC_ROOT)/mmtk/java/$(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=$(PROJ_SRC_ROOT)/mmtk/java/vmkit.properties -disable-stubs -assume-compiled -llvm-lazy $(Verb) $(LOPT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -std-compile-opts -LowerJavaRT -f $(JARNAME).bc -o $(JARNAME)-optimized.bc $(Verb) $(LLVMLD) -r -o $(LibDir)/FinalMMTk.bc $(LibDir)/MMTKAlloc.bc $(JARNAME)-optimized.bc $(LibDir)/MMTKRuntime.bc $(Verb) $(LOPT) -std-compile-opts $(LibDir)/FinalMMTk.bc -o $(LibDir)/FinalMMTk.bc Modified: vmkit/trunk/lib/N3/Mono/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/Mono/Makefile?rev=99130&r1=99129&r2=99130&view=diff ============================================================================== --- vmkit/trunk/lib/N3/Mono/Makefile (original) +++ vmkit/trunk/lib/N3/Mono/Makefile Sun Mar 21 11:31:03 2010 @@ -16,6 +16,7 @@ LIBRARYNAME = Mono endif +EXTRA_DIST = MonoPath.inc.in include $(LEVEL)/Makefile.common CXX.Flags += -I$(PROJ_SRC_DIR)/../VMCore Modified: vmkit/trunk/lib/N3/PNetLib/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/PNetLib/Makefile?rev=99130&r1=99129&r2=99130&view=diff ============================================================================== --- vmkit/trunk/lib/N3/PNetLib/Makefile (original) +++ vmkit/trunk/lib/N3/PNetLib/Makefile Sun Mar 21 11:31:03 2010 @@ -16,5 +16,6 @@ LIBRARYNAME = PNetLib endif +EXTRA_DIST = PNetPath.inc.in include $(LEVEL)/Makefile.common CXX.Flags += -I$(PROJ_SRC_DIR)/../VMCore Modified: vmkit/trunk/lib/N3/PNetLib/PNetLib.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/PNetLib/PNetLib.cpp?rev=99130&r1=99129&r2=99130&view=diff ============================================================================== --- vmkit/trunk/lib/N3/PNetLib/PNetLib.cpp (original) +++ vmkit/trunk/lib/N3/PNetLib/PNetLib.cpp Sun Mar 21 11:31:03 2010 @@ -49,6 +49,8 @@ #include "PNetPath.inc" +#include "llvm/LLVMContext.h" + using namespace n3; #define IL_CONSOLE_NORMAL 0 Modified: vmkit/trunk/lib/N3/PNetLib/PNetString.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/PNetLib/PNetString.cpp?rev=99130&r1=99129&r2=99130&view=diff ============================================================================== --- vmkit/trunk/lib/N3/PNetLib/PNetString.cpp (original) +++ vmkit/trunk/lib/N3/PNetLib/PNetString.cpp Sun Mar 21 11:31:03 2010 @@ -9,6 +9,7 @@ #include "llvm/DerivedTypes.h" #include "llvm/GlobalVariable.h" +#include "llvm/LLVMContext.h" #include "mvm/JIT.h" Modified: vmkit/trunk/mmtk/java/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/java/Makefile?rev=99130&r1=99129&r2=99130&view=diff ============================================================================== --- vmkit/trunk/mmtk/java/Makefile (original) +++ vmkit/trunk/mmtk/java/Makefile Sun Mar 21 11:31:03 2010 @@ -12,5 +12,6 @@ RUN_ANT = 1 JARNAME = mmtk-vmkit +EXTRA_DIST = vmkit.properties build.xml src include $(LEVEL)/Makefile.common From nicolas.geoffray at lip6.fr Sun Mar 21 09:52:26 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 16:52:26 -0000 Subject: [vmkit-commits] [vmkit] r99131 - /vmkit/trunk/lib/N3/Makefile Message-ID: <20100321165226.9DC842A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 11:52:26 2010 New Revision: 99131 URL: http://llvm.org/viewvc/llvm-project?rev=99131&view=rev Log: Fix distribution compile. Modified: vmkit/trunk/lib/N3/Makefile Modified: vmkit/trunk/lib/N3/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/N3/Makefile?rev=99131&r1=99130&r2=99131&view=diff ============================================================================== --- vmkit/trunk/lib/N3/Makefile (original) +++ vmkit/trunk/lib/N3/Makefile Sun Mar 21 11:52:26 2010 @@ -20,5 +20,6 @@ DIRS += PNetLib endif +EXTRA_DIST = Mono PNetLib include $(LEVEL)/Makefile.common From nicolas.geoffray at lip6.fr Sun Mar 21 10:02:53 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 17:02:53 -0000 Subject: [vmkit-commits] [vmkit] r99133 - /vmkit/trunk/lib/Mvm/Compiler/Makefile Message-ID: <20100321170253.5C2062A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 12:02:53 2010 New Revision: 99133 URL: http://llvm.org/viewvc/llvm-project?rev=99133&view=rev Log: Add the MMTkInline.inc to EXTRA_DIST. Modified: vmkit/trunk/lib/Mvm/Compiler/Makefile Modified: vmkit/trunk/lib/Mvm/Compiler/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/Makefile?rev=99133&r1=99132&r2=99133&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/Makefile (original) +++ vmkit/trunk/lib/Mvm/Compiler/Makefile Sun Mar 21 12:02:53 2010 @@ -18,5 +18,6 @@ VMKIT_RUNTIME = $(PROJ_SRC_DIR)/LLVMRuntime.ll BUILT_SOURCES = LLVMRuntime.inc +EXTRA_DIST = MMTkInline.inc include $(LEVEL)/Makefile.common From nicolas.geoffray at lip6.fr Sun Mar 21 10:11:18 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 17:11:18 -0000 Subject: [vmkit-commits] [vmkit] r99135 - /vmkit/branches/release_027/ Message-ID: <20100321171118.275792A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 12:11:18 2010 New Revision: 99135 URL: http://llvm.org/viewvc/llvm-project?rev=99135&view=rev Log: Creating release 0.27. Added: vmkit/branches/release_027/ - copied from r99133, vmkit/trunk/ From nicolas.geoffray at lip6.fr Sun Mar 21 10:32:00 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 17:32:00 -0000 Subject: [vmkit-commits] [vmkit] r99136 - in /vmkit/branches/release_027: README.txt autoconf/configure.ac configure Message-ID: <20100321173200.769C82A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 12:32:00 2010 New Revision: 99136 URL: http://llvm.org/viewvc/llvm-project?rev=99136&view=rev Log: Update information on release. Modified: vmkit/branches/release_027/README.txt vmkit/branches/release_027/autoconf/configure.ac vmkit/branches/release_027/configure Modified: vmkit/branches/release_027/README.txt URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/README.txt?rev=99136&r1=99135&r2=99136&view=diff ============================================================================== --- vmkit/branches/release_027/README.txt (original) +++ vmkit/branches/release_027/README.txt Sun Mar 21 12:32:00 2010 @@ -3,12 +3,10 @@ //===---------------------------------------------------------------------===// VMKit is the composition of three libraries: -1) MVM: mostly a garbage collector +1) MVM: threads, GCs, and JIT interface 2) J3: a Java Virtual Machine implemented with MVM and LLVM 3) N3: a CLI implementation with MVM and LLVM -J3 and N3 use GCC's unwinding library (libgcc_s.so). - These are the options you should pass to the ./configure script --with-llvmsrc: the source directory of LLVM --with-llvmobj: the object directory of LLVM @@ -16,10 +14,8 @@ --with-gnu-classpath-glibj: GNU classpath glibj.zip --with-pnet-local-prefix: the local build of PNET --with-pnetlib: PNET's mscorlib.dll - -There's also [experimental]: ---with-gc: user either boehm or single-mmap --with-mono: Mono's mscorlib.dll +--with-gc: use either gc-mmap or MMTk (requires --with-llvmgcc) Running make on the root tree will produce the following "tools": 1) Debug|Release/bin/j3: running the J3 like any other JVM. @@ -27,4 +23,4 @@ 2) Debug|Release/bin/vmkit: shell-like vm launcher. 2) Debug|Release/bin/vmjc: ahead of time compiler for .class files. -J3 and N3 have their own README notes. +J3 also has a README note. Modified: vmkit/branches/release_027/autoconf/configure.ac URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/autoconf/configure.ac?rev=99136&r1=99135&r2=99136&view=diff ============================================================================== --- vmkit/branches/release_027/autoconf/configure.ac (original) +++ vmkit/branches/release_027/autoconf/configure.ac Sun Mar 21 12:32:00 2010 @@ -31,12 +31,12 @@ dnl===-----------------------------------------------------------------------=== dnl Initialize autoconf and define the package name, version number and dnl email address for reporting bugs. -AC_INIT([vmkit],[0.27svn],[nicolas.geoffray at lip6.fr]) +AC_INIT([vmkit],[0.27],[nicolas.geoffray at gmail.com]) dnl Provide a copyright substitution and ensure the copyright notice is included dnl in the output of --version option of the generated configure script. -AC_SUBST(VMKIT_COPYRIGHT,["Copyright (c) 2003-2009 Universite Pierre et Marie Curie."]) -AC_COPYRIGHT([Copyright (c) 2003-2009 Universite Pierre et Marie Curie.]) +AC_SUBST(VMKIT_COPYRIGHT,["Copyright (c) 2003-2010 Universite Pierre et Marie Curie."]) +AC_COPYRIGHT([Copyright (c) 2003-2010 Universite Pierre et Marie Curie.]) dnl Indicate that we require autoconf 2.59 or later. Ths is needed because we dnl use some autoconf macros only available in 2.59. @@ -213,7 +213,7 @@ dnl ************************************************************************** AC_ARG_WITH(gc, [AS_HELP_STRING(--with-gc=something, - [GC type ('single-mmap' 'multi-mmap' or 'boehm')])], + [GC type ('mmtk' (requires llvm-gcc) 'single-mmap' 'multi-mmap' or 'boehm')])], [[gc=$withval]], [[ echo Using mmap2 as vvm gc type. gc=single-mmap Modified: vmkit/branches/release_027/configure URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/configure?rev=99136&r1=99135&r2=99136&view=diff ============================================================================== --- vmkit/branches/release_027/configure (original) +++ vmkit/branches/release_027/configure Sun Mar 21 12:32:00 2010 @@ -1,22 +1,24 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for vmkit 0.27svn. +# Generated by GNU Autoconf 2.64 for vmkit 0.27. # -# Report bugs to . +# Report bugs to . # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software +# Foundation, Inc. +# # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. # -# Copyright (c) 2003-2009 Universite Pierre et Marie Curie. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## +# Copyright (c) 2003-2010 Universite Pierre et Marie Curie. +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which @@ -24,23 +26,15 @@ alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; esac - fi - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - as_nl=' ' export as_nl @@ -48,7 +42,13 @@ as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else @@ -59,7 +59,7 @@ as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; - case $arg in + case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; @@ -82,13 +82,6 @@ } fi -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - # IFS # We need space, tab and new line, in precisely that order. Quoting is @@ -98,15 +91,15 @@ IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. -case $0 in +case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done IFS=$as_save_IFS ;; @@ -118,12 +111,16 @@ fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } + exit 1 fi -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' @@ -135,330 +132,300 @@ LANGUAGE=C export LANGUAGE -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - # CDPATH. -$as_unset CDPATH - +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test "x$CONFIG_SHELL" = x; then - if (eval ":") 2>/dev/null; then - as_have_required=yes + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST else - as_have_required=no + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac fi - - if test $as_have_required = yes && (eval ": -(as_func_return () { - (exit \$1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi - -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi - -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes else - exitcode=1 - echo positional parameters were not saved. + as_have_required=no fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : -test \$exitcode = 0) || { (exit 1); exit 1; } - -( - as_lineno_1=\$LINENO - as_lineno_2=\$LINENO - test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && - test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } -") 2> /dev/null; then - : else - as_candidate_shells= - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - case $as_dir in + as_found=: + case $as_dir in #( /*) for as_base in sh bash ksh sh5; do - as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi done;; esac + as_found=false done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } IFS=$as_save_IFS - for as_shell in $as_candidate_shells $SHELL; do - # Try only shells that exist, to save several forks. - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { ("$as_shell") 2> /dev/null <<\_ASEOF -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - -: -_ASEOF -}; then - CONFIG_SHELL=$as_shell - as_have_required=yes - if { "$as_shell" 2> /dev/null <<\_ASEOF -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - -: -(as_func_return () { - (exit $1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} - -exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi - -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi - -if ( set x; as_func_ret_success y && test x = "$1" ); then - : -else - exitcode=1 - echo positional parameters were not saved. -fi - -test $exitcode = 0) || { (exit 1); exit 1; } - -( - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } - -_ASEOF -}; then - break -fi - -fi - - done - - if test "x$CONFIG_SHELL" != x; then - for as_var in BASH_ENV ENV - do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - done + if test "x$CONFIG_SHELL" != x; then : + # We cannot yet assume a decent shell, so we have to provide a + # neutralization value for shells without unset; and this also + # works around shells that cannot unset nonexistent variables. + BASH_ENV=/dev/null + ENV=/dev/null + (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV export CONFIG_SHELL exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} fi - - if test $as_have_required = no; then - echo This script requires a shell more modern than all the - echo shells that I found on your system. Please install a - echo modern shell, or manually run the script under such a - echo shell if you do have one. - { (exit 1); exit 1; } + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf at gnu.org and +$0: nicolas.geoffray at gmail.com about your system, including +$0: any error possibly output before this message. Then +$0: install a modern shell, or manually run the script +$0: under such a shell if you do have one." + fi + exit 1 fi - - fi - fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" -(eval "as_func_return () { - (exit \$1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} +} # as_fn_mkdir_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append -exitcode=0 -if as_func_success; then - : +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' else - exitcode=1 - echo as_func_success failed. -fi + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi -if as_func_ret_success; then - : +# as_fn_error ERROR [LINENO LOG_FD] +# --------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with status $?, using 1 if that was 0. +as_fn_error () +{ + as_status=$?; test $as_status -eq 0 && as_status=1 + if test "$3"; then + as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 + fi + $as_echo "$as_me: error: $1" >&2 + as_fn_exit $as_status +} # as_fn_error + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr else - exitcode=1 - echo as_func_ret_success failed. + as_expr=false fi -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false fi -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname else - exitcode=1 - echo positional parameters were not saved. + as_dirname=false fi -test \$exitcode = 0") || { - echo No shell found that supports shell functions. - echo Please tell bug-autoconf at gnu.org about your system, - echo including any error possibly output before this message. - echo This can help us improve future autoconf versions. - echo Configuration will now proceed without shell functions. -} +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= @@ -475,8 +442,7 @@ s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the @@ -486,29 +452,18 @@ exit } - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in +case `echo -n x` in #((((( -n*) - case `echo 'x\c'` in + case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then @@ -538,7 +493,7 @@ rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false @@ -557,10 +512,10 @@ if test -d "$1"; then test -d "$1/."; else - case $1 in + case $1 in #( -*)set "./$1";; esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' @@ -574,7 +529,6 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - exec 7<&0 &1 # Name of the host. @@ -593,14 +547,14 @@ subdirs= MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='vmkit' PACKAGE_TARNAME='vmkit' -PACKAGE_VERSION='0.27svn' -PACKAGE_STRING='vmkit 0.27svn' -PACKAGE_BUGREPORT='nicolas.geoffray at lip6.fr' +PACKAGE_VERSION='0.27' +PACKAGE_STRING='vmkit 0.27' +PACKAGE_BUGREPORT='nicolas.geoffray at gmail.com' +PACKAGE_URL='' ac_unique_file="lib/Mvm/Runtime/Object.cpp" # Factoring default headers for most tests. @@ -750,6 +704,7 @@ program_transform_name prefix exec_prefix +PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION @@ -895,8 +850,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 - { (exit 1); exit 1; }; } + as_fn_error "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -922,8 +876,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 - { (exit 1); exit 1; }; } + as_fn_error "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1127,8 +1080,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2 - { (exit 1); exit 1; }; } + as_fn_error "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1144,8 +1096,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2 - { (exit 1); exit 1; }; } + as_fn_error "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1175,17 +1126,17 @@ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; - -*) { $as_echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } + -*) as_fn_error "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information." ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error "invalid variable name: \`$ac_envvar'" ;; + esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; @@ -1202,15 +1153,13 @@ if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { $as_echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } + as_fn_error "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; - fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2 - { (exit 1); exit 1; }; } ;; + fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi @@ -1233,8 +1182,7 @@ [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac - { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; } + as_fn_error "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' @@ -1264,11 +1212,9 @@ ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - { $as_echo "$as_me: error: working directory cannot be determined" >&2 - { (exit 1); exit 1; }; } + as_fn_error "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - { $as_echo "$as_me: error: pwd does not report name of working directory" >&2 - { (exit 1); exit 1; }; } + as_fn_error "pwd does not report name of working directory" # Find the source files, if location was not specified. @@ -1307,13 +1253,11 @@ fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } + as_fn_error "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2 - { (exit 1); exit 1; }; } + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then @@ -1339,7 +1283,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures vmkit 0.27svn to adapt to many kinds of systems. +\`configure' configures vmkit 0.27 to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1405,7 +1349,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of vmkit 0.27svn:";; + short | recursive ) echo "Configuration of vmkit 0.27:";; esac cat <<\_ACEOF @@ -1417,7 +1361,8 @@ --with-llvmgcc Compile with llvm-gcc --with-thread=something Thread type ('common' or 'no') --with-finalizer Compile with finalizer (default yes) - --with-gc=something GC type ('single-mmap' 'multi-mmap' or 'boehm') + --with-gc=something GC type ('mmtk' (requires llvm-gcc) 'single-mmap' + 'multi-mmap' or 'boehm') --with-vm-type=something VM type ('single' 'isolate' 'isolate-sharing' or 'service') @@ -1452,7 +1397,7 @@ Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. -Report bugs to . +Report bugs to . _ACEOF ac_status=$? fi @@ -1515,24 +1460,473 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -vmkit configure 0.27svn -generated by GNU Autoconf 2.63 +vmkit configure 0.27 +generated by GNU Autoconf 2.64 -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +Copyright (C) 2009 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. -Copyright (c) 2003-2009 Universite Pierre et Marie Curie. +Copyright (c) 2003-2010 Universite Pierre et Marie Curie. _ACEOF exit fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( cat <<\_ASBOX +## ----------------------------------------- ## +## Report this to nicolas.geoffray at gmail.com ## +## ----------------------------------------- ## +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_header_mongrel + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_header_compile + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_link + +# ac_fn_cxx_try_compile LINENO +# ---------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_cxx_try_compile + +# ac_fn_c_check_type LINENO TYPE VAR INCLUDES +# ------------------------------------------- +# Tests whether TYPE exists after having included INCLUDES, setting cache +# variable VAR accordingly. +ac_fn_c_check_type () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=no" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +if (sizeof ($2)) + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +if (sizeof (($2))) + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + eval "$3=yes" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_type + +# ac_fn_c_check_func LINENO FUNC VAR +# ---------------------------------- +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_func cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by vmkit $as_me 0.27svn, which was -generated by GNU Autoconf 2.63. Invocation command line was +It was created by vmkit $as_me 0.27, which was +generated by GNU Autoconf 2.64. Invocation command line was $ $0 $@ @@ -1568,8 +1962,8 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" -done + $as_echo "PATH: $as_dir" + done IFS=$as_save_IFS } >&5 @@ -1606,9 +2000,9 @@ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" + as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else @@ -1624,13 +2018,13 @@ -* ) ac_must_keep_next=true ;; esac fi - ac_configure_args="$ac_configure_args '$ac_arg'" + as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there @@ -1655,13 +2049,13 @@ case $ac_val in #( *${as_nl}*) case $ac_var in #( - *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5 + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) $as_unset $ac_var ;; + *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done @@ -1733,39 +2127,41 @@ exit $exit_status ' 0 for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h +$as_echo "/* confdefs.h */" > confdefs.h + # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. @@ -1784,7 +2180,7 @@ do test "x$ac_site_file" = xNONE && continue if test -r "$ac_site_file"; then - { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" @@ -1795,7 +2191,7 @@ # Some versions of bash will fail to source /dev/null (special # files actually), so we avoid doing that. if test -f "$cache_file"; then - { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; @@ -1803,7 +2199,7 @@ esac fi else - { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi @@ -1818,11 +2214,11 @@ eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) - { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) - { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; @@ -1832,17 +2228,17 @@ ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then - { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else - { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi - { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac @@ -1854,43 +2250,20 @@ esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then - { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} - { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi - - - - - - - - - - - - - - - - - - - - - - - - +## -------------------- ## +## Main body of script. ## +## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -1900,7 +2273,7 @@ -VMKIT_COPYRIGHT="Copyright (c) 2003-2009 Universite Pierre et Marie Curie." +VMKIT_COPYRIGHT="Copyright (c) 2003-2010 Universite Pierre et Marie Curie." @@ -1911,32 +2284,22 @@ if test ${srcdir} != "." ; then if test -f ${srcdir}/include/mvm/Config/config.h ; then - { { $as_echo "$as_me:$LINENO: error: Already configured in ${srcdir}" >&5 -$as_echo "$as_me: error: Already configured in ${srcdir}" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Already configured in ${srcdir}" "$LINENO" 5 fi fi ac_aux_dir= for ac_dir in $LLVM_SRC_ROOT/autoconf "$srcdir"/$LLVM_SRC_ROOT/autoconf; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi + for ac_t in install-sh install.sh shtool; do + if test -f "$ac_dir/$ac_t"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/$ac_t -c" + break 2 + fi + done done if test -z "$ac_aux_dir"; then - { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $LLVM_SRC_ROOT/autoconf \"$srcdir\"/$LLVM_SRC_ROOT/autoconf" >&5 -$as_echo "$as_me: error: cannot find install-sh or install.sh in $LLVM_SRC_ROOT/autoconf \"$srcdir\"/$LLVM_SRC_ROOT/autoconf" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "cannot find install-sh, install.sh, or shtool in $LLVM_SRC_ROOT/autoconf \"$srcdir\"/$LLVM_SRC_ROOT/autoconf" "$LINENO" 5 fi # These three variables are undocumented and unsupported, @@ -1951,7 +2314,7 @@ # Check whether --with-llvmsrc was given. -if test "${with_llvmsrc+set}" = set; then +if test "${with_llvmsrc+set}" = set; then : withval=$with_llvmsrc; llvm_src="$withval" else llvm_src="$LLVM_SRC_ROOT" @@ -1961,7 +2324,7 @@ # Check whether --with-llvmobj was given. -if test "${with_llvmobj+set}" = set; then +if test "${with_llvmobj+set}" = set; then : withval=$with_llvmobj; llvm_obj="$withval" else llvm_obj="$LLVM_OBJ_ROOT" @@ -1977,35 +2340,27 @@ # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 -$as_echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 -{ $as_echo "$as_me:$LINENO: checking build system type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } -if test "${ac_cv_build+set}" = set; then +if test "${ac_cv_build+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && - { { $as_echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -$as_echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 -$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_build" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; -*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 -$as_echo "$as_me: error: invalid value of canonical build" >&2;} - { (exit 1); exit 1; }; };; +*) as_fn_error "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' @@ -2021,28 +2376,24 @@ case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac -{ $as_echo "$as_me:$LINENO: checking host system type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } -if test "${ac_cv_host+set}" = set; then +if test "${ac_cv_host+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 -$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_host" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; -*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 -$as_echo "$as_me: error: invalid value of canonical host" >&2;} - { (exit 1); exit 1; }; };; +*) as_fn_error "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' @@ -2058,28 +2409,24 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac -{ $as_echo "$as_me:$LINENO: checking target system type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5 $as_echo_n "checking target system type... " >&6; } -if test "${ac_cv_target+set}" = set; then +if test "${ac_cv_target+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "x$target_alias" = x; then ac_cv_target=$ac_cv_host else ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || - { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&5 -$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5 fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_target" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5 $as_echo "$ac_cv_target" >&6; } case $ac_cv_target in *-*-*) ;; -*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical target" >&5 -$as_echo "$as_me: error: invalid value of canonical target" >&2;} - { (exit 1); exit 1; }; };; +*) as_fn_error "invalid value of canonical target" "$LINENO" 5;; esac target=$ac_cv_target ac_save_IFS=$IFS; IFS='-' @@ -2102,28 +2449,22 @@ NONENONEs,x,x, && program_prefix=${target_alias}- -{ $as_echo "$as_me:$LINENO: checking type of operating system we're going to host on" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking type of operating system we're going to host on" >&5 $as_echo_n "checking type of operating system we're going to host on... " >&6; } -if test "${vmkit_cv_os_type+set}" = set; then +if test "${vmkit_cv_os_type+set}" = set; then : $as_echo_n "(cached) " >&6 else case $host in *-*-aix*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="AIX" vmkit_cv_platform_type="Unix" ;; *-*-irix*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="IRIX" vmkit_cv_platform_type="Unix" ;; *-*-cygwin*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="Cygwin" vmkit_cv_platform_type="Unix" ;; *-*-darwin*) @@ -2131,33 +2472,23 @@ vmkit_cv_os_type="Darwin" vmkit_cv_platform_type="Unix" ;; *-*-freebsd*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="FreeBSD" vmkit_cv_platform_type="Unix" ;; *-*-openbsd*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="OpenBSD" vmkit_cv_platform_type="Unix" ;; *-*-netbsd*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="NetBSD" vmkit_cv_platform_type="Unix" ;; *-*-hpux*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="HP-UX" vmkit_cv_platform_type="Unix" ;; *-*-interix*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="Interix" vmkit_cv_platform_type="Unix" ;; *-*-linux*) @@ -2165,32 +2496,24 @@ vmkit_cv_os_type="Linux" vmkit_cv_platform_type="Unix" ;; *-*-solaris*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="SunOS" vmkit_cv_platform_type="Unix" ;; *-*-win32*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="Win32" vmkit_cv_platform_type="Win32" ;; *-*-mingw*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="MingW" vmkit_cv_platform_type="Win32" ;; *) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="Unknown" vmkit_cv_platform_type="Unknown" ;; esac fi -{ $as_echo "$as_me:$LINENO: result: $vmkit_cv_os_type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $vmkit_cv_os_type" >&5 $as_echo "$vmkit_cv_os_type" >&6; } @@ -2199,7 +2522,7 @@ # Check whether --with-llvmgcc was given. -if test "${with_llvmgcc+set}" = set; then +if test "${with_llvmgcc+set}" = set; then : withval=$with_llvmgcc; withllvm=yes else withllvm=no @@ -2216,7 +2539,7 @@ # Check whether --with-thread was given. -if test "${with_thread+set}" = set; then +if test "${with_thread+set}" = set; then : withval=$with_thread; thread=$withval else thread=common @@ -2232,9 +2555,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -2245,24 +2568,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2272,9 +2595,9 @@ ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -2285,24 +2608,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2311,7 +2634,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -2325,9 +2648,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -2338,24 +2661,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2365,9 +2688,9 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -2379,18 +2702,18 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then @@ -2409,10 +2732,10 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2424,9 +2747,9 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -2437,24 +2760,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2468,9 +2791,9 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -2481,24 +2804,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2511,7 +2834,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -2522,73 +2845,55 @@ fi -test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "no acceptable C compiler found in \$PATH +See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C compiler version" >&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -v >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -V >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + rm -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - +#include int main () { +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out conftest.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` @@ -2605,17 +2910,17 @@ done rm -f $ac_rmfiles -if { (ac_try="$ac_link_default" +if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, @@ -2632,7 +2937,7 @@ # certainly right. break;; *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi @@ -2651,84 +2956,75 @@ else ac_file='' fi - -{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } -if test -z "$ac_file"; then +if test -z "$ac_file"; then : $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; }; } +{ as_fn_set_status 77 +as_fn_error "C compiler cannot create executables +See \`config.log' for more details." "$LINENO" 5; }; } fi - ac_exeext=$ac_cv_exeext # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' - { (case "(($ac_try" in + { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs. +as_fn_error "cannot run C compiled programs. If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +See \`config.log' for more details." "$LINENO" 5; } fi fi fi -{ $as_echo "$as_me:$LINENO: result: yes" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } -rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out conftest.out ac_clean_files=$ac_clean_files_save # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } -{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } -{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } -if { (ac_try="$ac_link" +if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with @@ -2743,32 +3039,24 @@ esac done else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." "$LINENO" 5; } fi - rm -f conftest$ac_cv_exeext -{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT -{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } -if test "${ac_cv_objext+set}" = set; then +if test "${ac_cv_objext+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2780,17 +3068,17 @@ } _ACEOF rm -f conftest.o conftest.obj -if { (ac_try="$ac_compile" +if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in @@ -2803,31 +3091,23 @@ $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "cannot compute suffix of object files: cannot compile +See \`config.log' for more details." "$LINENO" 5; } fi - rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then +if test "${ac_cv_c_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2841,37 +3121,16 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + ac_compiler_gnu=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes @@ -2880,20 +3139,16 @@ fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then +if test "${ac_cv_prog_cc_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2904,35 +3159,11 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2943,36 +3174,12 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_compile "$LINENO"; then : - ac_c_werror_flag=$ac_save_c_werror_flag +else + ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2983,42 +3190,17 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS @@ -3035,18 +3217,14 @@ CFLAGS= fi fi -{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then +if test "${ac_cv_prog_cc_c89+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -3103,32 +3281,9 @@ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then + if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done @@ -3139,17 +3294,19 @@ # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) - { $as_echo "$as_me:$LINENO: result: none needed" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) - { $as_echo "$as_me:$LINENO: result: unsupported" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac +if test "x$ac_cv_prog_cc_c89" != xno; then : +fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -3163,14 +3320,14 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then + if test "${ac_cv_prog_CPP+set}" = set; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded @@ -3185,11 +3342,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -3198,78 +3351,34 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then +if $ac_preproc_ok; then : break fi @@ -3281,7 +3390,7 @@ else ac_cv_prog_CPP=$CPP fi -{ $as_echo "$as_me:$LINENO: result: $CPP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes @@ -3292,11 +3401,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -3305,87 +3410,40 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : +if $ac_preproc_ok; then : + else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." "$LINENO" 5; } fi ac_ext=c @@ -3395,9 +3453,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if test "${ac_cv_path_GREP+set}" = set; then +if test "${ac_cv_path_GREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then @@ -3408,7 +3466,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do + for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue @@ -3428,7 +3486,7 @@ $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - ac_count=`expr $ac_count + 1` + as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" @@ -3443,26 +3501,24 @@ $ac_path_GREP_found && break 3 done done -done + done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then - { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 -$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" -{ $as_echo "$as_me:$LINENO: checking for egrep" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } -if test "${ac_cv_path_EGREP+set}" = set; then +if test "${ac_cv_path_EGREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 @@ -3476,7 +3532,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do + for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue @@ -3496,7 +3552,7 @@ $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - ac_count=`expr $ac_count + 1` + as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" @@ -3511,12 +3567,10 @@ $ac_path_EGREP_found && break 3 done done -done + done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then - { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 -$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP @@ -3524,21 +3578,17 @@ fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" -{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } -if test "${ac_cv_header_stdc+set}" = set; then +if test "${ac_cv_header_stdc+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -3553,48 +3603,23 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_header_stdc=no + ac_cv_header_stdc=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : + $EGREP "memchr" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -3604,18 +3629,14 @@ if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : + $EGREP "free" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -3625,14 +3646,10 @@ if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then + if test "$cross_compiling" = yes; then : : else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -3659,118 +3676,34 @@ return 0; } _ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - $as_echo "$as_me: program exited with status $ac_status" >&5 -$as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_run "$LINENO"; then : -( exit $ac_status ) -ac_cv_header_stdc=no +else + ac_cv_header_stdc=no fi -rm -rf conftest.dSYM -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi - fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF +$as_echo "#define STDC_HEADERS 1" >>confdefs.h fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h -do -as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 -$as_echo_n "checking for $ac_header... " >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - eval "$as_ac_Header=yes" -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_Header=no" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -ac_res=`eval 'as_val=${'$as_ac_Header'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_Header'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +eval as_val=\$$as_ac_Header + if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF @@ -3780,160 +3713,24 @@ done -if test "x$thread" != "xno"; then - if test "${ac_cv_header_pthread_h+set}" = set; then - { $as_echo "$as_me:$LINENO: checking for pthread.h" >&5 -$as_echo_n "checking for pthread.h... " >&6; } -if test "${ac_cv_header_pthread_h+set}" = set; then - $as_echo_n "(cached) " >&6 +if test "x$thread" != "xno"; then : + ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default" +if test "x$ac_cv_header_pthread_h" = x""yes; then : + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: phtread include NOT found" >&5 +$as_echo "$as_me: WARNING: phtread include NOT found" >&2;} fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_pthread_h" >&5 -$as_echo "$ac_cv_header_pthread_h" >&6; } + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_create in -lpthread" >&5 +$as_echo_n "checking for pthread_create in -lpthread... " >&6; } +if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then : + $as_echo_n "(cached) " >&6 else - # Is the header compilable? -{ $as_echo "$as_me:$LINENO: checking pthread.h usability" >&5 -$as_echo_n "checking pthread.h usability... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:$LINENO: checking pthread.h presence" >&5 -$as_echo_n "checking pthread.h presence... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi - -rm -f conftest.err conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: pthread.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: pthread.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: pthread.h: present but cannot be compiled" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: pthread.h: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: pthread.h: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: pthread.h: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: proceeding with the preprocessor's result" >&5 -$as_echo "$as_me: WARNING: pthread.h: proceeding with the preprocessor's result" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: in the future, the compiler will take precedence" >&5 -$as_echo "$as_me: WARNING: pthread.h: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## --------------------------------------- ## -## Report this to nicolas.geoffray at lip6.fr ## -## --------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ $as_echo "$as_me:$LINENO: checking for pthread.h" >&5 -$as_echo_n "checking for pthread.h... " >&6; } -if test "${ac_cv_header_pthread_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_header_pthread_h=$ac_header_preproc -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_pthread_h" >&5 -$as_echo "$ac_cv_header_pthread_h" >&6; } - -fi -if test "x$ac_cv_header_pthread_h" = x""yes; then - : -else - { $as_echo "$as_me:$LINENO: WARNING: phtread include NOT found" >&5 -$as_echo "$as_me: WARNING: phtread include NOT found" >&2;} -fi - - - -{ $as_echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5 -$as_echo_n "checking for pthread_create in -lpthread... " >&6; } -if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpthread $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -3951,43 +3748,18 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_pthread_pthread_create=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_lib_pthread_pthread_create=no + ac_cv_lib_pthread_pthread_create=no fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_create" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_create" >&5 $as_echo "$ac_cv_lib_pthread_pthread_create" >&6; } -if test "x$ac_cv_lib_pthread_pthread_create" = x""yes; then +if test "x$ac_cv_lib_pthread_pthread_create" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LIBPTHREAD 1 _ACEOF @@ -3995,27 +3767,22 @@ LIBS="-lpthread $LIBS" else - { { $as_echo "$as_me:$LINENO: error: pthread library not found" >&5 -$as_echo "$as_me: error: pthread library not found" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "pthread library not found" "$LINENO" 5 fi fi - if test "x$thread" = xcommon; then -cat >>confdefs.h <<\_ACEOF -#define HAVE_PTHREAD 1 -_ACEOF +$as_echo "#define HAVE_PTHREAD 1" >>confdefs.h fi # Check whether --with-finalizer was given. -if test "${with_finalizer+set}" = set; then +if test "${with_finalizer+set}" = set; then : withval=$with_finalizer; withfinalizer=$withfinalizer else withfinalizer=yes @@ -4030,17 +3797,13 @@ case $target_cpu in powerpc) -cat >>confdefs.h <<\_ACEOF -#define WITH_64 0 -_ACEOF +$as_echo "#define WITH_64 0" >>confdefs.h WITH_64=0 ;; *) -cat >>confdefs.h <<\_ACEOF -#define WITH_64 1 -_ACEOF +$as_echo "#define WITH_64 1" >>confdefs.h WITH_64=1 ;; @@ -4050,7 +3813,7 @@ # Check whether --with-gc was given. -if test "${with_gc+set}" = set; then +if test "${with_gc+set}" = set; then : withval=$with_gc; gc=$withval else echo Using mmap2 as vvm gc type. @@ -4063,9 +3826,7 @@ if test "x$gc" = "xboehm"; then GC_FLAGS="-I\$(PROJ_SRC_ROOT)/lib/Mvm/BoehmGC -DGC_THREADS" -cat >>confdefs.h <<\_ACEOF -#define USE_GC_BOEHM 1 -_ACEOF +$as_echo "#define USE_GC_BOEHM 1" >>confdefs.h GC_MMAP2=0 @@ -4110,9 +3871,7 @@ fi -cat >>confdefs.h <<\_ACEOF -#define USE_GC_MMAP2 1 -_ACEOF +$as_echo "#define USE_GC_MMAP2 1" >>confdefs.h GC_MMAP2=1 @@ -4128,7 +3887,7 @@ # Check whether --with-vm-type was given. -if test "${with_vm_type+set}" = set; then +if test "${with_vm_type+set}" = set; then : withval=$with_vm_type; vmtype=$withval else echo Using single as vm type. @@ -4163,7 +3922,7 @@ # Check whether --with-exception-type was given. -if test "${with_exception_type+set}" = set; then +if test "${with_exception_type+set}" = set; then : withval=$with_exception_type; exceptiontype=$withval else echo Using check as exception type. @@ -4184,7 +3943,7 @@ # Check whether --with-gnu-classpath-libs was given. -if test "${with_gnu_classpath_libs+set}" = set; then +if test "${with_gnu_classpath_libs+set}" = set; then : withval=$with_gnu_classpath_libs; classpathlibs=$withval else classpathlibs=/usr/lib/classpath @@ -4194,7 +3953,7 @@ # Check whether --with-gnu-classpath-glibj was given. -if test "${with_gnu_classpath_glibj+set}" = set; then +if test "${with_gnu_classpath_glibj+set}" = set; then : withval=$with_gnu_classpath_glibj; classpathglibj=$withval else classpathglibj=/usr/share/classpath/glibj.zip @@ -4204,7 +3963,7 @@ # Check whether --with-j3 was given. -if test "${with_j3+set}" = set; then +if test "${with_j3+set}" = set; then : withval=$with_j3; WITH_J3=$withval else WITH_J3=yes @@ -4217,9 +3976,7 @@ if test "x${WITH_J3}" = "xyes"; then WITH_J3=1; -cat >>confdefs.h <<\_ACEOF -#define WITH_J3 1 -_ACEOF +$as_echo "#define WITH_J3 1" >>confdefs.h else WITH_J3=0; @@ -4233,7 +3990,7 @@ # Check whether --with-pnet-local-prefix was given. -if test "${with_pnet_local_prefix+set}" = set; then +if test "${with_pnet_local_prefix+set}" = set; then : withval=$with_pnet_local_prefix; pnetlocalprefix=$withval else echo Not using PNETlocal prefix. @@ -4245,7 +4002,7 @@ # Check whether --with-pnetlib was given. -if test "${with_pnetlib+set}" = set; then +if test "${with_pnetlib+set}" = set; then : withval=$with_pnetlib; pnetlibpath=$withval else pnetlibpath=/usr/lib/cscc/lib/ @@ -4260,9 +4017,7 @@ WITH_N3_PNETLIB=1; WITH_N3=1; -cat >>confdefs.h <<\_ACEOF -#define WITH_N3 1 -_ACEOF +$as_echo "#define WITH_N3 1" >>confdefs.h else WITH_N3_PNETLIB=0; @@ -4277,7 +4032,7 @@ # Check whether --with-mono was given. -if test "${with_mono+set}" = set; then +if test "${with_mono+set}" = set; then : withval=$with_mono; monopath=$withval else echo Not using Mono @@ -4304,14 +4059,14 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then + if test "${ac_cv_prog_CPP+set}" = set; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded @@ -4326,11 +4081,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -4339,78 +4090,34 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then +if $ac_preproc_ok; then : break fi @@ -4422,7 +4129,7 @@ else ac_cv_prog_CPP=$CPP fi -{ $as_echo "$as_me:$LINENO: result: $CPP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes @@ -4433,11 +4140,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -4446,87 +4149,40 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : +if $ac_preproc_ok; then : + else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." "$LINENO" 5; } fi ac_ext=c @@ -4545,9 +4201,9 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4558,24 +4214,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4589,9 +4245,9 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -4602,24 +4258,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4632,7 +4288,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -4641,62 +4297,42 @@ fi -test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "no acceptable C compiler found in \$PATH +See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C compiler version" >&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -v >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -V >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + rm -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then +if test "${ac_cv_c_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4710,37 +4346,16 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + ac_compiler_gnu=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes @@ -4749,20 +4364,16 @@ fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then +if test "${ac_cv_prog_cc_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4773,35 +4384,11 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4812,36 +4399,12 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_compile "$LINENO"; then : - ac_c_werror_flag=$ac_save_c_werror_flag +else + ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4852,42 +4415,17 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS @@ -4904,18 +4442,14 @@ CFLAGS= fi fi -{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then +if test "${ac_cv_prog_cc_c89+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -4972,32 +4506,9 @@ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then + if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done @@ -5008,17 +4519,19 @@ # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) - { $as_echo "$as_me:$LINENO: result: none needed" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) - { $as_echo "$as_me:$LINENO: result: unsupported" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac +if test "x$ac_cv_prog_cc_c89" != xno; then : +fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -5040,9 +4553,9 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CXX+set}" = set; then +if test "${ac_cv_prog_CXX+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then @@ -5053,24 +4566,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then - { $as_echo "$as_me:$LINENO: result: $CXX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 $as_echo "$CXX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5084,9 +4597,9 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then +if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then @@ -5097,24 +4610,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 $as_echo "$ac_ct_CXX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5127,7 +4640,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -5138,53 +4651,36 @@ fi fi # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C++ compiler version" >&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 set X $ac_compile ac_compiler=$2 -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -v >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -V >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + rm -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } -if test "${ac_cv_cxx_compiler_gnu+set}" = set; then +if test "${ac_cv_cxx_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5198,37 +4694,16 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_cxx_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + ac_compiler_gnu=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GXX=yes @@ -5237,20 +4712,16 @@ fi ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 $as_echo_n "checking whether $CXX accepts -g... " >&6; } -if test "${ac_cv_prog_cxx_g+set}" = set; then +if test "${ac_cv_prog_cxx_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_cxx_werror_flag=$ac_cxx_werror_flag ac_cxx_werror_flag=yes ac_cv_prog_cxx_g=no CXXFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5261,35 +4732,11 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CXXFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + CXXFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5300,36 +4747,12 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_cxx_try_compile "$LINENO"; then : - ac_cxx_werror_flag=$ac_save_cxx_werror_flag +else + ac_cxx_werror_flag=$ac_save_cxx_werror_flag CXXFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5340,42 +4763,17 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cxx_werror_flag=$ac_save_cxx_werror_flag fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 $as_echo "$ac_cv_prog_cxx_g" >&6; } if test "$ac_test_CXXFLAGS" = set; then CXXFLAGS=$ac_save_CXXFLAGS @@ -5399,9 +4797,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD-compatible nm" >&5 $as_echo_n "checking for BSD-compatible nm... " >&6; } -if test "${lt_cv_path_NM+set}" = set; then +if test "${lt_cv_path_NM+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$NM"; then @@ -5448,28 +4846,28 @@ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm fi fi -{ $as_echo "$as_me:$LINENO: result: $lt_cv_path_NM" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 $as_echo "$lt_cv_path_NM" >&6; } NM="$lt_cv_path_NM" -{ $as_echo "$as_me:$LINENO: checking whether ln -s works" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else - { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi # Extract the first word of "cmp", so it can be a program name with args. set dummy cmp; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_CMP+set}" = set; then +if test "${ac_cv_path_CMP+set}" = set; then : $as_echo_n "(cached) " >&6 else case $CMP in @@ -5482,14 +4880,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_CMP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_CMP" && ac_cv_path_CMP="cmp" @@ -5498,19 +4896,19 @@ fi CMP=$ac_cv_path_CMP if test -n "$CMP"; then - { $as_echo "$as_me:$LINENO: result: $CMP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CMP" >&5 $as_echo "$CMP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "cp", so it can be a program name with args. set dummy cp; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_CP+set}" = set; then +if test "${ac_cv_path_CP+set}" = set; then : $as_echo_n "(cached) " >&6 else case $CP in @@ -5523,14 +4921,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_CP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_CP" && ac_cv_path_CP="cp" @@ -5539,19 +4937,19 @@ fi CP=$ac_cv_path_CP if test -n "$CP"; then - { $as_echo "$as_me:$LINENO: result: $CP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CP" >&5 $as_echo "$CP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "date", so it can be a program name with args. set dummy date; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DATE+set}" = set; then +if test "${ac_cv_path_DATE+set}" = set; then : $as_echo_n "(cached) " >&6 else case $DATE in @@ -5564,14 +4962,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_DATE="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_DATE" && ac_cv_path_DATE="date" @@ -5580,19 +4978,19 @@ fi DATE=$ac_cv_path_DATE if test -n "$DATE"; then - { $as_echo "$as_me:$LINENO: result: $DATE" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DATE" >&5 $as_echo "$DATE" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "find", so it can be a program name with args. set dummy find; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_FIND+set}" = set; then +if test "${ac_cv_path_FIND+set}" = set; then : $as_echo_n "(cached) " >&6 else case $FIND in @@ -5605,14 +5003,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_FIND="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_FIND" && ac_cv_path_FIND="find" @@ -5621,19 +5019,19 @@ fi FIND=$ac_cv_path_FIND if test -n "$FIND"; then - { $as_echo "$as_me:$LINENO: result: $FIND" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND" >&5 $as_echo "$FIND" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "grep", so it can be a program name with args. set dummy grep; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GREP+set}" = set; then +if test "${ac_cv_path_GREP+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GREP in @@ -5646,14 +5044,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GREP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_GREP" && ac_cv_path_GREP="grep" @@ -5662,19 +5060,19 @@ fi GREP=$ac_cv_path_GREP if test -n "$GREP"; then - { $as_echo "$as_me:$LINENO: result: $GREP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GREP" >&5 $as_echo "$GREP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "mkdir", so it can be a program name with args. set dummy mkdir; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MKDIR+set}" = set; then +if test "${ac_cv_path_MKDIR+set}" = set; then : $as_echo_n "(cached) " >&6 else case $MKDIR in @@ -5687,14 +5085,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MKDIR="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_MKDIR" && ac_cv_path_MKDIR="mkdir" @@ -5703,19 +5101,19 @@ fi MKDIR=$ac_cv_path_MKDIR if test -n "$MKDIR"; then - { $as_echo "$as_me:$LINENO: result: $MKDIR" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR" >&5 $as_echo "$MKDIR" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "mv", so it can be a program name with args. set dummy mv; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MV+set}" = set; then +if test "${ac_cv_path_MV+set}" = set; then : $as_echo_n "(cached) " >&6 else case $MV in @@ -5728,14 +5126,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MV="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_MV" && ac_cv_path_MV="mv" @@ -5744,10 +5142,10 @@ fi MV=$ac_cv_path_MV if test -n "$MV"; then - { $as_echo "$as_me:$LINENO: result: $MV" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MV" >&5 $as_echo "$MV" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5755,9 +5153,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_RANLIB+set}" = set; then +if test "${ac_cv_prog_RANLIB+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$RANLIB"; then @@ -5768,24 +5166,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then - { $as_echo "$as_me:$LINENO: result: $RANLIB" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 $as_echo "$RANLIB" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5795,9 +5193,9 @@ ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then +if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_RANLIB"; then @@ -5808,24 +5206,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 $as_echo "$ac_ct_RANLIB" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5834,7 +5232,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -5846,9 +5244,9 @@ # Extract the first word of "rm", so it can be a program name with args. set dummy rm; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_RM+set}" = set; then +if test "${ac_cv_path_RM+set}" = set; then : $as_echo_n "(cached) " >&6 else case $RM in @@ -5861,14 +5259,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_RM="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_RM" && ac_cv_path_RM="rm" @@ -5877,19 +5275,19 @@ fi RM=$ac_cv_path_RM if test -n "$RM"; then - { $as_echo "$as_me:$LINENO: result: $RM" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RM" >&5 $as_echo "$RM" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "sed", so it can be a program name with args. set dummy sed; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_SED+set}" = set; then +if test "${ac_cv_path_SED+set}" = set; then : $as_echo_n "(cached) " >&6 else case $SED in @@ -5902,14 +5300,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_SED" && ac_cv_path_SED="sed" @@ -5918,19 +5316,19 @@ fi SED=$ac_cv_path_SED if test -n "$SED"; then - { $as_echo "$as_me:$LINENO: result: $SED" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5 $as_echo "$SED" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "tar", so it can be a program name with args. set dummy tar; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_TAR+set}" = set; then +if test "${ac_cv_path_TAR+set}" = set; then : $as_echo_n "(cached) " >&6 else case $TAR in @@ -5943,14 +5341,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_TAR="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_TAR" && ac_cv_path_TAR="gtar" @@ -5959,19 +5357,19 @@ fi TAR=$ac_cv_path_TAR if test -n "$TAR"; then - { $as_echo "$as_me:$LINENO: result: $TAR" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TAR" >&5 $as_echo "$TAR" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "pwd", so it can be a program name with args. set dummy pwd; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_BINPWD+set}" = set; then +if test "${ac_cv_path_BINPWD+set}" = set; then : $as_echo_n "(cached) " >&6 else case $BINPWD in @@ -5984,14 +5382,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_BINPWD="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_BINPWD" && ac_cv_path_BINPWD="pwd" @@ -6000,19 +5398,19 @@ fi BINPWD=$ac_cv_path_BINPWD if test -n "$BINPWD"; then - { $as_echo "$as_me:$LINENO: result: $BINPWD" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BINPWD" >&5 $as_echo "$BINPWD" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "cat", so it can be a program name with args. set dummy cat; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_CAT+set}" = set; then +if test "${ac_cv_path_CAT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $CAT in @@ -6025,14 +5423,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_CAT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_CAT" && ac_cv_path_CAT="cat" @@ -6041,10 +5439,10 @@ fi CAT=$ac_cv_path_CAT if test -n "$CAT"; then - { $as_echo "$as_me:$LINENO: result: $CAT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CAT" >&5 $as_echo "$CAT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6052,9 +5450,9 @@ # Extract the first word of "llvm-as", so it can be a program name with args. set dummy llvm-as; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_LLVMAS+set}" = set; then +if test "${ac_cv_path_LLVMAS+set}" = set; then : $as_echo_n "(cached) " >&6 else case $LLVMAS in @@ -6067,14 +5465,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_LLVMAS="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_LLVMAS" && ac_cv_path_LLVMAS="llvm-as" @@ -6083,19 +5481,19 @@ fi LLVMAS=$ac_cv_path_LLVMAS if test -n "$LLVMAS"; then - { $as_echo "$as_me:$LINENO: result: $LLVMAS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLVMAS" >&5 $as_echo "$LLVMAS" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "llc", so it can be a program name with args. set dummy llc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_LLC+set}" = set; then +if test "${ac_cv_path_LLC+set}" = set; then : $as_echo_n "(cached) " >&6 else case $LLC in @@ -6108,14 +5506,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_LLC="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_LLC" && ac_cv_path_LLC="llc" @@ -6124,19 +5522,19 @@ fi LLC=$ac_cv_path_LLC if test -n "$LLC"; then - { $as_echo "$as_me:$LINENO: result: $LLC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLC" >&5 $as_echo "$LLC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "ant", so it can be a program name with args. set dummy ant; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ANT+set}" = set; then +if test "${ac_cv_path_ANT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $ANT in @@ -6149,14 +5547,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_ANT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -6164,10 +5562,10 @@ fi ANT=$ac_cv_path_ANT if test -n "$ANT"; then - { $as_echo "$as_me:$LINENO: result: $ANT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ANT" >&5 $as_echo "$ANT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6187,10 +5585,10 @@ # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. -{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then +if test "${ac_cv_path_install+set}" = set; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -6198,11 +5596,11 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in - ./ | .// | /cC/* | \ + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in #(( + ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. @@ -6239,7 +5637,7 @@ ;; esac -done + done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir @@ -6255,7 +5653,7 @@ INSTALL=$ac_install_sh fi fi -{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. @@ -6272,9 +5670,9 @@ LLVMGXX="llvm-g++${EXEEXT}" # Extract the first word of "$LLVMGCC", so it can be a program name with args. set dummy $LLVMGCC; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_LLVMGCC+set}" = set; then +if test "${ac_cv_path_LLVMGCC+set}" = set; then : $as_echo_n "(cached) " >&6 else case $LLVMGCC in @@ -6287,14 +5685,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_LLVMGCC="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -6302,19 +5700,19 @@ fi LLVMGCC=$ac_cv_path_LLVMGCC if test -n "$LLVMGCC"; then - { $as_echo "$as_me:$LINENO: result: $LLVMGCC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLVMGCC" >&5 $as_echo "$LLVMGCC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "$LLVMGXX", so it can be a program name with args. set dummy $LLVMGXX; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_LLVMGXX+set}" = set; then +if test "${ac_cv_path_LLVMGXX+set}" = set; then : $as_echo_n "(cached) " >&6 else case $LLVMGXX in @@ -6327,14 +5725,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_LLVMGXX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -6342,10 +5740,10 @@ fi LLVMGXX=$ac_cv_path_LLVMGXX if test -n "$LLVMGXX"; then - { $as_echo "$as_me:$LINENO: result: $LLVMGXX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLVMGXX" >&5 $as_echo "$LLVMGXX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6363,7 +5761,7 @@ fi -{ $as_echo "$as_me:$LINENO: checking tool compatibility" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking tool compatibility" >&5 $as_echo_n "checking tool compatibility... " >&6; } ICC=no @@ -6379,75 +5777,44 @@ if test "$GCC" != "yes" && test "$ICC" != "yes" then - { { $as_echo "$as_me:$LINENO: error: gcc|icc required but not found" >&5 -$as_echo "$as_me: error: gcc|icc required but not found" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "gcc|icc required but not found" "$LINENO" 5 fi if test "$GXX" != "yes" && test "$IXX" != "yes" then - { { $as_echo "$as_me:$LINENO: error: g++|icc required but not found" >&5 -$as_echo "$as_me: error: g++|icc required but not found" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "g++|icc required but not found" "$LINENO" 5 fi if test "$GCC" = "yes" then - cat >conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ #if !defined(__GNUC__) || __GNUC__ < 3 #error Unsupported GCC version #endif _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_compile "$LINENO"; then : - { { $as_echo "$as_me:$LINENO: error: gcc 3.x required, but you have a lower version" >&5 -$as_echo "$as_me: error: gcc 3.x required, but you have a lower version" >&2;} - { (exit 1); exit 1; }; } +else + as_fn_error "gcc 3.x required, but you have a lower version" "$LINENO" 5 fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: ok" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "ok" >&6; } - -{ $as_echo "$as_me:$LINENO: checking for inflate in -lz" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflate in -lz" >&5 $as_echo_n "checking for inflate in -lz... " >&6; } -if test "${ac_cv_lib_z_inflate+set}" = set; then +if test "${ac_cv_lib_z_inflate+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lz $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -6465,43 +5832,18 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_z_inflate=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_lib_z_inflate=no + ac_cv_lib_z_inflate=no fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_z_inflate" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_inflate" >&5 $as_echo "$ac_cv_lib_z_inflate" >&6; } -if test "x$ac_cv_lib_z_inflate" = x""yes; then +if test "x$ac_cv_lib_z_inflate" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LIBZ 1 _ACEOF @@ -6510,27 +5852,20 @@ else \ - { { $as_echo "$as_me:$LINENO: error: You need to install the zlib package (z)." >&5 -$as_echo "$as_me: error: You need to install the zlib package (z)." >&2;} - { (exit 1); exit 1; }; } + as_fn_error "You need to install the zlib package (z)." "$LINENO" 5 fi if test "x$gc" = "xboehm"; then - -{ $as_echo "$as_me:$LINENO: checking for GC_malloc in -lgc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GC_malloc in -lgc" >&5 $as_echo_n "checking for GC_malloc in -lgc... " >&6; } -if test "${ac_cv_lib_gc_GC_malloc+set}" = set; then +if test "${ac_cv_lib_gc_GC_malloc+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lgc $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -6548,43 +5883,18 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_gc_GC_malloc=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_lib_gc_GC_malloc=no + ac_cv_lib_gc_GC_malloc=no fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_gc_GC_malloc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gc_GC_malloc" >&5 $as_echo "$ac_cv_lib_gc_GC_malloc" >&6; } -if test "x$ac_cv_lib_gc_GC_malloc" = x""yes; then +if test "x$ac_cv_lib_gc_GC_malloc" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LIBGC 1 _ACEOF @@ -6593,993 +5903,140 @@ else \ - { { $as_echo "$as_me:$LINENO: error: You need to install the boehm-gc package (gc)." >&5 -$as_echo "$as_me: error: You need to install the boehm-gc package (gc)." >&2;} - { (exit 1); exit 1; }; } + as_fn_error "You need to install the boehm-gc package (gc)." "$LINENO" 5 fi fi -if test "${ac_cv_header_zlib_h+set}" = set; then - { $as_echo "$as_me:$LINENO: checking for zlib.h" >&5 -$as_echo_n "checking for zlib.h... " >&6; } -if test "${ac_cv_header_zlib_h+set}" = set; then - $as_echo_n "(cached) " >&6 -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_zlib_h" >&5 -$as_echo "$ac_cv_header_zlib_h" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:$LINENO: checking zlib.h usability" >&5 -$as_echo_n "checking zlib.h usability... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes +ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default" +if test "x$ac_cv_header_zlib_h" = x""yes; then : + else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + \ + as_fn_error "You need to install the zlib devel package (zlib.h)." "$LINENO" 5 - ac_header_compiler=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:$LINENO: checking zlib.h presence" >&5 -$as_echo_n "checking zlib.h presence... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } +if test "x$gc" = "xboehm"; then + ac_fn_c_check_header_mongrel "$LINENO" "gc/gc.h" "ac_cv_header_gc_gc_h" "$ac_includes_default" +if test "x$ac_cv_header_gc_gc_h" = x""yes; then : -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: zlib.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: zlib.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: zlib.h: present but cannot be compiled" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: zlib.h: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: zlib.h: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: zlib.h: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: proceeding with the preprocessor's result" >&5 -$as_echo "$as_me: WARNING: zlib.h: proceeding with the preprocessor's result" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: in the future, the compiler will take precedence" >&5 -$as_echo "$as_me: WARNING: zlib.h: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## --------------------------------------- ## -## Report this to nicolas.geoffray at lip6.fr ## -## --------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ $as_echo "$as_me:$LINENO: checking for zlib.h" >&5 -$as_echo_n "checking for zlib.h... " >&6; } -if test "${ac_cv_header_zlib_h+set}" = set; then - $as_echo_n "(cached) " >&6 else - ac_cv_header_zlib_h=$ac_header_preproc -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_zlib_h" >&5 -$as_echo "$ac_cv_header_zlib_h" >&6; } + \ + as_fn_error "You need to install the boehm-gc devel package (gc/gc.h)." "$LINENO" 5 fi -if test "x$ac_cv_header_zlib_h" = x""yes; then - : -else - \ - { { $as_echo "$as_me:$LINENO: error: You need to install the zlib devel package (zlib.h)." >&5 -$as_echo "$as_me: error: You need to install the zlib devel package (zlib.h)." >&2;} - { (exit 1); exit 1; }; } + fi +nl===-----------------------------------------------------------------------=== + +ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default" +if test "x$ac_cv_type_pid_t" = x""yes; then : -if test "x$gc" = "xboehm"; then - if test "${ac_cv_header_gc_gc_h+set}" = set; then - { $as_echo "$as_me:$LINENO: checking for gc/gc.h" >&5 -$as_echo_n "checking for gc/gc.h... " >&6; } -if test "${ac_cv_header_gc_gc_h+set}" = set; then - $as_echo_n "(cached) " >&6 -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_gc_gc_h" >&5 -$as_echo "$ac_cv_header_gc_gc_h" >&6; } else - # Is the header compilable? -{ $as_echo "$as_me:$LINENO: checking gc/gc.h usability" >&5 -$as_echo_n "checking gc/gc.h usability... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include + +cat >>confdefs.h <<_ACEOF +#define pid_t int _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_compiler=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } +ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" +if test "x$ac_cv_type_size_t" = x""yes; then : -# Is the header present? -{ $as_echo "$as_me:$LINENO: checking gc/gc.h presence" >&5 -$as_echo_n "checking gc/gc.h presence... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no +cat >>confdefs.h <<_ACEOF +#define size_t unsigned int +_ACEOF + fi -rm -f conftest.err conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5 +$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; } +if test "${ac_cv_struct_tm+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: present but cannot be compiled" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: proceeding with the preprocessor's result" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: proceeding with the preprocessor's result" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: in the future, the compiler will take precedence" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## --------------------------------------- ## -## Report this to nicolas.geoffray at lip6.fr ## -## --------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ $as_echo "$as_me:$LINENO: checking for gc/gc.h" >&5 -$as_echo_n "checking for gc/gc.h... " >&6; } -if test "${ac_cv_header_gc_gc_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_header_gc_gc_h=$ac_header_preproc -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_gc_gc_h" >&5 -$as_echo "$ac_cv_header_gc_gc_h" >&6; } - -fi -if test "x$ac_cv_header_gc_gc_h" = x""yes; then - : -else - \ - { { $as_echo "$as_me:$LINENO: error: You need to install the boehm-gc devel package (gc/gc.h)." >&5 -$as_echo "$as_me: error: You need to install the boehm-gc devel package (gc/gc.h)." >&2;} - { (exit 1); exit 1; }; } - -fi - - -fi - - -nl===-----------------------------------------------------------------------=== - -{ $as_echo "$as_me:$LINENO: checking for pid_t" >&5 -$as_echo_n "checking for pid_t... " >&6; } -if test "${ac_cv_type_pid_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_pid_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (pid_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((pid_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_pid_t=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 -$as_echo "$ac_cv_type_pid_t" >&6; } -if test "x$ac_cv_type_pid_t" = x""yes; then - : -else - -cat >>confdefs.h <<_ACEOF -#define pid_t int -_ACEOF - -fi - -{ $as_echo "$as_me:$LINENO: checking for size_t" >&5 -$as_echo_n "checking for size_t... " >&6; } -if test "${ac_cv_type_size_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_size_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (size_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((size_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_size_t=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 -$as_echo "$ac_cv_type_size_t" >&6; } -if test "x$ac_cv_type_size_t" = x""yes; then - : -else - -cat >>confdefs.h <<_ACEOF -#define size_t unsigned int -_ACEOF - -fi - -{ $as_echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5 -$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; } -if test "${ac_cv_struct_tm+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include - -int -main () -{ -struct tm tm; - int *p = &tm.tm_sec; - return !p; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_struct_tm=time.h -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_struct_tm=sys/time.h -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_struct_tm" >&5 -$as_echo "$ac_cv_struct_tm" >&6; } -if test $ac_cv_struct_tm = sys/time.h; then - -cat >>confdefs.h <<\_ACEOF -#define TM_IN_SYS_TIME 1 -_ACEOF - -fi - -{ $as_echo "$as_me:$LINENO: checking for int64_t" >&5 -$as_echo_n "checking for int64_t... " >&6; } -if test "${ac_cv_type_int64_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_int64_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (int64_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((int64_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_int64_t=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_int64_t" >&5 -$as_echo "$ac_cv_type_int64_t" >&6; } -if test "x$ac_cv_type_int64_t" = x""yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_INT64_T 1 -_ACEOF - - -else - { { $as_echo "$as_me:$LINENO: error: Type int64_t required but not found" >&5 -$as_echo "$as_me: error: Type int64_t required but not found" >&2;} - { (exit 1); exit 1; }; } -fi - -{ $as_echo "$as_me:$LINENO: checking for uint64_t" >&5 -$as_echo_n "checking for uint64_t... " >&6; } -if test "${ac_cv_type_uint64_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_uint64_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default int main () { -if (sizeof (uint64_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((uint64_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_uint64_t=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_uint64_t" >&5 -$as_echo "$ac_cv_type_uint64_t" >&6; } -if test "x$ac_cv_type_uint64_t" = x""yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_UINT64_T 1 -_ACEOF - - -else - { $as_echo "$as_me:$LINENO: checking for u_int64_t" >&5 -$as_echo_n "checking for u_int64_t... " >&6; } -if test "${ac_cv_type_u_int64_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_u_int64_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (u_int64_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((u_int64_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : +struct tm tm; + int *p = &tm.tm_sec; + return !p; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_struct_tm=time.h else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_u_int64_t=yes + ac_cv_struct_tm=sys/time.h fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_tm" >&5 +$as_echo "$ac_cv_struct_tm" >&6; } +if test $ac_cv_struct_tm = sys/time.h; then +$as_echo "#define TM_IN_SYS_TIME 1" >>confdefs.h fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_int64_t" >&5 -$as_echo "$ac_cv_type_u_int64_t" >&6; } -if test "x$ac_cv_type_u_int64_t" = x""yes; then +ac_fn_c_check_type "$LINENO" "int64_t" "ac_cv_type_int64_t" "$ac_includes_default" +if test "x$ac_cv_type_int64_t" = x""yes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_U_INT64_T 1 +#define HAVE_INT64_T 1 _ACEOF else - { { $as_echo "$as_me:$LINENO: error: Type uint64_t or u_int64_t required but not found" >&5 -$as_echo "$as_me: error: Type uint64_t or u_int64_t required but not found" >&2;} - { (exit 1); exit 1; }; } -fi - + as_fn_error "Type int64_t required but not found" "$LINENO" 5 fi +ac_fn_c_check_type "$LINENO" "uint64_t" "ac_cv_type_uint64_t" "$ac_includes_default" +if test "x$ac_cv_type_uint64_t" = x""yes; then : - - - -for ac_func in setjmp longjmp -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +cat >>confdefs.h <<_ACEOF +#define HAVE_UINT64_T 1 _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ -#ifdef __STDC__ -# include -#else -# include -#endif +else + ac_fn_c_check_type "$LINENO" "u_int64_t" "ac_cv_type_u_int64_t" "$ac_includes_default" +if test "x$ac_cv_type_u_int64_t" = x""yes; then : -#undef $ac_func +cat >>confdefs.h <<_ACEOF +#define HAVE_U_INT64_T 1 +_ACEOF -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif -int -main () -{ -return $ac_func (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_var=no" + as_fn_error "Type uint64_t or u_int64_t required but not found" "$LINENO" 5 fi -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then + + + +for ac_func in setjmp longjmp +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +eval as_val=\$$as_ac_var + if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF @@ -7644,13 +6101,13 @@ case $ac_val in #( *${as_nl}*) case $ac_var in #( - *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5 + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) $as_unset $ac_var ;; + *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done @@ -7658,8 +6115,8 @@ (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" @@ -7682,11 +6139,11 @@ if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then test "x$cache_file" != "x/dev/null" && - { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else - { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi @@ -7706,8 +6163,8 @@ ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. - ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs @@ -7719,9 +6176,10 @@ ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. @@ -7731,17 +6189,18 @@ debug=false ac_cs_recheck=false ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which @@ -7749,23 +6208,15 @@ alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; esac - fi - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - as_nl=' ' export as_nl @@ -7773,7 +6224,13 @@ as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else @@ -7784,7 +6241,7 @@ as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; - case $arg in + case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; @@ -7807,13 +6264,6 @@ } fi -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - # IFS # We need space, tab and new line, in precisely that order. Quoting is @@ -7823,15 +6273,15 @@ IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. -case $0 in +case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done IFS=$as_save_IFS ;; @@ -7843,12 +6293,16 @@ fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } + exit 1 fi -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' @@ -7860,7 +6314,89 @@ LANGUAGE=C export LANGUAGE -# Required to use basename. +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error ERROR [LINENO LOG_FD] +# --------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with status $?, using 1 if that was 0. +as_fn_error () +{ + as_status=$?; test $as_status -eq 0 && as_status=1 + if test "$3"; then + as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 + fi + $as_echo "$as_me: error: $1" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr @@ -7874,8 +6410,12 @@ as_basename=false fi +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi -# Name of the executable. as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ @@ -7895,76 +6435,25 @@ } s/.*/./; q'` -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in +case `echo -n x` in #((((( -n*) - case `echo 'x\c'` in + case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then @@ -7993,8 +6482,56 @@ rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" + + +} # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false @@ -8013,10 +6550,10 @@ if test -d "$1"; then test -d "$1/."; else - case $1 in + case $1 in #( -*)set "./$1";; esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' @@ -8031,13 +6568,19 @@ exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 -# Save the log message, to keep $[0] and so on meaningful, and to +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by vmkit $as_me 0.27svn, which was -generated by GNU Autoconf 2.63. Invocation command line was +This file was extended by vmkit $as_me 0.27, which was +generated by GNU Autoconf 2.64. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -8061,18 +6604,19 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. -config_files="`echo $ac_config_files`" -config_headers="`echo $ac_config_headers`" -config_commands="`echo $ac_config_commands`" +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. -Usage: $0 [OPTION]... [FILE]... +Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit @@ -8094,16 +6638,16 @@ Configuration commands: $config_commands -Report bugs to ." +Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -vmkit config.status 0.27svn -configured by $0, generated by GNU Autoconf 2.63, +vmkit config.status 0.27 +configured by $0, generated by GNU Autoconf 2.64, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" -Copyright (C) 2008 Free Software Foundation, Inc. +Copyright (C) 2009 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." @@ -8144,20 +6688,19 @@ case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac - CONFIG_FILES="$CONFIG_FILES '$ac_optarg'" + as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac - CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'" + as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header - { $as_echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; };; + as_fn_error "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ @@ -8165,11 +6708,10 @@ ac_cs_silent=: ;; # This is an error. - -*) { $as_echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; + -*) as_fn_error "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; - *) ac_config_targets="$ac_config_targets $1" + *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac @@ -8231,9 +6773,7 @@ "Makefile") CONFIG_COMMANDS="$CONFIG_COMMANDS Makefile" ;; "lib/Makefile") CONFIG_COMMANDS="$CONFIG_COMMANDS lib/Makefile" ;; - *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; + *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done @@ -8260,7 +6800,7 @@ trap 'exit_status=$? { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status ' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 + trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. @@ -8271,11 +6811,7 @@ { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") -} || -{ - $as_echo "$as_me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} +} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. @@ -8283,10 +6819,16 @@ if test -n "$CONFIG_FILES"; then -ac_cr=' ' +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' + ac_cs_awk_cr='\r' else ac_cs_awk_cr=$ac_cr fi @@ -8300,24 +6842,18 @@ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || - { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || - { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then - { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi @@ -8406,9 +6942,7 @@ else cat fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ - || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5 -$as_echo "$as_me: error: could not setup config files machinery" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove $(srcdir), @@ -8449,9 +6983,7 @@ if test -z "$ac_t"; then break elif $ac_last_try; then - { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5 -$as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi @@ -8536,9 +7068,7 @@ _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5 -$as_echo "$as_me: error: could not setup config headers machinery" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" @@ -8551,9 +7081,7 @@ esac case $ac_mode$ac_tag in :[FHL]*:*);; - :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5 -$as_echo "$as_me: error: invalid tag $ac_tag" >&2;} - { (exit 1); exit 1; }; };; + :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac @@ -8581,12 +7109,10 @@ [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || - { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; + as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - ac_file_inputs="$ac_file_inputs '$ac_f'" + as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't @@ -8597,7 +7123,7 @@ `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:$LINENO: creating $ac_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. @@ -8610,9 +7136,7 @@ case $ac_tag in *:-:* | *:-) cat >"$tmp/stdin" \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } ;; + || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac @@ -8640,47 +7164,7 @@ q } s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -$as_echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } + as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in @@ -8732,7 +7216,6 @@ # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= - ac_sed_dataroot=' /datarootdir/ { p @@ -8742,12 +7225,11 @@ /@docdir@/p /@infodir@/p /@localedir@/p -/@mandir@/p -' +/@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 @@ -8757,7 +7239,7 @@ s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; + s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF @@ -8785,14 +7267,12 @@ $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&2;} @@ -8802,9 +7282,7 @@ -) cat "$tmp/out" && rm -f "$tmp/out";; *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; esac \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; :H) # @@ -8815,29 +7293,23 @@ $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" } >"$tmp/config.h" \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$tmp/config.h" "$ac_file" \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ - || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5 -$as_echo "$as_me: error: could not create -" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create -" "$LINENO" 5 fi ;; - :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5 + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac @@ -8853,15 +7325,12 @@ done # for ac_tag -{ (exit 0); exit 0; } +as_fn_exit 0 _ACEOF -chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || - { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5 -$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. @@ -8882,10 +7351,10 @@ exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } + $ac_cs_success || as_fn_exit $? fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi From nicolas.geoffray at lip6.fr Sun Mar 21 10:43:49 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 17:43:49 -0000 Subject: [vmkit-commits] [vmkit] r99138 - in /vmkit/trunk: README.txt autoconf/configure.ac configure Message-ID: <20100321174349.EFA202A6C12E@llvm.org> Author: geoffray Date: Sun Mar 21 12:43:49 2010 New Revision: 99138 URL: http://llvm.org/viewvc/llvm-project?rev=99138&view=rev Log: Move to version 0.28svn. Modified: vmkit/trunk/README.txt vmkit/trunk/autoconf/configure.ac vmkit/trunk/configure Modified: vmkit/trunk/README.txt URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/README.txt?rev=99138&r1=99137&r2=99138&view=diff ============================================================================== --- vmkit/trunk/README.txt (original) +++ vmkit/trunk/README.txt Sun Mar 21 12:43:49 2010 @@ -3,12 +3,10 @@ //===---------------------------------------------------------------------===// VMKit is the composition of three libraries: -1) MVM: mostly a garbage collector +1) MVM: threads, GCs, and JIT interface 2) J3: a Java Virtual Machine implemented with MVM and LLVM 3) N3: a CLI implementation with MVM and LLVM -J3 and N3 use GCC's unwinding library (libgcc_s.so). - These are the options you should pass to the ./configure script --with-llvmsrc: the source directory of LLVM --with-llvmobj: the object directory of LLVM @@ -16,10 +14,8 @@ --with-gnu-classpath-glibj: GNU classpath glibj.zip --with-pnet-local-prefix: the local build of PNET --with-pnetlib: PNET's mscorlib.dll - -There's also [experimental]: ---with-gc: user either boehm or single-mmap --with-mono: Mono's mscorlib.dll +--with-gc: use either gc-mmap or MMTk (requires --with-llvmgcc) Running make on the root tree will produce the following "tools": 1) Debug|Release/bin/j3: running the J3 like any other JVM. @@ -27,4 +23,4 @@ 2) Debug|Release/bin/vmkit: shell-like vm launcher. 2) Debug|Release/bin/vmjc: ahead of time compiler for .class files. -J3 and N3 have their own README notes. +J3 also has a README note. Modified: vmkit/trunk/autoconf/configure.ac URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/autoconf/configure.ac?rev=99138&r1=99137&r2=99138&view=diff ============================================================================== --- vmkit/trunk/autoconf/configure.ac (original) +++ vmkit/trunk/autoconf/configure.ac Sun Mar 21 12:43:49 2010 @@ -31,12 +31,12 @@ dnl===-----------------------------------------------------------------------=== dnl Initialize autoconf and define the package name, version number and dnl email address for reporting bugs. -AC_INIT([vmkit],[0.27svn],[nicolas.geoffray at lip6.fr]) +AC_INIT([vmkit],[0.28svn],[nicolas.geoffray at gmail.com]) dnl Provide a copyright substitution and ensure the copyright notice is included dnl in the output of --version option of the generated configure script. -AC_SUBST(VMKIT_COPYRIGHT,["Copyright (c) 2003-2009 Universite Pierre et Marie Curie."]) -AC_COPYRIGHT([Copyright (c) 2003-2009 Universite Pierre et Marie Curie.]) +AC_SUBST(VMKIT_COPYRIGHT,["Copyright (c) 2003-2010 Universite Pierre et Marie Curie."]) +AC_COPYRIGHT([Copyright (c) 2003-2010 Universite Pierre et Marie Curie.]) dnl Indicate that we require autoconf 2.59 or later. Ths is needed because we dnl use some autoconf macros only available in 2.59. @@ -213,7 +213,7 @@ dnl ************************************************************************** AC_ARG_WITH(gc, [AS_HELP_STRING(--with-gc=something, - [GC type ('single-mmap' 'multi-mmap' or 'boehm')])], + [GC type ('mmtk' (requires llvm-gcc) 'single-mmap' 'multi-mmap' or 'boehm')])], [[gc=$withval]], [[ echo Using mmap2 as vvm gc type. gc=single-mmap Modified: vmkit/trunk/configure URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/configure?rev=99138&r1=99137&r2=99138&view=diff ============================================================================== --- vmkit/trunk/configure (original) +++ vmkit/trunk/configure Sun Mar 21 12:43:49 2010 @@ -1,22 +1,24 @@ #! /bin/sh # Guess values for system-dependent variables and create Makefiles. -# Generated by GNU Autoconf 2.63 for vmkit 0.27svn. +# Generated by GNU Autoconf 2.64 for vmkit 0.28svn. # -# Report bugs to . +# Report bugs to . # # Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -# 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +# 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009 Free Software +# Foundation, Inc. +# # This configure script is free software; the Free Software Foundation # gives unlimited permission to copy, distribute and modify it. # -# Copyright (c) 2003-2009 Universite Pierre et Marie Curie. -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## +# Copyright (c) 2003-2010 Universite Pierre et Marie Curie. +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which @@ -24,23 +26,15 @@ alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; esac - fi - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - as_nl=' ' export as_nl @@ -48,7 +42,13 @@ as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else @@ -59,7 +59,7 @@ as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; - case $arg in + case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; @@ -82,13 +82,6 @@ } fi -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - # IFS # We need space, tab and new line, in precisely that order. Quoting is @@ -98,15 +91,15 @@ IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. -case $0 in +case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done IFS=$as_save_IFS ;; @@ -118,12 +111,16 @@ fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } + exit 1 fi -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' @@ -135,330 +132,300 @@ LANGUAGE=C export LANGUAGE -# Required to use basename. -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi - -if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then - as_basename=basename -else - as_basename=false -fi - - -# Name of the executable. -as_me=`$as_basename -- "$0" || -$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ - X"$0" : 'X\(//\)$' \| \ - X"$0" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X/"$0" | - sed '/^.*\/\([^/][^/]*\)\/*$/{ - s//\1/ - q - } - /^X\/\(\/\/\)$/{ - s//\1/ - q - } - /^X\/\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - # CDPATH. -$as_unset CDPATH - +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH if test "x$CONFIG_SHELL" = x; then - if (eval ":") 2>/dev/null; then - as_have_required=yes + as_bourne_compatible="if test -n \"\${ZSH_VERSION+set}\" && (emulate sh) >/dev/null 2>&1; then : + emulate sh + NULLCMD=: + # Pre-4.2 versions of Zsh do word splitting on \${1+\"\$@\"}, which + # is contrary to our usage. Disable this feature. + alias -g '\${1+\"\$@\"}'='\"\$@\"' + setopt NO_GLOB_SUBST else - as_have_required=no + case \`(set -o) 2>/dev/null\` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; +esac fi - - if test $as_have_required = yes && (eval ": -(as_func_return () { - (exit \$1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} +" + as_required="as_fn_return () { (exit \$1); } +as_fn_success () { as_fn_return 0; } +as_fn_failure () { as_fn_return 1; } +as_fn_ret_success () { return 0; } +as_fn_ret_failure () { return 1; } exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi - -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi - -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : +as_fn_success || { exitcode=1; echo as_fn_success failed.; } +as_fn_failure && { exitcode=1; echo as_fn_failure succeeded.; } +as_fn_ret_success || { exitcode=1; echo as_fn_ret_success failed.; } +as_fn_ret_failure && { exitcode=1; echo as_fn_ret_failure succeeded.; } +if ( set x; as_fn_ret_success y && test x = \"\$1\" ); then : + +else + exitcode=1; echo positional parameters were not saved. +fi +test x\$exitcode = x0 || exit 1" + as_suggested=" as_lineno_1=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_1a=\$LINENO + as_lineno_2=";as_suggested=$as_suggested$LINENO;as_suggested=$as_suggested" as_lineno_2a=\$LINENO + eval 'test \"x\$as_lineno_1'\$as_run'\" != \"x\$as_lineno_2'\$as_run'\" && + test \"x\`expr \$as_lineno_1'\$as_run' + 1\`\" = \"x\$as_lineno_2'\$as_run'\"' || exit 1 +test \$(( 1 + 1 )) = 2 || exit 1" + if (eval "$as_required") 2>/dev/null; then : + as_have_required=yes else - exitcode=1 - echo positional parameters were not saved. + as_have_required=no fi + if test x$as_have_required = xyes && (eval "$as_suggested") 2>/dev/null; then : -test \$exitcode = 0) || { (exit 1); exit 1; } - -( - as_lineno_1=\$LINENO - as_lineno_2=\$LINENO - test \"x\$as_lineno_1\" != \"x\$as_lineno_2\" && - test \"x\`expr \$as_lineno_1 + 1\`\" = \"x\$as_lineno_2\") || { (exit 1); exit 1; } -") 2> /dev/null; then - : else - as_candidate_shells= - as_save_IFS=$IFS; IFS=$PATH_SEPARATOR + as_save_IFS=$IFS; IFS=$PATH_SEPARATOR +as_found=false for as_dir in /bin$PATH_SEPARATOR/usr/bin$PATH_SEPARATOR$PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - case $as_dir in + as_found=: + case $as_dir in #( /*) for as_base in sh bash ksh sh5; do - as_candidate_shells="$as_candidate_shells $as_dir/$as_base" + # Try only shells that exist, to save several forks. + as_shell=$as_dir/$as_base + if { test -f "$as_shell" || test -f "$as_shell.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$as_shell"; } 2>/dev/null; then : + CONFIG_SHELL=$as_shell as_have_required=yes + if { $as_echo "$as_bourne_compatible""$as_suggested" | as_run=a "$as_shell"; } 2>/dev/null; then : + break 2 +fi +fi done;; esac + as_found=false done +$as_found || { if { test -f "$SHELL" || test -f "$SHELL.exe"; } && + { $as_echo "$as_bourne_compatible""$as_required" | as_run=a "$SHELL"; } 2>/dev/null; then : + CONFIG_SHELL=$SHELL as_have_required=yes +fi; } IFS=$as_save_IFS - for as_shell in $as_candidate_shells $SHELL; do - # Try only shells that exist, to save several forks. - if { test -f "$as_shell" || test -f "$as_shell.exe"; } && - { ("$as_shell") 2> /dev/null <<\_ASEOF -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - -: -_ASEOF -}; then - CONFIG_SHELL=$as_shell - as_have_required=yes - if { "$as_shell" 2> /dev/null <<\_ASEOF -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then - emulate sh - NULLCMD=: - # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which - # is contrary to our usage. Disable this feature. - alias -g '${1+"$@"}'='"$@"' - setopt NO_GLOB_SUBST -else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; -esac - -fi - - -: -(as_func_return () { - (exit $1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} - -exitcode=0 -if as_func_success; then - : -else - exitcode=1 - echo as_func_success failed. -fi - -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi - -if as_func_ret_success; then - : -else - exitcode=1 - echo as_func_ret_success failed. -fi - -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. -fi - -if ( set x; as_func_ret_success y && test x = "$1" ); then - : -else - exitcode=1 - echo positional parameters were not saved. -fi - -test $exitcode = 0) || { (exit 1); exit 1; } - -( - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2") || { (exit 1); exit 1; } - -_ASEOF -}; then - break -fi - -fi - - done - - if test "x$CONFIG_SHELL" != x; then - for as_var in BASH_ENV ENV - do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var - done + if test "x$CONFIG_SHELL" != x; then : + # We cannot yet assume a decent shell, so we have to provide a + # neutralization value for shells without unset; and this also + # works around shells that cannot unset nonexistent variables. + BASH_ENV=/dev/null + ENV=/dev/null + (unset BASH_ENV) >/dev/null 2>&1 && unset BASH_ENV ENV export CONFIG_SHELL exec "$CONFIG_SHELL" "$as_myself" ${1+"$@"} fi - - if test $as_have_required = no; then - echo This script requires a shell more modern than all the - echo shells that I found on your system. Please install a - echo modern shell, or manually run the script under such a - echo shell if you do have one. - { (exit 1); exit 1; } + if test x$as_have_required = xno; then : + $as_echo "$0: This script requires a shell more modern than all" + $as_echo "$0: the shells that I found on your system." + if test x${ZSH_VERSION+set} = xset ; then + $as_echo "$0: In particular, zsh $ZSH_VERSION has bugs and should" + $as_echo "$0: be upgraded to zsh 4.3.4 or later." + else + $as_echo "$0: Please tell bug-autoconf at gnu.org and +$0: nicolas.geoffray at gmail.com about your system, including +$0: any error possibly output before this message. Then +$0: install a modern shell, or manually run the script +$0: under such a shell if you do have one." + fi + exit 1 fi - - fi - fi +SHELL=${CONFIG_SHELL-/bin/sh} +export SHELL +# Unset more variables known to interfere with behavior of common tools. +CLICOLOR_FORCE= GREP_OPTIONS= +unset CLICOLOR_FORCE GREP_OPTIONS + +## --------------------- ## +## M4sh Shell Functions. ## +## --------------------- ## +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" -(eval "as_func_return () { - (exit \$1) -} -as_func_success () { - as_func_return 0 -} -as_func_failure () { - as_func_return 1 -} -as_func_ret_success () { - return 0 -} -as_func_ret_failure () { - return 1 -} +} # as_fn_mkdir_p +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append -exitcode=0 -if as_func_success; then - : +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' else - exitcode=1 - echo as_func_success failed. -fi + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith -if as_func_failure; then - exitcode=1 - echo as_func_failure succeeded. -fi -if as_func_ret_success; then - : +# as_fn_error ERROR [LINENO LOG_FD] +# --------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with status $?, using 1 if that was 0. +as_fn_error () +{ + as_status=$?; test $as_status -eq 0 && as_status=1 + if test "$3"; then + as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 + fi + $as_echo "$as_me: error: $1" >&2 + as_fn_exit $as_status +} # as_fn_error + +if expr a : '\(a\)' >/dev/null 2>&1 && + test "X`expr 00001 : '.*\(...\)'`" = X001; then + as_expr=expr else - exitcode=1 - echo as_func_ret_success failed. + as_expr=false fi -if as_func_ret_failure; then - exitcode=1 - echo as_func_ret_failure succeeded. +if (basename -- /) >/dev/null 2>&1 && test "X`basename -- / 2>&1`" = "X/"; then + as_basename=basename +else + as_basename=false fi -if ( set x; as_func_ret_success y && test x = \"\$1\" ); then - : +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname else - exitcode=1 - echo positional parameters were not saved. + as_dirname=false fi -test \$exitcode = 0") || { - echo No shell found that supports shell functions. - echo Please tell bug-autoconf at gnu.org about your system, - echo including any error possibly output before this message. - echo This can help us improve future autoconf versions. - echo Configuration will now proceed without shell functions. -} +as_me=`$as_basename -- "$0" || +$as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ + X"$0" : 'X\(//\)$' \| \ + X"$0" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X/"$0" | + sed '/^.*\/\([^/][^/]*\)\/*$/{ + s//\1/ + q + } + /^X\/\(\/\/\)$/{ + s//\1/ + q + } + /^X\/\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) + as_lineno_1=$LINENO as_lineno_1a=$LINENO + as_lineno_2=$LINENO as_lineno_2a=$LINENO + eval 'test "x$as_lineno_1'$as_run'" != "x$as_lineno_2'$as_run'" && + test "x`expr $as_lineno_1'$as_run' + 1`" = "x$as_lineno_2'$as_run'"' || { + # Blame Lee E. McMahon (1931-1989) for sed's syntax. :-) sed -n ' p /[$]LINENO/= @@ -475,8 +442,7 @@ s/-\n.*// ' >$as_me.lineno && chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } + { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2; as_fn_exit 1; } # Don't try to exec as it changes $[0], causing all sort of problems # (the dirname of $[0] is not the place where we might find the @@ -486,29 +452,18 @@ exit } - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi - ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in +case `echo -n x` in #((((( -n*) - case `echo 'x\c'` in + case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then @@ -538,7 +493,7 @@ rmdir conf$$.dir 2>/dev/null if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false @@ -557,10 +512,10 @@ if test -d "$1"; then test -d "$1/."; else - case $1 in + case $1 in #( -*)set "./$1";; esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' @@ -574,7 +529,6 @@ as_tr_sh="eval sed 'y%*+%pp%;s%[^_$as_cr_alnum]%_%g'" - exec 7<&0 &1 # Name of the host. @@ -593,14 +547,14 @@ subdirs= MFLAGS= MAKEFLAGS= -SHELL=${CONFIG_SHELL-/bin/sh} # Identity of this package. PACKAGE_NAME='vmkit' PACKAGE_TARNAME='vmkit' -PACKAGE_VERSION='0.27svn' -PACKAGE_STRING='vmkit 0.27svn' -PACKAGE_BUGREPORT='nicolas.geoffray at lip6.fr' +PACKAGE_VERSION='0.28svn' +PACKAGE_STRING='vmkit 0.28svn' +PACKAGE_BUGREPORT='nicolas.geoffray at gmail.com' +PACKAGE_URL='' ac_unique_file="lib/Mvm/Runtime/Object.cpp" # Factoring default headers for most tests. @@ -750,6 +704,7 @@ program_transform_name prefix exec_prefix +PACKAGE_URL PACKAGE_BUGREPORT PACKAGE_STRING PACKAGE_VERSION @@ -895,8 +850,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*disable-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 - { (exit 1); exit 1; }; } + as_fn_error "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -922,8 +876,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*enable-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid feature name: $ac_useropt" >&2 - { (exit 1); exit 1; }; } + as_fn_error "invalid feature name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1127,8 +1080,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*with-\([^=]*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2 - { (exit 1); exit 1; }; } + as_fn_error "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1144,8 +1096,7 @@ ac_useropt=`expr "x$ac_option" : 'x-*without-\(.*\)'` # Reject names that are not valid shell variable names. expr "x$ac_useropt" : ".*[^-+._$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid package name: $ac_useropt" >&2 - { (exit 1); exit 1; }; } + as_fn_error "invalid package name: $ac_useropt" ac_useropt_orig=$ac_useropt ac_useropt=`$as_echo "$ac_useropt" | sed 's/[-+.]/_/g'` case $ac_user_opts in @@ -1175,17 +1126,17 @@ | --x-librar=* | --x-libra=* | --x-libr=* | --x-lib=* | --x-li=* | --x-l=*) x_libraries=$ac_optarg ;; - -*) { $as_echo "$as_me: error: unrecognized option: $ac_option -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } + -*) as_fn_error "unrecognized option: \`$ac_option' +Try \`$0 --help' for more information." ;; *=*) ac_envvar=`expr "x$ac_option" : 'x\([^=]*\)='` # Reject names that are not valid shell variable names. - expr "x$ac_envvar" : ".*[^_$as_cr_alnum]" >/dev/null && - { $as_echo "$as_me: error: invalid variable name: $ac_envvar" >&2 - { (exit 1); exit 1; }; } + case $ac_envvar in #( + '' | [0-9]* | *[!_$as_cr_alnum]* ) + as_fn_error "invalid variable name: \`$ac_envvar'" ;; + esac eval $ac_envvar=\$ac_optarg export $ac_envvar ;; @@ -1202,15 +1153,13 @@ if test -n "$ac_prev"; then ac_option=--`echo $ac_prev | sed 's/_/-/g'` - { $as_echo "$as_me: error: missing argument to $ac_option" >&2 - { (exit 1); exit 1; }; } + as_fn_error "missing argument to $ac_option" fi if test -n "$ac_unrecognized_opts"; then case $enable_option_checking in no) ;; - fatal) { $as_echo "$as_me: error: unrecognized options: $ac_unrecognized_opts" >&2 - { (exit 1); exit 1; }; } ;; + fatal) as_fn_error "unrecognized options: $ac_unrecognized_opts" ;; *) $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2 ;; esac fi @@ -1233,8 +1182,7 @@ [\\/$]* | ?:[\\/]* ) continue;; NONE | '' ) case $ac_var in *prefix ) continue;; esac;; esac - { $as_echo "$as_me: error: expected an absolute directory name for --$ac_var: $ac_val" >&2 - { (exit 1); exit 1; }; } + as_fn_error "expected an absolute directory name for --$ac_var: $ac_val" done # There might be people who depend on the old broken behavior: `$host' @@ -1264,11 +1212,9 @@ ac_pwd=`pwd` && test -n "$ac_pwd" && ac_ls_di=`ls -di .` && ac_pwd_ls_di=`cd "$ac_pwd" && ls -di .` || - { $as_echo "$as_me: error: working directory cannot be determined" >&2 - { (exit 1); exit 1; }; } + as_fn_error "working directory cannot be determined" test "X$ac_ls_di" = "X$ac_pwd_ls_di" || - { $as_echo "$as_me: error: pwd does not report name of working directory" >&2 - { (exit 1); exit 1; }; } + as_fn_error "pwd does not report name of working directory" # Find the source files, if location was not specified. @@ -1307,13 +1253,11 @@ fi if test ! -r "$srcdir/$ac_unique_file"; then test "$ac_srcdir_defaulted" = yes && srcdir="$ac_confdir or .." - { $as_echo "$as_me: error: cannot find sources ($ac_unique_file) in $srcdir" >&2 - { (exit 1); exit 1; }; } + as_fn_error "cannot find sources ($ac_unique_file) in $srcdir" fi ac_msg="sources are in $srcdir, but \`cd $srcdir' does not work" ac_abs_confdir=`( - cd "$srcdir" && test -r "./$ac_unique_file" || { $as_echo "$as_me: error: $ac_msg" >&2 - { (exit 1); exit 1; }; } + cd "$srcdir" && test -r "./$ac_unique_file" || as_fn_error "$ac_msg" pwd)` # When building in place, set srcdir=. if test "$ac_abs_confdir" = "$ac_pwd"; then @@ -1339,7 +1283,7 @@ # Omit some internal or obsolete options to make the list less imposing. # This message is too long to be a string in the A/UX 3.1 sh. cat <<_ACEOF -\`configure' configures vmkit 0.27svn to adapt to many kinds of systems. +\`configure' configures vmkit 0.28svn to adapt to many kinds of systems. Usage: $0 [OPTION]... [VAR=VALUE]... @@ -1405,7 +1349,7 @@ if test -n "$ac_init_help"; then case $ac_init_help in - short | recursive ) echo "Configuration of vmkit 0.27svn:";; + short | recursive ) echo "Configuration of vmkit 0.28svn:";; esac cat <<\_ACEOF @@ -1417,7 +1361,8 @@ --with-llvmgcc Compile with llvm-gcc --with-thread=something Thread type ('common' or 'no') --with-finalizer Compile with finalizer (default yes) - --with-gc=something GC type ('single-mmap' 'multi-mmap' or 'boehm') + --with-gc=something GC type ('mmtk' (requires llvm-gcc) 'single-mmap' + 'multi-mmap' or 'boehm') --with-vm-type=something VM type ('single' 'isolate' 'isolate-sharing' or 'service') @@ -1452,7 +1397,7 @@ Use these variables to override the choices made by `configure' or to help it to find libraries and programs with nonstandard names/locations. -Report bugs to . +Report bugs to . _ACEOF ac_status=$? fi @@ -1515,24 +1460,473 @@ test -n "$ac_init_help" && exit $ac_status if $ac_init_version; then cat <<\_ACEOF -vmkit configure 0.27svn -generated by GNU Autoconf 2.63 +vmkit configure 0.28svn +generated by GNU Autoconf 2.64 -Copyright (C) 1992, 1993, 1994, 1995, 1996, 1998, 1999, 2000, 2001, -2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation, Inc. +Copyright (C) 2009 Free Software Foundation, Inc. This configure script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it. -Copyright (c) 2003-2009 Universite Pierre et Marie Curie. +Copyright (c) 2003-2010 Universite Pierre et Marie Curie. _ACEOF exit fi + +## ------------------------ ## +## Autoconf initialization. ## +## ------------------------ ## + +# ac_fn_c_try_compile LINENO +# -------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_compile + +# ac_fn_c_try_cpp LINENO +# ---------------------- +# Try to preprocess conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_cpp () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_cpp conftest.$ac_ext" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_cpp conftest.$ac_ext") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } >/dev/null && { + test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || + test ! -s conftest.err + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_cpp + +# ac_fn_c_check_header_mongrel LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists, giving a warning if it cannot be compiled using +# the include files in INCLUDES and setting the cache variable VAR +# accordingly. +ac_fn_c_check_header_mongrel () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +else + # Is the header compilable? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 usability" >&5 +$as_echo_n "checking $2 usability... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_header_compiler=yes +else + ac_header_compiler=no +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_compiler" >&5 +$as_echo "$ac_header_compiler" >&6; } + +# Is the header present? +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking $2 presence" >&5 +$as_echo_n "checking $2 presence... " >&6; } +cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include <$2> +_ACEOF +if ac_fn_c_try_cpp "$LINENO"; then : + ac_header_preproc=yes +else + ac_header_preproc=no +fi +rm -f conftest.err conftest.$ac_ext +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_header_preproc" >&5 +$as_echo "$ac_header_preproc" >&6; } + +# So? What about this header? +case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in #(( + yes:no: ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&5 +$as_echo "$as_me: WARNING: $2: accepted by the compiler, rejected by the preprocessor!" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} + ;; + no:yes:* ) + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: present but cannot be compiled" >&5 +$as_echo "$as_me: WARNING: $2: present but cannot be compiled" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: check for missing prerequisite headers?" >&5 +$as_echo "$as_me: WARNING: $2: check for missing prerequisite headers?" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: see the Autoconf documentation" >&5 +$as_echo "$as_me: WARNING: $2: see the Autoconf documentation" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&5 +$as_echo "$as_me: WARNING: $2: section \"Present But Cannot Be Compiled\"" >&2;} + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $2: proceeding with the compiler's result" >&5 +$as_echo "$as_me: WARNING: $2: proceeding with the compiler's result" >&2;} +( cat <<\_ASBOX +## ----------------------------------------- ## +## Report this to nicolas.geoffray at gmail.com ## +## ----------------------------------------- ## +_ASBOX + ) | sed "s/^/$as_me: WARNING: /" >&2 + ;; +esac + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=\$ac_header_compiler" +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_header_mongrel + +# ac_fn_c_try_run LINENO +# ---------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. Assumes +# that executables *can* be run. +ac_fn_c_try_run () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { ac_try='./conftest$ac_exeext' + { { case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_try") 2>&5 + ac_status=$? + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then : + ac_retval=0 +else + $as_echo "$as_me: program exited with status $ac_status" >&5 + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=$ac_status +fi + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_run + +# ac_fn_c_check_header_compile LINENO HEADER VAR INCLUDES +# ------------------------------------------------------- +# Tests whether HEADER exists and can be compiled using the include files in +# INCLUDES, setting the cache variable VAR accordingly. +ac_fn_c_check_header_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +#include <$2> +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_header_compile + +# ac_fn_c_try_link LINENO +# ----------------------- +# Try to link conftest.$ac_ext, and return whether this succeeded. +ac_fn_c_try_link () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext conftest$ac_exeext + if { { ac_try="$ac_link" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_link") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_c_werror_flag" || + test ! -s conftest.err + } && test -s conftest$ac_exeext && { + test "$cross_compiling" = yes || + $as_test_x conftest$ac_exeext + }; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + # Delete the IPA/IPO (Inter Procedural Analysis/Optimization) information + # created by the PGI compiler (conftest_ipa8_conftest.oo), as it would + # interfere with the next link command; also delete a directory that is + # left behind by Apple's compiler. We do this before executing the actions. + rm -rf conftest.dSYM conftest_ipa8_conftest.oo + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_c_try_link + +# ac_fn_cxx_try_compile LINENO +# ---------------------------- +# Try to compile conftest.$ac_ext, and return whether this succeeded. +ac_fn_cxx_try_compile () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + rm -f conftest.$ac_objext + if { { ac_try="$ac_compile" +case "(($ac_try" in + *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; + *) ac_try_echo=$ac_try;; +esac +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compile") 2>conftest.err + ac_status=$? + if test -s conftest.err; then + grep -v '^ *+' conftest.err >conftest.er1 + cat conftest.er1 >&5 + mv -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } && { + test -z "$ac_cxx_werror_flag" || + test ! -s conftest.err + } && test -s conftest.$ac_objext; then : + ac_retval=0 +else + $as_echo "$as_me: failed program was:" >&5 +sed 's/^/| /' conftest.$ac_ext >&5 + + ac_retval=1 +fi + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + return $ac_retval + +} # ac_fn_cxx_try_compile + +# ac_fn_c_check_type LINENO TYPE VAR INCLUDES +# ------------------------------------------- +# Tests whether TYPE exists after having included INCLUDES, setting cache +# variable VAR accordingly. +ac_fn_c_check_type () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + eval "$3=no" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +if (sizeof ($2)) + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +$4 +int +main () +{ +if (sizeof (($2))) + return 0; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + +else + eval "$3=yes" +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_type + +# ac_fn_c_check_func LINENO FUNC VAR +# ---------------------------------- +# Tests whether FUNC exists, setting the cache variable VAR accordingly +ac_fn_c_check_func () +{ + as_lineno=${as_lineno-"$1"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for $2" >&5 +$as_echo_n "checking for $2... " >&6; } +if { as_var=$3; eval "test \"\${$as_var+set}\" = set"; }; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +/* Define $2 to an innocuous variant, in case declares $2. + For example, HP-UX 11i declares gettimeofday. */ +#define $2 innocuous_$2 + +/* System header to define __stub macros and hopefully few prototypes, + which can conflict with char $2 (); below. + Prefer to if __STDC__ is defined, since + exists even on freestanding compilers. */ + +#ifdef __STDC__ +# include +#else +# include +#endif + +#undef $2 + +/* Override any GCC internal prototype to avoid an error. + Use char because int might match the return type of a GCC + builtin and then its argument prototype would still apply. */ +#ifdef __cplusplus +extern "C" +#endif +char $2 (); +/* The GNU C library defines this for functions which it implements + to always fail with ENOSYS. Some functions are actually named + something starting with __ and the normal name is an alias. */ +#if defined __stub_$2 || defined __stub___$2 +choke me +#endif + +int +main () +{ +return $2 (); + ; + return 0; +} +_ACEOF +if ac_fn_c_try_link "$LINENO"; then : + eval "$3=yes" +else + eval "$3=no" +fi +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext +fi +eval ac_res=\$$3 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_res" >&5 +$as_echo "$ac_res" >&6; } + eval $as_lineno_stack; test "x$as_lineno_stack" = x && { as_lineno=; unset as_lineno;} + +} # ac_fn_c_check_func cat >config.log <<_ACEOF This file contains any messages produced by compilers while running configure, to aid debugging if configure makes a mistake. -It was created by vmkit $as_me 0.27svn, which was -generated by GNU Autoconf 2.63. Invocation command line was +It was created by vmkit $as_me 0.28svn, which was +generated by GNU Autoconf 2.64. Invocation command line was $ $0 $@ @@ -1568,8 +1962,8 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - $as_echo "PATH: $as_dir" -done + $as_echo "PATH: $as_dir" + done IFS=$as_save_IFS } >&5 @@ -1606,9 +2000,9 @@ ac_arg=`$as_echo "$ac_arg" | sed "s/'/'\\\\\\\\''/g"` ;; esac case $ac_pass in - 1) ac_configure_args0="$ac_configure_args0 '$ac_arg'" ;; + 1) as_fn_append ac_configure_args0 " '$ac_arg'" ;; 2) - ac_configure_args1="$ac_configure_args1 '$ac_arg'" + as_fn_append ac_configure_args1 " '$ac_arg'" if test $ac_must_keep_next = true; then ac_must_keep_next=false # Got value, back to normal. else @@ -1624,13 +2018,13 @@ -* ) ac_must_keep_next=true ;; esac fi - ac_configure_args="$ac_configure_args '$ac_arg'" + as_fn_append ac_configure_args " '$ac_arg'" ;; esac done done -$as_unset ac_configure_args0 || test "${ac_configure_args0+set}" != set || { ac_configure_args0=; export ac_configure_args0; } -$as_unset ac_configure_args1 || test "${ac_configure_args1+set}" != set || { ac_configure_args1=; export ac_configure_args1; } +{ ac_configure_args0=; unset ac_configure_args0;} +{ ac_configure_args1=; unset ac_configure_args1;} # When interrupted or exit'd, cleanup temporary files, and complete # config.log. We remove comments because anyway the quotes in there @@ -1655,13 +2049,13 @@ case $ac_val in #( *${as_nl}*) case $ac_var in #( - *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5 + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) $as_unset $ac_var ;; + *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done @@ -1733,39 +2127,41 @@ exit $exit_status ' 0 for ac_signal in 1 2 13 15; do - trap 'ac_signal='$ac_signal'; { (exit 1); exit 1; }' $ac_signal + trap 'ac_signal='$ac_signal'; as_fn_exit 1' $ac_signal done ac_signal=0 # confdefs.h avoids OS command line length limits that DEFS can exceed. rm -f -r conftest* confdefs.h +$as_echo "/* confdefs.h */" > confdefs.h + # Predefined preprocessor variables. cat >>confdefs.h <<_ACEOF #define PACKAGE_NAME "$PACKAGE_NAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_TARNAME "$PACKAGE_TARNAME" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_VERSION "$PACKAGE_VERSION" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_STRING "$PACKAGE_STRING" _ACEOF - cat >>confdefs.h <<_ACEOF #define PACKAGE_BUGREPORT "$PACKAGE_BUGREPORT" _ACEOF +cat >>confdefs.h <<_ACEOF +#define PACKAGE_URL "$PACKAGE_URL" +_ACEOF + # Let the site file select an alternate cache file if it wants to. # Prefer an explicitly selected file to automatically selected ones. @@ -1784,7 +2180,7 @@ do test "x$ac_site_file" = xNONE && continue if test -r "$ac_site_file"; then - { $as_echo "$as_me:$LINENO: loading site script $ac_site_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: loading site script $ac_site_file" >&5 $as_echo "$as_me: loading site script $ac_site_file" >&6;} sed 's/^/| /' "$ac_site_file" >&5 . "$ac_site_file" @@ -1795,7 +2191,7 @@ # Some versions of bash will fail to source /dev/null (special # files actually), so we avoid doing that. if test -f "$cache_file"; then - { $as_echo "$as_me:$LINENO: loading cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: loading cache $cache_file" >&5 $as_echo "$as_me: loading cache $cache_file" >&6;} case $cache_file in [\\/]* | ?:[\\/]* ) . "$cache_file";; @@ -1803,7 +2199,7 @@ esac fi else - { $as_echo "$as_me:$LINENO: creating cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: creating cache $cache_file" >&5 $as_echo "$as_me: creating cache $cache_file" >&6;} >$cache_file fi @@ -1818,11 +2214,11 @@ eval ac_new_val=\$ac_env_${ac_var}_value case $ac_old_set,$ac_new_set in set,) - { $as_echo "$as_me:$LINENO: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was set to \`$ac_old_val' in the previous run" >&2;} ac_cache_corrupted=: ;; ,set) - { $as_echo "$as_me:$LINENO: error: \`$ac_var' was not set in the previous run" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' was not set in the previous run" >&5 $as_echo "$as_me: error: \`$ac_var' was not set in the previous run" >&2;} ac_cache_corrupted=: ;; ,);; @@ -1832,17 +2228,17 @@ ac_old_val_w=`echo x $ac_old_val` ac_new_val_w=`echo x $ac_new_val` if test "$ac_old_val_w" != "$ac_new_val_w"; then - { $as_echo "$as_me:$LINENO: error: \`$ac_var' has changed since the previous run:" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: \`$ac_var' has changed since the previous run:" >&5 $as_echo "$as_me: error: \`$ac_var' has changed since the previous run:" >&2;} ac_cache_corrupted=: else - { $as_echo "$as_me:$LINENO: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&5 $as_echo "$as_me: warning: ignoring whitespace changes in \`$ac_var' since the previous run:" >&2;} eval $ac_var=\$ac_old_val fi - { $as_echo "$as_me:$LINENO: former value: \`$ac_old_val'" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: former value: \`$ac_old_val'" >&5 $as_echo "$as_me: former value: \`$ac_old_val'" >&2;} - { $as_echo "$as_me:$LINENO: current value: \`$ac_new_val'" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: current value: \`$ac_new_val'" >&5 $as_echo "$as_me: current value: \`$ac_new_val'" >&2;} fi;; esac @@ -1854,43 +2250,20 @@ esac case " $ac_configure_args " in *" '$ac_arg' "*) ;; # Avoid dups. Use of quotes ensures accuracy. - *) ac_configure_args="$ac_configure_args '$ac_arg'" ;; + *) as_fn_append ac_configure_args " '$ac_arg'" ;; esac fi done if $ac_cache_corrupted; then - { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} - { $as_echo "$as_me:$LINENO: error: changes in the environment can compromise the build" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: error: changes in the environment can compromise the build" >&5 $as_echo "$as_me: error: changes in the environment can compromise the build" >&2;} - { { $as_echo "$as_me:$LINENO: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&5 -$as_echo "$as_me: error: run \`make distclean' and/or \`rm $cache_file' and start over" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "run \`make distclean' and/or \`rm $cache_file' and start over" "$LINENO" 5 fi - - - - - - - - - - - - - - - - - - - - - - - - +## -------------------- ## +## Main body of script. ## +## -------------------- ## ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -1900,7 +2273,7 @@ -VMKIT_COPYRIGHT="Copyright (c) 2003-2009 Universite Pierre et Marie Curie." +VMKIT_COPYRIGHT="Copyright (c) 2003-2010 Universite Pierre et Marie Curie." @@ -1911,32 +2284,22 @@ if test ${srcdir} != "." ; then if test -f ${srcdir}/include/mvm/Config/config.h ; then - { { $as_echo "$as_me:$LINENO: error: Already configured in ${srcdir}" >&5 -$as_echo "$as_me: error: Already configured in ${srcdir}" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Already configured in ${srcdir}" "$LINENO" 5 fi fi ac_aux_dir= for ac_dir in $LLVM_SRC_ROOT/autoconf "$srcdir"/$LLVM_SRC_ROOT/autoconf; do - if test -f "$ac_dir/install-sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install-sh -c" - break - elif test -f "$ac_dir/install.sh"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/install.sh -c" - break - elif test -f "$ac_dir/shtool"; then - ac_aux_dir=$ac_dir - ac_install_sh="$ac_aux_dir/shtool install -c" - break - fi + for ac_t in install-sh install.sh shtool; do + if test -f "$ac_dir/$ac_t"; then + ac_aux_dir=$ac_dir + ac_install_sh="$ac_aux_dir/$ac_t -c" + break 2 + fi + done done if test -z "$ac_aux_dir"; then - { { $as_echo "$as_me:$LINENO: error: cannot find install-sh or install.sh in $LLVM_SRC_ROOT/autoconf \"$srcdir\"/$LLVM_SRC_ROOT/autoconf" >&5 -$as_echo "$as_me: error: cannot find install-sh or install.sh in $LLVM_SRC_ROOT/autoconf \"$srcdir\"/$LLVM_SRC_ROOT/autoconf" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "cannot find install-sh, install.sh, or shtool in $LLVM_SRC_ROOT/autoconf \"$srcdir\"/$LLVM_SRC_ROOT/autoconf" "$LINENO" 5 fi # These three variables are undocumented and unsupported, @@ -1951,7 +2314,7 @@ # Check whether --with-llvmsrc was given. -if test "${with_llvmsrc+set}" = set; then +if test "${with_llvmsrc+set}" = set; then : withval=$with_llvmsrc; llvm_src="$withval" else llvm_src="$LLVM_SRC_ROOT" @@ -1961,7 +2324,7 @@ # Check whether --with-llvmobj was given. -if test "${with_llvmobj+set}" = set; then +if test "${with_llvmobj+set}" = set; then : withval=$with_llvmobj; llvm_obj="$withval" else llvm_obj="$LLVM_OBJ_ROOT" @@ -1977,35 +2340,27 @@ # Make sure we can run config.sub. $SHELL "$ac_aux_dir/config.sub" sun4 >/dev/null 2>&1 || - { { $as_echo "$as_me:$LINENO: error: cannot run $SHELL $ac_aux_dir/config.sub" >&5 -$as_echo "$as_me: error: cannot run $SHELL $ac_aux_dir/config.sub" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "cannot run $SHELL $ac_aux_dir/config.sub" "$LINENO" 5 -{ $as_echo "$as_me:$LINENO: checking build system type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking build system type" >&5 $as_echo_n "checking build system type... " >&6; } -if test "${ac_cv_build+set}" = set; then +if test "${ac_cv_build+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_build_alias=$build_alias test "x$ac_build_alias" = x && ac_build_alias=`$SHELL "$ac_aux_dir/config.guess"` test "x$ac_build_alias" = x && - { { $as_echo "$as_me:$LINENO: error: cannot guess build type; you must specify one" >&5 -$as_echo "$as_me: error: cannot guess build type; you must specify one" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "cannot guess build type; you must specify one" "$LINENO" 5 ac_cv_build=`$SHELL "$ac_aux_dir/config.sub" $ac_build_alias` || - { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&5 -$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $ac_build_alias failed" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "$SHELL $ac_aux_dir/config.sub $ac_build_alias failed" "$LINENO" 5 fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_build" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_build" >&5 $as_echo "$ac_cv_build" >&6; } case $ac_cv_build in *-*-*) ;; -*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical build" >&5 -$as_echo "$as_me: error: invalid value of canonical build" >&2;} - { (exit 1); exit 1; }; };; +*) as_fn_error "invalid value of canonical build" "$LINENO" 5;; esac build=$ac_cv_build ac_save_IFS=$IFS; IFS='-' @@ -2021,28 +2376,24 @@ case $build_os in *\ *) build_os=`echo "$build_os" | sed 's/ /-/g'`;; esac -{ $as_echo "$as_me:$LINENO: checking host system type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking host system type" >&5 $as_echo_n "checking host system type... " >&6; } -if test "${ac_cv_host+set}" = set; then +if test "${ac_cv_host+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "x$host_alias" = x; then ac_cv_host=$ac_cv_build else ac_cv_host=`$SHELL "$ac_aux_dir/config.sub" $host_alias` || - { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&5 -$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $host_alias failed" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "$SHELL $ac_aux_dir/config.sub $host_alias failed" "$LINENO" 5 fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_host" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_host" >&5 $as_echo "$ac_cv_host" >&6; } case $ac_cv_host in *-*-*) ;; -*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical host" >&5 -$as_echo "$as_me: error: invalid value of canonical host" >&2;} - { (exit 1); exit 1; }; };; +*) as_fn_error "invalid value of canonical host" "$LINENO" 5;; esac host=$ac_cv_host ac_save_IFS=$IFS; IFS='-' @@ -2058,28 +2409,24 @@ case $host_os in *\ *) host_os=`echo "$host_os" | sed 's/ /-/g'`;; esac -{ $as_echo "$as_me:$LINENO: checking target system type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking target system type" >&5 $as_echo_n "checking target system type... " >&6; } -if test "${ac_cv_target+set}" = set; then +if test "${ac_cv_target+set}" = set; then : $as_echo_n "(cached) " >&6 else if test "x$target_alias" = x; then ac_cv_target=$ac_cv_host else ac_cv_target=`$SHELL "$ac_aux_dir/config.sub" $target_alias` || - { { $as_echo "$as_me:$LINENO: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&5 -$as_echo "$as_me: error: $SHELL $ac_aux_dir/config.sub $target_alias failed" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "$SHELL $ac_aux_dir/config.sub $target_alias failed" "$LINENO" 5 fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_target" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_target" >&5 $as_echo "$ac_cv_target" >&6; } case $ac_cv_target in *-*-*) ;; -*) { { $as_echo "$as_me:$LINENO: error: invalid value of canonical target" >&5 -$as_echo "$as_me: error: invalid value of canonical target" >&2;} - { (exit 1); exit 1; }; };; +*) as_fn_error "invalid value of canonical target" "$LINENO" 5;; esac target=$ac_cv_target ac_save_IFS=$IFS; IFS='-' @@ -2102,28 +2449,22 @@ NONENONEs,x,x, && program_prefix=${target_alias}- -{ $as_echo "$as_me:$LINENO: checking type of operating system we're going to host on" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking type of operating system we're going to host on" >&5 $as_echo_n "checking type of operating system we're going to host on... " >&6; } -if test "${vmkit_cv_os_type+set}" = set; then +if test "${vmkit_cv_os_type+set}" = set; then : $as_echo_n "(cached) " >&6 else case $host in *-*-aix*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="AIX" vmkit_cv_platform_type="Unix" ;; *-*-irix*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="IRIX" vmkit_cv_platform_type="Unix" ;; *-*-cygwin*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="Cygwin" vmkit_cv_platform_type="Unix" ;; *-*-darwin*) @@ -2131,33 +2472,23 @@ vmkit_cv_os_type="Darwin" vmkit_cv_platform_type="Unix" ;; *-*-freebsd*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="FreeBSD" vmkit_cv_platform_type="Unix" ;; *-*-openbsd*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="OpenBSD" vmkit_cv_platform_type="Unix" ;; *-*-netbsd*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="NetBSD" vmkit_cv_platform_type="Unix" ;; *-*-hpux*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="HP-UX" vmkit_cv_platform_type="Unix" ;; *-*-interix*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="Interix" vmkit_cv_platform_type="Unix" ;; *-*-linux*) @@ -2165,32 +2496,24 @@ vmkit_cv_os_type="Linux" vmkit_cv_platform_type="Unix" ;; *-*-solaris*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="SunOS" vmkit_cv_platform_type="Unix" ;; *-*-win32*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="Win32" vmkit_cv_platform_type="Win32" ;; *-*-mingw*) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="MingW" vmkit_cv_platform_type="Win32" ;; *) - { { $as_echo "$as_me:$LINENO: error: Good luck porting vmkit to your host!" >&5 -$as_echo "$as_me: error: Good luck porting vmkit to your host!" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "Good luck porting vmkit to your host!" "$LINENO" 5 vmkit_cv_os_type="Unknown" vmkit_cv_platform_type="Unknown" ;; esac fi -{ $as_echo "$as_me:$LINENO: result: $vmkit_cv_os_type" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $vmkit_cv_os_type" >&5 $as_echo "$vmkit_cv_os_type" >&6; } @@ -2199,7 +2522,7 @@ # Check whether --with-llvmgcc was given. -if test "${with_llvmgcc+set}" = set; then +if test "${with_llvmgcc+set}" = set; then : withval=$with_llvmgcc; withllvm=yes else withllvm=no @@ -2216,7 +2539,7 @@ # Check whether --with-thread was given. -if test "${with_thread+set}" = set; then +if test "${with_thread+set}" = set; then : withval=$with_thread; thread=$withval else thread=common @@ -2232,9 +2555,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}gcc", so it can be a program name with args. set dummy ${ac_tool_prefix}gcc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -2245,24 +2568,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}gcc" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2272,9 +2595,9 @@ ac_ct_CC=$CC # Extract the first word of "gcc", so it can be a program name with args. set dummy gcc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -2285,24 +2608,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="gcc" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2311,7 +2634,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -2325,9 +2648,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}cc", so it can be a program name with args. set dummy ${ac_tool_prefix}cc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -2338,24 +2661,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="${ac_tool_prefix}cc" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2365,9 +2688,9 @@ if test -z "$CC"; then # Extract the first word of "cc", so it can be a program name with args. set dummy cc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -2379,18 +2702,18 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then if test "$as_dir/$ac_word$ac_exec_ext" = "/usr/ucb/cc"; then ac_prog_rejected=yes continue fi ac_cv_prog_CC="cc" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS if test $ac_prog_rejected = yes; then @@ -2409,10 +2732,10 @@ fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2424,9 +2747,9 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -2437,24 +2760,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2468,9 +2791,9 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -2481,24 +2804,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -2511,7 +2834,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -2522,73 +2845,55 @@ fi -test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "no acceptable C compiler found in \$PATH +See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C compiler version" >&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -v >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -V >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + rm -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ - +#include int main () { +FILE *f = fopen ("conftest.out", "w"); + return ferror (f) || fclose (f) != 0; ; return 0; } _ACEOF ac_clean_files_save=$ac_clean_files -ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out" +ac_clean_files="$ac_clean_files a.out a.out.dSYM a.exe b.out conftest.out" # Try to create an executable without -o first, disregard a.out. # It will help us diagnose broken compilers, and finding out an intuition # of exeext. -{ $as_echo "$as_me:$LINENO: checking for C compiler default output file name" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler default output file name" >&5 $as_echo_n "checking for C compiler default output file name... " >&6; } ac_link_default=`$as_echo "$ac_link" | sed 's/ -o *conftest[^ ]*//'` @@ -2605,17 +2910,17 @@ done rm -f $ac_rmfiles -if { (ac_try="$ac_link_default" +if { { ac_try="$ac_link_default" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_link_default") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # Autoconf-2.13 could set the ac_cv_exeext variable to `no'. # So ignore a value of `no', otherwise this would lead to `EXEEXT = no' # in a Makefile. We should not override ac_cv_exeext if it was cached, @@ -2632,7 +2937,7 @@ # certainly right. break;; *.* ) - if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; + if test "${ac_cv_exeext+set}" = set && test "$ac_cv_exeext" != no; then :; else ac_cv_exeext=`expr "$ac_file" : '[^.]*\(\..*\)'` fi @@ -2651,84 +2956,75 @@ else ac_file='' fi - -{ $as_echo "$as_me:$LINENO: result: $ac_file" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_file" >&5 $as_echo "$ac_file" >&6; } -if test -z "$ac_file"; then +if test -z "$ac_file"; then : $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: C compiler cannot create executables -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: C compiler cannot create executables -See \`config.log' for more details." >&2;} - { (exit 77); exit 77; }; }; } +{ as_fn_set_status 77 +as_fn_error "C compiler cannot create executables +See \`config.log' for more details." "$LINENO" 5; }; } fi - ac_exeext=$ac_cv_exeext # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -{ $as_echo "$as_me:$LINENO: checking whether the C compiler works" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether the C compiler works" >&5 $as_echo_n "checking whether the C compiler works... " >&6; } -# FIXME: These cross compiler hacks should be removed for Autoconf 3.0 # If not cross compiling, check that we can run a simple program. if test "$cross_compiling" != yes; then if { ac_try='./$ac_file' - { (case "(($ac_try" in + { { case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_try") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; }; then cross_compiling=no else if test "$cross_compiling" = maybe; then cross_compiling=yes else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: cannot run C compiled programs. +as_fn_error "cannot run C compiled programs. If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: cannot run C compiled programs. -If you meant to cross compile, use \`--host'. -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +See \`config.log' for more details." "$LINENO" 5; } fi fi fi -{ $as_echo "$as_me:$LINENO: result: yes" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } -rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out +rm -f -r a.out a.out.dSYM a.exe conftest$ac_cv_exeext b.out conftest.out ac_clean_files=$ac_clean_files_save # Check that the compiler produces executables we can run. If not, either # the compiler is broken, or we cross compile. -{ $as_echo "$as_me:$LINENO: checking whether we are cross compiling" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are cross compiling" >&5 $as_echo_n "checking whether we are cross compiling... " >&6; } -{ $as_echo "$as_me:$LINENO: result: $cross_compiling" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $cross_compiling" >&5 $as_echo "$cross_compiling" >&6; } -{ $as_echo "$as_me:$LINENO: checking for suffix of executables" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of executables" >&5 $as_echo_n "checking for suffix of executables... " >&6; } -if { (ac_try="$ac_link" +if { { ac_try="$ac_link" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_link") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : # If both `conftest.exe' and `conftest' are `present' (well, observable) # catch `conftest.exe'. For instance with Cygwin, `ls conftest' will # work properly (i.e., refer to `conftest.exe'), while it won't with @@ -2743,32 +3039,24 @@ esac done else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: cannot compute suffix of executables: cannot compile and link -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "cannot compute suffix of executables: cannot compile and link +See \`config.log' for more details." "$LINENO" 5; } fi - rm -f conftest$ac_cv_exeext -{ $as_echo "$as_me:$LINENO: result: $ac_cv_exeext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_exeext" >&5 $as_echo "$ac_cv_exeext" >&6; } rm -f conftest.$ac_ext EXEEXT=$ac_cv_exeext ac_exeext=$EXEEXT -{ $as_echo "$as_me:$LINENO: checking for suffix of object files" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for suffix of object files" >&5 $as_echo_n "checking for suffix of object files... " >&6; } -if test "${ac_cv_objext+set}" = set; then +if test "${ac_cv_objext+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2780,17 +3068,17 @@ } _ACEOF rm -f conftest.o conftest.obj -if { (ac_try="$ac_compile" +if { { ac_try="$ac_compile" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 (eval "$ac_compile") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; }; then : for ac_file in conftest.o conftest.obj conftest.*; do test -f "$ac_file" || continue; case $ac_file in @@ -2803,31 +3091,23 @@ $as_echo "$as_me: failed program was:" >&5 sed 's/^/| /' conftest.$ac_ext >&5 -{ { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +{ { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: cannot compute suffix of object files: cannot compile -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "cannot compute suffix of object files: cannot compile +See \`config.log' for more details." "$LINENO" 5; } fi - rm -f conftest.$ac_cv_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_objext" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_objext" >&5 $as_echo "$ac_cv_objext" >&6; } OBJEXT=$ac_cv_objext ac_objext=$OBJEXT -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then +if test "${ac_cv_c_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2841,37 +3121,16 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + ac_compiler_gnu=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes @@ -2880,20 +3139,16 @@ fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then +if test "${ac_cv_prog_cc_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2904,35 +3159,11 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2943,36 +3174,12 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_compile "$LINENO"; then : - ac_c_werror_flag=$ac_save_c_werror_flag +else + ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -2983,42 +3190,17 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS @@ -3035,18 +3217,14 @@ CFLAGS= fi fi -{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then +if test "${ac_cv_prog_cc_c89+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -3103,32 +3281,9 @@ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then + if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done @@ -3139,17 +3294,19 @@ # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) - { $as_echo "$as_me:$LINENO: result: none needed" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) - { $as_echo "$as_me:$LINENO: result: unsupported" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac +if test "x$ac_cv_prog_cc_c89" != xno; then : +fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -3163,14 +3320,14 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then + if test "${ac_cv_prog_CPP+set}" = set; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded @@ -3185,11 +3342,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -3198,78 +3351,34 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then +if $ac_preproc_ok; then : break fi @@ -3281,7 +3390,7 @@ else ac_cv_prog_CPP=$CPP fi -{ $as_echo "$as_me:$LINENO: result: $CPP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes @@ -3292,11 +3401,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -3305,87 +3410,40 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : +if $ac_preproc_ok; then : + else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." "$LINENO" 5; } fi ac_ext=c @@ -3395,9 +3453,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking for grep that handles long lines and -e" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for grep that handles long lines and -e" >&5 $as_echo_n "checking for grep that handles long lines and -e... " >&6; } -if test "${ac_cv_path_GREP+set}" = set; then +if test "${ac_cv_path_GREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -z "$GREP"; then @@ -3408,7 +3466,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in grep ggrep; do + for ac_prog in grep ggrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_GREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_GREP" && $as_test_x "$ac_path_GREP"; } || continue @@ -3428,7 +3486,7 @@ $as_echo 'GREP' >> "conftest.nl" "$ac_path_GREP" -e 'GREP$' -e '-(cannot match)-' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - ac_count=`expr $ac_count + 1` + as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_GREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_GREP="$ac_path_GREP" @@ -3443,26 +3501,24 @@ $ac_path_GREP_found && break 3 done done -done + done IFS=$as_save_IFS if test -z "$ac_cv_path_GREP"; then - { { $as_echo "$as_me:$LINENO: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 -$as_echo "$as_me: error: no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "no acceptable grep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_GREP=$GREP fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_GREP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_GREP" >&5 $as_echo "$ac_cv_path_GREP" >&6; } GREP="$ac_cv_path_GREP" -{ $as_echo "$as_me:$LINENO: checking for egrep" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for egrep" >&5 $as_echo_n "checking for egrep... " >&6; } -if test "${ac_cv_path_EGREP+set}" = set; then +if test "${ac_cv_path_EGREP+set}" = set; then : $as_echo_n "(cached) " >&6 else if echo a | $GREP -E '(a|b)' >/dev/null 2>&1 @@ -3476,7 +3532,7 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_prog in egrep; do + for ac_prog in egrep; do for ac_exec_ext in '' $ac_executable_extensions; do ac_path_EGREP="$as_dir/$ac_prog$ac_exec_ext" { test -f "$ac_path_EGREP" && $as_test_x "$ac_path_EGREP"; } || continue @@ -3496,7 +3552,7 @@ $as_echo 'EGREP' >> "conftest.nl" "$ac_path_EGREP" 'EGREP$' < "conftest.nl" >"conftest.out" 2>/dev/null || break diff "conftest.out" "conftest.nl" >/dev/null 2>&1 || break - ac_count=`expr $ac_count + 1` + as_fn_arith $ac_count + 1 && ac_count=$as_val if test $ac_count -gt ${ac_path_EGREP_max-0}; then # Best one so far, save it but keep looking for a better one ac_cv_path_EGREP="$ac_path_EGREP" @@ -3511,12 +3567,10 @@ $ac_path_EGREP_found && break 3 done done -done + done IFS=$as_save_IFS if test -z "$ac_cv_path_EGREP"; then - { { $as_echo "$as_me:$LINENO: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&5 -$as_echo "$as_me: error: no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "no acceptable egrep could be found in $PATH$PATH_SEPARATOR/usr/xpg4/bin" "$LINENO" 5 fi else ac_cv_path_EGREP=$EGREP @@ -3524,21 +3578,17 @@ fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_path_EGREP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_path_EGREP" >&5 $as_echo "$ac_cv_path_EGREP" >&6; } EGREP="$ac_cv_path_EGREP" -{ $as_echo "$as_me:$LINENO: checking for ANSI C header files" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for ANSI C header files" >&5 $as_echo_n "checking for ANSI C header files... " >&6; } -if test "${ac_cv_header_stdc+set}" = set; then +if test "${ac_cv_header_stdc+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -3553,48 +3603,23 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_header_stdc=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_header_stdc=no + ac_cv_header_stdc=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext if test $ac_cv_header_stdc = yes; then # SunOS 4.x string.h does not declare mem*, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "memchr" >/dev/null 2>&1; then - : + $EGREP "memchr" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -3604,18 +3629,14 @@ if test $ac_cv_header_stdc = yes; then # ISC 2.0.2 stdlib.h does not declare free, contrary to ANSI. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF if (eval "$ac_cpp conftest.$ac_ext") 2>&5 | - $EGREP "free" >/dev/null 2>&1; then - : + $EGREP "free" >/dev/null 2>&1; then : + else ac_cv_header_stdc=no fi @@ -3625,14 +3646,10 @@ if test $ac_cv_header_stdc = yes; then # /bin/cc in Irix-4.0.5 gets non-ANSI ctype macros unless using -ansi. - if test "$cross_compiling" = yes; then + if test "$cross_compiling" = yes; then : : else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -3659,118 +3676,34 @@ return 0; } _ACEOF -rm -f conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { ac_try='./conftest$ac_exeext' - { (case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_try") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; }; then - : -else - $as_echo "$as_me: program exited with status $ac_status" >&5 -$as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_run "$LINENO"; then : -( exit $ac_status ) -ac_cv_header_stdc=no +else + ac_cv_header_stdc=no fi -rm -rf conftest.dSYM -rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext conftest.$ac_objext conftest.$ac_ext +rm -f core *.core core.conftest.* gmon.out bb.out conftest$ac_exeext \ + conftest.$ac_objext conftest.beam conftest.$ac_ext fi - fi fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_stdc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_header_stdc" >&5 $as_echo "$ac_cv_header_stdc" >&6; } if test $ac_cv_header_stdc = yes; then -cat >>confdefs.h <<\_ACEOF -#define STDC_HEADERS 1 -_ACEOF +$as_echo "#define STDC_HEADERS 1" >>confdefs.h fi # On IRIX 5.3, sys/types and inttypes.h are conflicting. - - - - - - - - - for ac_header in sys/types.h sys/stat.h stdlib.h string.h memory.h strings.h \ inttypes.h stdint.h unistd.h -do -as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_header" >&5 -$as_echo_n "checking for $ac_header... " >&6; } -if { as_var=$as_ac_Header; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default - -#include <$ac_header> -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - eval "$as_ac_Header=yes" -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_Header=no" -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -ac_res=`eval 'as_val=${'$as_ac_Header'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_Header'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then +do : + as_ac_Header=`$as_echo "ac_cv_header_$ac_header" | $as_tr_sh` +ac_fn_c_check_header_compile "$LINENO" "$ac_header" "$as_ac_Header" "$ac_includes_default +" +eval as_val=\$$as_ac_Header + if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_header" | $as_tr_cpp` 1 _ACEOF @@ -3780,160 +3713,24 @@ done -if test "x$thread" != "xno"; then - if test "${ac_cv_header_pthread_h+set}" = set; then - { $as_echo "$as_me:$LINENO: checking for pthread.h" >&5 -$as_echo_n "checking for pthread.h... " >&6; } -if test "${ac_cv_header_pthread_h+set}" = set; then - $as_echo_n "(cached) " >&6 +if test "x$thread" != "xno"; then : + ac_fn_c_check_header_mongrel "$LINENO" "pthread.h" "ac_cv_header_pthread_h" "$ac_includes_default" +if test "x$ac_cv_header_pthread_h" = x""yes; then : + +else + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: phtread include NOT found" >&5 +$as_echo "$as_me: WARNING: phtread include NOT found" >&2;} fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_pthread_h" >&5 -$as_echo "$ac_cv_header_pthread_h" >&6; } + + + { $as_echo "$as_me:${as_lineno-$LINENO}: checking for pthread_create in -lpthread" >&5 +$as_echo_n "checking for pthread_create in -lpthread... " >&6; } +if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then : + $as_echo_n "(cached) " >&6 else - # Is the header compilable? -{ $as_echo "$as_me:$LINENO: checking pthread.h usability" >&5 -$as_echo_n "checking pthread.h usability... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_compiler=no -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:$LINENO: checking pthread.h presence" >&5 -$as_echo_n "checking pthread.h presence... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_header_preproc=no -fi - -rm -f conftest.err conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } - -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: pthread.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: pthread.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: pthread.h: present but cannot be compiled" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: pthread.h: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: pthread.h: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: pthread.h: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: proceeding with the preprocessor's result" >&5 -$as_echo "$as_me: WARNING: pthread.h: proceeding with the preprocessor's result" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: pthread.h: in the future, the compiler will take precedence" >&5 -$as_echo "$as_me: WARNING: pthread.h: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## --------------------------------------- ## -## Report this to nicolas.geoffray at lip6.fr ## -## --------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ $as_echo "$as_me:$LINENO: checking for pthread.h" >&5 -$as_echo_n "checking for pthread.h... " >&6; } -if test "${ac_cv_header_pthread_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_header_pthread_h=$ac_header_preproc -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_pthread_h" >&5 -$as_echo "$ac_cv_header_pthread_h" >&6; } - -fi -if test "x$ac_cv_header_pthread_h" = x""yes; then - : -else - { $as_echo "$as_me:$LINENO: WARNING: phtread include NOT found" >&5 -$as_echo "$as_me: WARNING: phtread include NOT found" >&2;} -fi - - - -{ $as_echo "$as_me:$LINENO: checking for pthread_create in -lpthread" >&5 -$as_echo_n "checking for pthread_create in -lpthread... " >&6; } -if test "${ac_cv_lib_pthread_pthread_create+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_check_lib_save_LIBS=$LIBS -LIBS="-lpthread $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + ac_check_lib_save_LIBS=$LIBS +LIBS="-lpthread $LIBS" +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -3951,43 +3748,18 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_pthread_pthread_create=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_lib_pthread_pthread_create=no + ac_cv_lib_pthread_pthread_create=no fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_pthread_pthread_create" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_pthread_pthread_create" >&5 $as_echo "$ac_cv_lib_pthread_pthread_create" >&6; } -if test "x$ac_cv_lib_pthread_pthread_create" = x""yes; then +if test "x$ac_cv_lib_pthread_pthread_create" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LIBPTHREAD 1 _ACEOF @@ -3995,27 +3767,22 @@ LIBS="-lpthread $LIBS" else - { { $as_echo "$as_me:$LINENO: error: pthread library not found" >&5 -$as_echo "$as_me: error: pthread library not found" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "pthread library not found" "$LINENO" 5 fi fi - if test "x$thread" = xcommon; then -cat >>confdefs.h <<\_ACEOF -#define HAVE_PTHREAD 1 -_ACEOF +$as_echo "#define HAVE_PTHREAD 1" >>confdefs.h fi # Check whether --with-finalizer was given. -if test "${with_finalizer+set}" = set; then +if test "${with_finalizer+set}" = set; then : withval=$with_finalizer; withfinalizer=$withfinalizer else withfinalizer=yes @@ -4030,17 +3797,13 @@ case $target_cpu in powerpc) -cat >>confdefs.h <<\_ACEOF -#define WITH_64 0 -_ACEOF +$as_echo "#define WITH_64 0" >>confdefs.h WITH_64=0 ;; *) -cat >>confdefs.h <<\_ACEOF -#define WITH_64 1 -_ACEOF +$as_echo "#define WITH_64 1" >>confdefs.h WITH_64=1 ;; @@ -4050,7 +3813,7 @@ # Check whether --with-gc was given. -if test "${with_gc+set}" = set; then +if test "${with_gc+set}" = set; then : withval=$with_gc; gc=$withval else echo Using mmap2 as vvm gc type. @@ -4063,9 +3826,7 @@ if test "x$gc" = "xboehm"; then GC_FLAGS="-I\$(PROJ_SRC_ROOT)/lib/Mvm/BoehmGC -DGC_THREADS" -cat >>confdefs.h <<\_ACEOF -#define USE_GC_BOEHM 1 -_ACEOF +$as_echo "#define USE_GC_BOEHM 1" >>confdefs.h GC_MMAP2=0 @@ -4110,9 +3871,7 @@ fi -cat >>confdefs.h <<\_ACEOF -#define USE_GC_MMAP2 1 -_ACEOF +$as_echo "#define USE_GC_MMAP2 1" >>confdefs.h GC_MMAP2=1 @@ -4128,7 +3887,7 @@ # Check whether --with-vm-type was given. -if test "${with_vm_type+set}" = set; then +if test "${with_vm_type+set}" = set; then : withval=$with_vm_type; vmtype=$withval else echo Using single as vm type. @@ -4163,7 +3922,7 @@ # Check whether --with-exception-type was given. -if test "${with_exception_type+set}" = set; then +if test "${with_exception_type+set}" = set; then : withval=$with_exception_type; exceptiontype=$withval else echo Using check as exception type. @@ -4184,7 +3943,7 @@ # Check whether --with-gnu-classpath-libs was given. -if test "${with_gnu_classpath_libs+set}" = set; then +if test "${with_gnu_classpath_libs+set}" = set; then : withval=$with_gnu_classpath_libs; classpathlibs=$withval else classpathlibs=/usr/lib/classpath @@ -4194,7 +3953,7 @@ # Check whether --with-gnu-classpath-glibj was given. -if test "${with_gnu_classpath_glibj+set}" = set; then +if test "${with_gnu_classpath_glibj+set}" = set; then : withval=$with_gnu_classpath_glibj; classpathglibj=$withval else classpathglibj=/usr/share/classpath/glibj.zip @@ -4204,7 +3963,7 @@ # Check whether --with-j3 was given. -if test "${with_j3+set}" = set; then +if test "${with_j3+set}" = set; then : withval=$with_j3; WITH_J3=$withval else WITH_J3=yes @@ -4217,9 +3976,7 @@ if test "x${WITH_J3}" = "xyes"; then WITH_J3=1; -cat >>confdefs.h <<\_ACEOF -#define WITH_J3 1 -_ACEOF +$as_echo "#define WITH_J3 1" >>confdefs.h else WITH_J3=0; @@ -4233,7 +3990,7 @@ # Check whether --with-pnet-local-prefix was given. -if test "${with_pnet_local_prefix+set}" = set; then +if test "${with_pnet_local_prefix+set}" = set; then : withval=$with_pnet_local_prefix; pnetlocalprefix=$withval else echo Not using PNETlocal prefix. @@ -4245,7 +4002,7 @@ # Check whether --with-pnetlib was given. -if test "${with_pnetlib+set}" = set; then +if test "${with_pnetlib+set}" = set; then : withval=$with_pnetlib; pnetlibpath=$withval else pnetlibpath=/usr/lib/cscc/lib/ @@ -4260,9 +4017,7 @@ WITH_N3_PNETLIB=1; WITH_N3=1; -cat >>confdefs.h <<\_ACEOF -#define WITH_N3 1 -_ACEOF +$as_echo "#define WITH_N3 1" >>confdefs.h else WITH_N3_PNETLIB=0; @@ -4277,7 +4032,7 @@ # Check whether --with-mono was given. -if test "${with_mono+set}" = set; then +if test "${with_mono+set}" = set; then : withval=$with_mono; monopath=$withval else echo Not using Mono @@ -4304,14 +4059,14 @@ ac_compile='$CC -c $CFLAGS $CPPFLAGS conftest.$ac_ext >&5' ac_link='$CC -o conftest$ac_exeext $CFLAGS $CPPFLAGS $LDFLAGS conftest.$ac_ext $LIBS >&5' ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking how to run the C preprocessor" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking how to run the C preprocessor" >&5 $as_echo_n "checking how to run the C preprocessor... " >&6; } # On Suns, sometimes $CPP names a directory. if test -n "$CPP" && test -d "$CPP"; then CPP= fi if test -z "$CPP"; then - if test "${ac_cv_prog_CPP+set}" = set; then + if test "${ac_cv_prog_CPP+set}" = set; then : $as_echo_n "(cached) " >&6 else # Double quotes because CPP needs to be expanded @@ -4326,11 +4081,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -4339,78 +4090,34 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then +if $ac_preproc_ok; then : break fi @@ -4422,7 +4129,7 @@ else ac_cv_prog_CPP=$CPP fi -{ $as_echo "$as_me:$LINENO: result: $CPP" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $CPP" >&5 $as_echo "$CPP" >&6; } ac_preproc_ok=false for ac_c_preproc_warn_flag in '' yes @@ -4433,11 +4140,7 @@ # exists even on freestanding compilers. # On the NeXT, cc -E runs the code through the compiler's parser, # not just through cpp. "Syntax error" is here to catch this case. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #ifdef __STDC__ # include @@ -4446,87 +4149,40 @@ #endif Syntax error _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_cpp "$LINENO"; then : +else # Broken: fails on valid input. continue fi - rm -f conftest.err conftest.$ac_ext # OK, works on sane cases. Now check whether nonexistent headers # can be detected and how. - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include _ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then +if ac_fn_c_try_cpp "$LINENO"; then : # Broken: success on invalid input. continue else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - # Passes both tests. ac_preproc_ok=: break fi - rm -f conftest.err conftest.$ac_ext done # Because of `break', _AC_PREPROC_IFELSE's cleaning code was skipped. rm -f conftest.err conftest.$ac_ext -if $ac_preproc_ok; then - : +if $ac_preproc_ok; then : + else - { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 + { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: C preprocessor \"$CPP\" fails sanity check -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "C preprocessor \"$CPP\" fails sanity check +See \`config.log' for more details." "$LINENO" 5; } fi ac_ext=c @@ -4545,9 +4201,9 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CC+set}" = set; then +if test "${ac_cv_prog_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CC"; then @@ -4558,24 +4214,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CC="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CC=$ac_cv_prog_CC if test -n "$CC"; then - { $as_echo "$as_me:$LINENO: result: $CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CC" >&5 $as_echo "$CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4589,9 +4245,9 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CC+set}" = set; then +if test "${ac_cv_prog_ac_ct_CC+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CC"; then @@ -4602,24 +4258,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CC="$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CC=$ac_cv_prog_ac_ct_CC if test -n "$ac_ct_CC"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_CC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CC" >&5 $as_echo "$ac_ct_CC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -4632,7 +4288,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -4641,62 +4297,42 @@ fi -test -z "$CC" && { { $as_echo "$as_me:$LINENO: error: in \`$ac_pwd':" >&5 +test -z "$CC" && { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5 $as_echo "$as_me: error: in \`$ac_pwd':" >&2;} -{ { $as_echo "$as_me:$LINENO: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&5 -$as_echo "$as_me: error: no acceptable C compiler found in \$PATH -See \`config.log' for more details." >&2;} - { (exit 1); exit 1; }; }; } +as_fn_error "no acceptable C compiler found in \$PATH +See \`config.log' for more details." "$LINENO" 5; } # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C compiler version" >&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C compiler version" >&5 set X $ac_compile ac_compiler=$2 -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -v >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -V >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + rm -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C compiler" >&5 $as_echo_n "checking whether we are using the GNU C compiler... " >&6; } -if test "${ac_cv_c_compiler_gnu+set}" = set; then +if test "${ac_cv_c_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4710,37 +4346,16 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + ac_compiler_gnu=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_c_compiler_gnu=$ac_compiler_gnu fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_c_compiler_gnu" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_c_compiler_gnu" >&5 $as_echo "$ac_cv_c_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GCC=yes @@ -4749,20 +4364,16 @@ fi ac_test_CFLAGS=${CFLAGS+set} ac_save_CFLAGS=$CFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CC accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CC accepts -g" >&5 $as_echo_n "checking whether $CC accepts -g... " >&6; } -if test "${ac_cv_prog_cc_g+set}" = set; then +if test "${ac_cv_prog_cc_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_c_werror_flag=$ac_c_werror_flag ac_c_werror_flag=yes ac_cv_prog_cc_g=no CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4773,35 +4384,11 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + CFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4812,36 +4399,12 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_compile "$LINENO"; then : - ac_c_werror_flag=$ac_save_c_werror_flag +else + ac_c_werror_flag=$ac_save_c_werror_flag CFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -4852,42 +4415,17 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_g=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_c_werror_flag=$ac_save_c_werror_flag fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_g" >&5 $as_echo "$ac_cv_prog_cc_g" >&6; } if test "$ac_test_CFLAGS" = set; then CFLAGS=$ac_save_CFLAGS @@ -4904,18 +4442,14 @@ CFLAGS= fi fi -{ $as_echo "$as_me:$LINENO: checking for $CC option to accept ISO C89" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $CC option to accept ISO C89" >&5 $as_echo_n "checking for $CC option to accept ISO C89... " >&6; } -if test "${ac_cv_prog_cc_c89+set}" = set; then +if test "${ac_cv_prog_cc_c89+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_cv_prog_cc_c89=no ac_save_CC=$CC -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ #include #include @@ -4972,32 +4506,9 @@ -Ae "-Aa -D_HPUX_SOURCE" "-Xc -D__EXTENSIONS__" do CC="$ac_save_CC $ac_arg" - rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then + if ac_fn_c_try_compile "$LINENO"; then : ac_cv_prog_cc_c89=$ac_arg -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext test "x$ac_cv_prog_cc_c89" != "xno" && break done @@ -5008,17 +4519,19 @@ # AC_CACHE_VAL case "x$ac_cv_prog_cc_c89" in x) - { $as_echo "$as_me:$LINENO: result: none needed" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: none needed" >&5 $as_echo "none needed" >&6; } ;; xno) - { $as_echo "$as_me:$LINENO: result: unsupported" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: unsupported" >&5 $as_echo "unsupported" >&6; } ;; *) CC="$CC $ac_cv_prog_cc_c89" - { $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cc_c89" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cc_c89" >&5 $as_echo "$ac_cv_prog_cc_c89" >&6; } ;; esac +if test "x$ac_cv_prog_cc_c89" != xno; then : +fi ac_ext=c ac_cpp='$CPP $CPPFLAGS' @@ -5040,9 +4553,9 @@ do # Extract the first word of "$ac_tool_prefix$ac_prog", so it can be a program name with args. set dummy $ac_tool_prefix$ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_CXX+set}" = set; then +if test "${ac_cv_prog_CXX+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$CXX"; then @@ -5053,24 +4566,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_CXX="$ac_tool_prefix$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi CXX=$ac_cv_prog_CXX if test -n "$CXX"; then - { $as_echo "$as_me:$LINENO: result: $CXX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CXX" >&5 $as_echo "$CXX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5084,9 +4597,9 @@ do # Extract the first word of "$ac_prog", so it can be a program name with args. set dummy $ac_prog; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then +if test "${ac_cv_prog_ac_ct_CXX+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_CXX"; then @@ -5097,24 +4610,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_CXX="$ac_prog" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_CXX=$ac_cv_prog_ac_ct_CXX if test -n "$ac_ct_CXX"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_CXX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_CXX" >&5 $as_echo "$ac_ct_CXX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5127,7 +4640,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -5138,53 +4651,36 @@ fi fi # Provide some information about the compiler. -$as_echo "$as_me:$LINENO: checking for C++ compiler version" >&5 +$as_echo "$as_me:${as_lineno-$LINENO}: checking for C++ compiler version" >&5 set X $ac_compile ac_compiler=$2 -{ (ac_try="$ac_compiler --version >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler --version >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -v >&5" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -v >&5") 2>&5 - ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } -{ (ac_try="$ac_compiler -V >&5" +for ac_option in --version -v -V -qversion; do + { { ac_try="$ac_compiler $ac_option >&5" case "(($ac_try" in *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; *) ac_try_echo=$ac_try;; esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compiler -V >&5") 2>&5 +eval ac_try_echo="\"\$as_me:${as_lineno-$LINENO}: $ac_try_echo\"" +$as_echo "$ac_try_echo"; } >&5 + (eval "$ac_compiler $ac_option >&5") 2>conftest.err ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } + if test -s conftest.err; then + sed '10a\ +... rest of stderr output deleted ... + 10q' conftest.err >conftest.er1 + cat conftest.er1 >&5 + rm -f conftest.er1 conftest.err + fi + $as_echo "$as_me:${as_lineno-$LINENO}: \$? = $ac_status" >&5 + test $ac_status = 0; } +done -{ $as_echo "$as_me:$LINENO: checking whether we are using the GNU C++ compiler" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether we are using the GNU C++ compiler" >&5 $as_echo_n "checking whether we are using the GNU C++ compiler... " >&6; } -if test "${ac_cv_cxx_compiler_gnu+set}" = set; then +if test "${ac_cv_cxx_compiler_gnu+set}" = set; then : $as_echo_n "(cached) " >&6 else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5198,37 +4694,16 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_cxx_try_compile "$LINENO"; then : ac_compiler_gnu=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_compiler_gnu=no + ac_compiler_gnu=no fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cv_cxx_compiler_gnu=$ac_compiler_gnu fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_cxx_compiler_gnu" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_cxx_compiler_gnu" >&5 $as_echo "$ac_cv_cxx_compiler_gnu" >&6; } if test $ac_compiler_gnu = yes; then GXX=yes @@ -5237,20 +4712,16 @@ fi ac_test_CXXFLAGS=${CXXFLAGS+set} ac_save_CXXFLAGS=$CXXFLAGS -{ $as_echo "$as_me:$LINENO: checking whether $CXX accepts -g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether $CXX accepts -g" >&5 $as_echo_n "checking whether $CXX accepts -g... " >&6; } -if test "${ac_cv_prog_cxx_g+set}" = set; then +if test "${ac_cv_prog_cxx_g+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_save_cxx_werror_flag=$ac_cxx_werror_flag ac_cxx_werror_flag=yes ac_cv_prog_cxx_g=no CXXFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5261,35 +4732,11 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - CXXFLAGS="" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + CXXFLAGS="" + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5300,36 +4747,12 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_cxx_try_compile "$LINENO"; then : - ac_cxx_werror_flag=$ac_save_cxx_werror_flag +else + ac_cxx_werror_flag=$ac_save_cxx_werror_flag CXXFLAGS="-g" - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ int @@ -5340,42 +4763,17 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_cxx_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then +if ac_fn_cxx_try_compile "$LINENO"; then : ac_cv_prog_cxx_g=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext ac_cxx_werror_flag=$ac_save_cxx_werror_flag fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_prog_cxx_g" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_prog_cxx_g" >&5 $as_echo "$ac_cv_prog_cxx_g" >&6; } if test "$ac_test_CXXFLAGS" = set; then CXXFLAGS=$ac_save_CXXFLAGS @@ -5399,9 +4797,9 @@ ac_compiler_gnu=$ac_cv_c_compiler_gnu -{ $as_echo "$as_me:$LINENO: checking for BSD-compatible nm" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for BSD-compatible nm" >&5 $as_echo_n "checking for BSD-compatible nm... " >&6; } -if test "${lt_cv_path_NM+set}" = set; then +if test "${lt_cv_path_NM+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$NM"; then @@ -5448,28 +4846,28 @@ test -z "$lt_cv_path_NM" && lt_cv_path_NM=nm fi fi -{ $as_echo "$as_me:$LINENO: result: $lt_cv_path_NM" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $lt_cv_path_NM" >&5 $as_echo "$lt_cv_path_NM" >&6; } NM="$lt_cv_path_NM" -{ $as_echo "$as_me:$LINENO: checking whether ln -s works" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether ln -s works" >&5 $as_echo_n "checking whether ln -s works... " >&6; } LN_S=$as_ln_s if test "$LN_S" = "ln -s"; then - { $as_echo "$as_me:$LINENO: result: yes" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: yes" >&5 $as_echo "yes" >&6; } else - { $as_echo "$as_me:$LINENO: result: no, using $LN_S" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no, using $LN_S" >&5 $as_echo "no, using $LN_S" >&6; } fi # Extract the first word of "cmp", so it can be a program name with args. set dummy cmp; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_CMP+set}" = set; then +if test "${ac_cv_path_CMP+set}" = set; then : $as_echo_n "(cached) " >&6 else case $CMP in @@ -5482,14 +4880,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_CMP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_CMP" && ac_cv_path_CMP="cmp" @@ -5498,19 +4896,19 @@ fi CMP=$ac_cv_path_CMP if test -n "$CMP"; then - { $as_echo "$as_me:$LINENO: result: $CMP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CMP" >&5 $as_echo "$CMP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "cp", so it can be a program name with args. set dummy cp; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_CP+set}" = set; then +if test "${ac_cv_path_CP+set}" = set; then : $as_echo_n "(cached) " >&6 else case $CP in @@ -5523,14 +4921,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_CP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_CP" && ac_cv_path_CP="cp" @@ -5539,19 +4937,19 @@ fi CP=$ac_cv_path_CP if test -n "$CP"; then - { $as_echo "$as_me:$LINENO: result: $CP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CP" >&5 $as_echo "$CP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "date", so it can be a program name with args. set dummy date; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_DATE+set}" = set; then +if test "${ac_cv_path_DATE+set}" = set; then : $as_echo_n "(cached) " >&6 else case $DATE in @@ -5564,14 +4962,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_DATE="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_DATE" && ac_cv_path_DATE="date" @@ -5580,19 +4978,19 @@ fi DATE=$ac_cv_path_DATE if test -n "$DATE"; then - { $as_echo "$as_me:$LINENO: result: $DATE" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $DATE" >&5 $as_echo "$DATE" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "find", so it can be a program name with args. set dummy find; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_FIND+set}" = set; then +if test "${ac_cv_path_FIND+set}" = set; then : $as_echo_n "(cached) " >&6 else case $FIND in @@ -5605,14 +5003,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_FIND="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_FIND" && ac_cv_path_FIND="find" @@ -5621,19 +5019,19 @@ fi FIND=$ac_cv_path_FIND if test -n "$FIND"; then - { $as_echo "$as_me:$LINENO: result: $FIND" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $FIND" >&5 $as_echo "$FIND" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "grep", so it can be a program name with args. set dummy grep; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_GREP+set}" = set; then +if test "${ac_cv_path_GREP+set}" = set; then : $as_echo_n "(cached) " >&6 else case $GREP in @@ -5646,14 +5044,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_GREP="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_GREP" && ac_cv_path_GREP="grep" @@ -5662,19 +5060,19 @@ fi GREP=$ac_cv_path_GREP if test -n "$GREP"; then - { $as_echo "$as_me:$LINENO: result: $GREP" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $GREP" >&5 $as_echo "$GREP" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "mkdir", so it can be a program name with args. set dummy mkdir; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MKDIR+set}" = set; then +if test "${ac_cv_path_MKDIR+set}" = set; then : $as_echo_n "(cached) " >&6 else case $MKDIR in @@ -5687,14 +5085,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MKDIR="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_MKDIR" && ac_cv_path_MKDIR="mkdir" @@ -5703,19 +5101,19 @@ fi MKDIR=$ac_cv_path_MKDIR if test -n "$MKDIR"; then - { $as_echo "$as_me:$LINENO: result: $MKDIR" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MKDIR" >&5 $as_echo "$MKDIR" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "mv", so it can be a program name with args. set dummy mv; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_MV+set}" = set; then +if test "${ac_cv_path_MV+set}" = set; then : $as_echo_n "(cached) " >&6 else case $MV in @@ -5728,14 +5126,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_MV="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_MV" && ac_cv_path_MV="mv" @@ -5744,10 +5142,10 @@ fi MV=$ac_cv_path_MV if test -n "$MV"; then - { $as_echo "$as_me:$LINENO: result: $MV" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $MV" >&5 $as_echo "$MV" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5755,9 +5153,9 @@ if test -n "$ac_tool_prefix"; then # Extract the first word of "${ac_tool_prefix}ranlib", so it can be a program name with args. set dummy ${ac_tool_prefix}ranlib; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_RANLIB+set}" = set; then +if test "${ac_cv_prog_RANLIB+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$RANLIB"; then @@ -5768,24 +5166,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_RANLIB="${ac_tool_prefix}ranlib" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi RANLIB=$ac_cv_prog_RANLIB if test -n "$RANLIB"; then - { $as_echo "$as_me:$LINENO: result: $RANLIB" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RANLIB" >&5 $as_echo "$RANLIB" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5795,9 +5193,9 @@ ac_ct_RANLIB=$RANLIB # Extract the first word of "ranlib", so it can be a program name with args. set dummy ranlib; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then +if test "${ac_cv_prog_ac_ct_RANLIB+set}" = set; then : $as_echo_n "(cached) " >&6 else if test -n "$ac_ct_RANLIB"; then @@ -5808,24 +5206,24 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_prog_ac_ct_RANLIB="ranlib" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS fi fi ac_ct_RANLIB=$ac_cv_prog_ac_ct_RANLIB if test -n "$ac_ct_RANLIB"; then - { $as_echo "$as_me:$LINENO: result: $ac_ct_RANLIB" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_ct_RANLIB" >&5 $as_echo "$ac_ct_RANLIB" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -5834,7 +5232,7 @@ else case $cross_compiling:$ac_tool_warned in yes:) -{ $as_echo "$as_me:$LINENO: WARNING: using cross tools not prefixed with host triplet" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: using cross tools not prefixed with host triplet" >&5 $as_echo "$as_me: WARNING: using cross tools not prefixed with host triplet" >&2;} ac_tool_warned=yes ;; esac @@ -5846,9 +5244,9 @@ # Extract the first word of "rm", so it can be a program name with args. set dummy rm; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_RM+set}" = set; then +if test "${ac_cv_path_RM+set}" = set; then : $as_echo_n "(cached) " >&6 else case $RM in @@ -5861,14 +5259,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_RM="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_RM" && ac_cv_path_RM="rm" @@ -5877,19 +5275,19 @@ fi RM=$ac_cv_path_RM if test -n "$RM"; then - { $as_echo "$as_me:$LINENO: result: $RM" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $RM" >&5 $as_echo "$RM" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "sed", so it can be a program name with args. set dummy sed; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_SED+set}" = set; then +if test "${ac_cv_path_SED+set}" = set; then : $as_echo_n "(cached) " >&6 else case $SED in @@ -5902,14 +5300,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_SED="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_SED" && ac_cv_path_SED="sed" @@ -5918,19 +5316,19 @@ fi SED=$ac_cv_path_SED if test -n "$SED"; then - { $as_echo "$as_me:$LINENO: result: $SED" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $SED" >&5 $as_echo "$SED" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "tar", so it can be a program name with args. set dummy tar; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_TAR+set}" = set; then +if test "${ac_cv_path_TAR+set}" = set; then : $as_echo_n "(cached) " >&6 else case $TAR in @@ -5943,14 +5341,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_TAR="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_TAR" && ac_cv_path_TAR="gtar" @@ -5959,19 +5357,19 @@ fi TAR=$ac_cv_path_TAR if test -n "$TAR"; then - { $as_echo "$as_me:$LINENO: result: $TAR" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $TAR" >&5 $as_echo "$TAR" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "pwd", so it can be a program name with args. set dummy pwd; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_BINPWD+set}" = set; then +if test "${ac_cv_path_BINPWD+set}" = set; then : $as_echo_n "(cached) " >&6 else case $BINPWD in @@ -5984,14 +5382,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_BINPWD="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_BINPWD" && ac_cv_path_BINPWD="pwd" @@ -6000,19 +5398,19 @@ fi BINPWD=$ac_cv_path_BINPWD if test -n "$BINPWD"; then - { $as_echo "$as_me:$LINENO: result: $BINPWD" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $BINPWD" >&5 $as_echo "$BINPWD" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "cat", so it can be a program name with args. set dummy cat; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_CAT+set}" = set; then +if test "${ac_cv_path_CAT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $CAT in @@ -6025,14 +5423,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_CAT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_CAT" && ac_cv_path_CAT="cat" @@ -6041,10 +5439,10 @@ fi CAT=$ac_cv_path_CAT if test -n "$CAT"; then - { $as_echo "$as_me:$LINENO: result: $CAT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $CAT" >&5 $as_echo "$CAT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6052,9 +5450,9 @@ # Extract the first word of "llvm-as", so it can be a program name with args. set dummy llvm-as; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_LLVMAS+set}" = set; then +if test "${ac_cv_path_LLVMAS+set}" = set; then : $as_echo_n "(cached) " >&6 else case $LLVMAS in @@ -6067,14 +5465,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_LLVMAS="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_LLVMAS" && ac_cv_path_LLVMAS="llvm-as" @@ -6083,19 +5481,19 @@ fi LLVMAS=$ac_cv_path_LLVMAS if test -n "$LLVMAS"; then - { $as_echo "$as_me:$LINENO: result: $LLVMAS" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLVMAS" >&5 $as_echo "$LLVMAS" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "llc", so it can be a program name with args. set dummy llc; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_LLC+set}" = set; then +if test "${ac_cv_path_LLC+set}" = set; then : $as_echo_n "(cached) " >&6 else case $LLC in @@ -6108,14 +5506,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_LLC="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS test -z "$ac_cv_path_LLC" && ac_cv_path_LLC="llc" @@ -6124,19 +5522,19 @@ fi LLC=$ac_cv_path_LLC if test -n "$LLC"; then - { $as_echo "$as_me:$LINENO: result: $LLC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLC" >&5 $as_echo "$LLC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "ant", so it can be a program name with args. set dummy ant; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_ANT+set}" = set; then +if test "${ac_cv_path_ANT+set}" = set; then : $as_echo_n "(cached) " >&6 else case $ANT in @@ -6149,14 +5547,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_ANT="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -6164,10 +5562,10 @@ fi ANT=$ac_cv_path_ANT if test -n "$ANT"; then - { $as_echo "$as_me:$LINENO: result: $ANT" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $ANT" >&5 $as_echo "$ANT" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6187,10 +5585,10 @@ # OS/2's system install, which has a completely different semantic # ./install, which can be erroneously created by make from ./install.sh. # Reject install programs that cannot install multiple files. -{ $as_echo "$as_me:$LINENO: checking for a BSD-compatible install" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for a BSD-compatible install" >&5 $as_echo_n "checking for a BSD-compatible install... " >&6; } if test -z "$INSTALL"; then -if test "${ac_cv_path_install+set}" = set; then +if test "${ac_cv_path_install+set}" = set; then : $as_echo_n "(cached) " >&6 else as_save_IFS=$IFS; IFS=$PATH_SEPARATOR @@ -6198,11 +5596,11 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - # Account for people who put trailing slashes in PATH elements. -case $as_dir/ in - ./ | .// | /cC/* | \ + # Account for people who put trailing slashes in PATH elements. +case $as_dir/ in #(( + ./ | .// | /[cC]/* | \ /etc/* | /usr/sbin/* | /usr/etc/* | /sbin/* | /usr/afsws/bin/* | \ - ?:\\/os2\\/install\\/* | ?:\\/OS2\\/INSTALL\\/* | \ + ?:[\\/]os2[\\/]install[\\/]* | ?:[\\/]OS2[\\/]INSTALL[\\/]* | \ /usr/ucb/* ) ;; *) # OSF1 and SCO ODT 3.0 have their own names for install. @@ -6239,7 +5637,7 @@ ;; esac -done + done IFS=$as_save_IFS rm -rf conftest.one conftest.two conftest.dir @@ -6255,7 +5653,7 @@ INSTALL=$ac_install_sh fi fi -{ $as_echo "$as_me:$LINENO: result: $INSTALL" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $INSTALL" >&5 $as_echo "$INSTALL" >&6; } # Use test -z because SunOS4 sh mishandles braces in ${var-val}. @@ -6272,9 +5670,9 @@ LLVMGXX="llvm-g++${EXEEXT}" # Extract the first word of "$LLVMGCC", so it can be a program name with args. set dummy $LLVMGCC; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_LLVMGCC+set}" = set; then +if test "${ac_cv_path_LLVMGCC+set}" = set; then : $as_echo_n "(cached) " >&6 else case $LLVMGCC in @@ -6287,14 +5685,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_LLVMGCC="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -6302,19 +5700,19 @@ fi LLVMGCC=$ac_cv_path_LLVMGCC if test -n "$LLVMGCC"; then - { $as_echo "$as_me:$LINENO: result: $LLVMGCC" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLVMGCC" >&5 $as_echo "$LLVMGCC" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi # Extract the first word of "$LLVMGXX", so it can be a program name with args. set dummy $LLVMGXX; ac_word=$2 -{ $as_echo "$as_me:$LINENO: checking for $ac_word" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for $ac_word" >&5 $as_echo_n "checking for $ac_word... " >&6; } -if test "${ac_cv_path_LLVMGXX+set}" = set; then +if test "${ac_cv_path_LLVMGXX+set}" = set; then : $as_echo_n "(cached) " >&6 else case $LLVMGXX in @@ -6327,14 +5725,14 @@ do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - for ac_exec_ext in '' $ac_executable_extensions; do + for ac_exec_ext in '' $ac_executable_extensions; do if { test -f "$as_dir/$ac_word$ac_exec_ext" && $as_test_x "$as_dir/$ac_word$ac_exec_ext"; }; then ac_cv_path_LLVMGXX="$as_dir/$ac_word$ac_exec_ext" - $as_echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5 + $as_echo "$as_me:${as_lineno-$LINENO}: found $as_dir/$ac_word$ac_exec_ext" >&5 break 2 fi done -done + done IFS=$as_save_IFS ;; @@ -6342,10 +5740,10 @@ fi LLVMGXX=$ac_cv_path_LLVMGXX if test -n "$LLVMGXX"; then - { $as_echo "$as_me:$LINENO: result: $LLVMGXX" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: $LLVMGXX" >&5 $as_echo "$LLVMGXX" >&6; } else - { $as_echo "$as_me:$LINENO: result: no" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: result: no" >&5 $as_echo "no" >&6; } fi @@ -6363,7 +5761,7 @@ fi -{ $as_echo "$as_me:$LINENO: checking tool compatibility" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking tool compatibility" >&5 $as_echo_n "checking tool compatibility... " >&6; } ICC=no @@ -6379,75 +5777,44 @@ if test "$GCC" != "yes" && test "$ICC" != "yes" then - { { $as_echo "$as_me:$LINENO: error: gcc|icc required but not found" >&5 -$as_echo "$as_me: error: gcc|icc required but not found" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "gcc|icc required but not found" "$LINENO" 5 fi if test "$GXX" != "yes" && test "$IXX" != "yes" then - { { $as_echo "$as_me:$LINENO: error: g++|icc required but not found" >&5 -$as_echo "$as_me: error: g++|icc required but not found" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "g++|icc required but not found" "$LINENO" 5 fi if test "$GCC" = "yes" then - cat >conftest.$ac_ext <<_ACEOF + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ #if !defined(__GNUC__) || __GNUC__ < 3 #error Unsupported GCC version #endif _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +if ac_fn_c_try_compile "$LINENO"; then : - { { $as_echo "$as_me:$LINENO: error: gcc 3.x required, but you have a lower version" >&5 -$as_echo "$as_me: error: gcc 3.x required, but you have a lower version" >&2;} - { (exit 1); exit 1; }; } +else + as_fn_error "gcc 3.x required, but you have a lower version" "$LINENO" 5 fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext fi -{ $as_echo "$as_me:$LINENO: result: ok" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: ok" >&5 $as_echo "ok" >&6; } - -{ $as_echo "$as_me:$LINENO: checking for inflate in -lz" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for inflate in -lz" >&5 $as_echo_n "checking for inflate in -lz... " >&6; } -if test "${ac_cv_lib_z_inflate+set}" = set; then +if test "${ac_cv_lib_z_inflate+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lz $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -6465,43 +5832,18 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_z_inflate=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_lib_z_inflate=no + ac_cv_lib_z_inflate=no fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_z_inflate" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_z_inflate" >&5 $as_echo "$ac_cv_lib_z_inflate" >&6; } -if test "x$ac_cv_lib_z_inflate" = x""yes; then +if test "x$ac_cv_lib_z_inflate" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LIBZ 1 _ACEOF @@ -6510,27 +5852,20 @@ else \ - { { $as_echo "$as_me:$LINENO: error: You need to install the zlib package (z)." >&5 -$as_echo "$as_me: error: You need to install the zlib package (z)." >&2;} - { (exit 1); exit 1; }; } + as_fn_error "You need to install the zlib package (z)." "$LINENO" 5 fi if test "x$gc" = "xboehm"; then - -{ $as_echo "$as_me:$LINENO: checking for GC_malloc in -lgc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking for GC_malloc in -lgc" >&5 $as_echo_n "checking for GC_malloc in -lgc... " >&6; } -if test "${ac_cv_lib_gc_GC_malloc+set}" = set; then +if test "${ac_cv_lib_gc_GC_malloc+set}" = set; then : $as_echo_n "(cached) " >&6 else ac_check_lib_save_LIBS=$LIBS LIBS="-lgc $LIBS" -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF +cat confdefs.h - <<_ACEOF >conftest.$ac_ext /* end confdefs.h. */ /* Override any GCC internal prototype to avoid an error. @@ -6548,43 +5883,18 @@ return 0; } _ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then +if ac_fn_c_try_link "$LINENO"; then : ac_cv_lib_gc_GC_malloc=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_lib_gc_GC_malloc=no + ac_cv_lib_gc_GC_malloc=no fi - -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext +rm -f core conftest.err conftest.$ac_objext \ + conftest$ac_exeext conftest.$ac_ext LIBS=$ac_check_lib_save_LIBS fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_lib_gc_GC_malloc" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_lib_gc_GC_malloc" >&5 $as_echo "$ac_cv_lib_gc_GC_malloc" >&6; } -if test "x$ac_cv_lib_gc_GC_malloc" = x""yes; then +if test "x$ac_cv_lib_gc_GC_malloc" = x""yes; then : cat >>confdefs.h <<_ACEOF #define HAVE_LIBGC 1 _ACEOF @@ -6593,993 +5903,140 @@ else \ - { { $as_echo "$as_me:$LINENO: error: You need to install the boehm-gc package (gc)." >&5 -$as_echo "$as_me: error: You need to install the boehm-gc package (gc)." >&2;} - { (exit 1); exit 1; }; } + as_fn_error "You need to install the boehm-gc package (gc)." "$LINENO" 5 fi fi -if test "${ac_cv_header_zlib_h+set}" = set; then - { $as_echo "$as_me:$LINENO: checking for zlib.h" >&5 -$as_echo_n "checking for zlib.h... " >&6; } -if test "${ac_cv_header_zlib_h+set}" = set; then - $as_echo_n "(cached) " >&6 -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_zlib_h" >&5 -$as_echo "$ac_cv_header_zlib_h" >&6; } -else - # Is the header compilable? -{ $as_echo "$as_me:$LINENO: checking zlib.h usability" >&5 -$as_echo_n "checking zlib.h usability... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes +ac_fn_c_check_header_mongrel "$LINENO" "zlib.h" "ac_cv_header_zlib_h" "$ac_includes_default" +if test "x$ac_cv_header_zlib_h" = x""yes; then : + else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 + \ + as_fn_error "You need to install the zlib devel package (zlib.h)." "$LINENO" 5 - ac_header_compiler=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } - -# Is the header present? -{ $as_echo "$as_me:$LINENO: checking zlib.h presence" >&5 -$as_echo_n "checking zlib.h presence... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no -fi -rm -f conftest.err conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } +if test "x$gc" = "xboehm"; then + ac_fn_c_check_header_mongrel "$LINENO" "gc/gc.h" "ac_cv_header_gc_gc_h" "$ac_includes_default" +if test "x$ac_cv_header_gc_gc_h" = x""yes; then : -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: zlib.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: zlib.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: zlib.h: present but cannot be compiled" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: zlib.h: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: zlib.h: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: zlib.h: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: proceeding with the preprocessor's result" >&5 -$as_echo "$as_me: WARNING: zlib.h: proceeding with the preprocessor's result" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: zlib.h: in the future, the compiler will take precedence" >&5 -$as_echo "$as_me: WARNING: zlib.h: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## --------------------------------------- ## -## Report this to nicolas.geoffray at lip6.fr ## -## --------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ $as_echo "$as_me:$LINENO: checking for zlib.h" >&5 -$as_echo_n "checking for zlib.h... " >&6; } -if test "${ac_cv_header_zlib_h+set}" = set; then - $as_echo_n "(cached) " >&6 else - ac_cv_header_zlib_h=$ac_header_preproc -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_zlib_h" >&5 -$as_echo "$ac_cv_header_zlib_h" >&6; } + \ + as_fn_error "You need to install the boehm-gc devel package (gc/gc.h)." "$LINENO" 5 fi -if test "x$ac_cv_header_zlib_h" = x""yes; then - : -else - \ - { { $as_echo "$as_me:$LINENO: error: You need to install the zlib devel package (zlib.h)." >&5 -$as_echo "$as_me: error: You need to install the zlib devel package (zlib.h)." >&2;} - { (exit 1); exit 1; }; } + fi +nl===-----------------------------------------------------------------------=== + +ac_fn_c_check_type "$LINENO" "pid_t" "ac_cv_type_pid_t" "$ac_includes_default" +if test "x$ac_cv_type_pid_t" = x""yes; then : -if test "x$gc" = "xboehm"; then - if test "${ac_cv_header_gc_gc_h+set}" = set; then - { $as_echo "$as_me:$LINENO: checking for gc/gc.h" >&5 -$as_echo_n "checking for gc/gc.h... " >&6; } -if test "${ac_cv_header_gc_gc_h+set}" = set; then - $as_echo_n "(cached) " >&6 -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_gc_gc_h" >&5 -$as_echo "$ac_cv_header_gc_gc_h" >&6; } else - # Is the header compilable? -{ $as_echo "$as_me:$LINENO: checking gc/gc.h usability" >&5 -$as_echo_n "checking gc/gc.h usability... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -#include + +cat >>confdefs.h <<_ACEOF +#define pid_t int _ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_header_compiler=yes -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_compiler=no fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_compiler" >&5 -$as_echo "$ac_header_compiler" >&6; } +ac_fn_c_check_type "$LINENO" "size_t" "ac_cv_type_size_t" "$ac_includes_default" +if test "x$ac_cv_type_size_t" = x""yes; then : -# Is the header present? -{ $as_echo "$as_me:$LINENO: checking gc/gc.h presence" >&5 -$as_echo_n "checking gc/gc.h presence... " >&6; } -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -_ACEOF -if { (ac_try="$ac_cpp conftest.$ac_ext" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_cpp conftest.$ac_ext") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } >/dev/null && { - test -z "$ac_c_preproc_warn_flag$ac_c_werror_flag" || - test ! -s conftest.err - }; then - ac_header_preproc=yes else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - ac_header_preproc=no +cat >>confdefs.h <<_ACEOF +#define size_t unsigned int +_ACEOF + fi -rm -f conftest.err conftest.$ac_ext -{ $as_echo "$as_me:$LINENO: result: $ac_header_preproc" >&5 -$as_echo "$ac_header_preproc" >&6; } +{ $as_echo "$as_me:${as_lineno-$LINENO}: checking whether struct tm is in sys/time.h or time.h" >&5 +$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; } +if test "${ac_cv_struct_tm+set}" = set; then : + $as_echo_n "(cached) " >&6 +else + cat confdefs.h - <<_ACEOF >conftest.$ac_ext +/* end confdefs.h. */ +#include +#include -# So? What about this header? -case $ac_header_compiler:$ac_header_preproc:$ac_c_preproc_warn_flag in - yes:no: ) - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: accepted by the compiler, rejected by the preprocessor!" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: accepted by the compiler, rejected by the preprocessor!" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: proceeding with the compiler's result" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: proceeding with the compiler's result" >&2;} - ac_header_preproc=yes - ;; - no:yes:* ) - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: present but cannot be compiled" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: present but cannot be compiled" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: check for missing prerequisite headers?" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: check for missing prerequisite headers?" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: see the Autoconf documentation" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: see the Autoconf documentation" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: section \"Present But Cannot Be Compiled\"" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: section \"Present But Cannot Be Compiled\"" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: proceeding with the preprocessor's result" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: proceeding with the preprocessor's result" >&2;} - { $as_echo "$as_me:$LINENO: WARNING: gc/gc.h: in the future, the compiler will take precedence" >&5 -$as_echo "$as_me: WARNING: gc/gc.h: in the future, the compiler will take precedence" >&2;} - ( cat <<\_ASBOX -## --------------------------------------- ## -## Report this to nicolas.geoffray at lip6.fr ## -## --------------------------------------- ## -_ASBOX - ) | sed "s/^/$as_me: WARNING: /" >&2 - ;; -esac -{ $as_echo "$as_me:$LINENO: checking for gc/gc.h" >&5 -$as_echo_n "checking for gc/gc.h... " >&6; } -if test "${ac_cv_header_gc_gc_h+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_header_gc_gc_h=$ac_header_preproc -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_header_gc_gc_h" >&5 -$as_echo "$ac_cv_header_gc_gc_h" >&6; } - -fi -if test "x$ac_cv_header_gc_gc_h" = x""yes; then - : -else - \ - { { $as_echo "$as_me:$LINENO: error: You need to install the boehm-gc devel package (gc/gc.h)." >&5 -$as_echo "$as_me: error: You need to install the boehm-gc devel package (gc/gc.h)." >&2;} - { (exit 1); exit 1; }; } - -fi - - -fi - - -nl===-----------------------------------------------------------------------=== - -{ $as_echo "$as_me:$LINENO: checking for pid_t" >&5 -$as_echo_n "checking for pid_t... " >&6; } -if test "${ac_cv_type_pid_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_pid_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (pid_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((pid_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_pid_t=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_pid_t" >&5 -$as_echo "$ac_cv_type_pid_t" >&6; } -if test "x$ac_cv_type_pid_t" = x""yes; then - : -else - -cat >>confdefs.h <<_ACEOF -#define pid_t int -_ACEOF - -fi - -{ $as_echo "$as_me:$LINENO: checking for size_t" >&5 -$as_echo_n "checking for size_t... " >&6; } -if test "${ac_cv_type_size_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_size_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (size_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((size_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_size_t=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_size_t" >&5 -$as_echo "$ac_cv_type_size_t" >&6; } -if test "x$ac_cv_type_size_t" = x""yes; then - : -else - -cat >>confdefs.h <<_ACEOF -#define size_t unsigned int -_ACEOF - -fi - -{ $as_echo "$as_me:$LINENO: checking whether struct tm is in sys/time.h or time.h" >&5 -$as_echo_n "checking whether struct tm is in sys/time.h or time.h... " >&6; } -if test "${ac_cv_struct_tm+set}" = set; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -#include -#include - -int -main () -{ -struct tm tm; - int *p = &tm.tm_sec; - return !p; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - ac_cv_struct_tm=time.h -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_struct_tm=sys/time.h -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_struct_tm" >&5 -$as_echo "$ac_cv_struct_tm" >&6; } -if test $ac_cv_struct_tm = sys/time.h; then - -cat >>confdefs.h <<\_ACEOF -#define TM_IN_SYS_TIME 1 -_ACEOF - -fi - -{ $as_echo "$as_me:$LINENO: checking for int64_t" >&5 -$as_echo_n "checking for int64_t... " >&6; } -if test "${ac_cv_type_int64_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_int64_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (int64_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((int64_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_int64_t=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_int64_t" >&5 -$as_echo "$ac_cv_type_int64_t" >&6; } -if test "x$ac_cv_type_int64_t" = x""yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_INT64_T 1 -_ACEOF - - -else - { { $as_echo "$as_me:$LINENO: error: Type int64_t required but not found" >&5 -$as_echo "$as_me: error: Type int64_t required but not found" >&2;} - { (exit 1); exit 1; }; } -fi - -{ $as_echo "$as_me:$LINENO: checking for uint64_t" >&5 -$as_echo_n "checking for uint64_t... " >&6; } -if test "${ac_cv_type_uint64_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_uint64_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default int main () { -if (sizeof (uint64_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((uint64_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_uint64_t=yes -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - -fi - -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_uint64_t" >&5 -$as_echo "$ac_cv_type_uint64_t" >&6; } -if test "x$ac_cv_type_uint64_t" = x""yes; then - -cat >>confdefs.h <<_ACEOF -#define HAVE_UINT64_T 1 -_ACEOF - - -else - { $as_echo "$as_me:$LINENO: checking for u_int64_t" >&5 -$as_echo_n "checking for u_int64_t... " >&6; } -if test "${ac_cv_type_u_int64_t+set}" = set; then - $as_echo_n "(cached) " >&6 -else - ac_cv_type_u_int64_t=no -cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof (u_int64_t)) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ -_ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -$ac_includes_default -int -main () -{ -if (sizeof ((u_int64_t))) - return 0; - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext -if { (ac_try="$ac_compile" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_compile") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest.$ac_objext; then - : +struct tm tm; + int *p = &tm.tm_sec; + return !p; + ; + return 0; +} +_ACEOF +if ac_fn_c_try_compile "$LINENO"; then : + ac_cv_struct_tm=time.h else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - ac_cv_type_u_int64_t=yes + ac_cv_struct_tm=sys/time.h fi - rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 +fi +{ $as_echo "$as_me:${as_lineno-$LINENO}: result: $ac_cv_struct_tm" >&5 +$as_echo "$ac_cv_struct_tm" >&6; } +if test $ac_cv_struct_tm = sys/time.h; then +$as_echo "#define TM_IN_SYS_TIME 1" >>confdefs.h fi -rm -f core conftest.err conftest.$ac_objext conftest.$ac_ext -fi -{ $as_echo "$as_me:$LINENO: result: $ac_cv_type_u_int64_t" >&5 -$as_echo "$ac_cv_type_u_int64_t" >&6; } -if test "x$ac_cv_type_u_int64_t" = x""yes; then +ac_fn_c_check_type "$LINENO" "int64_t" "ac_cv_type_int64_t" "$ac_includes_default" +if test "x$ac_cv_type_int64_t" = x""yes; then : cat >>confdefs.h <<_ACEOF -#define HAVE_U_INT64_T 1 +#define HAVE_INT64_T 1 _ACEOF else - { { $as_echo "$as_me:$LINENO: error: Type uint64_t or u_int64_t required but not found" >&5 -$as_echo "$as_me: error: Type uint64_t or u_int64_t required but not found" >&2;} - { (exit 1); exit 1; }; } -fi - + as_fn_error "Type int64_t required but not found" "$LINENO" 5 fi +ac_fn_c_check_type "$LINENO" "uint64_t" "ac_cv_type_uint64_t" "$ac_includes_default" +if test "x$ac_cv_type_uint64_t" = x""yes; then : - - - -for ac_func in setjmp longjmp -do -as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` -{ $as_echo "$as_me:$LINENO: checking for $ac_func" >&5 -$as_echo_n "checking for $ac_func... " >&6; } -if { as_var=$as_ac_var; eval "test \"\${$as_var+set}\" = set"; }; then - $as_echo_n "(cached) " >&6 -else - cat >conftest.$ac_ext <<_ACEOF -/* confdefs.h. */ +cat >>confdefs.h <<_ACEOF +#define HAVE_UINT64_T 1 _ACEOF -cat confdefs.h >>conftest.$ac_ext -cat >>conftest.$ac_ext <<_ACEOF -/* end confdefs.h. */ -/* Define $ac_func to an innocuous variant, in case declares $ac_func. - For example, HP-UX 11i declares gettimeofday. */ -#define $ac_func innocuous_$ac_func -/* System header to define __stub macros and hopefully few prototypes, - which can conflict with char $ac_func (); below. - Prefer to if __STDC__ is defined, since - exists even on freestanding compilers. */ -#ifdef __STDC__ -# include -#else -# include -#endif +else + ac_fn_c_check_type "$LINENO" "u_int64_t" "ac_cv_type_u_int64_t" "$ac_includes_default" +if test "x$ac_cv_type_u_int64_t" = x""yes; then : -#undef $ac_func +cat >>confdefs.h <<_ACEOF +#define HAVE_U_INT64_T 1 +_ACEOF -/* Override any GCC internal prototype to avoid an error. - Use char because int might match the return type of a GCC - builtin and then its argument prototype would still apply. */ -#ifdef __cplusplus -extern "C" -#endif -char $ac_func (); -/* The GNU C library defines this for functions which it implements - to always fail with ENOSYS. Some functions are actually named - something starting with __ and the normal name is an alias. */ -#if defined __stub_$ac_func || defined __stub___$ac_func -choke me -#endif -int -main () -{ -return $ac_func (); - ; - return 0; -} -_ACEOF -rm -f conftest.$ac_objext conftest$ac_exeext -if { (ac_try="$ac_link" -case "(($ac_try" in - *\"* | *\`* | *\\*) ac_try_echo=\$ac_try;; - *) ac_try_echo=$ac_try;; -esac -eval ac_try_echo="\"\$as_me:$LINENO: $ac_try_echo\"" -$as_echo "$ac_try_echo") >&5 - (eval "$ac_link") 2>conftest.er1 - ac_status=$? - grep -v '^ *+' conftest.er1 >conftest.err - rm -f conftest.er1 - cat conftest.err >&5 - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); } && { - test -z "$ac_c_werror_flag" || - test ! -s conftest.err - } && test -s conftest$ac_exeext && { - test "$cross_compiling" = yes || - $as_test_x conftest$ac_exeext - }; then - eval "$as_ac_var=yes" else - $as_echo "$as_me: failed program was:" >&5 -sed 's/^/| /' conftest.$ac_ext >&5 - - eval "$as_ac_var=no" + as_fn_error "Type uint64_t or u_int64_t required but not found" "$LINENO" 5 fi -rm -rf conftest.dSYM -rm -f core conftest.err conftest.$ac_objext conftest_ipa8_conftest.oo \ - conftest$ac_exeext conftest.$ac_ext fi -ac_res=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - { $as_echo "$as_me:$LINENO: result: $ac_res" >&5 -$as_echo "$ac_res" >&6; } -as_val=`eval 'as_val=${'$as_ac_var'} - $as_echo "$as_val"'` - if test "x$as_val" = x""yes; then + + + +for ac_func in setjmp longjmp +do : + as_ac_var=`$as_echo "ac_cv_func_$ac_func" | $as_tr_sh` +ac_fn_c_check_func "$LINENO" "$ac_func" "$as_ac_var" +eval as_val=\$$as_ac_var + if test "x$as_val" = x""yes; then : cat >>confdefs.h <<_ACEOF #define `$as_echo "HAVE_$ac_func" | $as_tr_cpp` 1 _ACEOF @@ -7644,13 +6101,13 @@ case $ac_val in #( *${as_nl}*) case $ac_var in #( - *_cv_*) { $as_echo "$as_me:$LINENO: WARNING: cache variable $ac_var contains a newline" >&5 + *_cv_*) { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: cache variable $ac_var contains a newline" >&5 $as_echo "$as_me: WARNING: cache variable $ac_var contains a newline" >&2;} ;; esac case $ac_var in #( _ | IFS | as_nl) ;; #( BASH_ARGV | BASH_SOURCE) eval $ac_var= ;; #( - *) $as_unset $ac_var ;; + *) { eval $ac_var=; unset $ac_var;} ;; esac ;; esac done @@ -7658,8 +6115,8 @@ (set) 2>&1 | case $as_nl`(ac_space=' '; set) 2>&1` in #( *${as_nl}ac_space=\ *) - # `set' does not quote correctly, so add quotes (double-quote - # substitution turns \\\\ into \\, and sed turns \\ into \). + # `set' does not quote correctly, so add quotes: double-quote + # substitution turns \\\\ into \\, and sed turns \\ into \. sed -n \ "s/'/'\\\\''/g; s/^\\([_$as_cr_alnum]*_cv_[_$as_cr_alnum]*\\)=\\(.*\\)/\\1='\\2'/p" @@ -7682,11 +6139,11 @@ if diff "$cache_file" confcache >/dev/null 2>&1; then :; else if test -w "$cache_file"; then test "x$cache_file" != "x/dev/null" && - { $as_echo "$as_me:$LINENO: updating cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: updating cache $cache_file" >&5 $as_echo "$as_me: updating cache $cache_file" >&6;} cat confcache >$cache_file else - { $as_echo "$as_me:$LINENO: not updating unwritable cache $cache_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: not updating unwritable cache $cache_file" >&5 $as_echo "$as_me: not updating unwritable cache $cache_file" >&6;} fi fi @@ -7706,8 +6163,8 @@ ac_i=`$as_echo "$ac_i" | sed "$ac_script"` # 2. Prepend LIBOBJDIR. When used with automake>=1.10 LIBOBJDIR # will be set to the directory where LIBOBJS objects are built. - ac_libobjs="$ac_libobjs \${LIBOBJDIR}$ac_i\$U.$ac_objext" - ac_ltlibobjs="$ac_ltlibobjs \${LIBOBJDIR}$ac_i"'$U.lo' + as_fn_append ac_libobjs " \${LIBOBJDIR}$ac_i\$U.$ac_objext" + as_fn_append ac_ltlibobjs " \${LIBOBJDIR}$ac_i"'$U.lo' done LIBOBJS=$ac_libobjs @@ -7719,9 +6176,10 @@ ac_write_fail=0 ac_clean_files_save=$ac_clean_files ac_clean_files="$ac_clean_files $CONFIG_STATUS" -{ $as_echo "$as_me:$LINENO: creating $CONFIG_STATUS" >&5 +{ $as_echo "$as_me:${as_lineno-$LINENO}: creating $CONFIG_STATUS" >&5 $as_echo "$as_me: creating $CONFIG_STATUS" >&6;} -cat >$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 +as_write_fail=0 +cat >$CONFIG_STATUS <<_ASEOF || as_write_fail=1 #! $SHELL # Generated by $as_me. # Run this file to recreate the current configuration. @@ -7731,17 +6189,18 @@ debug=false ac_cs_recheck=false ac_cs_silent=false -SHELL=\${CONFIG_SHELL-$SHELL} -_ACEOF -cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 -## --------------------- ## -## M4sh Initialization. ## -## --------------------- ## +SHELL=\${CONFIG_SHELL-$SHELL} +export SHELL +_ASEOF +cat >>$CONFIG_STATUS <<\_ASEOF || as_write_fail=1 +## -------------------- ## +## M4sh Initialization. ## +## -------------------- ## # Be more Bourne compatible DUALCASE=1; export DUALCASE # for MKS sh -if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then +if test -n "${ZSH_VERSION+set}" && (emulate sh) >/dev/null 2>&1; then : emulate sh NULLCMD=: # Pre-4.2 versions of Zsh do word splitting on ${1+"$@"}, which @@ -7749,23 +6208,15 @@ alias -g '${1+"$@"}'='"$@"' setopt NO_GLOB_SUBST else - case `(set -o) 2>/dev/null` in - *posix*) set -o posix ;; + case `(set -o) 2>/dev/null` in #( + *posix*) : + set -o posix ;; #( + *) : + ;; esac - fi - - -# PATH needs CR -# Avoid depending upon Character Ranges. -as_cr_letters='abcdefghijklmnopqrstuvwxyz' -as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' -as_cr_Letters=$as_cr_letters$as_cr_LETTERS -as_cr_digits='0123456789' -as_cr_alnum=$as_cr_Letters$as_cr_digits - as_nl=' ' export as_nl @@ -7773,7 +6224,13 @@ as_echo='\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\' as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo as_echo=$as_echo$as_echo$as_echo$as_echo$as_echo$as_echo -if (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then +# Prefer a ksh shell builtin over an external printf program on Solaris, +# but without wasting forks for bash or zsh. +if test -z "$BASH_VERSION$ZSH_VERSION" \ + && (test "X`print -r -- $as_echo`" = "X$as_echo") 2>/dev/null; then + as_echo='print -r --' + as_echo_n='print -rn --' +elif (test "X`printf %s $as_echo`" = "X$as_echo") 2>/dev/null; then as_echo='printf %s\n' as_echo_n='printf %s' else @@ -7784,7 +6241,7 @@ as_echo_body='eval expr "X$1" : "X\\(.*\\)"' as_echo_n_body='eval arg=$1; - case $arg in + case $arg in #( *"$as_nl"*) expr "X$arg" : "X\\(.*\\)$as_nl"; arg=`expr "X$arg" : ".*$as_nl\\(.*\\)"`;; @@ -7807,13 +6264,6 @@ } fi -# Support unset when possible. -if ( (MAIL=60; unset MAIL) || exit) >/dev/null 2>&1; then - as_unset=unset -else - as_unset=false -fi - # IFS # We need space, tab and new line, in precisely that order. Quoting is @@ -7823,15 +6273,15 @@ IFS=" "" $as_nl" # Find who we are. Look in the path if we contain no directory separator. -case $0 in +case $0 in #(( *[\\/]* ) as_myself=$0 ;; *) as_save_IFS=$IFS; IFS=$PATH_SEPARATOR for as_dir in $PATH do IFS=$as_save_IFS test -z "$as_dir" && as_dir=. - test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break -done + test -r "$as_dir/$0" && as_myself=$as_dir/$0 && break + done IFS=$as_save_IFS ;; @@ -7843,12 +6293,16 @@ fi if test ! -f "$as_myself"; then $as_echo "$as_myself: error: cannot find myself; rerun with an absolute file name" >&2 - { (exit 1); exit 1; } + exit 1 fi -# Work around bugs in pre-3.0 UWIN ksh. -for as_var in ENV MAIL MAILPATH -do ($as_unset $as_var) >/dev/null 2>&1 && $as_unset $as_var +# Unset variables that we do not need and which cause bugs (e.g. in +# pre-3.0 UWIN ksh). But do not cause bugs in bash 2.01; the "|| exit 1" +# suppresses any "Segmentation fault" message there. '((' could +# trigger a bug in pdksh 5.2.14. +for as_var in BASH_ENV ENV MAIL MAILPATH +do eval test x\${$as_var+set} = xset \ + && ( (unset $as_var) || exit 1) >/dev/null 2>&1 && unset $as_var || : done PS1='$ ' PS2='> ' @@ -7860,7 +6314,89 @@ LANGUAGE=C export LANGUAGE -# Required to use basename. +# CDPATH. +(unset CDPATH) >/dev/null 2>&1 && unset CDPATH + + +# as_fn_error ERROR [LINENO LOG_FD] +# --------------------------------- +# Output "`basename $0`: error: ERROR" to stderr. If LINENO and LOG_FD are +# provided, also output the error to LOG_FD, referencing LINENO. Then exit the +# script with status $?, using 1 if that was 0. +as_fn_error () +{ + as_status=$?; test $as_status -eq 0 && as_status=1 + if test "$3"; then + as_lineno=${as_lineno-"$2"} as_lineno_stack=as_lineno_stack=$as_lineno_stack + $as_echo "$as_me:${as_lineno-$LINENO}: error: $1" >&$3 + fi + $as_echo "$as_me: error: $1" >&2 + as_fn_exit $as_status +} # as_fn_error + + +# as_fn_set_status STATUS +# ----------------------- +# Set $? to STATUS, without forking. +as_fn_set_status () +{ + return $1 +} # as_fn_set_status + +# as_fn_exit STATUS +# ----------------- +# Exit the shell with STATUS, even in a "trap 0" or "set -e" context. +as_fn_exit () +{ + set +e + as_fn_set_status $1 + exit $1 +} # as_fn_exit + +# as_fn_unset VAR +# --------------- +# Portably unset VAR. +as_fn_unset () +{ + { eval $1=; unset $1;} +} +as_unset=as_fn_unset +# as_fn_append VAR VALUE +# ---------------------- +# Append the text in VALUE to the end of the definition contained in VAR. Take +# advantage of any shell optimizations that allow amortized linear growth over +# repeated appends, instead of the typical quadratic growth present in naive +# implementations. +if (eval "as_var=1; as_var+=2; test x\$as_var = x12") 2>/dev/null; then : + eval 'as_fn_append () + { + eval $1+=\$2 + }' +else + as_fn_append () + { + eval $1=\$$1\$2 + } +fi # as_fn_append + +# as_fn_arith ARG... +# ------------------ +# Perform arithmetic evaluation on the ARGs, and store the result in the +# global $as_val. Take advantage of shells that can avoid forks. The arguments +# must be portable across $(()) and expr. +if (eval "test \$(( 1 + 1 )) = 2") 2>/dev/null; then : + eval 'as_fn_arith () + { + as_val=$(( $* )) + }' +else + as_fn_arith () + { + as_val=`expr "$@" || test $? -eq 1` + } +fi # as_fn_arith + + if expr a : '\(a\)' >/dev/null 2>&1 && test "X`expr 00001 : '.*\(...\)'`" = X001; then as_expr=expr @@ -7874,8 +6410,12 @@ as_basename=false fi +if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then + as_dirname=dirname +else + as_dirname=false +fi -# Name of the executable. as_me=`$as_basename -- "$0" || $as_expr X/"$0" : '.*/\([^/][^/]*\)/*$' \| \ X"$0" : 'X\(//\)$' \| \ @@ -7895,76 +6435,25 @@ } s/.*/./; q'` -# CDPATH. -$as_unset CDPATH - - - - as_lineno_1=$LINENO - as_lineno_2=$LINENO - test "x$as_lineno_1" != "x$as_lineno_2" && - test "x`expr $as_lineno_1 + 1`" = "x$as_lineno_2" || { - - # Create $as_me.lineno as a copy of $as_myself, but with $LINENO - # uniformly replaced by the line number. The first 'sed' inserts a - # line-number line after each line using $LINENO; the second 'sed' - # does the real work. The second script uses 'N' to pair each - # line-number line with the line containing $LINENO, and appends - # trailing '-' during substitution so that $LINENO is not a special - # case at line end. - # (Raja R Harinath suggested sed '=', and Paul Eggert wrote the - # scripts with optimization help from Paolo Bonzini. Blame Lee - # E. McMahon (1931-1989) for sed's syntax. :-) - sed -n ' - p - /[$]LINENO/= - ' <$as_myself | - sed ' - s/[$]LINENO.*/&-/ - t lineno - b - :lineno - N - :loop - s/[$]LINENO\([^'$as_cr_alnum'_].*\n\)\(.*\)/\2\1\2/ - t loop - s/-\n.*// - ' >$as_me.lineno && - chmod +x "$as_me.lineno" || - { $as_echo "$as_me: error: cannot create $as_me.lineno; rerun with a POSIX shell" >&2 - { (exit 1); exit 1; }; } - - # Don't try to exec as it changes $[0], causing all sort of problems - # (the dirname of $[0] is not the place where we might find the - # original and so on. Autoconf is especially sensitive to this). - . "./$as_me.lineno" - # Exit status is that of the last command. - exit -} - - -if (as_dir=`dirname -- /` && test "X$as_dir" = X/) >/dev/null 2>&1; then - as_dirname=dirname -else - as_dirname=false -fi +# Avoid depending upon Character Ranges. +as_cr_letters='abcdefghijklmnopqrstuvwxyz' +as_cr_LETTERS='ABCDEFGHIJKLMNOPQRSTUVWXYZ' +as_cr_Letters=$as_cr_letters$as_cr_LETTERS +as_cr_digits='0123456789' +as_cr_alnum=$as_cr_Letters$as_cr_digits ECHO_C= ECHO_N= ECHO_T= -case `echo -n x` in +case `echo -n x` in #((((( -n*) - case `echo 'x\c'` in + case `echo 'xy\c'` in *c*) ECHO_T=' ';; # ECHO_T is single tab character. - *) ECHO_C='\c';; + xy) ECHO_C='\c';; + *) echo `echo ksh88 bug on AIX 6.1` > /dev/null + ECHO_T=' ';; esac;; *) ECHO_N='-n';; esac -if expr a : '\(a\)' >/dev/null 2>&1 && - test "X`expr 00001 : '.*\(...\)'`" = X001; then - as_expr=expr -else - as_expr=false -fi rm -f conf$$ conf$$.exe conf$$.file if test -d conf$$.dir; then @@ -7993,8 +6482,56 @@ rm -f conf$$ conf$$.exe conf$$.dir/conf$$.file conf$$.file rmdir conf$$.dir 2>/dev/null + +# as_fn_mkdir_p +# ------------- +# Create "$as_dir" as a directory, including parents if necessary. +as_fn_mkdir_p () +{ + + case $as_dir in #( + -*) as_dir=./$as_dir;; + esac + test -d "$as_dir" || eval $as_mkdir_p || { + as_dirs= + while :; do + case $as_dir in #( + *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( + *) as_qdir=$as_dir;; + esac + as_dirs="'$as_qdir' $as_dirs" + as_dir=`$as_dirname -- "$as_dir" || +$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ + X"$as_dir" : 'X\(//\)[^/]' \| \ + X"$as_dir" : 'X\(//\)$' \| \ + X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || +$as_echo X"$as_dir" | + sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ + s//\1/ + q + } + /^X\(\/\/\)[^/].*/{ + s//\1/ + q + } + /^X\(\/\/\)$/{ + s//\1/ + q + } + /^X\(\/\).*/{ + s//\1/ + q + } + s/.*/./; q'` + test -d "$as_dir" && break + done + test -z "$as_dirs" || eval "mkdir $as_dirs" + } || test -d "$as_dir" || as_fn_error "cannot create directory $as_dir" + + +} # as_fn_mkdir_p if mkdir -p . 2>/dev/null; then - as_mkdir_p=: + as_mkdir_p='mkdir -p "$as_dir"' else test -d ./-p && rmdir ./-p as_mkdir_p=false @@ -8013,10 +6550,10 @@ if test -d "$1"; then test -d "$1/."; else - case $1 in + case $1 in #( -*)set "./$1";; esac; - case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in + case `ls -ld'$as_ls_L_option' "$1" 2>/dev/null` in #(( ???[sx]*):;;*)false;;esac;fi '\'' sh ' @@ -8031,13 +6568,19 @@ exec 6>&1 +## ----------------------------------- ## +## Main body of $CONFIG_STATUS script. ## +## ----------------------------------- ## +_ASEOF +test $as_write_fail = 0 && chmod +x $CONFIG_STATUS || ac_write_fail=1 -# Save the log message, to keep $[0] and so on meaningful, and to +cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 +# Save the log message, to keep $0 and so on meaningful, and to # report actual input values of CONFIG_FILES etc. instead of their # values after options handling. ac_log=" -This file was extended by vmkit $as_me 0.27svn, which was -generated by GNU Autoconf 2.63. Invocation command line was +This file was extended by vmkit $as_me 0.28svn, which was +generated by GNU Autoconf 2.64. Invocation command line was CONFIG_FILES = $CONFIG_FILES CONFIG_HEADERS = $CONFIG_HEADERS @@ -8061,18 +6604,19 @@ cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 # Files that config.status was made for. -config_files="`echo $ac_config_files`" -config_headers="`echo $ac_config_headers`" -config_commands="`echo $ac_config_commands`" +config_files="$ac_config_files" +config_headers="$ac_config_headers" +config_commands="$ac_config_commands" _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 ac_cs_usage="\ -\`$as_me' instantiates files from templates according to the -current configuration. +\`$as_me' instantiates files and other configuration actions +from templates according to the current configuration. Unless the files +and actions are specified as TAGs, all are instantiated by default. -Usage: $0 [OPTION]... [FILE]... +Usage: $0 [OPTION]... [TAG]... -h, --help print this help, then exit -V, --version print version number and configuration settings, then exit @@ -8094,16 +6638,16 @@ Configuration commands: $config_commands -Report bugs to ." +Report bugs to ." _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 ac_cs_version="\\ -vmkit config.status 0.27svn -configured by $0, generated by GNU Autoconf 2.63, +vmkit config.status 0.28svn +configured by $0, generated by GNU Autoconf 2.64, with options \\"`$as_echo "$ac_configure_args" | sed 's/^ //; s/[\\""\`\$]/\\\\&/g'`\\" -Copyright (C) 2008 Free Software Foundation, Inc. +Copyright (C) 2009 Free Software Foundation, Inc. This config.status script is free software; the Free Software Foundation gives unlimited permission to copy, distribute and modify it." @@ -8144,20 +6688,19 @@ case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac - CONFIG_FILES="$CONFIG_FILES '$ac_optarg'" + as_fn_append CONFIG_FILES " '$ac_optarg'" ac_need_defaults=false;; --header | --heade | --head | --hea ) $ac_shift case $ac_optarg in *\'*) ac_optarg=`$as_echo "$ac_optarg" | sed "s/'/'\\\\\\\\''/g"` ;; esac - CONFIG_HEADERS="$CONFIG_HEADERS '$ac_optarg'" + as_fn_append CONFIG_HEADERS " '$ac_optarg'" ac_need_defaults=false;; --he | --h) # Conflict between --help and --header - { $as_echo "$as_me: error: ambiguous option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; };; + as_fn_error "ambiguous option: \`$1' +Try \`$0 --help' for more information.";; --help | --hel | -h ) $as_echo "$ac_cs_usage"; exit ;; -q | -quiet | --quiet | --quie | --qui | --qu | --q \ @@ -8165,11 +6708,10 @@ ac_cs_silent=: ;; # This is an error. - -*) { $as_echo "$as_me: error: unrecognized option: $1 -Try \`$0 --help' for more information." >&2 - { (exit 1); exit 1; }; } ;; + -*) as_fn_error "unrecognized option: \`$1' +Try \`$0 --help' for more information." ;; - *) ac_config_targets="$ac_config_targets $1" + *) as_fn_append ac_config_targets " $1" ac_need_defaults=false ;; esac @@ -8231,9 +6773,7 @@ "Makefile") CONFIG_COMMANDS="$CONFIG_COMMANDS Makefile" ;; "lib/Makefile") CONFIG_COMMANDS="$CONFIG_COMMANDS lib/Makefile" ;; - *) { { $as_echo "$as_me:$LINENO: error: invalid argument: $ac_config_target" >&5 -$as_echo "$as_me: error: invalid argument: $ac_config_target" >&2;} - { (exit 1); exit 1; }; };; + *) as_fn_error "invalid argument: \`$ac_config_target'" "$LINENO" 5;; esac done @@ -8260,7 +6800,7 @@ trap 'exit_status=$? { test -z "$tmp" || test ! -d "$tmp" || rm -fr "$tmp"; } && exit $exit_status ' 0 - trap '{ (exit 1); exit 1; }' 1 2 13 15 + trap 'as_fn_exit 1' 1 2 13 15 } # Create a (secure) tmp directory for tmp files. @@ -8271,11 +6811,7 @@ { tmp=./conf$$-$RANDOM (umask 077 && mkdir "$tmp") -} || -{ - $as_echo "$as_me: cannot create a temporary directory in ." >&2 - { (exit 1); exit 1; } -} +} || as_fn_error "cannot create a temporary directory in ." "$LINENO" 5 # Set up the scripts for CONFIG_FILES section. # No need to generate them if there are no CONFIG_FILES. @@ -8283,10 +6819,16 @@ if test -n "$CONFIG_FILES"; then -ac_cr=' ' +ac_cr=`echo X | tr X '\015'` +# On cygwin, bash can eat \r inside `` if the user requested igncr. +# But we know of no other shell where ac_cr would be empty at this +# point, so we can use a bashism as a fallback. +if test "x$ac_cr" = x; then + eval ac_cr=\$\'\\r\' +fi ac_cs_awk_cr=`$AWK 'BEGIN { print "a\rb" }' /dev/null` if test "$ac_cs_awk_cr" = "a${ac_cr}b"; then - ac_cs_awk_cr='\\r' + ac_cs_awk_cr='\r' else ac_cs_awk_cr=$ac_cr fi @@ -8300,24 +6842,18 @@ echo "$ac_subst_vars" | sed 's/.*/&!$&$ac_delim/' && echo "_ACEOF" } >conf$$subs.sh || - { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_num=`echo "$ac_subst_vars" | grep -c '$'` ac_delim='%!_!# ' for ac_last_try in false false false false false :; do . ./conf$$subs.sh || - { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 ac_delim_n=`sed -n "s/.*$ac_delim\$/X/p" conf$$subs.awk | grep -c X` if test $ac_delim_n = $ac_delim_num; then break elif $ac_last_try; then - { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_STATUS" >&5 -$as_echo "$as_me: error: could not make $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_STATUS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi @@ -8406,9 +6942,7 @@ else cat fi < "$tmp/subs1.awk" > "$tmp/subs.awk" \ - || { { $as_echo "$as_me:$LINENO: error: could not setup config files machinery" >&5 -$as_echo "$as_me: error: could not setup config files machinery" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not setup config files machinery" "$LINENO" 5 _ACEOF # VPATH may cause trouble with some makes, so we remove $(srcdir), @@ -8449,9 +6983,7 @@ if test -z "$ac_t"; then break elif $ac_last_try; then - { { $as_echo "$as_me:$LINENO: error: could not make $CONFIG_HEADERS" >&5 -$as_echo "$as_me: error: could not make $CONFIG_HEADERS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not make $CONFIG_HEADERS" "$LINENO" 5 else ac_delim="$ac_delim!$ac_delim _$ac_delim!! " fi @@ -8536,9 +7068,7 @@ _ACAWK _ACEOF cat >>$CONFIG_STATUS <<\_ACEOF || ac_write_fail=1 - { { $as_echo "$as_me:$LINENO: error: could not setup config headers machinery" >&5 -$as_echo "$as_me: error: could not setup config headers machinery" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "could not setup config headers machinery" "$LINENO" 5 fi # test -n "$CONFIG_HEADERS" @@ -8551,9 +7081,7 @@ esac case $ac_mode$ac_tag in :[FHL]*:*);; - :L* | :C*:*) { { $as_echo "$as_me:$LINENO: error: invalid tag $ac_tag" >&5 -$as_echo "$as_me: error: invalid tag $ac_tag" >&2;} - { (exit 1); exit 1; }; };; + :L* | :C*:*) as_fn_error "invalid tag \`$ac_tag'" "$LINENO" 5;; :[FH]-) ac_tag=-:-;; :[FH]*) ac_tag=$ac_tag:$ac_tag.in;; esac @@ -8581,12 +7109,10 @@ [\\/$]*) false;; *) test -f "$srcdir/$ac_f" && ac_f="$srcdir/$ac_f";; esac || - { { $as_echo "$as_me:$LINENO: error: cannot find input file: $ac_f" >&5 -$as_echo "$as_me: error: cannot find input file: $ac_f" >&2;} - { (exit 1); exit 1; }; };; + as_fn_error "cannot find input file: \`$ac_f'" "$LINENO" 5;; esac case $ac_f in *\'*) ac_f=`$as_echo "$ac_f" | sed "s/'/'\\\\\\\\''/g"`;; esac - ac_file_inputs="$ac_file_inputs '$ac_f'" + as_fn_append ac_file_inputs " '$ac_f'" done # Let's still pretend it is `configure' which instantiates (i.e., don't @@ -8597,7 +7123,7 @@ `' by configure.' if test x"$ac_file" != x-; then configure_input="$ac_file. $configure_input" - { $as_echo "$as_me:$LINENO: creating $ac_file" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: creating $ac_file" >&5 $as_echo "$as_me: creating $ac_file" >&6;} fi # Neutralize special characters interpreted by sed in replacement strings. @@ -8610,9 +7136,7 @@ case $ac_tag in *:-:* | *:-) cat >"$tmp/stdin" \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } ;; + || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; esac ;; esac @@ -8640,47 +7164,7 @@ q } s/.*/./; q'` - { as_dir="$ac_dir" - case $as_dir in #( - -*) as_dir=./$as_dir;; - esac - test -d "$as_dir" || { $as_mkdir_p && mkdir -p "$as_dir"; } || { - as_dirs= - while :; do - case $as_dir in #( - *\'*) as_qdir=`$as_echo "$as_dir" | sed "s/'/'\\\\\\\\''/g"`;; #'( - *) as_qdir=$as_dir;; - esac - as_dirs="'$as_qdir' $as_dirs" - as_dir=`$as_dirname -- "$as_dir" || -$as_expr X"$as_dir" : 'X\(.*[^/]\)//*[^/][^/]*/*$' \| \ - X"$as_dir" : 'X\(//\)[^/]' \| \ - X"$as_dir" : 'X\(//\)$' \| \ - X"$as_dir" : 'X\(/\)' \| . 2>/dev/null || -$as_echo X"$as_dir" | - sed '/^X\(.*[^/]\)\/\/*[^/][^/]*\/*$/{ - s//\1/ - q - } - /^X\(\/\/\)[^/].*/{ - s//\1/ - q - } - /^X\(\/\/\)$/{ - s//\1/ - q - } - /^X\(\/\).*/{ - s//\1/ - q - } - s/.*/./; q'` - test -d "$as_dir" && break - done - test -z "$as_dirs" || eval "mkdir $as_dirs" - } || test -d "$as_dir" || { { $as_echo "$as_me:$LINENO: error: cannot create directory $as_dir" >&5 -$as_echo "$as_me: error: cannot create directory $as_dir" >&2;} - { (exit 1); exit 1; }; }; } + as_dir="$ac_dir"; as_fn_mkdir_p ac_builddir=. case "$ac_dir" in @@ -8732,7 +7216,6 @@ # If the template does not know about datarootdir, expand it. # FIXME: This hack should be removed a few years after 2.60. ac_datarootdir_hack=; ac_datarootdir_seen= - ac_sed_dataroot=' /datarootdir/ { p @@ -8742,12 +7225,11 @@ /@docdir@/p /@infodir@/p /@localedir@/p -/@mandir@/p -' +/@mandir@/p' case `eval "sed -n \"\$ac_sed_dataroot\" $ac_file_inputs"` in *datarootdir*) ac_datarootdir_seen=yes;; *@datadir@*|*@docdir@*|*@infodir@*|*@localedir@*|*@mandir@*) - { $as_echo "$as_me:$LINENO: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&5 $as_echo "$as_me: WARNING: $ac_file_inputs seems to ignore the --datarootdir setting" >&2;} _ACEOF cat >>$CONFIG_STATUS <<_ACEOF || ac_write_fail=1 @@ -8757,7 +7239,7 @@ s&@infodir@&$infodir&g s&@localedir@&$localedir&g s&@mandir@&$mandir&g - s&\\\${datarootdir}&$datarootdir&g' ;; + s&\\\${datarootdir}&$datarootdir&g' ;; esac _ACEOF @@ -8785,14 +7267,12 @@ $ac_datarootdir_hack " eval sed \"\$ac_sed_extra\" "$ac_file_inputs" | $AWK -f "$tmp/subs.awk" >$tmp/out \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create $ac_file" "$LINENO" 5 test -z "$ac_datarootdir_hack$ac_datarootdir_seen" && { ac_out=`sed -n '/\${datarootdir}/p' "$tmp/out"`; test -n "$ac_out"; } && { ac_out=`sed -n '/^[ ]*datarootdir[ ]*:*=/p' "$tmp/out"`; test -z "$ac_out"; } && - { $as_echo "$as_me:$LINENO: WARNING: $ac_file contains a reference to the variable \`datarootdir' + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&5 $as_echo "$as_me: WARNING: $ac_file contains a reference to the variable \`datarootdir' which seems to be undefined. Please make sure it is defined." >&2;} @@ -8802,9 +7282,7 @@ -) cat "$tmp/out" && rm -f "$tmp/out";; *) rm -f "$ac_file" && mv "$tmp/out" "$ac_file";; esac \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create $ac_file" "$LINENO" 5 ;; :H) # @@ -8815,29 +7293,23 @@ $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" } >"$tmp/config.h" \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create $ac_file" "$LINENO" 5 if diff "$ac_file" "$tmp/config.h" >/dev/null 2>&1; then - { $as_echo "$as_me:$LINENO: $ac_file is unchanged" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: $ac_file is unchanged" >&5 $as_echo "$as_me: $ac_file is unchanged" >&6;} else rm -f "$ac_file" mv "$tmp/config.h" "$ac_file" \ - || { { $as_echo "$as_me:$LINENO: error: could not create $ac_file" >&5 -$as_echo "$as_me: error: could not create $ac_file" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create $ac_file" "$LINENO" 5 fi else $as_echo "/* $configure_input */" \ && eval '$AWK -f "$tmp/defines.awk"' "$ac_file_inputs" \ - || { { $as_echo "$as_me:$LINENO: error: could not create -" >&5 -$as_echo "$as_me: error: could not create -" >&2;} - { (exit 1); exit 1; }; } + || as_fn_error "could not create -" "$LINENO" 5 fi ;; - :C) { $as_echo "$as_me:$LINENO: executing $ac_file commands" >&5 + :C) { $as_echo "$as_me:${as_lineno-$LINENO}: executing $ac_file commands" >&5 $as_echo "$as_me: executing $ac_file commands" >&6;} ;; esac @@ -8853,15 +7325,12 @@ done # for ac_tag -{ (exit 0); exit 0; } +as_fn_exit 0 _ACEOF -chmod +x $CONFIG_STATUS ac_clean_files=$ac_clean_files_save test $ac_write_fail = 0 || - { { $as_echo "$as_me:$LINENO: error: write failure creating $CONFIG_STATUS" >&5 -$as_echo "$as_me: error: write failure creating $CONFIG_STATUS" >&2;} - { (exit 1); exit 1; }; } + as_fn_error "write failure creating $CONFIG_STATUS" "$LINENO" 5 # configure is writing to config.log, and then calls config.status. @@ -8882,10 +7351,10 @@ exec 5>>config.log # Use ||, not &&, to avoid exiting from the if with $? = 1, which # would make configure fail if this is the last instruction. - $ac_cs_success || { (exit 1); exit 1; } + $ac_cs_success || as_fn_exit $? fi if test -n "$ac_unrecognized_opts" && test "$enable_option_checking" != no; then - { $as_echo "$as_me:$LINENO: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 + { $as_echo "$as_me:${as_lineno-$LINENO}: WARNING: unrecognized options: $ac_unrecognized_opts" >&5 $as_echo "$as_me: WARNING: unrecognized options: $ac_unrecognized_opts" >&2;} fi From nicolas.geoffray at lip6.fr Sun Mar 21 13:30:19 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 20:30:19 -0000 Subject: [vmkit-commits] [vmkit] r99141 - /vmkit/trunk/www/use_mmtk.html Message-ID: <20100321203020.027C92A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 15:30:19 2010 New Revision: 99141 URL: http://llvm.org/viewvc/llvm-project?rev=99141&view=rev Log: No need for REQUIRES_FRAME_POINTER anymore. Modified: vmkit/trunk/www/use_mmtk.html Modified: vmkit/trunk/www/use_mmtk.html URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/use_mmtk.html?rev=99141&r1=99140&r2=99141&view=diff ============================================================================== --- vmkit/trunk/www/use_mmtk.html (original) +++ vmkit/trunk/www/use_mmtk.html Sun Mar 21 15:30:19 2010 @@ -29,8 +29,8 @@
  • Clean and make VMKit (do that each time you change the source code of VMKit):
    • -
    • make ENABLE_OPTIMIZED=1 REQUIRES_FRAME_POINTER=1 clean
    • -
    • make ENABLE_OPTIMIZED=1 REQUIRES_FRAME_POINTER=1
    • +
    • make ENABLE_OPTIMIZED=1 clean
    • +
    • make ENABLE_OPTIMIZED=1
  • Run VMKit with MMTk:
  • From nicolas.geoffray at lip6.fr Sun Mar 21 13:43:53 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 21 Mar 2010 20:43:53 -0000 Subject: [vmkit-commits] [vmkit] r99144 - in /vmkit/trunk/lib/J3/Compiler: JavaLLVMCompiler.cpp LLVMMaterializer.cpp Message-ID: <20100321204353.4A2502A6C12C@llvm.org> Author: geoffray Date: Sun Mar 21 15:43:53 2010 New Revision: 99144 URL: http://llvm.org/viewvc/llvm-project?rev=99144&view=rev Log: Fix build with new LLVM API. Modified: vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp Modified: vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp?rev=99144&r1=99143&r2=99144&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/JavaLLVMCompiler.cpp Sun Mar 21 15:43:53 2010 @@ -89,7 +89,7 @@ MDNode* JavaLLVMCompiler::GetDbgSubprogram(JavaMethod* meth) { if (getMethodInfo(meth)->getDbgSubprogram() == NULL) { MDNode* node = DebugFactory->CreateSubprogram(DIDescriptor(), "", "", - "", DICompileUnit(), 0, + "", DIFile(), 0, DIType(), false, false).getNode(); DbgInfos.insert(std::make_pair(node, meth)); Modified: vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp?rev=99144&r1=99143&r2=99144&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/LLVMMaterializer.cpp Sun Mar 21 15:43:53 2010 @@ -119,16 +119,18 @@ // by the pass manager, and we don't want another thread to JIT the // function while all passes have not been run. if (!(F->isDeclaration())) { - mvm::MvmModule::unprotectIR(); + mvm::MvmModule::unprotectIR(); + // TODO: Is this still valid? // Reacquire and go back to the JIT function. - mvm::MvmModule::executionEngine->lock.acquire(); + // mvm::MvmModule::executionEngine->lock.acquire(); return false; } if (mvm::MvmModule::executionEngine->getPointerToGlobalIfAvailable(F)) { mvm::MvmModule::unprotectIR(); + // TODO: Is this still valid? // Reacquire and go back to the JIT function. - mvm::MvmModule::executionEngine->lock.acquire(); + // mvm::MvmModule::executionEngine->lock.acquire(); return false; } @@ -160,8 +162,9 @@ mvm::MvmModule::unprotectIR(); + // TODO: Is this still valid? // Reacquire to go back to the JIT function. - mvm::MvmModule::executionEngine->lock.acquire(); + // mvm::MvmModule::executionEngine->lock.acquire(); if (F->isDeclaration()) mvm::MvmModule::executionEngine->updateGlobalMapping(F, val); From nicolas.geoffray at lip6.fr Thu Mar 25 12:57:10 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Thu, 25 Mar 2010 19:57:10 -0000 Subject: [vmkit-commits] [vmkit] r99545 - in /vmkit/trunk: Makefile Makefile.rules include/mvm/JIT.h lib/J3/Compiler/JavaAOTCompiler.cpp lib/Mvm/Compiler/JIT.cpp lib/Mvm/Compiler/MMTkInline.inc lib/Mvm/MMTk/MutatorThread.cpp lib/Mvm/MMTk/MutatorThread.h lib/Mvm/MMTk/MvmGC.cpp lib/Mvm/MMTk/MvmGC.h lib/Mvm/StaticGCPass/StaticGCPass.cpp mmtk/Makefile mmtk/magic/LowerJavaRT.cpp mmtk/mmtk-alloc/Selected.cpp mmtk/mmtk-fake/ tools/j3/Makefile tools/vmkit/Makefile Message-ID: <20100325195710.403442A6C12C@llvm.org> Author: geoffray Date: Thu Mar 25 14:57:09 2010 New Revision: 99545 URL: http://llvm.org/viewvc/llvm-project?rev=99545&view=rev Log: Clean up MMTk interface and now link MMTk at compile-time. We are still able to inline malloc by loading a cpp version of it. Removed: vmkit/trunk/mmtk/mmtk-fake/ Modified: vmkit/trunk/Makefile vmkit/trunk/Makefile.rules vmkit/trunk/include/mvm/JIT.h vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp vmkit/trunk/lib/Mvm/Compiler/JIT.cpp vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc vmkit/trunk/lib/Mvm/MMTk/MutatorThread.cpp vmkit/trunk/lib/Mvm/MMTk/MutatorThread.h vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp vmkit/trunk/lib/Mvm/MMTk/MvmGC.h vmkit/trunk/lib/Mvm/StaticGCPass/StaticGCPass.cpp vmkit/trunk/mmtk/Makefile vmkit/trunk/mmtk/magic/LowerJavaRT.cpp vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp vmkit/trunk/tools/j3/Makefile vmkit/trunk/tools/vmkit/Makefile Modified: vmkit/trunk/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/Makefile (original) +++ vmkit/trunk/Makefile Thu Mar 25 14:57:09 2010 @@ -13,12 +13,14 @@ # Top-Level vmkit Build Stages: # -DIRS := lib tools +DIRS := lib tools/vmjc ifeq ($(GC_MMTK), 1) DIRS += mmtk endif +DIRS += tools + EXTRA_DIST=include include $(LEVEL)/Makefile.common Modified: vmkit/trunk/Makefile.rules URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/Makefile.rules?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/Makefile.rules (original) +++ vmkit/trunk/Makefile.rules Thu Mar 25 14:57:09 2010 @@ -133,7 +133,7 @@ $(Verb) $(ANT) -buildfile $(PROJ_SRC_ROOT)/mmtk/java/build.xml $(Echo) Building $(BuildMode) $(JARNAME).jar $(notdir $@) $(Verb) $(LOPT) -load=$(LibDir)/JITGCPass$(SHLIBEXT) -std-compile-opts -JITGCPass -f $(LibDir)/MMTKAlloc.bc -o $(LibDir)/MMTKAlloc.bc - $(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKFake$(SHLIBEXT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic -verify $(PROJ_SRC_ROOT)/mmtk/java/$(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=$(PROJ_SRC_ROOT)/mmtk/java/vmkit.properties -disable-stubs -assume-compiled -llvm-lazy + $(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic -verify $(PROJ_SRC_ROOT)/mmtk/java/$(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=$(PROJ_SRC_ROOT)/mmtk/java/vmkit.properties -disable-stubs -assume-compiled -llvm-lazy $(Verb) $(LOPT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -std-compile-opts -LowerJavaRT -f $(JARNAME).bc -o $(JARNAME)-optimized.bc $(Verb) $(LLVMLD) -r -o $(LibDir)/FinalMMTk.bc $(LibDir)/MMTKAlloc.bc $(JARNAME)-optimized.bc $(LibDir)/MMTKRuntime.bc $(Verb) $(LOPT) -std-compile-opts $(LibDir)/FinalMMTk.bc -o $(LibDir)/FinalMMTk.bc Modified: vmkit/trunk/include/mvm/JIT.h URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/JIT.h?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/include/mvm/JIT.h (original) +++ vmkit/trunk/include/mvm/JIT.h Thu Mar 25 14:57:09 2010 @@ -181,7 +181,6 @@ static llvm::GCStrategy* TheGCStrategy; static mvm::LockRecursive protectEngine; static llvm::Module *globalModule; - static llvm::FunctionPassManager* globalFunctionPasses; static const llvm::TargetData* TheTargetData; static mvm::BumpPtrAllocator* Allocator; //static unsigned MetadataTypeKind; Modified: vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp (original) +++ vmkit/trunk/lib/J3/Compiler/JavaAOTCompiler.cpp Thu Mar 25 14:57:09 2010 @@ -353,8 +353,9 @@ } Module& Mod = *getLLVMModule(); - varGV = new GlobalVariable(Mod, Ty, false, GlobalValue::InternalLinkage, - 0, "final object"); + // Set as External, so that inlining MMTk code works. + varGV = new GlobalVariable(Mod, Ty, false, GlobalValue::ExternalLinkage, + 0, "finalObject"); Constant* C = ConstantExpr::getBitCast(varGV, JavaIntrinsics.JavaObjectType); Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/JIT.cpp?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/JIT.cpp (original) +++ vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Thu Mar 25 14:57:09 2010 @@ -44,8 +44,15 @@ #include "MutatorThread.h" #include "MvmGC.h" +#include #include +#if defined(__MACH__) +#define SELF_HANDLE RTLD_DEFAULT +#else +#define SELF_HANDLE 0 +#endif + using namespace mvm; using namespace llvm; @@ -169,9 +176,6 @@ TheTargetData = T->getTargetData(); } - globalFunctionPasses = new FunctionPassManager(globalModule); - - //LLVMContext& Context = globalModule->getContext(); //MetadataTypeKind = Context.getMDKindID("HighLevelType"); @@ -179,163 +183,6 @@ e = LoadBytecodeFiles.end(); i != e; ++i) { loadBytecodeFile(*i); } - -#ifdef WITH_MMTK - llvm::GlobalVariable* GV = globalModule->getGlobalVariable("MMTkCollectorSize", false); - if (GV && executionEngine) { - // Allocate the memory for MMTk right now, to avoid conflicts with - // other allocators. -#if defined (__MACH__) - uint32 flags = MAP_PRIVATE | MAP_ANON | MAP_FIXED; -#else - uint32 flags = MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED; -#endif - void* baseAddr = mmap((void*)0x30000000, 0x40000000, PROT_READ | PROT_WRITE, - flags, -1, 0); - if (baseAddr == MAP_FAILED) { - perror("mmap"); - abort(); - } - - ConstantInt* C = dyn_cast(GV->getInitializer()); - uint64_t val = C->getZExtValue(); - MutatorThread::MMTkCollectorSize = val; - - GV = globalModule->getGlobalVariable("MMTkMutatorSize", false); - assert(GV && "Could not find MMTkMutatorSize"); - C = dyn_cast(GV->getInitializer()); - val = C->getZExtValue(); - MutatorThread::MMTkMutatorSize = val; - - Function* F = globalModule->getFunction("JnJVM_org_j3_config_Selected_00024Mutator__0003Cinit_0003E__"); - assert(F && "Could not find from Mutator"); - MutatorThread::MutatorInit = (MutatorThread::MMTkInitType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_MutatorContext_initMutator__I"); - assert(F && "Could not find init from Mutator"); - MutatorThread::MutatorCallInit = (MutatorThread::MMTkInitIntType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_MutatorContext_deinitMutator__"); - assert(F && "Could not find deinit from Mutator"); - MutatorThread::MutatorCallDeinit = (MutatorThread::MMTkInitType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - - GV = globalModule->getGlobalVariable("org_j3_config_Selected_4Mutator_VT", false); - assert(GV && "Could not find VT from Mutator"); - MutatorThread::MutatorVT = (VirtualTable*)executionEngine->getPointerToGlobal(GV); - - F = globalModule->getFunction("JnJVM_org_j3_config_Selected_00024Collector__0003Cinit_0003E__"); - assert(F && "Could not find from Collector"); - MutatorThread::CollectorInit = (MutatorThread::MMTkInitType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - GV = globalModule->getGlobalVariable("org_j3_config_Selected_4Collector_VT", false); - assert(GV && "Could not find VT from Collector"); - MutatorThread::CollectorVT = (VirtualTable*)executionEngine->getPointerToGlobal(GV); - - GlobalAlias* GA = dyn_cast(globalModule->getNamedValue("MMTkAlloc")); - assert(GA && "Could not find MMTkAlloc alias"); - F = dyn_cast(GA->getAliasee()); - gc::MMTkGCAllocator = (gc::MMTkAllocType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - GA = dyn_cast(globalModule->getNamedValue("MMTkPostAlloc")); - assert(GA && "Could not find MMTkPostAlloc alias"); - F = dyn_cast(GA->getAliasee()); - gc::MMTkGCPostAllocator = (gc::MMTkPostAllocType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - GA = dyn_cast(globalModule->getNamedValue("MMTkCheckAllocator")); - assert(GA && "Could not find MMTkCheckAllocator alias"); - F = dyn_cast(GA->getAliasee()); - gc::MMTkCheckAllocator = (gc::MMTkCheckAllocatorType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_utility_heap_HeapGrowthManager_boot__Lorg_vmmagic_unboxed_Extent_2Lorg_vmmagic_unboxed_Extent_2"); - assert(F && "Could not find boot from HeapGrowthManager"); - BootHeapType BootHeap = (BootHeapType) - (uintptr_t)executionEngine->getPointerToFunction(F); - BootHeap(128 * 1024 * 1024, 1024 * 1024 * 1024); - - GV = globalModule->getGlobalVariable("org_j3_config_Selected_4Plan_static", false); - assert(GV && "No global plan."); - uintptr_t Plan = *((uintptr_t*)executionEngine->getPointerToGlobal(GV)); - - GA = dyn_cast(globalModule->getNamedValue("MMTkPlanBoot")); - assert(GA && "Could not find MMTkPlanBoot alias"); - F = dyn_cast(GA->getAliasee()); - BootType Boot = (BootType) - (uintptr_t)executionEngine->getPointerToFunction(F); - Boot(Plan); - - GA = dyn_cast(globalModule->getNamedValue("MMTkPlanPostBoot")); - assert(GA && "Could not find MMTkPlanPostBoot alias"); - F = dyn_cast(GA->getAliasee()); - Boot = (BootType)(uintptr_t)executionEngine->getPointerToFunction(F); - Boot(Plan); - - GA = dyn_cast(globalModule->getNamedValue("MMTkPlanFullBoot")); - assert(GA && "Could not find MMTkPlanFullBoot alias"); - F = dyn_cast(GA->getAliasee()); - Boot = (BootType)(uintptr_t)executionEngine->getPointerToFunction(F); - Boot(Plan); - - F = globalModule->getFunction("Java_org_j3_mmtk_Collection_triggerCollection__I"); - assert(F && "Could not find external collect"); - gc::MMTkTriggerCollection = (gc::MMTkCollectType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - //===-------------------- TODO: make those virtual. -------------------===// - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_reportDelayedRootEdge__Lorg_vmmagic_unboxed_Address_2"); - assert(F && "Could not find reportDelayedRootEdge from TraceLocal"); - gc::MMTkDelayedRoot = (gc::MMTkDelayedRootType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_processEdge__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_Address_2"); - assert(F && "Could not find processEdge from TraceLocal"); - gc::MMTkProcessEdge = (gc::MMTkProcessEdgeType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_processRootEdge__Lorg_vmmagic_unboxed_Address_2Z"); - assert(F && "Could not find processEdge from TraceLocal"); - gc::MMTkProcessRootEdge = (gc::MMTkProcessRootEdgeType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_marksweep_MSTraceLocal_isLive__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkIsLive = (gc::MMTkIsLiveType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_retainForFinalize__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkRetainForFinalize = (gc::MMTkRetainForFinalizeType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_retainReferent__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkRetainReferent = (gc::MMTkRetainReferentType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_getForwardedReference__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkGetForwardedReference = (gc::MMTkGetForwardedReferenceType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_getForwardedReferent__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkGetForwardedReferent = (gc::MMTkGetForwardedReferentType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_getForwardedFinalizable__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkGetForwardedFinalizable = (gc::MMTkGetForwardedFinalizableType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - } -#endif } @@ -345,35 +192,10 @@ module->setTargetTriple(MvmModule::globalModule->getTargetTriple()); LLVMContext& Context = module->getContext(); -#ifdef WITH_MMTK - if (MutatorThread::MMTkCollectorSize) { - // If we have found MMTk, read the gcmalloc function and set the address of - // global variables and functions used by gcmalloc. + if (dlsym(SELF_HANDLE, "MMTkPlanBoot")) { + // If we have found MMTk, read the gcmalloc function. mvm::mmtk_runtime::makeLLVMFunction(module); - if (MvmModule::executionEngine) { - for (Module::global_iterator i = module->global_begin(), - e = module->global_end(); i != e; ++i) { - if (i->isDeclaration()) { - GlobalVariable* GV = - MvmModule::globalModule->getGlobalVariable(i->getName(), true); - assert(GV && "GV can not be found"); - void* ptr = MvmModule::executionEngine->getPointerToGlobal(GV); - MvmModule::executionEngine->updateGlobalMapping(i, ptr); - } - } - for (Module::iterator i = module->begin(), e = module->end(); - i != e; ++i) { - if (i->isDeclaration() && !i->isIntrinsic()) { - Function* F = - MvmModule::globalModule->getFunction(i->getName()); - assert(F && "Function can not be found"); - void* ptr = MvmModule::executionEngine->getPointerToFunction(F); - MvmModule::executionEngine->updateGlobalMapping(i, ptr); - } - } - } } -#endif mvm::llvm_runtime::makeLLVMModuleContents(module); @@ -511,7 +333,6 @@ const llvm::TargetData* MvmModule::TheTargetData; llvm::GCStrategy* MvmModule::TheGCStrategy; llvm::Module *MvmModule::globalModule; -llvm::FunctionPassManager* MvmModule::globalFunctionPasses; llvm::ExecutionEngine* MvmModule::executionEngine; mvm::LockRecursive MvmModule::protectEngine; mvm::BumpPtrAllocator* MvmModule::Allocator; @@ -694,4 +515,3 @@ } } } - Modified: vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc (original) +++ vmkit/trunk/lib/Mvm/Compiler/MMTkInline.inc Thu Mar 25 14:57:09 2010 @@ -582,21 +582,21 @@ /*isConstant=*/false, /*Linkage=*/GlobalValue::InternalLinkage, /*Initializer=*/0, // has initializer, specified below -/*Name=*/"final object67"); +/*Name=*/"finalObject67"); 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"); +/*Name=*/"finalObject2"); 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"); +/*Name=*/"finalObject32"); GlobalVariable* gvar_struct_org_mmtk_utility_DoublyLinkedList_static = new GlobalVariable(/*Module=*/ *mod, /*Type=*/StructTy_45, @@ -610,21 +610,21 @@ /*isConstant=*/false, /*Linkage=*/GlobalValue::InternalLinkage, /*Initializer=*/0, // has initializer, specified below -/*Name=*/"final object85"); +/*Name=*/"finalObject85"); 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"); +/*Name=*/"finalObject101"); 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"); +/*Name=*/"finalObject122"); // Constant Definitions ConstantInt* const_int32_50 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("1"), 10)); Modified: vmkit/trunk/lib/Mvm/MMTk/MutatorThread.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/MMTk/MutatorThread.cpp?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/MMTk/MutatorThread.cpp (original) +++ vmkit/trunk/lib/Mvm/MMTk/MutatorThread.cpp Thu Mar 25 14:57:09 2010 @@ -12,20 +12,3 @@ #include "MvmGC.h" using namespace mvm; - -uint32_t MutatorThread::MMTkMutatorSize = 0; -uint32_t MutatorThread::MMTkCollectorSize = 0; - -MutatorThread::MMTkInitType MutatorThread::MutatorInit = 0; -MutatorThread::MMTkInitIntType MutatorThread::MutatorCallInit = 0; -MutatorThread::MMTkInitType MutatorThread::MutatorCallDeinit = 0; -MutatorThread::MMTkInitType MutatorThread::CollectorInit = 0; - -VirtualTable* MutatorThread::MutatorVT = 0; -VirtualTable* MutatorThread::CollectorVT = 0; - -extern "C" void* MMTkMutatorAllocate(uint32_t size, VirtualTable* VT) { - void* val = MutatorThread::get()->Allocator.Allocate(size, "MMTk"); - ((void**)val)[0] = VT; - return val; -} Modified: vmkit/trunk/lib/Mvm/MMTk/MutatorThread.h URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/MMTk/MutatorThread.h?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/MMTk/MutatorThread.h (original) +++ vmkit/trunk/lib/Mvm/MMTk/MutatorThread.h Thu Mar 25 14:57:09 2010 @@ -24,31 +24,8 @@ /// realRoutine - The function to invoke when the thread starts. /// void (*realRoutine)(mvm::Thread*); - - static uint32_t MMTkMutatorSize; - static uint32_t MMTkCollectorSize; - - typedef void (*MMTkInitType)(uintptr_t); - typedef void (*MMTkInitIntType)(uintptr_t, int32_t); - static MMTkInitType MutatorInit; - static MMTkInitIntType MutatorCallInit; - static MMTkInitType MutatorCallDeinit; - static MMTkInitType CollectorInit; - - static VirtualTable* MutatorVT; - static VirtualTable* CollectorVT; - - static void init(Thread* _th) { - MutatorThread* th = (MutatorThread*)_th; - th->MutatorContext = - (uintptr_t)th->Allocator.Allocate(MMTkMutatorSize, "Mutator"); - ((VirtualTable**)th->MutatorContext)[0] = MutatorVT; - MutatorInit(th->MutatorContext); - MutatorCallInit(th->MutatorContext, (int32_t)_th->getThreadID()); - th->realRoutine(_th); - MutatorCallDeinit(th->MutatorContext); - } + static void init(Thread* _th); static MutatorThread* get() { return (MutatorThread*)mvm::Thread::get(); Modified: vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp (original) +++ vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp Thu Mar 25 14:57:09 2010 @@ -7,94 +7,108 @@ // //===----------------------------------------------------------------------===// - #include "MvmGC.h" -#include "MutatorThread.h" #include using namespace mvm; -gc::MMTkAllocType gc::MMTkGCAllocator = 0; -gc::MMTkPostAllocType gc::MMTkGCPostAllocator = 0; -gc::MMTkCheckAllocatorType gc::MMTkCheckAllocator = 0; -gc::MMTkDelayedRootType gc::MMTkDelayedRoot = 0; -gc::MMTkProcessEdgeType gc::MMTkProcessEdge = 0; -gc::MMTkProcessRootEdgeType gc::MMTkProcessRootEdge = 0; -gc::MMTkIsLiveType gc::MMTkIsLive = 0; - -gc::MMTkRetainReferentType gc::MMTkRetainReferent = 0; -gc::MMTkRetainForFinalizeType gc::MMTkRetainForFinalize = 0; -gc::MMTkGetForwardedReferentType gc::MMTkGetForwardedReferent = 0; -gc::MMTkGetForwardedReferenceType gc::MMTkGetForwardedReference = 0; -gc::MMTkGetForwardedFinalizableType gc::MMTkGetForwardedFinalizable = 0; -gc::MMTkCollectType gc::MMTkTriggerCollection = 0; - -uintptr_t Collector::TraceLocal = 0; - - static mvm::SpinLock lock; - - std::set __InternalSet__; -extern "C" int internalCheckAllocator(uintptr_t Mutator, int32_t sz, - int32_t align, int32_t alloc) { - return 0; -} - -extern "C" void internalPostMalloc(uintptr_t Mutator, uintptr_t ref, - uintptr_t typeref, int32_t bytes, - int32_t allocator) { -} - -extern "C" gc* internalMalloc(uintptr_t Mutator, int32_t sz, int32_t align, - int32_t offset, int32_t allocator, - int32_t site) { - - - gc* res = (gc*)malloc(sz); +extern "C" void* gcmalloc(size_t sz, void* _VT) { + gc* res = 0; + VirtualTable* VT = (VirtualTable*)_VT; + sz = llvm::RoundUpToAlignment(sz, sizeof(void*)); + res = (gc*)malloc(sz); memset(res, 0, sz); lock.acquire(); __InternalSet__.insert(res); lock.release(); + res->setVirtualTable(VT); + return res; +} + +extern "C" void* gcmallocUnresolved(size_t sz, VirtualTable* VT) { + gc* res = (gc*)gcmalloc(sz, VT); + if (VT->destructor) + mvm::Thread::get()->MyVM->addFinalizationCandidate(res); return res; } +extern "C" void addFinalizationCandidate(gc* obj) { + mvm::Thread::get()->MyVM->addFinalizationCandidate(obj); +} + +extern "C" void* AllocateMagicArray(int32_t sz, void* length) { + gc* res = (gc*)malloc(sz); + memset(res, 0, sz); + ((void**)res)[0] = length; + return res; +} void* Collector::begOf(gc* obj) { - if (gc::MMTkGCAllocator == internalMalloc) { - lock.acquire(); - std::set::iterator I = __InternalSet__.find(obj); - std::set::iterator E = __InternalSet__.end(); - lock.release(); + lock.acquire(); + std::set::iterator I = __InternalSet__.find(obj); + std::set::iterator E = __InternalSet__.end(); + lock.release(); - if (I != E) return obj; - return 0; - } else { - abort(); - } + if (I != E) return obj; + return 0; } -extern "C" void fakeInit(uintptr_t) { +void MutatorThread::init(Thread* _th) { + MutatorThread* th = (MutatorThread*)_th; + th->realRoutine(_th); } -extern "C" void fakeInitInt(uintptr_t, int32_t) { +bool Collector::isLive(gc* ptr) { + abort(); + return false; } -void Collector::initialise() { - if (!gc::MMTkGCAllocator) { - gc::MMTkGCAllocator = internalMalloc; - gc::MMTkGCPostAllocator = internalPostMalloc; - gc::MMTkCheckAllocator = internalCheckAllocator; - MutatorThread::MMTkMutatorSize = 0; - MutatorThread::MMTkCollectorSize = 0; - MutatorThread::MutatorInit = fakeInit; - MutatorThread::CollectorInit = fakeInit; - MutatorThread::MutatorCallDeinit = fakeInit; - MutatorThread::MutatorCallInit = fakeInitInt; - } +void Collector::scanObject(void** ptr) { + abort(); +} + +void Collector::markAndTrace(void* source, void* ptr) { + abort(); +} + +void Collector::markAndTraceRoot(void* ptr) { + abort(); +} + +gc* Collector::retainForFinalize(gc* val) { + abort(); + return NULL; +} + +gc* Collector::retainReferent(gc* val) { + abort(); + return NULL; +} + +gc* Collector::getForwardedFinalizable(gc* val) { + abort(); + return NULL; +} + +gc* Collector::getForwardedReference(gc* val) { + abort(); + return NULL; +} + +gc* Collector::getForwardedReferent(gc* val) { + abort(); + return NULL; +} + +void Collector::collect() { + // Do nothing. } +void Collector::initialise() { +} Modified: vmkit/trunk/lib/Mvm/MMTk/MvmGC.h URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/MMTk/MvmGC.h?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/MMTk/MvmGC.h (original) +++ vmkit/trunk/lib/Mvm/MMTk/MvmGC.h Thu Mar 25 14:57:09 2010 @@ -28,6 +28,7 @@ #define CALL_TRACER tracer() +extern "C" void* gcmallocUnresolved(size_t sz, VirtualTable* VT); class gc : public gcRoot { public: @@ -38,75 +39,8 @@ return 0; } - typedef gc* (*MMTkAllocType)(uintptr_t Mutator, int32_t sz, int32_t align, - int32_t offset, int32_t allocator, - int32_t site); - - typedef void (*MMTkPostAllocType)(uintptr_t Mutator, uintptr_t ref, - uintptr_t typeref, int32_t bytes, - int32_t allocator); - - typedef int (*MMTkCheckAllocatorType)(uintptr_t Mutator, int32_t bytes, - int32_t align, int32_t allocator); - - typedef void (*MMTkDelayedRootType)(uintptr_t TraceLocal, void** slot); - - typedef void (*MMTkProcessEdgeType)(uintptr_t TraceLocal, void* source, - void* slot); - - typedef void (*MMTkProcessRootEdgeType)(uintptr_t TraceLocal, void* slot, - uint8_t untraced); - - typedef uint8_t (*MMTkIsLiveType)(uintptr_t TraceLocal, void* obj); - - typedef gc* (*MMTkRetainReferentType)(uintptr_t TraceLocal, void* obj); - typedef MMTkRetainReferentType MMTkRetainForFinalizeType; - typedef MMTkRetainReferentType MMTkGetForwardedReferenceType; - typedef MMTkRetainReferentType MMTkGetForwardedReferentType; - typedef MMTkRetainReferentType MMTkGetForwardedFinalizableType; - typedef void (*MMTkCollectType)(uintptr_t, int32_t); - - static MMTkAllocType MMTkGCAllocator; - - static MMTkPostAllocType MMTkGCPostAllocator; - - static MMTkCheckAllocatorType MMTkCheckAllocator; - - static MMTkDelayedRootType MMTkDelayedRoot; - - static MMTkProcessEdgeType MMTkProcessEdge; - - static MMTkProcessRootEdgeType MMTkProcessRootEdge; - - static MMTkIsLiveType MMTkIsLive; - - static MMTkRetainReferentType MMTkRetainReferent; - static MMTkRetainForFinalizeType MMTkRetainForFinalize; - static MMTkGetForwardedReferenceType MMTkGetForwardedReference; - static MMTkGetForwardedReferentType MMTkGetForwardedReferent; - static MMTkGetForwardedFinalizableType MMTkGetForwardedFinalizable; - - static MMTkCollectType MMTkTriggerCollection; - void* operator new(size_t sz, VirtualTable *VT) { - gc* res = 0; - llvm_gcroot(res, 0); - assert(VT->tracer && "VT without a tracer"); - sz = llvm::RoundUpToAlignment(sz, sizeof(void*)); - uintptr_t Mutator = mvm::MutatorThread::get()->MutatorContext; - int allocator = MMTkCheckAllocator(Mutator, sz, 0, 0); - res = (gc*)MMTkGCAllocator(Mutator, sz, 0, 0, allocator, 0); - assert(res && "Allocation failed"); - assert(res->getVirtualTable() == 0 && "Allocation not zeroed"); - res->setVirtualTable(VT); - MMTkGCPostAllocator(Mutator, (uintptr_t)res, (uintptr_t)VT, sz, allocator); - - // operator new is called by C++ code, that does not call the - // addFinalizationCandidate, unlike application code. Call it here. - if (VT->destructor) { - mvm::Thread::get()->MyVM->addFinalizationCandidate(res); - } - return res; + return gcmallocUnresolved(sz, VT); } }; @@ -118,54 +52,25 @@ static uintptr_t TraceLocal; - static bool isLive(gc* ptr) { - return gc::MMTkIsLive(TraceLocal, ptr); - } + static bool isLive(gc* ptr); - static void scanObject(void** ptr) { - assert(gc::MMTkDelayedRoot && "scanning without a function"); - assert(TraceLocal && "scanning without a trace local"); - gc::MMTkDelayedRoot(TraceLocal, ptr); - } + static void scanObject(void** ptr); - static void markAndTrace(void* source, void* ptr) { - assert(TraceLocal && "scanning without a trace local"); - gc::MMTkProcessEdge(TraceLocal, source, ptr); - } + static void markAndTrace(void* source, void* ptr); - static void markAndTraceRoot(void* ptr) { - assert(TraceLocal && "scanning without a trace local"); - gc::MMTkProcessRootEdge(TraceLocal, ptr, true); - } + static void markAndTraceRoot(void* ptr); - static gc* retainForFinalize(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkRetainForFinalize(TraceLocal, val); - } + static gc* retainForFinalize(gc* val); - static gc* retainReferent(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkRetainReferent(TraceLocal, val); - } + static gc* retainReferent(gc* val); - static gc* getForwardedFinalizable(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkGetForwardedFinalizable(TraceLocal, val); - } + static gc* getForwardedFinalizable(gc* val); - static gc* getForwardedReference(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkGetForwardedReference(TraceLocal, val); - } + static gc* getForwardedReference(gc* val); - static gc* getForwardedReferent(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkGetForwardedReferent(TraceLocal, val); - } + static gc* getForwardedReferent(gc* val); - static void collect() { - if (gc::MMTkTriggerCollection) gc::MMTkTriggerCollection(NULL, 2); - } + static void collect(); static void initialise(); Modified: vmkit/trunk/lib/Mvm/StaticGCPass/StaticGCPass.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/StaticGCPass/StaticGCPass.cpp?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/StaticGCPass/StaticGCPass.cpp (original) +++ vmkit/trunk/lib/Mvm/StaticGCPass/StaticGCPass.cpp Thu Mar 25 14:57:09 2010 @@ -40,24 +40,27 @@ bool StaticGCPass::runOnModule(Module& M) { Function* F = M.getFunction("__llvm_gcroot"); - if (F) { - Function *gcrootFun = Intrinsic::getDeclaration(&M, Intrinsic::gcroot); + Function *gcrootFun = Intrinsic::getDeclaration(&M, Intrinsic::gcroot); + if (F) { F->replaceAllUsesWith(gcrootFun); F->eraseFromParent(); + } - for (Value::use_iterator I = gcrootFun->use_begin(), - E = gcrootFun->use_end(); I != E; ++I) { - if (Instruction* II = dyn_cast(I)) { - Function* F = II->getParent()->getParent(); - if (!F->hasGC()) F->setGC("ocaml"); - } + for (Value::use_iterator I = gcrootFun->use_begin(), + E = gcrootFun->use_end(); I != E; ++I) { + if (Instruction* II = dyn_cast(I)) { + Function* F = II->getParent()->getParent(); + if (F->hasGC()) F->clearGC(); + F->setGC("ocaml"); } + } - return true; + for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I) { + if (I->hasGC() && !strcmp(I->getGC(), "vmkit")) I->setGC("ocaml"); } - return false; + return true; } } Modified: vmkit/trunk/mmtk/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/Makefile?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/mmtk/Makefile (original) +++ vmkit/trunk/mmtk/Makefile Thu Mar 25 14:57:09 2010 @@ -8,7 +8,7 @@ ##===----------------------------------------------------------------------===## LEVEL = .. -DIRS = magic mmtk-j3 mmtk-fake mmtk-alloc java +DIRS = magic mmtk-j3 mmtk-alloc java include $(LEVEL)/Makefile.config Modified: vmkit/trunk/mmtk/magic/LowerJavaRT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/magic/LowerJavaRT.cpp?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/mmtk/magic/LowerJavaRT.cpp (original) +++ vmkit/trunk/mmtk/magic/LowerJavaRT.cpp Thu Mar 25 14:57:09 2010 @@ -67,7 +67,9 @@ GlobalValue& GV = *I; ++I; if (!strncmp(GV.getName().data(), "JnJVM_java", 10) || - !strncmp(GV.getName().data(), "java", 4)) { + !strncmp(GV.getName().data(), "java", 4) || + !strncmp(GV.getName().data(), "JnJVM_gnu", 9) || + !strncmp(GV.getName().data(), "gnu", 3)) { GV.replaceAllUsesWith(Constant::getNullValue(GV.getType())); GV.eraseFromParent(); } Modified: vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp (original) +++ vmkit/trunk/mmtk/mmtk-alloc/Selected.cpp Thu Mar 25 14:57:09 2010 @@ -7,19 +7,54 @@ // //===----------------------------------------------------------------------===// -#include "JavaArray.h" -#include "JavaClass.h" -#include "JavaObject.h" -#include "JavaThread.h" #include "MutatorThread.h" +#include "MvmGC.h" -using namespace j3; +#include +#include + +using namespace mvm; + +uintptr_t Collector::TraceLocal = 0; extern "C" void* JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII(uintptr_t Mutator, int32_t sz, int32_t align, int32_t offset, int32_t allocator, int32_t site) __attribute__((always_inline)); extern "C" int32_t JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III(uintptr_t Mutator, int32_t bytes, int32_t align, int32_t allocator) __attribute__((always_inline)); extern "C" void JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II(uintptr_t Mutator, uintptr_t ref, uintptr_t typeref, int32_t bytes, int32_t allocator) __attribute__((always_inline)); +extern "C" uint32_t MMTkMutatorSize; +extern "C" void JnJVM_org_j3_config_Selected_00024Mutator__0003Cinit_0003E__(uintptr_t); +extern "C" VirtualTable* org_j3_config_Selected_4Mutator_VT; +extern "C" void JnJVM_org_mmtk_plan_MutatorContext_initMutator__I(uintptr_t, int32_t); +extern "C" void JnJVM_org_mmtk_plan_MutatorContext_deinitMutator__(uintptr_t); + +extern "C" void JnJVM_org_j3_config_Selected_00024Collector__0003Cinit_0003E__(uintptr_t); +extern "C" VirtualTable* org_j3_config_Selected_4Collector_VT; +extern "C" uint32_t MMTkCollectorSize; + +extern "C" void JnJVM_org_mmtk_utility_heap_HeapGrowthManager_boot__Lorg_vmmagic_unboxed_Extent_2Lorg_vmmagic_unboxed_Extent_2(intptr_t, intptr_t); +extern "C" uintptr_t* org_j3_config_Selected_4Plan_static; +extern "C" void MMTkPlanBoot(uintptr_t); +extern "C" void MMTkPlanPostBoot(uintptr_t); +extern "C" void MMTkPlanFullBoot(uintptr_t); + +extern "C" void Java_org_j3_mmtk_Collection_triggerCollection__I(uintptr_t, int32_t); +//===-------------------- TODO: make those virtual. -------------------===// +extern "C" void JnJVM_org_mmtk_plan_TraceLocal_reportDelayedRootEdge__Lorg_vmmagic_unboxed_Address_2(uintptr_t TraceLocal, void** slot); +extern "C" void JnJVM_org_mmtk_plan_TraceLocal_processEdge__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_Address_2( + uintptr_t TraceLocal, void* source, void* slot); +extern "C" void JnJVM_org_mmtk_plan_TraceLocal_processRootEdge__Lorg_vmmagic_unboxed_Address_2Z( + uintptr_t TraceLocal, void* slot, uint8_t untraced); + +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_retainForFinalize__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_retainReferent__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_getForwardedReference__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_getForwardedReferent__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_getForwardedFinalizable__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); + +extern "C" uint8_t JnJVM_org_mmtk_plan_marksweep_MSTraceLocal_isLive__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); + + extern "C" void* gcmalloc(uint32_t sz, void* _VT) { gc* res = 0; llvm_gcroot(res, 0); @@ -40,13 +75,103 @@ mvm::Thread::get()->MyVM->addFinalizationCandidate((gc*)obj); } -extern "C" void* gcmallocUnresolved(uint32_t sz, void* _VT) { +extern "C" void* gcmallocUnresolved(uint32_t sz, VirtualTable* VT) { gc* res = 0; llvm_gcroot(res, 0); - VirtualTable* VT = (VirtualTable*)_VT; res = (gc*)gcmalloc(sz, VT); if (VT->destructor) addFinalizationCandidate(res); return res; } +void MutatorThread::init(Thread* _th) { + MutatorThread* th = (MutatorThread*)_th; + th->MutatorContext = + (uintptr_t)th->Allocator.Allocate(MMTkMutatorSize, "Mutator"); + ((VirtualTable**)th->MutatorContext)[0] = org_j3_config_Selected_4Mutator_VT; + JnJVM_org_j3_config_Selected_00024Mutator__0003Cinit_0003E__(th->MutatorContext); + JnJVM_org_mmtk_plan_MutatorContext_initMutator__I(th->MutatorContext, (int32_t)_th->getThreadID()); + th->realRoutine(_th); + JnJVM_org_mmtk_plan_MutatorContext_deinitMutator__(th->MutatorContext); +} +bool Collector::isLive(gc* ptr) { + return JnJVM_org_mmtk_plan_marksweep_MSTraceLocal_isLive__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, ptr); +} + +void Collector::scanObject(void** ptr) { + JnJVM_org_mmtk_plan_TraceLocal_reportDelayedRootEdge__Lorg_vmmagic_unboxed_Address_2(TraceLocal, ptr); +} + +void Collector::markAndTrace(void* source, void* ptr) { + assert(TraceLocal && "scanning without a trace local"); + JnJVM_org_mmtk_plan_TraceLocal_processEdge__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_Address_2(TraceLocal, source, ptr); +} + +void Collector::markAndTraceRoot(void* ptr) { + assert(TraceLocal && "scanning without a trace local"); + JnJVM_org_mmtk_plan_TraceLocal_processRootEdge__Lorg_vmmagic_unboxed_Address_2Z(TraceLocal, ptr, true); +} + +gc* Collector::retainForFinalize(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_retainForFinalize__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +gc* Collector::retainReferent(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_retainReferent__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +gc* Collector::getForwardedFinalizable(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_getForwardedFinalizable__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +gc* Collector::getForwardedReference(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_getForwardedReference__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +gc* Collector::getForwardedReferent(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_getForwardedReferent__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +void Collector::collect() { + Java_org_j3_mmtk_Collection_triggerCollection__I(NULL, 2); +} + +void Collector::initialise() { + // Allocate the memory for MMTk right now, to avoid conflicts with + // other allocators. +#if defined (__MACH__) + uint32 flags = MAP_PRIVATE | MAP_ANON | MAP_FIXED; +#else + uint32 flags = MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED; +#endif + void* baseAddr = mmap((void*)0x30000000, 0x40000000, PROT_READ | PROT_WRITE, + flags, -1, 0); + if (baseAddr == MAP_FAILED) { + perror("mmap"); + abort(); + } + + JnJVM_org_mmtk_utility_heap_HeapGrowthManager_boot__Lorg_vmmagic_unboxed_Extent_2Lorg_vmmagic_unboxed_Extent_2(128 * 1024 * 1024, 1024 * 1024 * 1024); + + uintptr_t Plan = *org_j3_config_Selected_4Plan_static; + MMTkPlanBoot(Plan); + MMTkPlanPostBoot(Plan); + MMTkPlanFullBoot(Plan); +} + +extern "C" void* MMTkMutatorAllocate(uint32_t size, VirtualTable* VT) { + void* val = MutatorThread::get()->Allocator.Allocate(size, "MMTk"); + ((void**)val)[0] = VT; + return val; +} + +//TODO: Remove these. +std::set __InternalSet__; +void* Collector::begOf(gc* obj) { + abort(); +} Modified: vmkit/trunk/tools/j3/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/j3/Makefile?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/tools/j3/Makefile (original) +++ vmkit/trunk/tools/j3/Makefile Thu Mar 25 14:57:09 2010 @@ -16,7 +16,13 @@ MODULESNAME = j3 USEDMODULES = J3.bc Classpath.bc J3Compiler.bc Allocator.bc CommonThread.bc \ - Mvm.bc MvmCompiler.bc $(GCLIB).bc + Mvm.bc MvmCompiler.bc + + ifeq ($(GC_MMTK), 1) + USEDMODULES += FinalMMTk.bc + else + USEDMODULES += $(GCLIB).bc + endif ifeq ($(ISOLATE_SHARING_BUILD), 1) USEDMODULES += Isolate.bc Modified: vmkit/trunk/tools/vmkit/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/tools/vmkit/Makefile?rev=99545&r1=99544&r2=99545&view=diff ============================================================================== --- vmkit/trunk/tools/vmkit/Makefile (original) +++ vmkit/trunk/tools/vmkit/Makefile Thu Mar 25 14:57:09 2010 @@ -29,7 +29,13 @@ USEDMODULES += N3.bc PNetLib.bc endif - USEDMODULES += Allocator.bc CommonThread.bc Mvm.bc MvmCompiler.bc $(GCLIB).bc + USEDMODULES += Allocator.bc CommonThread.bc Mvm.bc MvmCompiler.bc + + ifeq ($(GC_MMTK), 1) + USEDMODULES += FinalMMTk.bc + else + USEDMODULES += $(GCLIB).bc + endif BUILT_SOURCES = vmkit.s SOURCES = vmkit.s $(notdir $(wildcard $(PROJ_SRC_DIR)/*.cpp)) From nicolas.geoffray at lip6.fr Sun Mar 28 09:54:48 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 28 Mar 2010 16:54:48 -0000 Subject: [vmkit-commits] [vmkit] r99764 - /vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Message-ID: <20100328165449.0A4F22A6C12C@llvm.org> Author: geoffray Date: Sun Mar 28 11:54:48 2010 New Revision: 99764 URL: http://llvm.org/viewvc/llvm-project?rev=99764&view=rev Log: Code cleanup + Create a context for the global module (so that we're not bitten by LLVM shutdown). Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Modified: vmkit/trunk/lib/Mvm/Compiler/JIT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/Compiler/JIT.cpp?rev=99764&r1=99763&r2=99764&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/Compiler/JIT.cpp (original) +++ vmkit/trunk/lib/Mvm/Compiler/JIT.cpp Sun Mar 28 11:54:48 2010 @@ -156,7 +156,7 @@ llvm::cl::ParseCommandLineOptions(2, commands); if (!M) { - globalModule = new Module("bootstrap module", getGlobalContext()); + globalModule = new Module("bootstrap module", *(new LLVMContext())); InitializeNativeTarget(); @@ -326,8 +326,6 @@ assert(AllocateUnresolvedFunction && "No allocateUnresolved function"); AddFinalizationCandidate = module->getFunction("addFinalizationCandidate"); assert(AddFinalizationCandidate && "No addFinalizationCandidate function"); - - MvmModule::copyDefinitions(module, MvmModule::globalModule); } const llvm::TargetData* MvmModule::TheTargetData; @@ -476,30 +474,6 @@ } } - -void MvmModule::copyDefinitions(Module* Dst, Module* Src) { - Function* SF = Src->getFunction("gcmalloc"); - Function* DF = Dst->getFunction("gcmalloc"); - if (SF && DF && executionEngine && !SF->isDeclaration()) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(DF, ptr); - } - - SF = Src->getFunction("gcmallocUnresolved"); - DF = Dst->getFunction("gcmallocUnresolved"); - if (SF && DF && executionEngine && !SF->isDeclaration()) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(DF, ptr); - } - - SF = Src->getFunction("addFinalizationCandidate"); - DF = Dst->getFunction("addFinalizationCandidate"); - if (SF && DF && executionEngine && !SF->isDeclaration()) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(DF, ptr); - } -} - void JITMethodInfo::scan(void* TL, void* ip, void* addr) { if (GCInfo) { DEBUG(llvm::errs() << GCInfo->getFunction().getName() << '\n'); From nicolas.geoffray at lip6.fr Sun Mar 28 09:58:44 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 28 Mar 2010 16:58:44 -0000 Subject: [vmkit-commits] [vmkit] r99765 - /vmkit/trunk/include/mvm/JIT.h Message-ID: <20100328165844.1BA052A6C12C@llvm.org> Author: geoffray Date: Sun Mar 28 11:58:43 2010 New Revision: 99765 URL: http://llvm.org/viewvc/llvm-project?rev=99765&view=rev Log: Remove dead declaration. Modified: vmkit/trunk/include/mvm/JIT.h Modified: vmkit/trunk/include/mvm/JIT.h URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/include/mvm/JIT.h?rev=99765&r1=99764&r2=99765&view=diff ============================================================================== --- vmkit/trunk/include/mvm/JIT.h (original) +++ vmkit/trunk/include/mvm/JIT.h Sun Mar 28 11:58:43 2010 @@ -197,8 +197,6 @@ static void protectIR(); static void unprotectIR(); - static void copyDefinitions(llvm::Module* Dst, llvm::Module* Src); - static void addCommandLinePasses(llvm::FunctionPassManager* PM); static const char* getHostTriple(); From nicolas.geoffray at lip6.fr Sun Mar 28 10:19:33 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 28 Mar 2010 17:19:33 -0000 Subject: [vmkit-commits] [vmkit] r99766 - in /vmkit/branches/release_027: Makefile Makefile.rules include/mvm/JIT.h lib/J3/Compiler/JavaAOTCompiler.cpp lib/Mvm/Compiler/JIT.cpp lib/Mvm/Compiler/MMTkInline.inc lib/Mvm/MMTk/MutatorThread.cpp lib/Mvm/MMTk/MutatorThread.h lib/Mvm/MMTk/MvmGC.cpp lib/Mvm/MMTk/MvmGC.h lib/Mvm/StaticGCPass/StaticGCPass.cpp mmtk/Makefile mmtk/magic/LowerJavaRT.cpp mmtk/mmtk-alloc/Selected.cpp mmtk/mmtk-fake/Makefile mmtk/mmtk-fake/Selected.cpp tools/j3/Makefile tools/vmkit/Makefile Message-ID: <20100328171933.3151B2A6C12C@llvm.org> Author: geoffray Date: Sun Mar 28 12:19:32 2010 New Revision: 99766 URL: http://llvm.org/viewvc/llvm-project?rev=99766&view=rev Log: Port r99545, 99764 and 99765 to 0.27. Modified: vmkit/branches/release_027/Makefile vmkit/branches/release_027/Makefile.rules vmkit/branches/release_027/include/mvm/JIT.h vmkit/branches/release_027/lib/J3/Compiler/JavaAOTCompiler.cpp vmkit/branches/release_027/lib/Mvm/Compiler/JIT.cpp vmkit/branches/release_027/lib/Mvm/Compiler/MMTkInline.inc vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.cpp vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.h vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.cpp vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.h vmkit/branches/release_027/lib/Mvm/StaticGCPass/StaticGCPass.cpp vmkit/branches/release_027/mmtk/Makefile vmkit/branches/release_027/mmtk/magic/LowerJavaRT.cpp vmkit/branches/release_027/mmtk/mmtk-alloc/Selected.cpp vmkit/branches/release_027/mmtk/mmtk-fake/Makefile vmkit/branches/release_027/mmtk/mmtk-fake/Selected.cpp vmkit/branches/release_027/tools/j3/Makefile vmkit/branches/release_027/tools/vmkit/Makefile Modified: vmkit/branches/release_027/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/Makefile?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/Makefile (original) +++ vmkit/branches/release_027/Makefile Sun Mar 28 12:19:32 2010 @@ -13,12 +13,14 @@ # Top-Level vmkit Build Stages: # -DIRS := lib tools +DIRS := lib tools/vmjc ifeq ($(GC_MMTK), 1) DIRS += mmtk endif +DIRS += tools + EXTRA_DIST=include include $(LEVEL)/Makefile.common Modified: vmkit/branches/release_027/Makefile.rules URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/Makefile.rules?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/Makefile.rules (original) +++ vmkit/branches/release_027/Makefile.rules Sun Mar 28 12:19:32 2010 @@ -133,7 +133,7 @@ $(Verb) $(ANT) -buildfile $(PROJ_SRC_ROOT)/mmtk/java/build.xml $(Echo) Building $(BuildMode) $(JARNAME).jar $(notdir $@) $(Verb) $(LOPT) -load=$(LibDir)/JITGCPass$(SHLIBEXT) -std-compile-opts -JITGCPass -f $(LibDir)/MMTKAlloc.bc -o $(LibDir)/MMTKAlloc.bc - $(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKFake$(SHLIBEXT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic -verify $(PROJ_SRC_ROOT)/mmtk/java/$(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=$(PROJ_SRC_ROOT)/mmtk/java/vmkit.properties -disable-stubs -assume-compiled -llvm-lazy + $(Verb) $(VMJC) -std-compile-opts $(ADDITIONAL_ARGS) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -LowerMagic -verify $(PROJ_SRC_ROOT)/mmtk/java/$(JARNAME).jar -disable-exceptions -disable-cooperativegc -with-clinit=org/mmtk/vm/VM,org/mmtk/utility/*,org/mmtk/policy/*,org/j3/config/* -Dmmtk.hostjvm=org.j3.mmtk.Factory -o $(JARNAME).bc -Dmmtk.properties=$(PROJ_SRC_ROOT)/mmtk/java/vmkit.properties -disable-stubs -assume-compiled -llvm-lazy $(Verb) $(LOPT) -load=$(LibDir)/MMTKMagic$(SHLIBEXT) -std-compile-opts -LowerJavaRT -f $(JARNAME).bc -o $(JARNAME)-optimized.bc $(Verb) $(LLVMLD) -r -o $(LibDir)/FinalMMTk.bc $(LibDir)/MMTKAlloc.bc $(JARNAME)-optimized.bc $(LibDir)/MMTKRuntime.bc $(Verb) $(LOPT) -std-compile-opts $(LibDir)/FinalMMTk.bc -o $(LibDir)/FinalMMTk.bc Modified: vmkit/branches/release_027/include/mvm/JIT.h URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/include/mvm/JIT.h?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/include/mvm/JIT.h (original) +++ vmkit/branches/release_027/include/mvm/JIT.h Sun Mar 28 12:19:32 2010 @@ -181,7 +181,6 @@ static llvm::GCStrategy* TheGCStrategy; static mvm::LockRecursive protectEngine; static llvm::Module *globalModule; - static llvm::FunctionPassManager* globalFunctionPasses; static const llvm::TargetData* TheTargetData; static mvm::BumpPtrAllocator* Allocator; //static unsigned MetadataTypeKind; @@ -198,8 +197,6 @@ static void protectIR(); static void unprotectIR(); - static void copyDefinitions(llvm::Module* Dst, llvm::Module* Src); - static void addCommandLinePasses(llvm::FunctionPassManager* PM); static const char* getHostTriple(); Modified: vmkit/branches/release_027/lib/J3/Compiler/JavaAOTCompiler.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/lib/J3/Compiler/JavaAOTCompiler.cpp?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/lib/J3/Compiler/JavaAOTCompiler.cpp (original) +++ vmkit/branches/release_027/lib/J3/Compiler/JavaAOTCompiler.cpp Sun Mar 28 12:19:32 2010 @@ -353,8 +353,9 @@ } Module& Mod = *getLLVMModule(); - varGV = new GlobalVariable(Mod, Ty, false, GlobalValue::InternalLinkage, - 0, "final object"); + // Set as External, so that inlining MMTk code works. + varGV = new GlobalVariable(Mod, Ty, false, GlobalValue::ExternalLinkage, + 0, "finalObject"); Constant* C = ConstantExpr::getBitCast(varGV, JavaIntrinsics.JavaObjectType); Modified: vmkit/branches/release_027/lib/Mvm/Compiler/JIT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/lib/Mvm/Compiler/JIT.cpp?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/lib/Mvm/Compiler/JIT.cpp (original) +++ vmkit/branches/release_027/lib/Mvm/Compiler/JIT.cpp Sun Mar 28 12:19:32 2010 @@ -44,8 +44,15 @@ #include "MutatorThread.h" #include "MvmGC.h" +#include #include +#if defined(__MACH__) +#define SELF_HANDLE RTLD_DEFAULT +#else +#define SELF_HANDLE 0 +#endif + using namespace mvm; using namespace llvm; @@ -149,7 +156,7 @@ llvm::cl::ParseCommandLineOptions(2, commands); if (!M) { - globalModule = new Module("bootstrap module", getGlobalContext()); + globalModule = new Module("bootstrap module", *(new LLVMContext())); InitializeNativeTarget(); @@ -169,9 +176,6 @@ TheTargetData = T->getTargetData(); } - globalFunctionPasses = new FunctionPassManager(globalModule); - - //LLVMContext& Context = globalModule->getContext(); //MetadataTypeKind = Context.getMDKindID("HighLevelType"); @@ -179,163 +183,6 @@ e = LoadBytecodeFiles.end(); i != e; ++i) { loadBytecodeFile(*i); } - -#ifdef WITH_MMTK - llvm::GlobalVariable* GV = globalModule->getGlobalVariable("MMTkCollectorSize", false); - if (GV && executionEngine) { - // Allocate the memory for MMTk right now, to avoid conflicts with - // other allocators. -#if defined (__MACH__) - uint32 flags = MAP_PRIVATE | MAP_ANON | MAP_FIXED; -#else - uint32 flags = MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED; -#endif - void* baseAddr = mmap((void*)0x30000000, 0x40000000, PROT_READ | PROT_WRITE, - flags, -1, 0); - if (baseAddr == MAP_FAILED) { - perror("mmap"); - abort(); - } - - ConstantInt* C = dyn_cast(GV->getInitializer()); - uint64_t val = C->getZExtValue(); - MutatorThread::MMTkCollectorSize = val; - - GV = globalModule->getGlobalVariable("MMTkMutatorSize", false); - assert(GV && "Could not find MMTkMutatorSize"); - C = dyn_cast(GV->getInitializer()); - val = C->getZExtValue(); - MutatorThread::MMTkMutatorSize = val; - - Function* F = globalModule->getFunction("JnJVM_org_j3_config_Selected_00024Mutator__0003Cinit_0003E__"); - assert(F && "Could not find from Mutator"); - MutatorThread::MutatorInit = (MutatorThread::MMTkInitType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_MutatorContext_initMutator__I"); - assert(F && "Could not find init from Mutator"); - MutatorThread::MutatorCallInit = (MutatorThread::MMTkInitIntType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_MutatorContext_deinitMutator__"); - assert(F && "Could not find deinit from Mutator"); - MutatorThread::MutatorCallDeinit = (MutatorThread::MMTkInitType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - - GV = globalModule->getGlobalVariable("org_j3_config_Selected_4Mutator_VT", false); - assert(GV && "Could not find VT from Mutator"); - MutatorThread::MutatorVT = (VirtualTable*)executionEngine->getPointerToGlobal(GV); - - F = globalModule->getFunction("JnJVM_org_j3_config_Selected_00024Collector__0003Cinit_0003E__"); - assert(F && "Could not find from Collector"); - MutatorThread::CollectorInit = (MutatorThread::MMTkInitType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - GV = globalModule->getGlobalVariable("org_j3_config_Selected_4Collector_VT", false); - assert(GV && "Could not find VT from Collector"); - MutatorThread::CollectorVT = (VirtualTable*)executionEngine->getPointerToGlobal(GV); - - GlobalAlias* GA = dyn_cast(globalModule->getNamedValue("MMTkAlloc")); - assert(GA && "Could not find MMTkAlloc alias"); - F = dyn_cast(GA->getAliasee()); - gc::MMTkGCAllocator = (gc::MMTkAllocType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - GA = dyn_cast(globalModule->getNamedValue("MMTkPostAlloc")); - assert(GA && "Could not find MMTkPostAlloc alias"); - F = dyn_cast(GA->getAliasee()); - gc::MMTkGCPostAllocator = (gc::MMTkPostAllocType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - GA = dyn_cast(globalModule->getNamedValue("MMTkCheckAllocator")); - assert(GA && "Could not find MMTkCheckAllocator alias"); - F = dyn_cast(GA->getAliasee()); - gc::MMTkCheckAllocator = (gc::MMTkCheckAllocatorType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_utility_heap_HeapGrowthManager_boot__Lorg_vmmagic_unboxed_Extent_2Lorg_vmmagic_unboxed_Extent_2"); - assert(F && "Could not find boot from HeapGrowthManager"); - BootHeapType BootHeap = (BootHeapType) - (uintptr_t)executionEngine->getPointerToFunction(F); - BootHeap(128 * 1024 * 1024, 1024 * 1024 * 1024); - - GV = globalModule->getGlobalVariable("org_j3_config_Selected_4Plan_static", false); - assert(GV && "No global plan."); - uintptr_t Plan = *((uintptr_t*)executionEngine->getPointerToGlobal(GV)); - - GA = dyn_cast(globalModule->getNamedValue("MMTkPlanBoot")); - assert(GA && "Could not find MMTkPlanBoot alias"); - F = dyn_cast(GA->getAliasee()); - BootType Boot = (BootType) - (uintptr_t)executionEngine->getPointerToFunction(F); - Boot(Plan); - - GA = dyn_cast(globalModule->getNamedValue("MMTkPlanPostBoot")); - assert(GA && "Could not find MMTkPlanPostBoot alias"); - F = dyn_cast(GA->getAliasee()); - Boot = (BootType)(uintptr_t)executionEngine->getPointerToFunction(F); - Boot(Plan); - - GA = dyn_cast(globalModule->getNamedValue("MMTkPlanFullBoot")); - assert(GA && "Could not find MMTkPlanFullBoot alias"); - F = dyn_cast(GA->getAliasee()); - Boot = (BootType)(uintptr_t)executionEngine->getPointerToFunction(F); - Boot(Plan); - - F = globalModule->getFunction("Java_org_j3_mmtk_Collection_triggerCollection__I"); - assert(F && "Could not find external collect"); - gc::MMTkTriggerCollection = (gc::MMTkCollectType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - //===-------------------- TODO: make those virtual. -------------------===// - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_reportDelayedRootEdge__Lorg_vmmagic_unboxed_Address_2"); - assert(F && "Could not find reportDelayedRootEdge from TraceLocal"); - gc::MMTkDelayedRoot = (gc::MMTkDelayedRootType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_processEdge__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_Address_2"); - assert(F && "Could not find processEdge from TraceLocal"); - gc::MMTkProcessEdge = (gc::MMTkProcessEdgeType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_processRootEdge__Lorg_vmmagic_unboxed_Address_2Z"); - assert(F && "Could not find processEdge from TraceLocal"); - gc::MMTkProcessRootEdge = (gc::MMTkProcessRootEdgeType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_marksweep_MSTraceLocal_isLive__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkIsLive = (gc::MMTkIsLiveType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_retainForFinalize__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkRetainForFinalize = (gc::MMTkRetainForFinalizeType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_retainReferent__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkRetainReferent = (gc::MMTkRetainReferentType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_getForwardedReference__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkGetForwardedReference = (gc::MMTkGetForwardedReferenceType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_getForwardedReferent__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkGetForwardedReferent = (gc::MMTkGetForwardedReferentType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - F = globalModule->getFunction("JnJVM_org_mmtk_plan_TraceLocal_getForwardedFinalizable__Lorg_vmmagic_unboxed_ObjectReference_2"); - assert(F && "Could not find isLive from TraceLocal"); - gc::MMTkGetForwardedFinalizable = (gc::MMTkGetForwardedFinalizableType) - (uintptr_t)executionEngine->getPointerToFunction(F); - - } -#endif } @@ -345,35 +192,10 @@ module->setTargetTriple(MvmModule::globalModule->getTargetTriple()); LLVMContext& Context = module->getContext(); -#ifdef WITH_MMTK - if (MutatorThread::MMTkCollectorSize) { - // If we have found MMTk, read the gcmalloc function and set the address of - // global variables and functions used by gcmalloc. + if (dlsym(SELF_HANDLE, "MMTkPlanBoot")) { + // If we have found MMTk, read the gcmalloc function. mvm::mmtk_runtime::makeLLVMFunction(module); - if (MvmModule::executionEngine) { - for (Module::global_iterator i = module->global_begin(), - e = module->global_end(); i != e; ++i) { - if (i->isDeclaration()) { - GlobalVariable* GV = - MvmModule::globalModule->getGlobalVariable(i->getName(), true); - assert(GV && "GV can not be found"); - void* ptr = MvmModule::executionEngine->getPointerToGlobal(GV); - MvmModule::executionEngine->updateGlobalMapping(i, ptr); - } - } - for (Module::iterator i = module->begin(), e = module->end(); - i != e; ++i) { - if (i->isDeclaration() && !i->isIntrinsic()) { - Function* F = - MvmModule::globalModule->getFunction(i->getName()); - assert(F && "Function can not be found"); - void* ptr = MvmModule::executionEngine->getPointerToFunction(F); - MvmModule::executionEngine->updateGlobalMapping(i, ptr); - } - } - } } -#endif mvm::llvm_runtime::makeLLVMModuleContents(module); @@ -504,14 +326,11 @@ assert(AllocateUnresolvedFunction && "No allocateUnresolved function"); AddFinalizationCandidate = module->getFunction("addFinalizationCandidate"); assert(AddFinalizationCandidate && "No addFinalizationCandidate function"); - - MvmModule::copyDefinitions(module, MvmModule::globalModule); } const llvm::TargetData* MvmModule::TheTargetData; llvm::GCStrategy* MvmModule::TheGCStrategy; llvm::Module *MvmModule::globalModule; -llvm::FunctionPassManager* MvmModule::globalFunctionPasses; llvm::ExecutionEngine* MvmModule::executionEngine; mvm::LockRecursive MvmModule::protectEngine; mvm::BumpPtrAllocator* MvmModule::Allocator; @@ -655,30 +474,6 @@ } } - -void MvmModule::copyDefinitions(Module* Dst, Module* Src) { - Function* SF = Src->getFunction("gcmalloc"); - Function* DF = Dst->getFunction("gcmalloc"); - if (SF && DF && executionEngine && !SF->isDeclaration()) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(DF, ptr); - } - - SF = Src->getFunction("gcmallocUnresolved"); - DF = Dst->getFunction("gcmallocUnresolved"); - if (SF && DF && executionEngine && !SF->isDeclaration()) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(DF, ptr); - } - - SF = Src->getFunction("addFinalizationCandidate"); - DF = Dst->getFunction("addFinalizationCandidate"); - if (SF && DF && executionEngine && !SF->isDeclaration()) { - void* ptr = executionEngine->getPointerToFunction(SF); - executionEngine->updateGlobalMapping(DF, ptr); - } -} - void JITMethodInfo::scan(void* TL, void* ip, void* addr) { if (GCInfo) { DEBUG(llvm::errs() << GCInfo->getFunction().getName() << '\n'); @@ -694,4 +489,3 @@ } } } - Modified: vmkit/branches/release_027/lib/Mvm/Compiler/MMTkInline.inc URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/lib/Mvm/Compiler/MMTkInline.inc?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/lib/Mvm/Compiler/MMTkInline.inc (original) +++ vmkit/branches/release_027/lib/Mvm/Compiler/MMTkInline.inc Sun Mar 28 12:19:32 2010 @@ -582,21 +582,21 @@ /*isConstant=*/false, /*Linkage=*/GlobalValue::InternalLinkage, /*Initializer=*/0, // has initializer, specified below -/*Name=*/"final object67"); +/*Name=*/"finalObject67"); 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"); +/*Name=*/"finalObject2"); 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"); +/*Name=*/"finalObject32"); GlobalVariable* gvar_struct_org_mmtk_utility_DoublyLinkedList_static = new GlobalVariable(/*Module=*/ *mod, /*Type=*/StructTy_45, @@ -610,21 +610,21 @@ /*isConstant=*/false, /*Linkage=*/GlobalValue::InternalLinkage, /*Initializer=*/0, // has initializer, specified below -/*Name=*/"final object85"); +/*Name=*/"finalObject85"); 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"); +/*Name=*/"finalObject101"); 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"); +/*Name=*/"finalObject122"); // Constant Definitions ConstantInt* const_int32_50 = ConstantInt::get(mod->getContext(), APInt(32, StringRef("1"), 10)); Modified: vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.cpp?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.cpp (original) +++ vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.cpp Sun Mar 28 12:19:32 2010 @@ -12,20 +12,3 @@ #include "MvmGC.h" using namespace mvm; - -uint32_t MutatorThread::MMTkMutatorSize = 0; -uint32_t MutatorThread::MMTkCollectorSize = 0; - -MutatorThread::MMTkInitType MutatorThread::MutatorInit = 0; -MutatorThread::MMTkInitIntType MutatorThread::MutatorCallInit = 0; -MutatorThread::MMTkInitType MutatorThread::MutatorCallDeinit = 0; -MutatorThread::MMTkInitType MutatorThread::CollectorInit = 0; - -VirtualTable* MutatorThread::MutatorVT = 0; -VirtualTable* MutatorThread::CollectorVT = 0; - -extern "C" void* MMTkMutatorAllocate(uint32_t size, VirtualTable* VT) { - void* val = MutatorThread::get()->Allocator.Allocate(size, "MMTk"); - ((void**)val)[0] = VT; - return val; -} Modified: vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.h URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.h?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.h (original) +++ vmkit/branches/release_027/lib/Mvm/MMTk/MutatorThread.h Sun Mar 28 12:19:32 2010 @@ -24,31 +24,8 @@ /// realRoutine - The function to invoke when the thread starts. /// void (*realRoutine)(mvm::Thread*); - - static uint32_t MMTkMutatorSize; - static uint32_t MMTkCollectorSize; - - typedef void (*MMTkInitType)(uintptr_t); - typedef void (*MMTkInitIntType)(uintptr_t, int32_t); - static MMTkInitType MutatorInit; - static MMTkInitIntType MutatorCallInit; - static MMTkInitType MutatorCallDeinit; - static MMTkInitType CollectorInit; - - static VirtualTable* MutatorVT; - static VirtualTable* CollectorVT; - - static void init(Thread* _th) { - MutatorThread* th = (MutatorThread*)_th; - th->MutatorContext = - (uintptr_t)th->Allocator.Allocate(MMTkMutatorSize, "Mutator"); - ((VirtualTable**)th->MutatorContext)[0] = MutatorVT; - MutatorInit(th->MutatorContext); - MutatorCallInit(th->MutatorContext, (int32_t)_th->getThreadID()); - th->realRoutine(_th); - MutatorCallDeinit(th->MutatorContext); - } + static void init(Thread* _th); static MutatorThread* get() { return (MutatorThread*)mvm::Thread::get(); Modified: vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.cpp?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.cpp (original) +++ vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.cpp Sun Mar 28 12:19:32 2010 @@ -7,94 +7,108 @@ // //===----------------------------------------------------------------------===// - #include "MvmGC.h" -#include "MutatorThread.h" #include using namespace mvm; -gc::MMTkAllocType gc::MMTkGCAllocator = 0; -gc::MMTkPostAllocType gc::MMTkGCPostAllocator = 0; -gc::MMTkCheckAllocatorType gc::MMTkCheckAllocator = 0; -gc::MMTkDelayedRootType gc::MMTkDelayedRoot = 0; -gc::MMTkProcessEdgeType gc::MMTkProcessEdge = 0; -gc::MMTkProcessRootEdgeType gc::MMTkProcessRootEdge = 0; -gc::MMTkIsLiveType gc::MMTkIsLive = 0; - -gc::MMTkRetainReferentType gc::MMTkRetainReferent = 0; -gc::MMTkRetainForFinalizeType gc::MMTkRetainForFinalize = 0; -gc::MMTkGetForwardedReferentType gc::MMTkGetForwardedReferent = 0; -gc::MMTkGetForwardedReferenceType gc::MMTkGetForwardedReference = 0; -gc::MMTkGetForwardedFinalizableType gc::MMTkGetForwardedFinalizable = 0; -gc::MMTkCollectType gc::MMTkTriggerCollection = 0; - -uintptr_t Collector::TraceLocal = 0; - - static mvm::SpinLock lock; - - std::set __InternalSet__; -extern "C" int internalCheckAllocator(uintptr_t Mutator, int32_t sz, - int32_t align, int32_t alloc) { - return 0; -} - -extern "C" void internalPostMalloc(uintptr_t Mutator, uintptr_t ref, - uintptr_t typeref, int32_t bytes, - int32_t allocator) { -} - -extern "C" gc* internalMalloc(uintptr_t Mutator, int32_t sz, int32_t align, - int32_t offset, int32_t allocator, - int32_t site) { - - - gc* res = (gc*)malloc(sz); +extern "C" void* gcmalloc(size_t sz, void* _VT) { + gc* res = 0; + VirtualTable* VT = (VirtualTable*)_VT; + sz = llvm::RoundUpToAlignment(sz, sizeof(void*)); + res = (gc*)malloc(sz); memset(res, 0, sz); lock.acquire(); __InternalSet__.insert(res); lock.release(); + res->setVirtualTable(VT); + return res; +} + +extern "C" void* gcmallocUnresolved(size_t sz, VirtualTable* VT) { + gc* res = (gc*)gcmalloc(sz, VT); + if (VT->destructor) + mvm::Thread::get()->MyVM->addFinalizationCandidate(res); return res; } +extern "C" void addFinalizationCandidate(gc* obj) { + mvm::Thread::get()->MyVM->addFinalizationCandidate(obj); +} + +extern "C" void* AllocateMagicArray(int32_t sz, void* length) { + gc* res = (gc*)malloc(sz); + memset(res, 0, sz); + ((void**)res)[0] = length; + return res; +} void* Collector::begOf(gc* obj) { - if (gc::MMTkGCAllocator == internalMalloc) { - lock.acquire(); - std::set::iterator I = __InternalSet__.find(obj); - std::set::iterator E = __InternalSet__.end(); - lock.release(); + lock.acquire(); + std::set::iterator I = __InternalSet__.find(obj); + std::set::iterator E = __InternalSet__.end(); + lock.release(); - if (I != E) return obj; - return 0; - } else { - abort(); - } + if (I != E) return obj; + return 0; } -extern "C" void fakeInit(uintptr_t) { +void MutatorThread::init(Thread* _th) { + MutatorThread* th = (MutatorThread*)_th; + th->realRoutine(_th); } -extern "C" void fakeInitInt(uintptr_t, int32_t) { +bool Collector::isLive(gc* ptr) { + abort(); + return false; } -void Collector::initialise() { - if (!gc::MMTkGCAllocator) { - gc::MMTkGCAllocator = internalMalloc; - gc::MMTkGCPostAllocator = internalPostMalloc; - gc::MMTkCheckAllocator = internalCheckAllocator; - MutatorThread::MMTkMutatorSize = 0; - MutatorThread::MMTkCollectorSize = 0; - MutatorThread::MutatorInit = fakeInit; - MutatorThread::CollectorInit = fakeInit; - MutatorThread::MutatorCallDeinit = fakeInit; - MutatorThread::MutatorCallInit = fakeInitInt; - } +void Collector::scanObject(void** ptr) { + abort(); +} + +void Collector::markAndTrace(void* source, void* ptr) { + abort(); +} + +void Collector::markAndTraceRoot(void* ptr) { + abort(); +} + +gc* Collector::retainForFinalize(gc* val) { + abort(); + return NULL; +} + +gc* Collector::retainReferent(gc* val) { + abort(); + return NULL; +} + +gc* Collector::getForwardedFinalizable(gc* val) { + abort(); + return NULL; +} + +gc* Collector::getForwardedReference(gc* val) { + abort(); + return NULL; +} + +gc* Collector::getForwardedReferent(gc* val) { + abort(); + return NULL; +} + +void Collector::collect() { + // Do nothing. } +void Collector::initialise() { +} Modified: vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.h URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.h?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.h (original) +++ vmkit/branches/release_027/lib/Mvm/MMTk/MvmGC.h Sun Mar 28 12:19:32 2010 @@ -28,6 +28,7 @@ #define CALL_TRACER tracer() +extern "C" void* gcmallocUnresolved(size_t sz, VirtualTable* VT); class gc : public gcRoot { public: @@ -38,75 +39,8 @@ return 0; } - typedef gc* (*MMTkAllocType)(uintptr_t Mutator, int32_t sz, int32_t align, - int32_t offset, int32_t allocator, - int32_t site); - - typedef void (*MMTkPostAllocType)(uintptr_t Mutator, uintptr_t ref, - uintptr_t typeref, int32_t bytes, - int32_t allocator); - - typedef int (*MMTkCheckAllocatorType)(uintptr_t Mutator, int32_t bytes, - int32_t align, int32_t allocator); - - typedef void (*MMTkDelayedRootType)(uintptr_t TraceLocal, void** slot); - - typedef void (*MMTkProcessEdgeType)(uintptr_t TraceLocal, void* source, - void* slot); - - typedef void (*MMTkProcessRootEdgeType)(uintptr_t TraceLocal, void* slot, - uint8_t untraced); - - typedef uint8_t (*MMTkIsLiveType)(uintptr_t TraceLocal, void* obj); - - typedef gc* (*MMTkRetainReferentType)(uintptr_t TraceLocal, void* obj); - typedef MMTkRetainReferentType MMTkRetainForFinalizeType; - typedef MMTkRetainReferentType MMTkGetForwardedReferenceType; - typedef MMTkRetainReferentType MMTkGetForwardedReferentType; - typedef MMTkRetainReferentType MMTkGetForwardedFinalizableType; - typedef void (*MMTkCollectType)(uintptr_t, int32_t); - - static MMTkAllocType MMTkGCAllocator; - - static MMTkPostAllocType MMTkGCPostAllocator; - - static MMTkCheckAllocatorType MMTkCheckAllocator; - - static MMTkDelayedRootType MMTkDelayedRoot; - - static MMTkProcessEdgeType MMTkProcessEdge; - - static MMTkProcessRootEdgeType MMTkProcessRootEdge; - - static MMTkIsLiveType MMTkIsLive; - - static MMTkRetainReferentType MMTkRetainReferent; - static MMTkRetainForFinalizeType MMTkRetainForFinalize; - static MMTkGetForwardedReferenceType MMTkGetForwardedReference; - static MMTkGetForwardedReferentType MMTkGetForwardedReferent; - static MMTkGetForwardedFinalizableType MMTkGetForwardedFinalizable; - - static MMTkCollectType MMTkTriggerCollection; - void* operator new(size_t sz, VirtualTable *VT) { - gc* res = 0; - llvm_gcroot(res, 0); - assert(VT->tracer && "VT without a tracer"); - sz = llvm::RoundUpToAlignment(sz, sizeof(void*)); - uintptr_t Mutator = mvm::MutatorThread::get()->MutatorContext; - int allocator = MMTkCheckAllocator(Mutator, sz, 0, 0); - res = (gc*)MMTkGCAllocator(Mutator, sz, 0, 0, allocator, 0); - assert(res && "Allocation failed"); - assert(res->getVirtualTable() == 0 && "Allocation not zeroed"); - res->setVirtualTable(VT); - MMTkGCPostAllocator(Mutator, (uintptr_t)res, (uintptr_t)VT, sz, allocator); - - // operator new is called by C++ code, that does not call the - // addFinalizationCandidate, unlike application code. Call it here. - if (VT->destructor) { - mvm::Thread::get()->MyVM->addFinalizationCandidate(res); - } - return res; + return gcmallocUnresolved(sz, VT); } }; @@ -118,54 +52,25 @@ static uintptr_t TraceLocal; - static bool isLive(gc* ptr) { - return gc::MMTkIsLive(TraceLocal, ptr); - } + static bool isLive(gc* ptr); - static void scanObject(void** ptr) { - assert(gc::MMTkDelayedRoot && "scanning without a function"); - assert(TraceLocal && "scanning without a trace local"); - gc::MMTkDelayedRoot(TraceLocal, ptr); - } + static void scanObject(void** ptr); - static void markAndTrace(void* source, void* ptr) { - assert(TraceLocal && "scanning without a trace local"); - gc::MMTkProcessEdge(TraceLocal, source, ptr); - } + static void markAndTrace(void* source, void* ptr); - static void markAndTraceRoot(void* ptr) { - assert(TraceLocal && "scanning without a trace local"); - gc::MMTkProcessRootEdge(TraceLocal, ptr, true); - } + static void markAndTraceRoot(void* ptr); - static gc* retainForFinalize(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkRetainForFinalize(TraceLocal, val); - } + static gc* retainForFinalize(gc* val); - static gc* retainReferent(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkRetainReferent(TraceLocal, val); - } + static gc* retainReferent(gc* val); - static gc* getForwardedFinalizable(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkGetForwardedFinalizable(TraceLocal, val); - } + static gc* getForwardedFinalizable(gc* val); - static gc* getForwardedReference(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkGetForwardedReference(TraceLocal, val); - } + static gc* getForwardedReference(gc* val); - static gc* getForwardedReferent(gc* val) { - assert(TraceLocal && "scanning without a trace local"); - return gc::MMTkGetForwardedReferent(TraceLocal, val); - } + static gc* getForwardedReferent(gc* val); - static void collect() { - if (gc::MMTkTriggerCollection) gc::MMTkTriggerCollection(NULL, 2); - } + static void collect(); static void initialise(); Modified: vmkit/branches/release_027/lib/Mvm/StaticGCPass/StaticGCPass.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/lib/Mvm/StaticGCPass/StaticGCPass.cpp?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/lib/Mvm/StaticGCPass/StaticGCPass.cpp (original) +++ vmkit/branches/release_027/lib/Mvm/StaticGCPass/StaticGCPass.cpp Sun Mar 28 12:19:32 2010 @@ -40,24 +40,27 @@ bool StaticGCPass::runOnModule(Module& M) { Function* F = M.getFunction("__llvm_gcroot"); - if (F) { - Function *gcrootFun = Intrinsic::getDeclaration(&M, Intrinsic::gcroot); + Function *gcrootFun = Intrinsic::getDeclaration(&M, Intrinsic::gcroot); + if (F) { F->replaceAllUsesWith(gcrootFun); F->eraseFromParent(); + } - for (Value::use_iterator I = gcrootFun->use_begin(), - E = gcrootFun->use_end(); I != E; ++I) { - if (Instruction* II = dyn_cast(I)) { - Function* F = II->getParent()->getParent(); - if (!F->hasGC()) F->setGC("ocaml"); - } + for (Value::use_iterator I = gcrootFun->use_begin(), + E = gcrootFun->use_end(); I != E; ++I) { + if (Instruction* II = dyn_cast(I)) { + Function* F = II->getParent()->getParent(); + if (F->hasGC()) F->clearGC(); + F->setGC("ocaml"); } + } - return true; + for (Module::iterator I = M.begin(), E = M.end(); I != E; ++I) { + if (I->hasGC() && !strcmp(I->getGC(), "vmkit")) I->setGC("ocaml"); } - return false; + return true; } } Modified: vmkit/branches/release_027/mmtk/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/mmtk/Makefile?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/mmtk/Makefile (original) +++ vmkit/branches/release_027/mmtk/Makefile Sun Mar 28 12:19:32 2010 @@ -8,7 +8,7 @@ ##===----------------------------------------------------------------------===## LEVEL = .. -DIRS = magic mmtk-j3 mmtk-fake mmtk-alloc java +DIRS = magic mmtk-j3 mmtk-alloc java include $(LEVEL)/Makefile.config Modified: vmkit/branches/release_027/mmtk/magic/LowerJavaRT.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/mmtk/magic/LowerJavaRT.cpp?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/mmtk/magic/LowerJavaRT.cpp (original) +++ vmkit/branches/release_027/mmtk/magic/LowerJavaRT.cpp Sun Mar 28 12:19:32 2010 @@ -67,7 +67,9 @@ GlobalValue& GV = *I; ++I; if (!strncmp(GV.getName().data(), "JnJVM_java", 10) || - !strncmp(GV.getName().data(), "java", 4)) { + !strncmp(GV.getName().data(), "java", 4) || + !strncmp(GV.getName().data(), "JnJVM_gnu", 9) || + !strncmp(GV.getName().data(), "gnu", 3)) { GV.replaceAllUsesWith(Constant::getNullValue(GV.getType())); GV.eraseFromParent(); } Modified: vmkit/branches/release_027/mmtk/mmtk-alloc/Selected.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/mmtk/mmtk-alloc/Selected.cpp?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/mmtk/mmtk-alloc/Selected.cpp (original) +++ vmkit/branches/release_027/mmtk/mmtk-alloc/Selected.cpp Sun Mar 28 12:19:32 2010 @@ -7,19 +7,54 @@ // //===----------------------------------------------------------------------===// -#include "JavaArray.h" -#include "JavaClass.h" -#include "JavaObject.h" -#include "JavaThread.h" #include "MutatorThread.h" +#include "MvmGC.h" -using namespace j3; +#include +#include + +using namespace mvm; + +uintptr_t Collector::TraceLocal = 0; extern "C" void* JnJVM_org_mmtk_plan_marksweep_MSMutator_alloc__IIIII(uintptr_t Mutator, int32_t sz, int32_t align, int32_t offset, int32_t allocator, int32_t site) __attribute__((always_inline)); extern "C" int32_t JnJVM_org_mmtk_plan_MutatorContext_checkAllocator__III(uintptr_t Mutator, int32_t bytes, int32_t align, int32_t allocator) __attribute__((always_inline)); extern "C" void JnJVM_org_mmtk_plan_marksweep_MSMutator_postAlloc__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_ObjectReference_2II(uintptr_t Mutator, uintptr_t ref, uintptr_t typeref, int32_t bytes, int32_t allocator) __attribute__((always_inline)); +extern "C" uint32_t MMTkMutatorSize; +extern "C" void JnJVM_org_j3_config_Selected_00024Mutator__0003Cinit_0003E__(uintptr_t); +extern "C" VirtualTable* org_j3_config_Selected_4Mutator_VT; +extern "C" void JnJVM_org_mmtk_plan_MutatorContext_initMutator__I(uintptr_t, int32_t); +extern "C" void JnJVM_org_mmtk_plan_MutatorContext_deinitMutator__(uintptr_t); + +extern "C" void JnJVM_org_j3_config_Selected_00024Collector__0003Cinit_0003E__(uintptr_t); +extern "C" VirtualTable* org_j3_config_Selected_4Collector_VT; +extern "C" uint32_t MMTkCollectorSize; + +extern "C" void JnJVM_org_mmtk_utility_heap_HeapGrowthManager_boot__Lorg_vmmagic_unboxed_Extent_2Lorg_vmmagic_unboxed_Extent_2(intptr_t, intptr_t); +extern "C" uintptr_t* org_j3_config_Selected_4Plan_static; +extern "C" void MMTkPlanBoot(uintptr_t); +extern "C" void MMTkPlanPostBoot(uintptr_t); +extern "C" void MMTkPlanFullBoot(uintptr_t); + +extern "C" void Java_org_j3_mmtk_Collection_triggerCollection__I(uintptr_t, int32_t); +//===-------------------- TODO: make those virtual. -------------------===// +extern "C" void JnJVM_org_mmtk_plan_TraceLocal_reportDelayedRootEdge__Lorg_vmmagic_unboxed_Address_2(uintptr_t TraceLocal, void** slot); +extern "C" void JnJVM_org_mmtk_plan_TraceLocal_processEdge__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_Address_2( + uintptr_t TraceLocal, void* source, void* slot); +extern "C" void JnJVM_org_mmtk_plan_TraceLocal_processRootEdge__Lorg_vmmagic_unboxed_Address_2Z( + uintptr_t TraceLocal, void* slot, uint8_t untraced); + +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_retainForFinalize__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_retainReferent__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_getForwardedReference__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_getForwardedReferent__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); +extern "C" gc* JnJVM_org_mmtk_plan_TraceLocal_getForwardedFinalizable__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); + +extern "C" uint8_t JnJVM_org_mmtk_plan_marksweep_MSTraceLocal_isLive__Lorg_vmmagic_unboxed_ObjectReference_2(uintptr_t TraceLocal, void* obj); + + extern "C" void* gcmalloc(uint32_t sz, void* _VT) { gc* res = 0; llvm_gcroot(res, 0); @@ -40,13 +75,103 @@ mvm::Thread::get()->MyVM->addFinalizationCandidate((gc*)obj); } -extern "C" void* gcmallocUnresolved(uint32_t sz, void* _VT) { +extern "C" void* gcmallocUnresolved(uint32_t sz, VirtualTable* VT) { gc* res = 0; llvm_gcroot(res, 0); - VirtualTable* VT = (VirtualTable*)_VT; res = (gc*)gcmalloc(sz, VT); if (VT->destructor) addFinalizationCandidate(res); return res; } +void MutatorThread::init(Thread* _th) { + MutatorThread* th = (MutatorThread*)_th; + th->MutatorContext = + (uintptr_t)th->Allocator.Allocate(MMTkMutatorSize, "Mutator"); + ((VirtualTable**)th->MutatorContext)[0] = org_j3_config_Selected_4Mutator_VT; + JnJVM_org_j3_config_Selected_00024Mutator__0003Cinit_0003E__(th->MutatorContext); + JnJVM_org_mmtk_plan_MutatorContext_initMutator__I(th->MutatorContext, (int32_t)_th->getThreadID()); + th->realRoutine(_th); + JnJVM_org_mmtk_plan_MutatorContext_deinitMutator__(th->MutatorContext); +} +bool Collector::isLive(gc* ptr) { + return JnJVM_org_mmtk_plan_marksweep_MSTraceLocal_isLive__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, ptr); +} + +void Collector::scanObject(void** ptr) { + JnJVM_org_mmtk_plan_TraceLocal_reportDelayedRootEdge__Lorg_vmmagic_unboxed_Address_2(TraceLocal, ptr); +} + +void Collector::markAndTrace(void* source, void* ptr) { + assert(TraceLocal && "scanning without a trace local"); + JnJVM_org_mmtk_plan_TraceLocal_processEdge__Lorg_vmmagic_unboxed_ObjectReference_2Lorg_vmmagic_unboxed_Address_2(TraceLocal, source, ptr); +} + +void Collector::markAndTraceRoot(void* ptr) { + assert(TraceLocal && "scanning without a trace local"); + JnJVM_org_mmtk_plan_TraceLocal_processRootEdge__Lorg_vmmagic_unboxed_Address_2Z(TraceLocal, ptr, true); +} + +gc* Collector::retainForFinalize(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_retainForFinalize__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +gc* Collector::retainReferent(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_retainReferent__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +gc* Collector::getForwardedFinalizable(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_getForwardedFinalizable__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +gc* Collector::getForwardedReference(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_getForwardedReference__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +gc* Collector::getForwardedReferent(gc* val) { + assert(TraceLocal && "scanning without a trace local"); + return JnJVM_org_mmtk_plan_TraceLocal_getForwardedReferent__Lorg_vmmagic_unboxed_ObjectReference_2(TraceLocal, val); +} + +void Collector::collect() { + Java_org_j3_mmtk_Collection_triggerCollection__I(NULL, 2); +} + +void Collector::initialise() { + // Allocate the memory for MMTk right now, to avoid conflicts with + // other allocators. +#if defined (__MACH__) + uint32 flags = MAP_PRIVATE | MAP_ANON | MAP_FIXED; +#else + uint32 flags = MAP_PRIVATE | MAP_ANONYMOUS | MAP_FIXED; +#endif + void* baseAddr = mmap((void*)0x30000000, 0x40000000, PROT_READ | PROT_WRITE, + flags, -1, 0); + if (baseAddr == MAP_FAILED) { + perror("mmap"); + abort(); + } + + JnJVM_org_mmtk_utility_heap_HeapGrowthManager_boot__Lorg_vmmagic_unboxed_Extent_2Lorg_vmmagic_unboxed_Extent_2(128 * 1024 * 1024, 1024 * 1024 * 1024); + + uintptr_t Plan = *org_j3_config_Selected_4Plan_static; + MMTkPlanBoot(Plan); + MMTkPlanPostBoot(Plan); + MMTkPlanFullBoot(Plan); +} + +extern "C" void* MMTkMutatorAllocate(uint32_t size, VirtualTable* VT) { + void* val = MutatorThread::get()->Allocator.Allocate(size, "MMTk"); + ((void**)val)[0] = VT; + return val; +} + +//TODO: Remove these. +std::set __InternalSet__; +void* Collector::begOf(gc* obj) { + abort(); +} Modified: vmkit/branches/release_027/mmtk/mmtk-fake/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/mmtk/mmtk-fake/Makefile?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/mmtk/mmtk-fake/Makefile (original) +++ vmkit/branches/release_027/mmtk/mmtk-fake/Makefile Sun Mar 28 12:19:32 2010 @@ -1,21 +0,0 @@ -##===- mmtk/mmtk-j3/Makefile -------------------------------*- Makefile -*-===## -# -# The vmkit project -# -# This file is distributed under the University of Illinois Open Source -# License. See LICENSE.TXT for details. -# -##===----------------------------------------------------------------------===## - -LEVEL = ../.. - -include $(LEVEL)/Makefile.config - -LIBRARYNAME = MMTKFake -LOADABLE_MODULE = 1 -USEDLIBS = - -CXX.Flags += -I$(PROJ_SRC_DIR)/../../lib/J3/VMCore - -include $(LEVEL)/Makefile.common - Modified: vmkit/branches/release_027/mmtk/mmtk-fake/Selected.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/mmtk/mmtk-fake/Selected.cpp?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/mmtk/mmtk-fake/Selected.cpp (original) +++ vmkit/branches/release_027/mmtk/mmtk-fake/Selected.cpp Sun Mar 28 12:19:32 2010 @@ -1,50 +0,0 @@ -//===-------- Selected.cpp - Implementation of the Selected class --------===// -// -// The VMKit project -// -// This file is distributed under the University of Illinois Open Source -// License. See LICENSE.TXT for details. -// -//===----------------------------------------------------------------------===// - -#include "JavaArray.h" -#include "JavaClass.h" -#include "JavaObject.h" -#include "JavaThread.h" -#include "MutatorThread.h" - -#include - -using namespace j3; - -extern "C" gc* internalMalloc(uintptr_t Mutator, int32_t sz, int32_t align, - int32_t offset, int32_t allocator, - int32_t site); - - -extern "C" void* gcmalloc(size_t sz, void* _VT) { - gc* res = 0; - VirtualTable* VT = (VirtualTable*)_VT; - sz = llvm::RoundUpToAlignment(sz, sizeof(void*)); - res = internalMalloc(0, sz, 0, 0, 0, 0); - res->setVirtualTable(VT); - return res; -} - -extern "C" void* gcmallocUnresolved(size_t sz, VirtualTable* VT) { - gc* res = (gc*)gcmalloc(sz, VT); - if (VT->destructor) - mvm::Thread::get()->MyVM->addFinalizationCandidate(res); - return res; -} - -extern "C" void addFinalizationCandidate(gc* obj) { - mvm::Thread::get()->MyVM->addFinalizationCandidate(obj); -} - -extern "C" void* AllocateMagicArray(int32_t sz, void* length) { - gc* res = (gc*)malloc(sz); - memset(res, 0, sz); - ((void**)res)[0] = length; - return res; -} Modified: vmkit/branches/release_027/tools/j3/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/tools/j3/Makefile?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/tools/j3/Makefile (original) +++ vmkit/branches/release_027/tools/j3/Makefile Sun Mar 28 12:19:32 2010 @@ -16,7 +16,13 @@ MODULESNAME = j3 USEDMODULES = J3.bc Classpath.bc J3Compiler.bc Allocator.bc CommonThread.bc \ - Mvm.bc MvmCompiler.bc $(GCLIB).bc + Mvm.bc MvmCompiler.bc + + ifeq ($(GC_MMTK), 1) + USEDMODULES += FinalMMTk.bc + else + USEDMODULES += $(GCLIB).bc + endif ifeq ($(ISOLATE_SHARING_BUILD), 1) USEDMODULES += Isolate.bc Modified: vmkit/branches/release_027/tools/vmkit/Makefile URL: http://llvm.org/viewvc/llvm-project/vmkit/branches/release_027/tools/vmkit/Makefile?rev=99766&r1=99765&r2=99766&view=diff ============================================================================== --- vmkit/branches/release_027/tools/vmkit/Makefile (original) +++ vmkit/branches/release_027/tools/vmkit/Makefile Sun Mar 28 12:19:32 2010 @@ -29,7 +29,13 @@ USEDMODULES += N3.bc PNetLib.bc endif - USEDMODULES += Allocator.bc CommonThread.bc Mvm.bc MvmCompiler.bc $(GCLIB).bc + USEDMODULES += Allocator.bc CommonThread.bc Mvm.bc MvmCompiler.bc + + ifeq ($(GC_MMTK), 1) + USEDMODULES += FinalMMTk.bc + else + USEDMODULES += $(GCLIB).bc + endif BUILT_SOURCES = vmkit.s SOURCES = vmkit.s $(notdir $(wildcard $(PROJ_SRC_DIR)/*.cpp)) From nicolas.geoffray at lip6.fr Sun Mar 28 10:28:08 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 28 Mar 2010 17:28:08 -0000 Subject: [vmkit-commits] [vmkit] r99767 - /vmkit/branches/release_027/mmtk/mmtk-fake/ Message-ID: <20100328172808.DC9812A6C12C@llvm.org> Author: geoffray Date: Sun Mar 28 12:28:08 2010 New Revision: 99767 URL: http://llvm.org/viewvc/llvm-project?rev=99767&view=rev Log: Remove unused directory. Removed: vmkit/branches/release_027/mmtk/mmtk-fake/ From nicolas.geoffray at lip6.fr Sun Mar 28 10:29:39 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 28 Mar 2010 17:29:39 -0000 Subject: [vmkit-commits] [vmkit] r99768 - /vmkit/trunk/www/use_mmtk.html Message-ID: <20100328172939.D64A42A6C12C@llvm.org> Author: geoffray Date: Sun Mar 28 12:29:39 2010 New Revision: 99768 URL: http://llvm.org/viewvc/llvm-project?rev=99768&view=rev Log: Update instructions on how to use MMTk. Modified: vmkit/trunk/www/use_mmtk.html Modified: vmkit/trunk/www/use_mmtk.html URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/www/use_mmtk.html?rev=99768&r1=99767&r2=99768&view=diff ============================================================================== --- vmkit/trunk/www/use_mmtk.html (original) +++ vmkit/trunk/www/use_mmtk.html Sun Mar 28 12:29:39 2010 @@ -35,7 +35,7 @@
  • Run VMKit with MMTk:
    • -
    • Release/bin/vmkit -std-compile-opts --load-bc=Release/lib/FinalMMTk.bc -java Foo
    • +
    • Release/bin/j3 Foo
    From nicolas.geoffray at lip6.fr Sun Mar 28 11:42:56 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 28 Mar 2010 18:42:56 -0000 Subject: [vmkit-commits] [vmkit] r99769 - /vmkit/trunk/lib/Mvm/MMTk/MvmGC.h Message-ID: <20100328184256.81DD42A6C12C@llvm.org> Author: geoffray Date: Sun Mar 28 13:42:56 2010 New Revision: 99769 URL: http://llvm.org/viewvc/llvm-project?rev=99769&view=rev Log: Make function singature of gcmallocUnresolved consistent. Modified: vmkit/trunk/lib/Mvm/MMTk/MvmGC.h Modified: vmkit/trunk/lib/Mvm/MMTk/MvmGC.h URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/MMTk/MvmGC.h?rev=99769&r1=99768&r2=99769&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/MMTk/MvmGC.h (original) +++ vmkit/trunk/lib/Mvm/MMTk/MvmGC.h Sun Mar 28 13:42:56 2010 @@ -28,7 +28,7 @@ #define CALL_TRACER tracer() -extern "C" void* gcmallocUnresolved(size_t sz, VirtualTable* VT); +extern "C" void* gcmallocUnresolved(uint32_t sz, VirtualTable* VT); class gc : public gcRoot { public: From nicolas.geoffray at lip6.fr Sun Mar 28 11:56:37 2010 From: nicolas.geoffray at lip6.fr (Nicolas Geoffray) Date: Sun, 28 Mar 2010 18:56:37 -0000 Subject: [vmkit-commits] [vmkit] r99771 - /vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp Message-ID: <20100328185637.0CA682A6C12C@llvm.org> Author: geoffray Date: Sun Mar 28 13:56:36 2010 New Revision: 99771 URL: http://llvm.org/viewvc/llvm-project?rev=99771&view=rev Log: Continue fixing signature. Modified: vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp Modified: vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp URL: http://llvm.org/viewvc/llvm-project/vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp?rev=99771&r1=99770&r2=99771&view=diff ============================================================================== --- vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp (original) +++ vmkit/trunk/lib/Mvm/MMTk/MvmGC.cpp Sun Mar 28 13:56:36 2010 @@ -16,7 +16,7 @@ static mvm::SpinLock lock; std::set __InternalSet__; -extern "C" void* gcmalloc(size_t sz, void* _VT) { +extern "C" void* gcmalloc(uint32_t sz, void* _VT) { gc* res = 0; VirtualTable* VT = (VirtualTable*)_VT; sz = llvm::RoundUpToAlignment(sz, sizeof(void*)); @@ -31,7 +31,7 @@ return res; } -extern "C" void* gcmallocUnresolved(size_t sz, VirtualTable* VT) { +extern "C" void* gcmallocUnresolved(uint32_t sz, VirtualTable* VT) { gc* res = (gc*)gcmalloc(sz, VT); if (VT->destructor) mvm::Thread::get()->MyVM->addFinalizationCandidate(res);