Граф коммитов

31455 Коммитов

Автор SHA1 Сообщение Дата
ko1 8ab7d0e4c3 * gc.c (gc_profile_record::oldgen_objects): added.
* gc.c (gc_profile_dump_on): print the following infomation:
* Living object counts
* Free object counts
  If RGENGC_PROFILE > 0 then
* Oldgen object counts
* Remembered normal object counts
* Remembered shady object counts



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41507 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 22:38:08 +00:00
nobu 42a086502b test_client.rb: load openssl
* test/xmlrpc/test_client.rb: try loading openssl to fix autoloading
  constant.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41506 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 21:48:03 +00:00
akr de8ca8a138 * bignum.c (rb_ull2big): Refactored.
(rb_uint2big): Useless code removed.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41505 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 21:45:11 +00:00
ko1 d1c518d416 * gc.c (gc_prof_sweep_timer_stop): accumulate sweep time only when
record->gc_time > 0.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41504 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 20:39:20 +00:00
svn 8c96736565 * 2013-06-21
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41503 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 15:42:28 +00:00
akr a461f2f8bb * ext/bigdecimal: Workaround fix for bigdecimal test failures caused
by [ruby-dev:47413] [Feature #8509]

* ext/bigdecimal/bigdecimal.h (BDIGIT): Make it independent from the
  definition for bignum.c.
  (SIZEOF_BDIGITS): Ditto.
  (BDIGIT_DBL): Ditto.
  (BDIGIT_DBL_SIGNED): Ditto.
  (PRI_BDIGIT_PREFIX): Undefine the definition.
  (PRI_BDIGIT_DBL_PREFIX): Ditto.

* ext/bigdecimal/bigdecimal.c (RBIGNUM_ZERO_P): Use rb_bigzero_p.
  (bigzero_p): Removed.
  (is_even): Use rb_big_pack.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41502 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 15:42:23 +00:00
akr a0d42f0354 * bignum.c (bigmul1_toom3): Don't call bignorm twice.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41501 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 14:09:32 +00:00
akr 7e36326c06 * bignum.c (bignorm): Don't call bigtrunc if the result is a fixnum.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41500 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 13:52:19 +00:00
akr 94e5fdf336 * bignum.c (rb_uint2big): Refactored.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41498 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 13:40:09 +00:00
akr ca10999c39 * bignum.c (dump_bignum): Use SIZEOF_BDIGITS.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41497 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 13:27:15 +00:00
akr 91894ab995 An extra semicolon removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41496 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 13:24:20 +00:00
akr a9c71d1139 * bignum.c (big2ulong): Change the return type to unsigned long.
(rb_big2ulong_pack): Follow the above change.
  (rb_big2long): Ditto.
  (rb_big_lshift): Ditto.
  (rb_big_rshift): Ditto.
  (rb_big_aref): Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41495 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 13:23:33 +00:00
akr 6ea1aee76e * bignum.c (bary_unpack_internal): Return -2 when negative overflow.
(bary_unpack): Set the overflowed bit if an extra BDIGIT exists.
  (rb_integer_unpack): Set the overflowed bit.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41494 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 13:05:27 +00:00
ko1 bf017de1f3 * gc.c (rgengc_rememberset_mark): record
(1) normal objects count in remember set
  (2) shady objects count in remember set
  each GC timing.
* gc.c (gc_profile_record_get): enable to access above information
  and REMOVING_OBJECTS, EMPTY_OBJECTS.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41493 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 12:20:27 +00:00
knu 7573bdd592 Remove an unnecessary mode comment.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41492 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 10:19:05 +00:00
knu e1da84266b Set mode for GNU Makefile.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41491 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 10:19:02 +00:00
ko1 45f7b78d29 * benchmark/gc/gcbench.rb: Do not use GC::Profiler::disable because
GC::Profiler::disable prohibit to access profiling data. It should
  be spec bug.
  Skip GC::Profiler::report if RUBY_VERSION < '2.0.0'



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41490 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 09:31:51 +00:00
nobu c76ebddc9f test_sdbm.rb: only if SDBM
* test/sdbm/test_sdbm.rb (TestSDBM): test only if SDBM is loadable.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41489 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 09:18:36 +00:00
ko1 07b6816583 * benchmark/gc/gcbench.rb: stop GC::Profiler before output results.
Generating GC::Profiler result under profiling causes infinite loop.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41488 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 09:00:41 +00:00
ko1 1db64a2035 * benchmark/gc/gcbench.rb: don't use __dir__ to make compatible
with ruby 1.9.3.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41487 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 08:25:16 +00:00
ko1 8fbffe61cc * benchmark/bm_app_aobench.rb: use attr_accessor/reader instead of
defining methods.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41486 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:58:13 +00:00
nobu 5dad18386e * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41485 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:51:05 +00:00
kazu 5b4fe62621 fix a typo
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41484 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:50:19 +00:00
nobu f0361ca416 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41483 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:49:15 +00:00
ko1 8e94c01653 * benchmark/bm_app_aobench.rb: added.
* benchmark/gc/aobench.rb: added.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41482 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:47:10 +00:00
nobu e832046b9a * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41481 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:31:06 +00:00
ko1 c5c1e8b8d4 * benchmark/bm_so_binary_trees.rb: disable `puts' method
and change iteration parameter to increase execution time.
* benchmark/gc/binarytree.rb: added.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:30:41 +00:00
nobu 0ec4589259 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41479 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:10:06 +00:00
ko1 fe6b76e789 * benchmark/gc/pentomino.rb: added.
Simply load pentomino puzzle in the benchmark/ directory.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41478 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:07:46 +00:00
nobu 60051eacac * remove trailing spaces.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41477 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:06:05 +00:00
nobu 85797ea0a7 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41476 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:03:15 +00:00
ko1 2802afffd6 * benchmark/gc/redblack.rb: import red black tree benchmark from
https://github.com/jruby/rubybench/blob/master/time/bench_red_black.rb
* benchmark/gc/ring.rb: add a benchmark. This benchmark create many
  old objects.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41475 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 07:01:58 +00:00
nobu ae39bfc5dc * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41474 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 06:21:07 +00:00
ko1 99b10ff471 * benchmark/gc: create a directory to store GC related benchmark.
* benchmark/gc/gcbench.rb: moved from tool/gcbench.rb.
* benchmark/gc/hash(1|2).rb: ditto.
* benchmark/gc/rdoc.rb: ditto.
* benchmark/gc/null.rb: added.
* common.mk: fix rule.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41473 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 06:18:09 +00:00
ko1 ab7e459210 * tool/hashbench1.rb: fix paramter too. Increase temporary objects.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41472 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 05:10:36 +00:00
ko1 800103e40a * tool/hashbench1.rb: fix parameters.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41471 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 05:01:56 +00:00
ko1 36bc412513 * common.mk: remove dependency from ruby.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41470 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 05:01:36 +00:00
nobu c81f8578c8 error.c: evaluate RARRAY_AREF once
* error.c (rb_check_backtrace): evaluate RARRAY_AREF only once.
  the first argument of RB_TYPE_P is expanded twice for non-immediate
  types.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41469 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 04:14:09 +00:00
nobu a12c414d7e test_fiber.rb: longer timeout
* test/ruby/test_fiber.rb (test_many_fibers): make timeout longer.
  10sec is not sufficient.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41468 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 04:08:49 +00:00
nobu d6f6f21816 envutil.rb: refine message
* test/ruby/envutil.rb (invoke_ruby): refine message and skip
  innermost backtrace on timeout.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41467 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 04:08:47 +00:00
nobu 05dd6b194c envutil.rb: keyword arguments
* test/ruby/envutil.rb (invoke_ruby, assert_normal_exit),
  (assert_in_out_err, assert_ruby_status, assert_separately): use
  keyword arguments so that optional parameters can be omitted.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41466 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 04:08:41 +00:00
kazu d7167e852a fix typos
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41465 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 03:53:07 +00:00
naruse e045a7253e GC before fork to avoid spending too much time in timeout block
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41464 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 01:49:21 +00:00
nobu 16f36b6322 gc.c: adjust indent
* gc.c (gc_marks): adjust indent.

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41463 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-20 00:29:13 +00:00
ko1 fcd5d8fd33 * tool/gcbench.rb: Summary in one line.
* common.mk: separete gcbench-hash to gcbench-hash1 and gcbench-hash2.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41462 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 23:15:56 +00:00
akr e98b7c6c52 * bignum.c (BIGSIZE): New macro.
(bigfixize): Use BIGSIZE.
  (big2ulong): Ditto.
  (check_shiftdown): Ditto.
  (rb_big_aref): Ditto.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41461 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 23:09:05 +00:00
tarui 88927b04ae * gc.c (rb_gc_writebarrier): give up rescan A and register B directly
if A has huge number of children.


git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41460 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 22:48:03 +00:00
nobu d7ebd9e641 * properties.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41459 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 22:36:15 +00:00
ko1 57bb153456 * common.mk: add new rules `gcbench-rdoc', `gcbench-hash'.
* tool/gcbench.rb: separate GC bench framework and process.
* tool/hashbench1.rb, tool/hashbench2.rb: add two types GC bench.
  hashbench1: many temporal objects (GC by newobj)
  hashbench2: hash size becomes bigger and bigger (GC by malloc)
  Two benchs are executed by `gcbench-hash' rule.
* tool/rdocbench.rb: separated.



git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41458 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 22:33:02 +00:00
ko1 55ae2402f4 * tool/rdocbench.rb: add summary.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41457 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2013-06-19 21:26:13 +00:00