sync with w3m-0.2.2-inu-1.1/gc
This commit is contained in:
@@ -396,7 +396,8 @@ struct hblk; /* See below. */
|
||||
+ GC_page_size-1)
|
||||
# else
|
||||
# if defined(NEXT) || defined(MACOSX) || defined(DOS4GW) || \
|
||||
(defined(AMIGA) && !defined(GC_AMIGA_FASTALLOC))
|
||||
(defined(AMIGA) && !defined(GC_AMIGA_FASTALLOC)) || \
|
||||
(defined(SUNOS5) && !defined(USE_MMAP))
|
||||
# define GET_MEM(bytes) HBLKPTR((size_t) \
|
||||
calloc(1, (size_t)bytes + GC_page_size) \
|
||||
+ GC_page_size-1)
|
||||
@@ -443,18 +444,21 @@ struct hblk; /* See below. */
|
||||
/* clear on that point). Standard malloc implementations are usually */
|
||||
/* neither interruptable nor thread-safe, and thus correspond to */
|
||||
/* empty definitions. */
|
||||
/* It probably doesn't make any sense to declare these to be nonempty */
|
||||
/* if the code is being optimized, since signal safety relies on some */
|
||||
/* ordering constraints that are typically not obeyed by optimizing */
|
||||
/* compilers. */
|
||||
# ifdef PCR
|
||||
# define DISABLE_SIGNALS() \
|
||||
PCR_Th_SetSigMask(PCR_allSigsBlocked,&GC_old_sig_mask)
|
||||
# define ENABLE_SIGNALS() \
|
||||
PCR_Th_SetSigMask(&GC_old_sig_mask, NIL)
|
||||
# else
|
||||
# if defined(SRC_M3) || defined(AMIGA) || defined(SOLARIS_THREADS) \
|
||||
# if defined(THREADS) || defined(AMIGA) \
|
||||
|| defined(MSWIN32) || defined(MSWINCE) || defined(MACOS) \
|
||||
|| defined(DJGPP) || defined(NO_SIGNALS) || defined(IRIX_THREADS) \
|
||||
|| defined(LINUX_THREADS)
|
||||
|| defined(DJGPP) || defined(NO_SIGNALS)
|
||||
/* Also useful for debugging. */
|
||||
/* Should probably use thr_sigsetmask for SOLARIS_THREADS. */
|
||||
/* Should probably use thr_sigsetmask for GC_SOLARIS_THREADS. */
|
||||
# define DISABLE_SIGNALS()
|
||||
# define ENABLE_SIGNALS()
|
||||
# else
|
||||
@@ -479,9 +483,8 @@ struct hblk; /* See below. */
|
||||
PCR_allSigsBlocked, \
|
||||
PCR_waitForever);
|
||||
# else
|
||||
# if defined(SOLARIS_THREADS) || defined(WIN32_THREADS) \
|
||||
|| defined(IRIX_THREADS) || defined(LINUX_THREADS) \
|
||||
|| defined(HPUX_THREADS)
|
||||
# if defined(GC_SOLARIS_THREADS) || defined(GC_WIN32_THREADS) \
|
||||
|| defined(GC_PTHREADS)
|
||||
void GC_stop_world();
|
||||
void GC_start_world();
|
||||
# define STOP_WORLD() GC_stop_world()
|
||||
@@ -566,7 +569,8 @@ extern GC_warn_proc GC_current_warn_proc;
|
||||
# ifdef SMALL_CONFIG
|
||||
# define CPP_LOG_HBLKSIZE 10
|
||||
# else
|
||||
# if CPP_WORDSZ == 32
|
||||
# if (CPP_WORDSZ == 32) || (defined(HPUX) && defined(HP_PA))
|
||||
/* HPUX/PA seems to use 4K pages with the 64 bit ABI */
|
||||
# define CPP_LOG_HBLKSIZE 12
|
||||
# else
|
||||
# define CPP_LOG_HBLKSIZE 13
|
||||
@@ -1903,8 +1907,7 @@ void GC_err_puts GC_PROTO((GC_CONST char *s));
|
||||
/* some other reason. */
|
||||
# endif /* PARALLEL_MARK */
|
||||
|
||||
# if defined(LINUX_THREADS) || defined(IRIX_THREADS) \
|
||||
|| defined(HPUX_THREADS) || defined(OSF1_THREADS)
|
||||
# if defined(GC_PTHREADS) && !defined(GC_SOLARIS_THREADS)
|
||||
/* We define the thread suspension signal here, so that we can refer */
|
||||
/* to it in the dirty bit implementation, if necessary. Ideally we */
|
||||
/* would allocate a (real-time ?) signal using the standard mechanism.*/
|
||||
@@ -1912,16 +1915,16 @@ void GC_err_puts GC_PROTO((GC_CONST char *s));
|
||||
/* in Linux glibc, but it's not exported.) Thus we continue to use */
|
||||
/* the same hard-coded signals we've always used. */
|
||||
# if !defined(SIG_SUSPEND)
|
||||
# if defined(LINUX_THREADS)
|
||||
# if defined(GC_LINUX_THREADS)
|
||||
# if defined(SPARC) && !defined(SIGPWR)
|
||||
/* SPARC/Linux doesn't properly define SIGPWR in <signal.h>.
|
||||
* It is aliased to SIGLOST in asm/signal.h, though. */
|
||||
# define SIG_SUSPEND SIGLOST
|
||||
# else
|
||||
/* Linuxthreads uses SIGUSR1 and SIGUSR2. */
|
||||
/* Linuxthreads itself uses SIGUSR1 and SIGUSR2. */
|
||||
# define SIG_SUSPEND SIGPWR
|
||||
# endif
|
||||
# else /* !LINUX_THREADS */
|
||||
# else /* !GC_LINUX_THREADS */
|
||||
# define SIG_SUSPEND _SIGRTMIN + 6
|
||||
# endif
|
||||
# endif /* !SIG_SUSPEND */
|
||||
|
Reference in New Issue
Block a user