Age | Commit message (Collapse) | Author |
|
Using 8K stack is probably too much. As reference, ALLOCV falls
back to heap allocation at a mere 1K. Since
bsock_recvmsg_internal is a function which will always allocate
and can trigger GC, it is in our best interest to minimize
stack usage to avoid scanning 8K of stack on GC.
[ruby-core:69595] [Feature #11263]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51003 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* error.c (name_err_receiver): raise ArgumentError if no receiver
is available on this exception object. [Feature #10881]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51002 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
volatile is unnecessary since we use rb_sys_fail_path nowadays
and that prevents the path argument from being GC-ed.
Using a return value instead of modifying the argument directly
simplifies the generated code (on 32-bit x86):
text data bss dec hex filename
20744 40 20 20804 5144 dir.o-orig
20720 40 20 20780 512c dir.o
* dir.c (check_dirname): avoid volatile, use return value
(dir_s_chroot, dir_s_mkdir, dir_s_rmdir): adjust callers
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51000 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Since getting Qnil is already error, it is safe to use rb_attr_get.
* struct.c (struct_ivar_get): cache member definition in a subclass
Thanks to Sokolov Yura aka funny_falcon <funny.falcon@gmail.com>
in https://bugs.ruby-lang.org/issues/10585
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* benchmark/bm_vm2_struct_big_href_hi.rb: new benchmark
* benchmark/bm_vm2_struct_big_href_lo.rb: ditto
* benchmark/bm_vm2_struct_big_hset.rb: ditto
* benchmark/bm_vm2_struct_small_href.rb: ditto
* benchmark/bm_vm2_struct_small_hset.rb: ditto
Thanks to Sokolov Yura aka funny_falcon <funny.falcon@gmail.com>
in https://bugs.ruby-lang.org/issues/10585
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50996 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50995 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
because it has been meaningless since r36385. [Bug:11288]
* test/lib/test/unit.rb (Test::Unit::Parallel#_run_parallel): delete
lines related to the removed start_watchdog method
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50994 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50990 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50989 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* internal.h (roomof): extract from type_roomof, and move from
bignum.c.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50986 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ruby_atomic.h (ATOMIC_PTR_CAS): define by generic CAS macro, not
via size_t, to suppress a warning by mingw gcc.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50984 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
passed object is a special const, instead of SEGV.
Based patch by Kohei Suzuki (eagletmt). [ruby-core:69692] [Bug #11291]
* test/objspace/test_objspace.rb(test_dump_special_consts): Test for above fix.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50980 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
not include encinit.c itself. It caused "undefined reference to
Init_encinit".
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50978 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
to generate envp_str anytime on Solaris 10 (or earlier version
of Solaris) to avoid calling execv() which is async-signal unsafe
on Solaris 10. [Bug #11265] [ruby-dev:49089]
* process.c (exec_with_sh, proc_exec_cmd): On Solaris 10,
because ALWAYS_NEED_ENVP is 1 and envp_str is always generated,
execv() in exec_with_sh() and proc_exec_cmd() are never called.
To guarantee this, execv() is replaced by a macro to print
out error message on Solaris 10.
* process.c (proc_exec_sh): Because proc_exec_sh() may be called
by rb_proc_exec() with envp_str = Qfalse, execl() is replaced
by a macro that calls execle() with "extern char **environ"
traditional global variable on Solaris 10.
TODO: This may be unsafe and sholud be changed
in the future.
Although rb_proc_exec() is not used from inside current version
of ruby, it may be called by third-party extensions.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50977 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50975 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* proc.c (rb_mod_define_method): now requires a block direct to
this method call. [ruby-core:69655] [Bug #11283]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50971 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* proc.c (rb_mod_define_method): get rid of inadvertent ID
creations at error.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50969 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50967 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/extmk.rb: if no with-ext option is given, dafault to
enable everything. [ruby-dev:49108] [Bug #11280]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50966 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
obsolete.
Please check btest, too.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50963 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50962 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
[ci skip]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50961 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/extmk.rb: configure intersection of with-ext and not
without-ext, as withouts is no longer true by default if
with-ext option is given. [ruby-dev:49108] [Bug #11280]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50959 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* dir.c, ext/fiddle/handle.c, ext/socket/basicsocket.c, file.c
gc.c, io.c, process.c, safe.c, signal.c, win32/file.c:
removed code for $SAFE=2
* test/erb/test_erb.rb, test/fiddle/test_handle.rb
test/ruby/test_env.rb: removed tests for $SAFE=2.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50958 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50952 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
Not sure what drugs I was on, but blindly sleeping instead of
using IO#wait or IO.select to wait for data on a socket is
completely wrong.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50951 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
`me' knows ID and owner class.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50950 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
rb_method_refined_struct::orig_me.
* class.c (move_refined_method): use RB_OBJ_WRITE() for
me->def->body.refined.orig_me.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50948 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* error.c (name_err_receiver): add NameError#receiver method.
[Feature #10881]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50945 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50944 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50943 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* compile.c (get_exception_sym2type, iseq_build_from_ary_body):
rely on %+PRIsVALUE instead of calling rb_inspect directly
This yields a minor size reduction on 32-bit x86:
text data bss dec hex filename
96807 772 48 97627 17d5b compile.o
96851 772 48 97671 17d87 compile.orig
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50940 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50939 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* common.mk (ENC_MK): needs fake.rb if cross compilation.
[ruby-dev:49098] [Bug #11272]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50937 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50936 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50934 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
$SAFE=3 after it's removed.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50933 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* ext/socket/init.c, ext/socket/socket.c, ext/socket/tcpsocket.c
ext/socket/udpsocket.c, gc.c, object.c, re.c, safe.c: removed code
for $SAFE=3
* bootstraptest/test_method.rb, test/erb/test_erb.rb, test/ruby/test_dir.rb
test/ruby/test_file.rb, test/ruby/test_method.rb, test/ruby/test_regexp.rb
test/ruby/test_thread.rb: remove tests for $SAFE=3
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50932 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50931 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
[Feature #11267][ruby-dev:49091]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50929 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
* lib/rdoc/servlet.rb (documentation_search, root_search):
requires json for JSON.dump and fix sporadic failures due to
the loading order.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50928 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50921 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
and x86_64 ABI.
* template/sizes.c.tmpl: Relax a pattern for types.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50920 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50915 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|
|
flag and marked flag can be false at major GC.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50914 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
|