Age | Commit message (Collapse) | Author |
|
Postponed jobs are registered with this API. Registered jobs
are invoked at `ruby-running-safe-point' as soon as possible.
This timing is completely same as finalizer timing.
There are two APIs:
* rb_postponed_job_register(flags, func, data): register a
postponed job with data. flags are reserved.
* rb_postponed_job_register_one(flags, func, data): same as
`rb_postponed_job_register', but only one `func' job is
registered (skip if `func' is already registered).
This change is mostly written by Aman Gupta (tmm1).
https://bugs.ruby-lang.org/issues/8107#note-15
[Feature #8107]
* gc.c: use postponed job API for finalizer.
* common.mk: add dependency from vm_trace.c to debug.h.
* ext/-test-/postponed_job/extconf.rb, postponed_job.c,
test/-ext-/postponed_job/test_postponed_job.rb: add a test.
* thread.c: implement postponed API.
* vm_core.h: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
types (RGENGC_PROFILE >= 2).
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
remembered_sunny_object_count and remembered_shady_object_count
for each types when RGENGC_PROFILE >= 2.
They are informative for optimization.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40938 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Returns st_table without shading hash.
* array.c: use rb_hash_tbl_raw() for read-only purpose.
* compile.c (iseq_compile_each): ditto.
* gc.c (count_objects): ditto.
* insns.def: ditto.
* process.c: ditto.
* thread.c (clear_coverage): ditto.
* vm_insnhelper.c: ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
literal "autoconf".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40935 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* constify RHash::ifnone and make new macro RHASH_SET_IFNONE().
* insert write barrier for st_update().
* include/ruby/intern.h: declare rb_hash_set_ifnone(hash, ifnone).
* marshal.c (r_object0): use RHASH_SET_IFNONE().
* ext/openssl/ossl_x509name.c (Init_ossl_x509name): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* internal.h (RCLASS_SUPER, RCLASS_SET_SUPER): adjust indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
test/fiddle/test_c_union_entity.rb,
test/fiddle/test_cparser.rb, test/fiddle/test_func.rb,
test/fiddle/test_handle.rb, test/fiddle/test_import.rb,
test/fiddle/test_pointer.rb: don't run test if the system
don't support fiddle.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40930 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
added O_CLOEXEC support to posix_openpt, so assume FreeBSD 9.2 or
later supports it.
http://www.freebsd.org/cgi/query-pr.cgi?pr=162374
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40927 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
This was introduced in r38236, which is not intentional apparently.
This has caused no actual harm because VM_METHOD_TYPE_OPTIMIZED is
not used except for OPTIMIZED_METHOD_TYPE_SEND, but may do in
future. Coverity Scan found this inadequacy.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40926 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
characters of fnmatch range have different length, fnmatch may
have wrongly matched a path that does not really match.
Coverity Scan found this bug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40925 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40924 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* variable.c (set_const_visibility): return without clearing method
cache if no arguments.
* vm_method.c (set_method_visibility): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40923 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* vm_method.c (set_method_visibility): quote unprintable method name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40922 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* eval.c (rb_frame_callee): returns the called name of the current
frame, not the previous frame.
* eval.c (prev_frame_callee, prev_frame_func): rename and make static,
as these are used by rb_f_method_name() and rb_f_callee_name() only.
* variable.c (set_const_visibility): use the called name.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* string.c (rb_str_quote_unprintable): check if argument is a string.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40919 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* eval_error.c (error_pos): no needs to call rb_frame_callee() twice.
* safe.c (rb_secure, rb_insecure_operation): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40918 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40917 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40916 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
of rb_frame_callee() for getting the name of the called method
* test/ruby/test_module.rb: add test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* number of oldgen object is biggger than twice of
number of oldgen object at last full GC.
* number of remembered shady object is bigger than twice of
number of remembered shady object at last full GC.
* number of oldgen object and remembered shady object is bigger
than half of total object space.
(please fix my English!)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
[ruby-core:55120] [Bug #8434]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40913 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
name reference is not found.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40912 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/io/console/console.c (io_getch): add rdoc.
* ext/io/console/lib/console/size.rb (IO.console_size): ditto.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40911 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/io/console/console.c, ext/stringio/stringio.c: rename internally
used modules as generic_readable and generic_writable. [Fix GH-315]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40910 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
before extending heaps.
TODO: do major GC when there are many old (promoted) objects.
* gc.c (after_gc_sweep): remove TODO comments.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40909 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
https://travis-ci.org/ruby/ruby/builds/7448421
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40908 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* configure.in (LIBRUBY_RPATHFLAGS): do not append -L option with
runtime library directory if cross compiling, but only -R option.
runtime path makes no sense on the host system. [ruby-dev:47363]
[Bug #8443]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40907 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40906 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
This propagation had caused WB miss for class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40905 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40904 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40903 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/extmk.rb (extract_makefile): do not add dldflags if duplicated.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40902 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40901 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* load.c (loaded_feature_path): fix invalid read by index underflow.
the beginning of name is also a boundary as well as just after '/'.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40900 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (gc_profile_dump_on): revert r40898. ok to show the record
accumulating while lazy_sweep().
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40899 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (gc_profile_dump_on): do not dump the last record, for some
reason.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40898 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40897 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
not supporting a sparce file.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40896 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40895 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_io.rb (TestIO#test_write_32bit_boundary): add test
for write part. [ruby-core:55098] [Bug #8431]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40894 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40893 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
http://ruby-mswin.cloudapp.net/vc10-x64/ruby-trunk/log/20130521T131601Z.log.html.gz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40892 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@40891 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|