From: Martin Quinson Date: Sun, 6 Mar 2016 23:00:56 +0000 (+0100) Subject: cleanups in internal_config.h X-Git-Tag: v3_13~522^2 X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/commitdiff_plain/b266c9f9b644f15f1d397e60f5affa12cf0167d8 cleanups in internal_config.h --- diff --git a/CMakeLists.txt b/CMakeLists.txt index 24dee6b9cc..03a797d5a3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -277,7 +277,6 @@ else() set(CMAKE_REQUIRED_DEFINITIONS "-D_GNU_SOURCE") endif() -CHECK_INCLUDE_FILES("stdlib.h;stdarg.h;string.h;float.h" STDC_HEADERS) CHECK_INCLUDE_FILE("valgrind/valgrind.h" HAVE_VALGRIND_VALGRIND_H) CHECK_INCLUDE_FILE("sys/ptrace.h" HAVE_SYS_PTRACE_H) CHECK_INCLUDE_FILE("unistd.h" HAVE_UNISTD_H) @@ -911,7 +910,6 @@ message("______________________________________________________________________ message("CMAKE_HOME_DIRECTORY ........: ${CMAKE_HOME_DIRECTORY}") message("") message("PTH_STACKGROWTH .............: ${PTH_STACKGROWTH}") -message("HAVE_VA_COPY ................: ${HAVE_VA_COPY}") message("") message("\#define pth_skaddr_makecontext(skaddr,sksize) (${makecontext_addr})") message("\#define pth_sksize_makecontext(skaddr,sksize) (${makecontext_size})") @@ -922,12 +920,10 @@ message("HAVE_PTHREAD ................: ${HAVE_PTHREAD}") message("HAVE_SEM_INIT ...............: ${HAVE_SEM_INIT_LIB}") message("HAVE_POSIX_GETTIME ..........: ${HAVE_POSIX_GETTIME}") message("") -message("STDC_HEADERS ................: ${STDC_HEADERS}") message("HAVE_VALGRIND_VALGRIND_H ....: ${HAVE_VALGRIND_VALGRIND_H}") message("HAVE_UNISTD_H ...............: ${HAVE_UNISTD_H}") message("HAVE_EXECINFO_H .............: ${HAVE_EXECINFO_H}") message("HAVE_SIGNAL_H ...............: ${HAVE_SIGNAL_H}") -message("HAVE_DLFCN_H ................: ${HAVE_DLFCN_H}") message("") message("HAVE_GETTIMEOFDAY ...........: ${HAVE_GETTIMEOFDAY}") diff --git a/src/simix/RawContext.cpp b/src/simix/RawContext.cpp index e494570240..6c86829983 100644 --- a/src/simix/RawContext.cpp +++ b/src/simix/RawContext.cpp @@ -124,7 +124,7 @@ extern "C" void raw_swapcontext(raw_stack_t* old, raw_stack_t new_context); #if PROCESSOR_x86_64 __asm__ ( -#if defined(APPLE) +#if defined(__APPLE__) ".text\n" ".globl _raw_makecontext\n" "_raw_makecontext:\n" @@ -160,7 +160,7 @@ __asm__ ( ); __asm__ ( -#if defined(APPLE) +#if defined(__APPLE__) ".text\n" ".globl _raw_swapcontext\n" "_raw_swapcontext:\n" @@ -204,7 +204,7 @@ __asm__ ( ); #elif PROCESSOR_i686 __asm__ ( -#if defined(APPLE) || defined(_WIN32) +#if defined(__APPLE__) || defined(_WIN32) ".text\n" ".globl _raw_makecontext\n" "_raw_makecontext:\n" @@ -231,7 +231,7 @@ __asm__ ( ); __asm__ ( -#if defined(APPLE) || defined(_WIN32) +#if defined(__APPLE__) || defined(_WIN32) ".text\n" ".globl _raw_swapcontext\n" "_raw_swapcontext:\n" diff --git a/src/simix/smx_context.cpp b/src/simix/smx_context.cpp index 75ddf214f0..a75367fefd 100644 --- a/src/simix/smx_context.cpp +++ b/src/simix/smx_context.cpp @@ -33,8 +33,7 @@ # include #endif -XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_context, simix, - "Context switching mechanism"); +XBT_LOG_NEW_DEFAULT_SUBCATEGORY(simix_context, simix, "Context switching mechanism"); char* smx_context_factory_name = NULL; /* factory name specified by --cfg=contexts/factory:value */ int smx_context_stack_size; @@ -101,7 +100,7 @@ void SIMIX_context_mod_init(void) #else XBT_ERROR(" (boost was disabled at compilation time on this machine -- check configure logs for details. Did you install the libboost-context-dev package?)"); #endif - XBT_ERROR(" thread: slow portability layer using system threads (pthreads on UNIX, CreateThread() on windows)"); + XBT_ERROR(" thread: slow portability layer using pthreads as provided by gcc"); xbt_die("Please use a valid factory."); } } @@ -163,10 +162,8 @@ void *SIMIX_context_stack_new(void) } #ifdef HAVE_VALGRIND_VALGRIND_H - unsigned int valgrind_stack_id = - VALGRIND_STACK_REGISTER(stack, (char *)stack + smx_context_stack_size); - memcpy((char *)stack + smx_context_usable_stack_size, &valgrind_stack_id, - sizeof valgrind_stack_id); + unsigned int valgrind_stack_id = VALGRIND_STACK_REGISTER(stack, (char *)stack + smx_context_stack_size); + memcpy((char *)stack + smx_context_usable_stack_size, &valgrind_stack_id, sizeof valgrind_stack_id); #endif return stack; @@ -179,16 +176,14 @@ void SIMIX_context_stack_delete(void *stack) #ifdef HAVE_VALGRIND_VALGRIND_H unsigned int valgrind_stack_id; - memcpy(&valgrind_stack_id, (char *)stack + smx_context_usable_stack_size, - sizeof valgrind_stack_id); + memcpy(&valgrind_stack_id, (char *)stack + smx_context_usable_stack_size, sizeof valgrind_stack_id); VALGRIND_STACK_DEREGISTER(valgrind_stack_id); #endif #ifndef _WIN32 if (smx_context_guard_size > 0 && !MC_is_active()) { stack = (char *)stack - smx_context_guard_size; - if (mprotect(stack, smx_context_guard_size, - PROT_READ | PROT_WRITE) == -1) { + if (mprotect(stack, smx_context_guard_size, PROT_READ | PROT_WRITE) == -1) { XBT_WARN("Failed to remove page protection: %s", strerror(errno)); /* try to pursue anyway */ } @@ -197,16 +192,12 @@ void SIMIX_context_stack_delete(void *stack) stack = *((void **)stack - 1); #endif } -#endif +#endif /* not windows */ xbt_free(stack); } -/** - * \brief Returns whether some parallel threads are used - * for the user contexts. - * \return 1 if parallelism is used - */ +/** @brief Returns whether some parallel threads are used for the user contexts. */ int SIMIX_context_is_parallel(void) { return smx_parallel_contexts > 1; } diff --git a/src/xbt/ex.c b/src/xbt/ex.c index 7a04ac6566..97a9c33ed1 100644 --- a/src/xbt/ex.c +++ b/src/xbt/ex.c @@ -99,11 +99,8 @@ void xbt_backtrace_display(xbt_ex_t * e) if (e->used == 0) { fprintf(stderr, "(backtrace not set)\n"); } else { - int i; - - fprintf(stderr, "Backtrace (displayed in process %s):\n", - SIMIX_process_self_get_name()); - for (i = 1; i < e->used; i++) /* no need to display "xbt_backtrace_display" */ + fprintf(stderr, "Backtrace (displayed in process %s):\n", SIMIX_process_self_get_name()); + for (int i = 1; i < e->used; i++) /* no need to display "xbt_backtrace_display" */ fprintf(stderr, "---> %s\n", e->bt_strings[i] + 4); } @@ -111,7 +108,6 @@ void xbt_backtrace_display(xbt_ex_t * e) e->msg = NULL; xbt_ex_free(*e); #else - XBT_ERROR("No backtrace on this arch"); #endif } @@ -192,13 +188,9 @@ void xbt_ex_display(xbt_ex_t * e) } else #endif - { - fprintf(stderr, - "\n" - "** In %s() at %s:%d\n" - "** (no backtrace available)\n", - e->func, e->file, e->line); - } + fprintf(stderr, "\n" + "** In %s() at %s:%d\n" + "** (no backtrace available)\n", e->func, e->file, e->line); } @@ -216,16 +208,13 @@ XBT_EXPORT_NO_IMPORT(ex_term_cb_t) __xbt_ex_terminate = &__xbt_ex_terminate_defa void xbt_ex_free(xbt_ex_t e) { - int i; - free(e.msg); if (e.bt_strings) { - for (i = 0; i < e.used; i++) + for (int i = 0; i < e.used; i++) free(e.bt_strings[i]); free(e.bt_strings); } - /* memset(e,0,sizeof(xbt_ex_t)); */ } /** \brief returns a short name for the given exception category */ diff --git a/src/xbt/xbt_os_time.c b/src/xbt/xbt_os_time.c index 4c6d37ad4e..836bd17724 100644 --- a/src/xbt/xbt_os_time.c +++ b/src/xbt/xbt_os_time.c @@ -304,7 +304,7 @@ void xbt_os_threadtimer_start(xbt_os_timer_t timer) timer->elapse.tv_sec = 0; timer->elapse.tv_nsec = 0; clock_gettime(CLOCK_THREAD_CPUTIME_ID, &(timer->start)); -#elif defined(HAVE_GETTIMEOFDAY) && defined(__MACH__) && defined(__APPLE__)//attempt for timing of the thread on OSX +#elif defined(HAVE_GETTIMEOFDAY) && defined(__MACH__) && defined(__APPLE__) timer->elapse.tv_sec = 0; timer->elapse.tv_usec = 0; mach_msg_type_number_t count = THREAD_BASIC_INFO_COUNT; diff --git a/tools/cmake/src/internal_config.h.in b/tools/cmake/src/internal_config.h.in index 3d3f0f1f85..4bd72e6a41 100644 --- a/tools/cmake/src/internal_config.h.in +++ b/tools/cmake/src/internal_config.h.in @@ -3,127 +3,67 @@ /* Warning: The file internal_config.h is AUTOMATICALLY GENERATED by Cmake. * Edit the template instead: tools/cmake/src/internal_config.h.in */ -/* Copyright (c) 2004-2016. The SimGrid Team. - * All rights reserved. */ +/* Copyright (c) 2004-2016. The SimGrid Team. All rights reserved. */ /* This program is free software; you can redistribute it and/or modify it * under the terms of the license (GNU LGPL) which comes with this package. */ -/* If __thread is available */ -#cmakedefine HAVE_THREAD_LOCAL_STORAGE @HAVE_THREAD_LOCAL_STORAGE@ - -#ifndef __STRICT_ANSI__ - #cmakedefine __STRICT_ANSI__ @__STRICT_ANSI__@ -#endif -#ifndef _MSC_VER - #cmakedefine _MSC_VER @_MSC_VER@ -#endif -#ifndef _M_IX86 - #cmakedefine _M_IX86 @_M_IX86@ -#endif -#cmakedefine APPLE @APPLE@ -/* Set to true if enable_model-checking is true */ -#cmakedefine MMALLOC_WANT_OVERRIDE_LEGACY @MMALLOC_WANT_OVERRIDE_LEGACY@ -#cmakedefine HAVE_MC @HAVE_MC@ - -/* If have linux_futex.h */ -#cmakedefine HAVE_FUTEX_H @HAVE_FUTEX_H@ - -/* Some variable for graphviz */ -#cmakedefine HAVE_GRAPHVIZ @HAVE_GRAPHVIZ@ -#cmakedefine HAVE_GRAPH_H @GRAPH_H@ -#cmakedefine HAVE_CGRAPH_H @CGRAPH_H@ -#cmakedefine HAVE_AGRAPH_H @AGRAPH_H@ - -/* Path to the addr2line tool */ -#cmakedefine ADDR2LINE "@ADDR2LINE@" - -/* Define if xbt contexts are based on our threads implementation or not */ -#cmakedefine HAVE_THREAD_CONTEXTS @HAVE_THREAD_CONTEXTS@ - -/* Define to 1 if you have the header file. */ -#cmakedefine HAVE_UCONTEXT_H @HAVE_UCONTEXT_H@ - -/* Define if xbt contexts are based on ucontext or not */ +/* Non-standard header files */ +#cmakedefine HAVE_EXECINFO_H @HAVE_EXECINFO_H@ /* */ +#cmakedefine HAVE_FUTEX_H @HAVE_FUTEX_H@ /* */ +#cmakedefine HAVE_SIGNAL_H @HAVE_SIGNAL_H@ /* */ +#cmakedefine HAVE_SYS_PTRACE_H @HAVE_SYS_PTRACE_H@ /* */ +#cmakedefine HAVE_SYS_TYPES_H @HAVE_SYS_TYPES_H@ /* */ +#cmakedefine HAVE_UNISTD_H @HAVE_UNISTD_H@ /* */ +#cmakedefine HAVE_UCONTEXT_H @HAVE_UCONTEXT_H@ /* */ +#cmakedefine HAVE_VALGRIND_VALGRIND_H @HAVE_VALGRIND_VALGRIND_H@ /* */ + +/* Time portability */ +#cmakedefine HAVE_GETTIMEOFDAY @HAVE_GETTIMEOFDAY@ /* Function gettimeofday */ +#cmakedefine HAVE_POSIX_GETTIME @HAVE_POSIX_GETTIME@ /* Function clock_gettime */ +#cmakedefine HAVE_NANOSLEEP @HAVE_NANOSLEEP@ /* Function nanosleep */ + +/* The usable context factories */ +#cmakedefine HAVE_BOOST_CONTEXTS @HAVE_BOOST_CONTEXTS@ +#cmakedefine HAVE_RAW_CONTEXTS @HAVE_RAW_CONTEXTS@ +#cmakedefine HAVE_THREAD_CONTEXTS @HAVE_THREAD_CONTEXTS@ #cmakedefine HAVE_UCONTEXT_CONTEXTS @HAVE_UCONTEXT_CONTEXTS@ -/* Used to select the flavor of assembly that we need today */ +/* Variables for the thread contexts (and parallel mode of raw contexts) */ +#cmakedefine HAVE_PTHREAD @HAVE_PTHREAD@ /* Define to 1 if threads are usable . */ +#cmakedefine HAVE_PTHREAD_SETAFFINITY @HAVE_PTHREAD_SETAFFINITY@ /* Does not seems defined on Mac nor Windows */ +#cmakedefine HAVE_THREAD_LOCAL_STORAGE @HAVE_THREAD_LOCAL_STORAGE@ /* If __thread is available */ + +/* Variables for the raw contexts (to select the right assembly code) */ #cmakedefine PROCESSOR_i686 @PROCESSOR_i686@ #cmakedefine PROCESSOR_x86_64 @PROCESSOR_x86_64@ #cmakedefine CMAKE_SYSTEM_PROCESSOR @CMAKE_SYSTEM_PROCESSOR@ -#cmakedefine HAVE_RAW_CONTEXTS @HAVE_RAW_CONTEXTS@ -#cmakedefine HAVE_BOOST_CONTEXTS @HAVE_BOOST_CONTEXTS@ - -/* Define to 1 if you have the header file. */ -#cmakedefine HAVE_EXECINFO_H @HAVE_EXECINFO_H@ - -/* Define to 1 if mmalloc is compiled in. */ -#cmakedefine HAVE_MMALLOC @HAVE_MMALLOC@ - -/* Define to 1 if mmap is available */ -#cmakedefine HAVE_MMAP @HAVE_MMAP@ - -/* Define to 1 if process_vm_readv is available */ -#cmakedefine HAVE_PROCESS_VM_READV @HAVE_PROCESS_VM_READV@ - -/* Define to 1 if you have the `getdtablesize' function. */ -#cmakedefine HAVE_GETDTABLESIZE @HAVE_GETDTABLESIZE@ - -/* Define to 1 if you have the `gettimeofday' function. */ -#cmakedefine HAVE_GETTIMEOFDAY @HAVE_GETTIMEOFDAY@ -/* Define to 1 if you have the `clock_gettime' function. */ -#cmakedefine HAVE_POSIX_GETTIME @HAVE_POSIX_GETTIME@ - -/* Indicates that we have SMPI support */ -#cmakedefine HAVE_SMPI @HAVE_SMPI@ - -/* Indicates that we have SMPI FORTRAN support */ -#cmakedefine SMPI_FORTRAN @SMPI_FORTRAN@ - -/* We have mmap and objdump to handle privatization */ -#cmakedefine HAVE_PRIVATIZATION @HAVE_PRIVATIZATION@ - -#cmakedefine HAVE_PTHREAD @HAVE_PTHREAD@ /* Define to 1 if threads are usable . */ -#cmakedefine HAVE_PTHREAD_SETAFFINITY @HAVE_PTHREAD_SETAFFINITY@ /* Seems to be linux only */ - -/* Define to 1 if you have the `popen' function. */ -#cmakedefine HAVE_POPEN @HAVE_POPEN@ - -/* Define if sem_init() is avaible or not (part of XPG6 standard only) */ -#cmakedefine HAVE_SEM_INIT @HAVE_SEM_INIT@ - -/* Define to 1 if you have the header file. */ -#cmakedefine HAVE_SIGNAL_H @HAVE_SIGNAL_H@ - -/* Define to 1 if you have the `sysconf' function. */ -#cmakedefine HAVE_SYSCONF @HAVE_SYSCONF@ - -/* Define to 1 if you have the header file. */ -#cmakedefine HAVE_SYS_PTRACE_H @HAVE_SYS_PTRACE_H@ - -/* Define to 1 if you have the header file. */ -#cmakedefine HAVE_SYS_TYPES_H @HAVE_SYS_TYPES_H@ - -/* Define to 1 if you have the header file. */ -#cmakedefine HAVE_UNISTD_H @HAVE_UNISTD_H@ - -/* Define to 1 if you have the `nanosleep' function. */ -#cmakedefine HAVE_NANOSLEEP @HAVE_NANOSLEEP@ - -/* Define to 1 if you have the header file. */ -#cmakedefine HAVE_VALGRIND_VALGRIND_H @HAVE_VALGRIND_VALGRIND_H@ - -#cmakedefine HAVE_VASPRINTF @HAVE_VASPRINTF@ +/* MC variables */ +#cmakedefine HAVE_GETDTABLESIZE @HAVE_GETDTABLESIZE@ /* getdtablesize: get descriptor table size */ +#cmakedefine HAVE_MMALLOC @HAVE_MMALLOC@ /* Did we compile mmalloc in? */ +#cmakedefine HAVE_PROCESS_VM_READV @HAVE_PROCESS_VM_READV@ /* process_vm_readv: transfer data between process address spaces */ +#cmakedefine MMALLOC_WANT_OVERRIDE_LEGACY @MMALLOC_WANT_OVERRIDE_LEGACY@ /* Set to true if enable_model-checking is true */ +#cmakedefine HAVE_MC @HAVE_MC@ -/* define for stack growth */ -#cmakedefine PTH_STACKGROWTH @PTH_STACKGROWTH@ +/* SMPI variables */ +#cmakedefine HAVE_SMPI @HAVE_SMPI@ +#cmakedefine SMPI_FORTRAN @SMPI_FORTRAN@ +#cmakedefine HAVE_PRIVATIZATION @HAVE_PRIVATIZATION@ /* We have mmap and objdump to handle privatization */ -/* Define to 1 if you have the ANSI C header files. */ -#cmakedefine STDC_HEADERS @STDC_HEADERS@ +/* graphviz variables */ +#cmakedefine HAVE_GRAPHVIZ @HAVE_GRAPHVIZ@ +#cmakedefine HAVE_GRAPH_H @GRAPH_H@ +#cmakedefine HAVE_CGRAPH_H @CGRAPH_H@ +#cmakedefine HAVE_AGRAPH_H @AGRAPH_H@ -/* Define to 1 if `lex' declares `yytext' as a `char *' by default, not a `char[]'. */ -#cmakedefine YYTEXT_POINTER +/* Other function checks */ +#cmakedefine HAVE_MMAP @HAVE_MMAP@ /* Function mmap */ +#cmakedefine HAVE_SEM_INIT @HAVE_SEM_INIT@ /* Function sem_init (part of XPG6 standard only) */ +#cmakedefine HAVE_POPEN @HAVE_POPEN@ /* Function popen */ +#cmakedefine HAVE_SYSCONF @HAVE_SYSCONF@ /* Function sysconf */ +#cmakedefine HAVE_VASPRINTF @HAVE_VASPRINTF@ /* Function vasprintf */ -/* Define to `unsigned int' if does not define. */ -#cmakedefine size_t @size_t@ +/* Other checks */ +#cmakedefine PTH_STACKGROWTH @PTH_STACKGROWTH@ /* Does the stack growth upward, or downward? */ +#cmakedefine ADDR2LINE "@ADDR2LINE@" /* Path to the addr2line tool */