[#43284] [Ruby 1.9 - Bug #4456] [Open] Time#strftime で %F 指定子に大きな幅を指定した際の不具合 — tadayoshi funaba <redmine@...>

14 messages 2011/03/02

[#43317] [Ruby 1.9 - Bug #4474][Open] 複数のスレッドからトランザクションに入ろうとした場合のPStoreの挙動 — Masaki Matsushita <redmine@...>

9 messages 2011/03/06

[#43327] [Ruby 1.9 - Feature #4483][Open] PStoreをデフォルトで複数のスレッドから扱えるようにしたい — Masaki Matsushita <redmine@...>

10 messages 2011/03/08

[#43365] [Ruby 1.9 - Bug #4536][Open] 定数参照について1.8と1.9の違い — Yukihiro Matsumoto <matz@...>

11 messages 2011/03/29

[ruby-dev:43314] Re: iseq_compile_each()でのマジックナンバ

From: SASADA Koichi <ko1@...>
Date: 2011-03-06 03:28:25 UTC
List: ruby-dev #43314
 ささだです.

 この辺のコードを久々に見ました.


(2011/03/06 11:25), きたざわけんいち wrote:
> Index: vm_core.h
> ===================================================================
> --- vm_core.h	(リビジョン 31028)
> +++ vm_core.h	(作業コピー)
> @@ -583,6 +583,12 @@
>  #define RUBYVM_CFUNC_FRAME_P(cfp) \
>    (VM_FRAME_TYPE(cfp) == VM_FRAME_MAGIC_CFUNC)
> 
> +/* vm_throw state */
> +#define VM_THROW_GET_DFP	0x8000

 これ,何やってるんでしたっけ.コード見たけど思い出せない....なんか,
これが設定されていると,逆に dfp を見ていないような.

> +#define VM_THROW_STATE_MASK 0xff
> +#define VM_THROW_LVL_SHIFT	16
> +#define VM_THROW_LEVEL(s) (s >> VM_THROW_LVL_SHIFT)

 lvl って level でしょうか.

> Index: compile.c
> ===================================================================
> --- compile.c	(リビジョン 31028)
> +++ compile.c	(作業コピー)
> @@ -15,6 +15,7 @@
>  #define USE_INSN_STACK_INCREASE 1
>  #include "vm_core.h"
>  #include "iseq.h"
> +#include "eval_intern.h"

 なぜ,eval_intern.h を include しているんでしょうか.TAG_BREAK とかを
見るためかな.私はなぜここを即値にしたんだろう.include したくなかったか
らかなぁ.

-- 
// SASADA Koichi at atdot dot net

In This Thread