[前][次][番号順一覧][スレッド一覧][生データ]

ruby-cvs:16213

From: (akr) <akr ruby-lang.org>
Date: Tue, 27 Dec 2005 14:40:06 +0900
Subject: [ruby-cvs:16213] ruby: * configure.in: define IA64 for portability. (HP aC++/ANSI C doesn't

akr         Tue, 27 Dec 2005 14:40:06 +0900

  Modified files:
    ruby:
      ChangeLog common.mk configure.in defines.h eval.c gc.c main.c
      numeric.c ruby.h
  Added files:
    ruby:
      ia64.s
  Log:
    * configure.in: define IA64 for portability.  (HP aC++/ANSI C doesn't
      define __ia64__.)
      don't check libunwind stuff.
      check __libc_ia64_register_backing_store_base.
    
    * defines.h: declare rb_ia64_bsp and rb_ia64_flushrs.
      (flush_register_windows): call rb_ia64_flushrs on IA64.
    
    * ia64.s: new file for IA64.
      it is separated from C program files because
      Intel C++ Compiler for IA64 doesn't support inline assembly.
    
    * common.mk (ia64.$(OBJEXT)): new target.
    
    * ruby.h (RUBY_INIT_STACK): defined.
      (ruby_init_stack): declared for RUBY_INIT_STACK.
    
    * main.c (main): precedes RUBY_INIT_STACK before ruby_init.
    
    * gc.c (rb_gc_register_stack_start): new global variable on IA64.
      (garbage_collect): simplify register stack marking code.
      don't use libunwind.
      (Init_stack): initialize rb_gc_register_stack_start.
      (ruby_init_stack): new function for RUBY_INIT_STACK.
    
    * eval.c (struct thread): add bstr_pos member for original position of
      register stack.
      (rb_thread_save_context): simplify register stack saving code.
      don't use libunwind.
      (rb_thread_restore_context_0): new function.  moved from
      rb_thread_restore_context except the stack position checking code.
      don't use libunwind for IA64 register stack.
      (register_stack_extend): new function.
      (stack_extend): make it self-recursive with
      the stack position checking code in old rb_thread_restore_context.
      (rb_thread_restore_context): just call stack_extend.
      (flush_register_windows): removed.
  
  Revision    Changes    Path
  1.4865      +40  -0    ruby/ChangeLog
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ChangeLog?cvsroot=src&r1=1.4864&r2=1.4865
  1.22        +1   -0    ruby/common.mk
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/common.mk?cvsroot=src&r1=1.21&r2=1.22
  1.293       +11  -13   ruby/configure.in
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/configure.in?cvsroot=src&r1=1.292&r2=1.293
  1.48        +4   -3    ruby/defines.h
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/defines.h?cvsroot=src&r1=1.47&r2=1.48
  1.858       +87  -96   ruby/eval.c
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/eval.c?cvsroot=src&r1=1.857&r2=1.858
  1.224       +64  -43   ruby/gc.c
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/gc.c?cvsroot=src&r1=1.223&r2=1.224
  1.1         -ADDED-    ruby/ia64.s
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ia64.s?cvsroot=src&rev=1.1
  1.17        +6   -3    ruby/main.c
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/main.c?cvsroot=src&r1=1.16&r2=1.17
  1.133       +4   -0    ruby/numeric.c
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/numeric.c?cvsroot=src&r1=1.132&r2=1.133
  1.128       +11  -0    ruby/ruby.h
    http://www.ruby-lang.org/cgi-bin/cvsweb.cgi/ruby/ruby.h?cvsroot=src&r1=1.127&r2=1.128


[前][次][番号順一覧][スレッド一覧][生データ]