aboutsummaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* * eval_error.c (warn_printf): use rb_vsprintf instead so ruby specificcharliesome2013-06-243-16/+23
| | | | | | | | | | extensions like PRIsVALUE can be used in format strings * eval_error.c (error_print): use warn_print_str (alias for rb_write_error_str) to print a string value instead of using RSTRING_PTR and RSTRING_LEN manually * eval.c (setup_exception): use PRIsVALUE instead of %s and RSTRING_PTR git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41598 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * compile.c (make_name_for_block): use PRIsVALUE in format stringcharliesome2013-06-249-15/+28
| | | | | | | | | | | | | | | | instead of %s and RSTRING_PTR to protect objects from being garbage collected too soon * encoding.c (str_to_encindex): ditto * hash.c (rb_hash_fetch_m): ditto * io.c (rb_io_reopen): ditto * parse.y (reg_fragment_check_gen): ditto * parse.y (reg_compile_gen): ditto * parse.y (ripper_assert_Qundef): ditto * re.c (rb_reg_raise): ditto * ruby.c (set_option_encoding_once): ditto * vm_eval.c (rb_throw_obj): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41597 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix indentkazu2013-06-241-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41596 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.nobu2013-06-231-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41595 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (after_gc_sweep): Have to record malloc info before reset.tarui2013-06-232-9/+27
| | | | | | | | * gc.c (gc_prof_timer_start): Pick out part of new record creation as gc_prof_setup_new_record. * gc.c (gc_prof_set_malloc_info): Move point of recording allocation size to front of mark. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c: Return value in Array overview example found by @PragTobzzak2013-06-232-1/+6
| | | | | | | [Fix GH-336] https://github.com/ruby/ruby/pull/336 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41593 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * array.c (rb_ary_zip): typo by @PragTob [Fix GH-337]zzak2013-06-232-1/+6
| | | | | | | https://github.com/ruby/ruby/pull/337 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41592 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.nobu2013-06-231-3/+3
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41591 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * win32/README.win32: grammar typo by @blankenshipz [Fix GH-334]zzak2013-06-232-1/+6
| | | | | | | https://github.com/ruby/ruby/pull/334 git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41590 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2013-06-24svn2013-06-231-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41589 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (BIGUP): Use LSHIFTX and avoid cast to consider the typeakr2013-06-232-7/+17
| | | | | | | | | | | | | of x is bigger than BDIGIT_DBL. (big2ulong): Use unsigned long to store the result. (big2ull): Use unsigned LONG_LONG to store the result. (bigand_int): Use long for num to avoid data loss. (bigor_int): Ditto. (bigxor_int): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/defines.h (BDIGIT): Define it only if it is not definedakr2013-06-233-50/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | yet. This eases tests and debug. (SIZEOF_BDIGITS): Ditto. (BDIGIT_DBL): Ditto. (BDIGIT_DBL_SIGNED): Ditto. (PRI_BDIGIT_PREFIX): Ditto. (PRI_BDIGIT_DBL_PREFIX): Ditto. (PRIdBDIGIT): Define it only if PRI_BDIGIT_PREFIX is defined. (PRIiBDIGIT): Ditto. (PRIoBDIGIT): Ditto. (PRIuBDIGIT): Ditto. (PRIxBDIGIT): Ditto. (PRIXBDIGIT): Ditto. (PRIdBDIGIT_DBL): Ditto. (PRIiBDIGIT_DBL): Ditto. (PRIoBDIGIT_DBL): Ditto. (PRIuBDIGIT_DBL): Ditto. (PRIxBDIGIT_DBL): Ditto. (PRIXBDIGIT_DBL): Ditto. * include/ruby/ruby.h (RBIGNUM_EMBED_LEN_MAX): Define it only if it is not defined yet. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41587 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (integer_unpack_single_bdigit): Use a cast.akr2013-06-232-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41586 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bootstraptest/test_thread.rb: rescue resource limitation errors.ko12013-06-232-4/+16
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41585 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (integer_unpack_single_bdigit): Extracted fromakr2013-06-222-44/+26
| | | | | | | | bary_unpack_internal. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41584 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bary_unpack_internal): Suppress warnings (C4146) on Visual Studio.akr2013-06-222-4/+9
| | | | | | | | Reported by ko1 via IRC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41583 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h, gc.c: rename macros and functions:ko12013-06-226-18/+26
| | | | | | | | | | | | OBJ_WB_GIVEUP() -> OBJ_WB_UNPROTECT(), rb_obj_wb_giveup() -> rb_obj_wb_unprotect(), rb_gc_giveup_promoted_writebarrier() -> rb_gc_writebarrier_unprotect_promoted(), * class.c, eval.c, hash.c: use OBJ_WB_UNPROTECT(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41582 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * remove trailing spaces.nobu2013-06-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41581 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * class.c (rb_include_class_new), eval.c (rb_using_refinement):ko12013-06-224-3/+34
| | | | | | | | | | | | make classes/modules (who share method table) shady. If module `a' and `b' shares method table m_tbl and new method with iseq is added, then write barrier is applied only `a' or `b'. To avoid this issue, shade such classes/modules. * vm_method.c (rb_method_entry_make): add write barriers. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41580 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bytes_zero_p): Removed.akr2013-06-222-25/+20
| | | | | | | | (bary_pack): Don't call bytes_zero_p. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41579 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bytes_zero_p): Extracted from bary_pack.akr2013-06-222-7/+19
| | | | | | | | (bary_pack): Use bytes_zero_p. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41578 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (MSB): New macro.akr2013-06-222-6/+14
| | | | | | | | | | (bary_unpack_internal): Use MSB. (bary_divmod): Ditto. (bigdivrem): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41576 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * 2013-06-23svn2013-06-221-2/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41574 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Update comments.akr2013-06-221-0/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41573 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Unused code removed.akr2013-06-221-114/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41572 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bary_swap): New function.akr2013-06-222-30/+25
| | | | | | | | | (bary_pack): Use bary_swap. (bary_unpack_internal): Ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41571 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bytes_2comp): Renamed from quad_buf_complement.akr2013-06-222-129/+32
| | | | | | | | | | (bary_pack): Use bytes_2comp. (rb_quad_pack): Use rb_integer_pack. (rb_quad_unpack): Use rb_integer_unpack. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41570 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (rb_integer_unpack): Don't allocate a Bignum if possible.akr2013-06-222-4/+39
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41569 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fix a typokazu2013-06-221-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41568 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * pack.c (pack_unpack): Remove specialized unpackers for integers.akr2013-06-222-131/+23
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41567 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bary_unpack_internal): Specialized unpacker implemented.akr2013-06-223-11/+195
| | | | | | | | | (bary_unpack): Support INTEGER_PACK_FORCE_GENERIC_IMPLEMENTATION. (rb_integer_unpack): Support INTEGER_PACK_FORCE_GENERIC_IMPLEMENTATION. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bary_pack): Supportakr2013-06-225-139/+189
| | | | | | | | | | | | INTEGER_PACK_FORCE_GENERIC_IMPLEMENTATION flag. Fix byte order and word order handling in code specialized for wordsize % SIZEOF_BDIGITS == 0. * internal.h (INTEGER_PACK_FORCE_GENERIC_IMPLEMENTATION): Defined. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41565 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (rgengc_check_shady): add new WB miss checkingko12013-06-222-70/+162
| | | | | | | | | | | | | | | | | | | on RGENGC_CHECK_MODE >= 2. (1) Save bitmaps before marking (2) Run full marking (3) On each traceable object, (a) object was not oldgen (== newly or shady object) && (b) parent object was oldgen && (c) parent object was not remembered && (d) object was not rememberd then, it should be WB miss. This idea of this checker is by Masaya Tarui <tarui@ruby-lang.org>. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41564 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/etc/etc.c (setup_passwd): revert r41560, unnecessarycharliesome2013-06-222-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41563 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/etc/etc.c (Init_etc): omit 'passwd' from definition of Etc::Passwdcharliesome2013-06-222-2/+14
| | | | | | | if HAVE_STRUCT_PASSWD_PW_PASSWD is not defined to prevent mismatch of fields and values in setup_passwd git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41562 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/dl/cfunc.c (rb_dlcfunc_call): Use rb_big_pack instead ofakr2013-06-223-6/+16
| | | | | | | | | | rb_big2ulong_pack and rb_big2ull. * include/ruby/intern.h (rb_big2ulong_pack): Deprecated. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41561 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/etc/etc.c (setup_passwd): pass 0 as VALUE to rb_struct_new tocharliesome2013-06-222-1/+7
| | | | | | | prevent segfault if the compiler passes it as a 32 bit integer on a 64 bit ruby git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41560 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (bary_pack): MEMZERO can be used even if nails is not zero.akr2013-06-222-1/+5
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41559 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * ext/etc/etc.c (etc_getpwnam): use PRIsVALUE in format string insteadcharliesome2013-06-222-2/+9
| | | | | | | | of %s and RSTRING_PTR * ext/etc/etc.c (etc_getgrnam): ditto git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41558 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (CLEAR_LOWBITS): Rewritten without RSHIFTX.akr2013-06-222-2/+6
| | | | | | | | (RSHIFTX): Removed. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41557 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * pack.c (num2i32): Removed.akr2013-06-222-90/+16
| | | | | | | | (pack_pack): Don't use num2i32. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41556 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* load.c: suppress warningnobu2013-06-221-2/+2
| | | | | | | * load.c (rb_load_internal): suppress clobbered-by-longjmp warning by gcc 4.4. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41555 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * bignum.c (LSHIFTX): Defined to suppress a warning.akr2013-06-222-2/+12
| | | | | | | | | | | (RSHIFTX): Ditto. (CLEAR_LOWBITS): Use LSHIFTX and RSHIFTX. (FILL_LOWBITS): Use LSHIFTX. Reported by ko1 via IRC. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41554 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Imported minitest 4.7.5 (r8724)ryan2013-06-224-17/+23
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41553 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (gc_prof_set_heap_info, after_gc_sweep): callko12013-06-212-29/+49
| | | | | | | | | | | | | | | gc_prof_set_heap_info() just after sweeping to calculate live object number correctly. (live object number = total generated number (before marking) - total freed number (after sweeping)) * gc.c (gc_marks): record `oldgen_object_count' into current profile` record directly. * gc.c (rgengc_rememberset_mark): same for remembered_normal_objects and remembered_shady_objects. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41552 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (rb_objspace::profile): rename rb_objspace::profile::record toko12013-06-212-45/+51
| | | | | | | | | | | records (because it points a set of records) and add a field rb_objspace::profile::current_record to point a current profiling record. * gc.c: use above fields. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41551 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (rb_gc_giveup_promoted_writebarrier): remove `rest_sweep()'ko12013-06-212-7/+5
| | | | | | | | because all of remembered objects are called for gc_mark_children(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41550 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (rgengc_rememberset_mark): call gc_mark_children() forko12013-06-212-2/+8
| | | | | | | | remembered objects directly instead of pushing on the mark stack. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41549 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * include/ruby/ruby.h (OBJ_WRITE): cast to (VALUE *) for secondko12013-06-2111-43/+51
| | | | | | | | | | parameter `slot'. You don't need to write a cast (VALUE *) any more. * class.c, compile.c, hash.c, iseq.c, proc.c, re.c, variable.c, vm.c, vm_method.c: remove cast expressions for OBJ_WRITE(). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41548 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * gc.c (slot_sweep_body): rename to slot_sweep().ko12013-06-212-53/+21
| | | | | | | | | | No need to separate major/minor GC. * gc.c (gc_setup_mark_bits): remove gc_clear_mark_bits() and unify to this function. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@41547 b2dd03c8-39d4-4d8f-98ff-823fe69b080e