yarv-dev:1107
From: SASADA Koichi <ko1 atdot.net>
Date: Tue, 14 Nov 2006 11:29:10 +0900
Subject: [yarv-dev:1107] Re: merge with YARV
ささだです。 Tadashi Saito wrote: > 極めてどうでもいいことなんですが、忘れないうちに。 いや、全然どうでもよくありませんでした。ありがとうございます。なんでい ままで動いてたんだろう(テヘ)。 > yarvcore.hで > - GCCじゃないときのUNLIKELY()が非常にまずそうです。LIKELY()も同様のスタ > イルにしました(意図があったらごめんなさい) > - __builtin_expect()はGCC3かららしいので > http://gcc.gnu.org/gcc-3.0/features.html > チェックするようにしました いやー、ほんと、なんで動いてたんでしょうねえ。VC で。 > それで疑問はvm.hで > - 131行目 > > #if __GNUC__ && (__i386__ || __x86_64__) && __GNUC__ == 3 > の最後って、>= 3 でも可ではないのでしょうか? (or bug of 4.x?) > - 同じく143行目 > > #if OPT_DIRECT_THREADED_CODE > の下に > > /* for GCC 3.4.x */ > とあるので、ifに > && (__GNUC__ > 3 || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4)) > とか加えちゃった方がいいでしょうか。 > - #if __GNUC__ と #ifdef __GNUC__ を書き分けている理由が分からなくて > ごめんなさい。 > (古いコンパイラって前者を受け入れないのがあったんでしょうか?) これは、4 を見ていない時期に、それぞれのコンパイラのバージョンによって 意図しないコードが出たり出なかったりしたので、その辺をちょこちょこ弄って いたからでした。多分、前者は >= 3 なんだと思います。後者はちょっとわから ない。 #if __GNUC__ と #ifdef __GNUC__ って、どっちがいいんでしょうね。あまり 考えずに使っていました。 -- // SASADA Koichi at atdot dot net -- ML: yarv-dev quickml.atdot.net Info: http://www.atdot.net/~ko1/quickml
1097 2006-11-04 00:44 [ko1 atdot.net ] merge with YARV 1105 2006-11-10 01:10 ┗[shiba mail2.accsnet.] -> 1107 2006-11-14 11:29 ┗[ko1 atdot.net ]