ruby-changes:53867
From: shyouhei <ko1@a...>
Date: Thu, 29 Nov 2018 15:16:37 +0900 (JST)
Subject: [ruby-changes:53867] shyouhei:r66086 (trunk): Remove HEAP_ALIGN_LOG setting in configure.ac for OpenBSD/MirOS
shyouhei 2018-11-29 15:16:31 +0900 (Thu, 29 Nov 2018) New Revision: 66086 https://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=revision&revision=66086 Log: Remove HEAP_ALIGN_LOG setting in configure.ac for OpenBSD/MirOS The ruby setting was renamed to HEAP_PAGE_ALIGN_LOG, but the configure.in (now configure.ac) file was not updated, so the setting had no effect. The configure setting is unnecessary after OpenBSD 5.2 and MirOS has been discontinued (with the last release being over 10 years ago), so it is better to just remove the related configure setting. Fix [Bug #13438] From: Jeremy Evans <code@j...> Modified files: trunk/configure.ac trunk/gc.c Index: configure.ac =================================================================== --- configure.ac (revision 66085) +++ configure.ac (revision 66086) @@ -1641,34 +1641,6 @@ AS_IF([test $rb_cv_stack_end_address != https://github.com/ruby/ruby/blob/trunk/configure.ac#L1641 AC_DEFINE_UNQUOTED(STACK_END_ADDRESS, $rb_cv_stack_end_address) ]) -# posix_memalign(memptr, alignment, size) implemented for OpenBSD 4.8 doesn't work if alignment > MALLOC_PAGESIZE. -# [ruby-core:42158] https://bugs.ruby-lang.org/issues/5901 -# OpenBSD 5.2 fixed the problem. (src/lib/libc/stdlib/malloc.c:1.142) -# MirOS #10semel has the problem but fixed in the repository. (src/lib/libc/stdlib/malloc.c:1.9) -AS_CASE(["$target_os"], -[openbsd*|mirbsd*], [ - AC_CACHE_CHECK(for heap align log on openbsd, rb_cv_page_size_log, - [rb_cv_page_size_log=no - for page_log in 12 13; do - AC_TRY_RUN([ -#include <math.h> -#include <unistd.h> - -int -main() { - if ((int)log2((double)sysconf(_SC_PAGESIZE)) != $page_log) return 1; - return 0; -} - ], - rb_cv_page_size_log="$page_log"; break) - done]) - AS_IF([test $rb_cv_page_size_log != no], [ - AC_DEFINE_UNQUOTED(HEAP_ALIGN_LOG, $rb_cv_page_size_log) - ], [ - AC_DEFINE_UNQUOTED(HEAP_ALIGN_LOG, 12) - ]) -]) - dnl Checks for library functions. AC_TYPE_GETGROUPS AC_TYPE_SIGNAL Index: gc.c =================================================================== --- gc.c (revision 66085) +++ gc.c (revision 66086) @@ -649,10 +649,8 @@ typedef struct rb_objspace { https://github.com/ruby/ruby/blob/trunk/gc.c#L649 } rb_objspace_t; -#ifndef HEAP_PAGE_ALIGN_LOG /* default tiny heap size: 16KB */ #define HEAP_PAGE_ALIGN_LOG 14 -#endif #define CEILDIV(i, mod) (((i) + (mod) - 1)/(mod)) enum { HEAP_PAGE_ALIGN = (1UL << HEAP_PAGE_ALIGN_LOG), -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/