Age | Commit message (Collapse) | Author |
|
* test/test_curses.rb (TestCurses#run_curses): reap zombie, since
PTY.spawn with block does not wait the sub process but just
detaches.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41418 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_io.rb (test_cross_thread_close_stdio): use
assert_separately instead of separated fork and assert.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41417 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_signal.rb (test_kill_immediately_before_termination):
use assert_in_out_err instead of separated fork and assert.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41415 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/envutil.rb (EnvUtil#invoke_ruby): reap zombies.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41414 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/runner.rb (Test::Unit::ZombieHunter#after_teardown): reap zombies.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41413 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
rb_data_type_struct::flags. Now, this flags is passed
at T_DATA object creation. You can specify FL_WB_PROTECTED
on this flag.
* iseq.c: making non-shady iseq objects.
* class.c, compile.c, proc.c, vm.c: add WB for iseq objects.
* vm_core.h, iseq.h: constify fields to detect WB insertion.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41412 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_signal.rb (TestSignal#test_signal_process_group):
remove extra quotes.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41411 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (gc_mark_children): show more info for broken object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41410 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41409 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41408 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41407 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41406 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (slot_sweep_body): fix indent.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41405 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
BDIGIT is 16bit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41404 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (rgengc_rememberset_mark): fix to output clear count.
(shady_object_count + clear_count = count of remembered objects)
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41403 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
if RGENGC_CHECK_MODE > 0.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
In this mode, show all references if there is
a miss-corrected object.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41401 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
`GC.stress=(flag)' accepts integer to control behavior of GC.
See code for details. Of course, this feature is only for MRI.
You can debug RGenGC (WB) using `GC.stress = 1'.
Using this option, do minor marking at all possible places.
GC::STRESS_MINOR_MARK = 1 and GC::STRESS_LAZY_SWEEP = 2
seem good to add.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41400 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41399 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
write barriers at callback function are too early.
All write barriers are executed after `st_update()'
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41397 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
WBs had located before creating reference between a klass
and constant value. It causes GC bug.
# pseudo code:
WB(klass, value); # WB and remember klass
st_insert(klass->const_table, const_id, value);
`st_insert()' can cause GC before inserting `value' and
forget `klass' from the remember set. After that, relationship
between `klass' and `value' are created with constant table.
Now, `value' can be young (shady) object and `klass' can be old
object, without remembering `klass' object.
At the next GC, old `klass' object will be skipped and
young (shady) `value' will be miss-collected. -> GC bug
Lesson: The place of a WB is important.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41396 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
was typo.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41390 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
VM_METHOD_TYPE_ATTR_SET are called with 1 argument
* test/ruby/test_module.rb (class TestModule): add test
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41389 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41388 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41387 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* test/ruby/test_symbol.rb (test_block_persist_between_calls): needs
receiver object. [Bug #8531]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41386 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41385 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41384 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41383 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41382 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41381 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* include/ruby/defines.h (BDIGIT_DBL): Use uint128_t if it is available.
(BDIGIT): Use uint64_t if uint128_t is available.
(SIZEOF_BDIGITS): Defined for above case.
(BDIGIT_DBL_SIGNED): Ditto.
(PRI_BDIGIT_PREFIX): Ditto.
* include/ruby/ruby.h (PRI_64_PREFIX): Defined.
* bignum.c (rb_big_pow): Don't use BITSPERDIG for the condition which
rb_big_pow returns Float or Bignum.
[ruby-dev:47413] [Feature #8509]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41379 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* parse.y (parser_heredoc_restore): clear lex_strterm always to get
rid of marking recycled node. this bug is revealed by r41372 with
GC.stress=true.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41378 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41377 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
http://fbsd.rubyci.org/~chkbuild/ruby-trunk/log/20130618T030202Z.diff.html.gz
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41376 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
(big2dbl): Don't assign BDIGIT values to int variable.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41375 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41374 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
RGENGC_PROFILE >= 2.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41373 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* gc.c (markable_object_p): do not need to check (flags == 0) here.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41372 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41371 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41370 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41368 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41367 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
run test for r41359.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41361 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
new function to invoke a method with a block passed
as an argument.
* string.c (sym_call): use the above function to avoid
a block sharing. [ruby-dev:47438] [Bug #8531]
* vm_insnhelper.c (vm_yield_with_cfunc): don't set block
in the frame.
* test/ruby/test_symbol.rb (TestSymbol#test_block_given_to_proc):
run related tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41360 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
new function to invoke a Method object with a block passed
as an argument.
* proc.c (bmcall): use the above function to avoid a block sharing.
[ruby-core:54626] [Bug #8341]
* test/ruby/test_proc.rb (TestProc#test_block_persist_between_calls):
run related tests.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41359 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41358 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|