From: Takaaki Tateishi Date: 2002-08-05T22:11:55+09:00 Subject: [ruby-dev:17928] Re: ruby-bugs-ja incoming/277 At Mon, 5 Aug 2002 19:15:25 +0900, > うーん、e_scriptがどこに割り当てられてるのか分かりますか? でき > ればload_libraries()前後のアセンブラコードがあると分かりやすい > んですが。 以下のようなものでよいのでしょうか? 全く自信ないので,ruby.cを以下の通りにしてアセンブラに直したものを http://kt-www.jaist.ac.jp/~ttate/ftp/ruby.s.gz においておきます. gcc -S -g -OO2 fPIC -I. -I.. -c ../ruby.c # require_libraries()でしたね. .L233: .loc 1 713 0 movl %eax, (%esp) call ruby_script@PLT .loc 1 714 0 movl 12(%ebp), %edx movl 8(%ebp), %eax movl %edx, 4(%esp) movl %eax, (%esp) call ruby_set_argv@PLT .loc 1 715 0 call process_sflag .loc 1 717 0 call ruby_init_loadpath@PLT .loc 1 718 0 movl -32(%ebp), %ecx movl %ecx, (%esp) call rb_source_filename@PLT movl ruby_sourcefile@GOT(%ebx), %edx movl %eax, (%edx) .loc 1 719 0 movl -52(%ebp), %eax testl %eax, %eax jne .L276 .loc 1 723 0 movl script@GOTOFF(%ebx), %esi movl %esi, (%esp) call strlen@PLT decl %eax je .L277 (省略) .L277: .LBB20: cmpb $45, (%esi) jne .L244 .loc 1 724 0 call load_stdin jmp .L243 .loc 1 720 0 .L276: call require_libraries .loc 1 721 0 movl $1, 8(%esp) movl -52(%ebp), %esi movl script@GOTOFF(%ebx), %eax movl %esi, 4(%esp) movl %eax, (%esp) call rb_compile_string@PLT jmp .L243 -- Takaaki Tateishi