aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* Fix wrong commentkazu2018-02-061-2/+1
| | | | | | | `ruby_strdup` does not return NULL. [ci skip] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62253 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: add output for debugk0kubun2018-02-061-3/+8
| | | | | | | | | | | | | | | | | AIX's header build is failing like: ./miniruby -I./lib -I. -I.ext/common ./tool/transform_mjit_header.rb "/usr/bin/gcc " rb_mjit_header.h .ext/include/powerpc-aix7.1.3.0/rb_mjit_min_header-2.6.0.h error in initial header file: /home/odaira/chkbuild/tmp/build/20180206T113302Z/tmp/20180206-15335556-aaiego.c:19:59: error: conflicting types for 'restrict' extern size_t fread(void *restrict, size_t, size_t, FILE *restrict); ^ https://rubyci.org/logs/rubyci.s3.amazonaws.com/aix71_ppc/ruby-trunk/log/20180206T113302Z.log.html.gz#make It's so hard to know the cause from current output. Let me add debug output and see tomorrow's CI result. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62252 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: suppress unused-value warningnobu2018-02-061-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62251 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Remove unused capturekazu2018-02-061-1/+1
| | | | | | Because `Regexp#to_s` add `(?-mix:)`, it is not unnecessary. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62250 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: fixed missing variablenobu2018-02-061-0/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62249 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: build dir prefixnobu2018-02-061-20/+34
| | | | | | | | * mjit.c (init_header_filename): prepend basedir to header build dir too, so that the header can be found when running not in the build directory. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62248 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* configure.ac: removed unnecessary pushdef/popdefnobu2018-02-061-6/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62247 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* test_gem_util.rb: fix broken testnobu2018-02-061-5/+2
| | | | | | | * test/rubygems/test_gem_util.rb: no guarantee that tmpdir is always underneath the root directory at all. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62246 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit headers for universal binarynobu2018-02-066-6/+38
| | | | | | | | | | * common.mk (MJIT_HEADER, MJIT_MIN_HEADER): added hook to separate intermediate headers per archs. * defs/gmake.mk: build mjit headers per -arch options, and then merge the headers with `#ifdef`s. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Merge RubyGems-2.7.5 from upstream.hsbt2018-02-0650-174/+251
| | | | | | Please see its details: http://blog.rubygems.org/2018/02/06/2.7.5-released.html git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62244 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* deal with aclocal(1)shyouhei2018-02-065-15/+8
| | | | | | | | | | | | | | | This commit updates files so that aclocal.m4 generated by aclocal(1) works well with our configure.ac * ac_checking.m4: merged back to configure.ac because aclocal(1) cannot handle this macro. * ruby_append_options.m4: no longer used. * ruby_check_va_copy.m4: define using AC_DEFUN so that aclocal(1) can find this macro. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62243 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* thread_pthread.c: cast inside rb_thread_create_mjit_threadnobu2018-02-062-3/+3
| | | | | | | | * thread_pthread.c (rb_thread_create_mjit_thread): cast worker_func pointer to void pointer inside. adjusted to the declaration in mjit.c and the definition in thread_win32.c. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62242 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: use ruby_strdup as get_stringnobu2018-02-062-9/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62241 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: ARCH_FLAG to mjit headersnobu2018-02-061-2/+2
| | | | | | | | * common.mk (rb_mjit_header.h, rb_mjit_min_header.h): $(ARCH_FLAG) is necessary to compile for non-default architecture, e.g., 32bit build on 64bit platform. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62240 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: fix MinGW warning by r62221k0kubun2018-02-051-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | mjit.c: In function 'worker': mjit.c:126:64: warning: passing argument 1 of '_InterlockedExchangePointer' from incompatible pointer type [-Wincompatible-pointer-types] # define MJIT_ATOMIC_SET(var, val) InterlockedExchangePointer(&(var), val) ^ mjit.c:828:17: note: in expansion of macro 'MJIT_ATOMIC_SET' MJIT_ATOMIC_SET(node->unit->iseq->body->jit_func, func); ^ In file included from C:/msys64/mingw64/x86_64-w64-mingw32/include/winnt.h:27:0, from C:/msys64/mingw64/x86_64-w64-mingw32/include/minwindef.h:163, from C:/msys64/mingw64/x86_64-w64-mingw32/include/windef.h:8, from C:/msys64/mingw64/x86_64-w64-mingw32/include/windows.h:69, from C:/msys64/mingw64/x86_64-w64-mingw32/include/winsock2.h:23, from ./include/ruby/win32.h:41, from ./include/ruby/defines.h:250, from ./include/ruby/ruby.h:29, from ./include/ruby.h:33, from internal.h:15, from mjit.c:76: C:/msys64/mingw64/x86_64-w64-mingw32/include/psdk_inc/intrin-impl.h:1420:7: note: expected 'void * volatile*' but argument is of type 'VALUE (**)(struct rb_execution_context_struct *, struct rb_control_frame_struct *) {aka long long unsigned int (**)(struct rb_execution_context_struct *, struct rb_control_frame_struct *)}' void *_InterlockedExchangePointer(void *volatile *Target,void *Value) { ^~~~~~~~~~~~~~~~~~~~~~~~~~~ git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62239 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: determine prefix of MJIT header at runtimek0kubun2018-02-054-9/+38
| | | | | | | | | | | | | | | | | so that MJIT can work if Ruby is distributed as prebuilt binary. Now mjit_init() depends on the internal const TMP_RUBY_PREFIX which is only available after ruby_init_loadpath_safe() (L1608) and before ruby_init_prelude() (L1681). So the place of mjit_init() is moved. Makefile.in: Removed static prefix from MJIT_HEADER_ISNTALL_DIR macro. And this removes the unused LIBRUBY_LIBDIR macro as well. win32/Makefile.sub: ditto. Patch by: Lars Kanis <lars@greiz-reinsdorf.de> [Bug #14445] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62238 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vm_insnhelper.c: prefix rb_ to simple_iseq_pk0kubun2018-02-052-5/+5
| | | | | | | | | which is started to be used by mjit_compile.c in r62197. Related to r62235, this intends to transform the function to static. Of course we shouldn't pollute the namespace anyway. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62237 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2018-02-06svn2018-02-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62236 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: restrict transformationk0kubun2018-02-051-0/+6
| | | | | | | | to whitelisted patterns. This fix is for NetBSD. [Bug #14439] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62235 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: same command after errornobu2018-02-051-2/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62232 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* tool/downloader.rb: retry SocketErrork0kubun2018-02-051-3/+3
| | | | | | | | | | | | | | | I would like to stabilize RubyCI. https://rubyci.org/logs/rubyci.s3.amazonaws.com/fedora26/ruby-trunk/log/20180205T123003Z.fail.html.gz downloading did_you_mean-1.2.0.gem ... /home/hsbt/chkbuild/tmp/build/20180205T123003Z/tmp/ruby-snapshot20180205-23226-3201ha/ruby-2.6.0-r62226/tool/downloader.rb:212:in `rescue in download': failed to download did_you_mean-1.2.0.gem (RuntimeError) SocketError: Failed to open TCP connection to rubygems.org:443 (getaddrinfo: Name or service not known): https://rubygems.org/downloads/did_you_mean-1.2.0.gem from /home/hsbt/chkbuild/tmp/build/20180205T123003Z/tmp/ruby-snapshot20180205-23226-3201ha/ruby-2.6.0-r62226/tool/downloader.rb:123:in `download' from /home/hsbt/chkbuild/tmp/build/20180205T123003Z/tmp/ruby-snapshot20180205-23226-3201ha/ruby-2.6.0-r62226/tool/downloader.rb:66:in `download' from -e:4:in `<main>' make[1]: *** [Makefile:1685: update-gems] Error 1 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62231 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: prefer using --jit-cc=clang if __clang__k0kubun2018-02-051-1/+1
| | | | | | | | | | | is defined. This is basically for OpenBSD. Failure on using the compiler which is not used for Ruby compilation is not supported. [Bug #14440] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62230 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix undefined behaviorkazu2018-02-051-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62229 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Fix a typo [ci skip]kazu2018-02-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62228 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: try changing the order of includesk0kubun2018-02-051-8/+9
| | | | | | | | | | | | | | | | | | | | | | | Hoping to fix the AIX's build failure like: In file included from ./include/ruby/defines.h:139:0, from ./include/ruby/ruby.h:29, from ./include/ruby.h:33, from internal.h:15, from mjit.c:81: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/4.8.1/include-fixed/unistd.h:939:14: error: conflicting types for 'ftruncate64' extern int ftruncate64(int, off64_t); ^ In file included from ./include/ruby/defines.h:139:0, from ./include/ruby/ruby.h:29, from ./include/ruby.h:33, from internal.h:15, from mjit.c:81: /opt/freeware/lib/gcc/powerpc-ibm-aix7.1.0.0/4.8.1/include-fixed/unistd.h:937:14: note: previous declaration of 'ftruncate64' was here extern int ftruncate(int, off_t); ^ git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62227 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: check initial codek0kubun2018-02-051-4/+6
| | | | | | | | | separating the macros. Applying the kept macros to code which is already affected by the macros may cause errors in initial code. This is hopefully the final fix for icc build failure. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62226 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: remove predefined macrosk0kubun2018-02-051-5/+4
| | | | | | | | | semi-automatically. This is basically for icc's __DATE__, __TIME__, and many other families. It causes an error by predefined macro redefinition. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* need shell's escape instead of M4's.shyouhei2018-02-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62224 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Makefile.sub: va_copy in old versionnobu2018-02-051-0/+4
| | | | | | | * win32/Makefile.sub: va_copy is available since VS12 (VC 18.00). simple copy same as VC1 19.00. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62223 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: no extra CRsnobu2018-02-051-1/+1
| | | | | | | * tool/transform_mjit_header.rb (MJITHeader.check_code!): open temporary file in binary mode too, not to include extra CRs. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62222 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* assigning void* to a function pointer is a POSIXismshyouhei2018-02-053-13/+15
| | | | | | | | No implicit cast is defined between these types. Should be explicit. Also, NULL is defined to be ((void*)0) so not usable as a function pointer value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* va_copy is a C99ismshyouhei2018-02-056-4/+73
| | | | | | Should provide appropriate fallback implementation. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62220 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* comma at the end of enum is a C99ismshyouhei2018-02-051-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vcs.rb: no meaningless splatnobu2018-02-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62218 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* vcs.rb: for old rubynobu2018-02-051-0/+1
| | | | | | | * tool/vcs.rb (DebugSystem#system): pop option hash for old version ruby which does not support `system` options. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62217 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: take program name from $0nobu2018-02-051-4/+6
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62216 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: read/write in binmodenobu2018-02-051-2/+2
| | | | | | | * tool/transform_mjit_header.rb: read and write as ASCII-8BIT to make single-byte-optimizable always. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62215 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: separate macro and codenobu2018-02-051-2/+4
| | | | | | | * tool/transform_mjit_header.rb (separate_macro_and_code): return macro and code separately as the name, and concat before output. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62214 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: scan by regexpnobu2018-02-051-13/+14
| | | | | | | * tool/transform_mjit_header.rb (find_decl): scan by regexp instead of char-by-char loop. return nil when finished. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62213 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Use system option instead of shell redirectkazu2018-02-051-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62212 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: define __EXTENSIONS__ earlierk0kubun2018-02-041-4/+4
| | | | | | | | | | | | | | | | | | Another try of r62204 and r62192. As far as I can see from solaris's signal.h and sys/procset.h, the only possibility that causes the following error would be that sys/procset.h is included without __EXTENSIONS__ and signal.h included it again but it doesn't define procset_t. Let's define __EXTENSIONS__ from first. --- In file included from vm_core.h:87:0, from mjit.c:85: /usr/include/signal.h:77:29: error: unknown type name 'procset_t' extern int sigsendset(const procset_t *, int); ^ git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62211 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* MINIRUBY dependencynobu2018-02-041-1/+1
| | | | | | * common.mk ($(MJIT_MIN_HEADER)): add dependency for $(MINIRUBY). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62210 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* use MINIRUBYnobu2018-02-041-1/+1
| | | | | | | * common.mk ($(MJIT_MIN_HEADER)): use $(MINIRUBY) at build time. $(BASERUBY) may not be available. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62209 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: CPPOUTFLAGnobu2018-02-043-2/+6
| | | | | | | | | * common.mk (rb_mjit_header.h): use $(CPPOUTFLAG). * win32/Makefile.sub (CPPOUTFLAG): needs -Fi to let cl.exe name preprocessed file, instead of -Fo. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62208 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2018-02-05svn2018-02-041-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62207 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: use vm.i as the temporary filenamek0kubun2018-02-041-2/+2
| | | | | | | | | | because `cl -P vm.c` always produces vm.i regardless of -o XXX and currently mswin build is failing. Fixing r62202. If this commit does not work, I'll revert this and r62202. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62206 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* transform_mjit_header.rb: refactor messages and exitnobu2018-02-041-10/+9
| | | | | | | | * tool/transform_mjit_header.rb: print non-error messages to STDOUT instead of STDERR. exit with false or abort instead of exit 1. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62205 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mjit.c: another try for fixing solaris buildk0kubun2018-02-041-1/+4
| | | | | | | | | | | | Reverted r62192 and added another try. I prepared Solaris environment but I couldn't reproduce the RubyCI build failure. So I'm testing on trunk. I found the following article and it fixed the same problem with passing `-D__EXTENSIONS__`. So this commit defines `__EXTENSIONS__` for Solaris. https://bitbucket.org/ged/ruby-pg/issues/236/compile-error-usr-include-signalh-92-1 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62204 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: phony target mjit-headersnobu2018-02-041-0/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62203 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk: rb_mjit_header.hnobu2018-02-044-10/+10
| | | | | | | * common.mk (rb_mjit_header.h): moved from Makefile.in and win32/Makefile.sub. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62202 b2dd03c8-39d4-4d8f-98ff-823fe69b080e