summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2012-10-04* insns.def (getlocal, setlocal): remove old getlocal/setlocalko1
instructions and rename getdaynmic/setdynamic instructions to getlocal/setlocal. * compile.c: ditto. * iseq.c: remove TS_DINDEX. * vm_exec.h (dindex_t): remove type definition of `dindex_t'. * tool/instruction.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37087 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04* vm.c (vm_analysis_insn|operand|register): use st_insertko1
instead of using rb_hash_aset() because rb_hash_aset() check $SAFE. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37086 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04* vm.c (VM_COLLECT_USAGE_DETAILS): make new VM usage analysisko1
hooks (old macro name is COLLECT_USAGE_ANALYSIS). This feature is only for VM developers. (I'm not sure I can use `VM developers' (the plural form) in this sentence). If VM_COLLECT_USAGE_DETAILS is not 0, VM enables the following usage collection features: (1) insntruction: collect intruction usages. (2) operand: collect operand usages. (3) register: collect register usages. The results are stored in RubyVM::USAGE_ANALYSIS_INSN for (1, 2), RubyVM::USAGE_ANALYSIS_INSN_BIGRAM for (1) and RubyVM::USAGE_ANALYSIS_REGS for (3). You can stop collecting usages with RubyVM::USAGE_ANALYSIS_INSN_STOP(), RubyVM::USAGE_ANALYSIS_OPERAND_STOP(), RubyVM::USAGE_ANALYSIS_REGISTER_STOP() for (1), (2), (3) respectively. You can also change the hook functions by setting C level global variables `ruby_vm_collect_usage_func_(insn|operand|register)' for (1), (2), (3) respectively. See codes for more details. * tool/instruction.rb: fix macro names. * iseq.c (insn_operand_intern): make it export (used in vm.c). fix to skip several processes if not needed (pointer is 0). * vm_dump.c: move codes for collection features to vm.c. * vm_exec.h: rename macro and function names. * vm_insnhelper.h: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37085 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04* test/ruby/test_settracefunc.rb (test_tracepoint):ko1
remove unused test case. (this test case is redefined by newer tests) git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37084 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04* gc.c (rb_objspace_call_finalizer): call gc_mark_stacked_objectsnari
at suitable point. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37083 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04gc.c: self-referencing finalizersnobu
* gc.c (rb_objspace_call_finalizer): mark self-referencing finalizers before run finalizers, to fix SEGV from btest on 32bit. * gc.c (gc_mark_stacked_objects): extract from gc_marks(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37082 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04* gc.c: use enum for debugging.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37081 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04thread_pthread.c: precise stack sizenobu
* thread_pthread.c (ruby_init_stack): round stack limit to page size boundary to calculate stack size more precisely. [ruby-dev:46174] [Bug #7084] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37080 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04* thread_pthread.c (RUBY_STACK_MIN_LIMIT): name magic number.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37079 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04* 2012-10-04svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37078 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-04 * lib/cgi/html5.rb: Add html5 tag maker.xibbar
* lib/cgi/core.rb: ditto. [Feature #6637] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37077 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-03gc.c: unused functionnobu
* gc.c (free_stack_chunks): it is used only when per-VM object space is enabled. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37076 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-03* gc.c: Use the non-recursive marking instead of recursion. Thenari
recursion marking of CRuby needs checking stack overflow and the fail-safe system, but these systems not good at partial points, for example, marking deep tree structures. [ruby-dev:46184] [Feature #7095] * configure.in (GC_MARK_STACKFRAME_WORD): removed. It's used by checking stack overflow of marking. * win32/Makefile.sub (GC_MARK_STACKFRAME_WORD): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37075 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-03ChangeLog: fix typo.nobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37074 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-03depend: dependencynobu
* ext/json/generator/depend: fix missing dependency. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37073 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-03thread_pthread.c: init stack with ulimitnobu
* thread_pthread.c (ruby_init_stack): use getrlimit() for the main thread on Mac OS X, since pthread_get_stack{addr,size}_np() and return the default value always, but not the ulimit value. [ruby-dev:46174] [Bug #7084] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37072 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-03io.c: improved IO#reopennobu
* io.c (rb_io_reopen): improvement to accept optional arguments. a patch by Glass_saga (Masaki Matsushita) in [ruby-core:47806]. [Feature #7103] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37071 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-02* ext/openssl/ossl_x509store.c (ossl_x509store_add_file): Addeddrbrain
documentation * ext/openssl/ossl_x509store.c (ossl_x509store_set_default_paths): ditto * ext/openssl/ossl_x509store.c (ossl_x509store_add_cert): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37070 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-02* 2012-10-03svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37069 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-02* error.c (exc_to_s, name_err_to_s, name_err_mesg_to_str): do notshugo
taint messages. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37068 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-02* 2012-10-02svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37067 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-02eval.c: hide internal hashnobu
* eval.c (identity_hash_new): hide internal hashes for refinements. * eval.c (rb_mod_refine): no default value. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37066 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-01* ChangeLog: fix typos of r37064.nagachika
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37065 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-10-01* eval.c (identify_hash_new): new function to create a new identityshugo
hash. * eval.c (rb_overlay_module, rb_mod_using, rb_mod_refine): use identify_hash_new(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37064 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-30* 2012-10-01svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37063 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-30* configure.in (--with-opt-dir): Make this also work on DLDFLAGSknu
so LIBRUBY_SO links fine with libexecinfo installed in a non-system directory. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37062 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-30* vm_dump.c (rb_vm_bugreport): add /Library/Logs/DiagnosticReportsmrkn
in the list of locations of crash reports. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-30* test/ruby/test_enumerator.rb (enum_test, test_inspect): remove unusednagachika
variable. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37060 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-30* 2012-09-30svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37059 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-30* string.c (rb_str_concat): use memcpy to copy a string which containsnaruse
NUL characters. [ruby-core:47751] [Bug #7090] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37058 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-29envutil.rb: kill child process when timeoutshirosaki
* test/ruby/envutil.rb (EnvUtil#invoke_ruby): kill child process before Timeout::Error is raised. rmdir of mktmpdir fails with EACCES if child process is alive on Windows. * test/thread/test_queue.rb (TestQueue): increase timeout. This test takes long time on Windows XP. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-29test_http.rb: clear environment variablesshirosaki
* test/net/http/test_http.rb (TestNetHTTP#test_proxy_address): clear environment variables. If http_proxy environment variable was set, the test failed. * test/net/http/test_http.rb (TestNetHTTP#test_proxy_port): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-29drbtest.rb: use :KILL on Windowsshirosaki
* test/drb/drbtest.rb (DRbCore#teardown): Use Process.kill :KILL on Windows because Process.kill :INT silently fails on Windows 7 and raises EINVAL on Windows XP for spawned process with new_pgroup: false. * test/drb/drbtest.rb (DRbAry#teardown): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37055 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-29test_unicode_escape.rb: set script encodingshirosaki
* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic): set script encoding to work with LANG=C. It would work on both Windows and Unix. Refix of r37051. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-29* vm_insnhelper.c (rb_vm_using_modules): use using_modules beforeshugo
klass to fix method lookup order, and use klass even if klass is not a module to make refinements in class_eval invoked on classes work. * eval.c (rb_using_module): accept a class as the second argument. * eval.c (rb_mod_using, f_using): raise a TypeError if the argument is not a module. * test/ruby/test_refinement.rb: add new tests for the above changes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* 2012-09-29svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37052 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic):shirosaki
Use ruby only on Windows since the test fails on Unix with LANG=C. [ruby-core:47709] [Bug #7076] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28test_unicode_escape.rb: fix test for Windowsshirosaki
* test/ruby/test_unicode_escape.rb (TestUnicodeEscape#test_basic): echo command doesn't work properly against non-ascii character on Windows with chcp 437. Instead we use ruby. [ruby-core:47709] [Bug #7076] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* vm_insnhelper.c (vm_setup_method): refactoring.ko1
Remove src_argc and use iseq->arg_size directly. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* lib/rubygems/installer.rb (check_that_user_bin_dir_is_in_path):naruse
test_generate_bin_bindir_with_user_install_warning(TestGemInstaller) fails on Windows with msys bash. It makes comparing paths case-insensitive. pick from upstream to fix a failure of test-all [ruby-core:47711] https://github.com/rubygems/rubygems/commit/c474edb2f3704206f04da1c8c6cf9fb079d84abe git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37048 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28vm_insnhelper.c: fix typesnobu
* vm_insnhelper.c (vm_setup_method): fix -Wshorten-64-to-32. * vm_insnhelper.c (vm_base_ptr): fix -Wformat git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* vm_method.c (search_method): copy refinement iclasses to searchshugo
superclasses correctly. * test/ruby/test_refinement.rb: related test. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* insns.def (opt_checkenv): remove unused instruction `opt_checkenv'.ko1
* compile.c (iseq_compile_each): ditto. * node.h: remove unused node `NODE_OPTBLOCK'. * ext/objspace/objspace.c, gc.c (gc_mark_children): ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37045 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* vm_core.h: now VM_DEBUG_BP_CHECK should be 1.ko1
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37044 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* vm_core.h: remove rb_control_frame_t::bp (bp: base pointer).ko1
`bp' can be calculate by `sp' (stack pointer) of previous frame. Now, `bp_check' field is remained for debug. You can eliminate this field by setting VM_DEBUG_BP_CHECK as 0. * vm_insnhelper.c (vm_base_ptr): add `vm_base_ptr(cfp). This function calculates base pointer from cfp. * vm_insnhelper.c (vm_setup_method): push `recv' value on top of value stack (before method parameters). This change is for keeping consistency with normal method dispatch. * insns.def: fix to use vm_base_ptr(). * vm.c (vm_exec): ditto. * vm_dump.c: remove `bp' related dumps. * cont.c (fiber_init): fix to check VM_DEBUG_BP_CHECK. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37043 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28* 2012-09-28svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37042 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-28io.c: IO#reopen int modenobu
* io.c (rb_io_reopen): accept File::Constants as well as mode string. based on the patch by Glass_saga (Masaki Matsushita) in [ruby-core:47694]. [Feature #7067] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37041 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-27* eval.c (rb_overlay_module, rb_mod_refine): accept a module as theshugo
argument of Module#refine. * vm_method.c (search_method): if klass is an iclass, lookup the original module of the iclass in omod in order to allow refinements of modules. * test/ruby/test_refinement.rb: add tests for the above changes. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37040 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-27* ext/syslog/lib/syslog/logger.rb: add a formatter to theknu
Syslog::Logger object. [Bug #7065] * test/syslog/test_syslog_logger.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37039 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2012-09-27* 2012-09-27svn
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@37038 b2dd03c8-39d4-4d8f-98ff-823fe69b080e