Proposal: merge x64-mswin64 port

e$B$3$s$K$A$O!"$J$+$`$ie(B(e$B$&e(B)e$B$G$9!#e(B

e$B$@$i$@$i$H;~4V$r$+$1$F:n6H$7$F$-$^$7$?$,!"$I$&$d$iL=h$,N)$Ce(B
e$B$?$N$G!"I=Bj$NDL$j!"e(Bx64e$BHGe(BWindowse$B8~$1e(Bporte$B$re(Btrunke$B$K%^!<%8$7$?$$e(B
e$B$H;W$$$^$9!#e(B
e$BDs0F;v9`$dEve(Bporte$B$NFCD’$J$I$O0J2<$NDL$j$G$9!#e(B

= e$BDs0F;v9`e(B

e$B%a%s%F%J$Oe(BIA32e$BHGe(BWindowse$B8~$1e(Bport(mswin32)e$B$HF1$8$/;de(B

e$B%=!<%9%3!<%I$Oe(Bmswin32e$BHG$H$[$\6&DL$J$N$G!"?7$?$Ke(Bwin64e$B$H$+$$e(B
e$B$&%G%#%l%/%H%j$r@_$1$k$3$H$O$;$:!"8=9T$Ne(Bwin32e$B%G%#%l%/%H%j0Je(B
e$B2<$rMQ$$$ke(B

  • RUBY_PLATFORMe$B$Oe(Bx64-mswin64

e$BEvLL$O<B83E*e(Bporte$B07$$!#e(B1.9.1e$B%j%j!<%9$^[email protected]$r8~>e$5$;$ke(B

= e$BFCD’e(B

  • e$B%?!<%2%C%H$H$J$ke(BOSe$B$Oe(BWindows XP x64 Editione$B!“e(BWindows
    2003 Server
    x64 Edition(e$B$H$=$Ne(Bvariant)e$B!”$?$V$se(BWindows Vista x64
    Editione$B!"e(B
    e$B$?$V$se(BWindows 2008 Server x64 Edition

  • e$B%/%m%9%3%s%Q%$%ke(B(32bit
    Windowse$B>e$G$N%3%s%Q%$%ke(B)e$B$O$5$7$"$?$Ce(B
    e$B$F$O%5%]!<%H$7$J$$e(B

  • mswin32e$BHG$HHf$Y$F!"Ev<RHfLse(B2e$BG$N%a%b%j>CHq$r8X$ke(B

Fixnume$B$NI}$,e(B31bit(e$BId9fe(Bbite$B4^$`e(B)e$B$N$^$^$J$N$G!"e(B64bite$B2=$Ge(BVALUE
e$B$,3HBg$5$l$?$3$H$K$h$k%a%j%C%H$r2ZNo$K%9%k!<e(B

e$BF0:nB.EY$O;HMQ$G$-$k%l%8%9%?$,A}$($?J,$@$1e(Bmswin32e$BHG$h$j<c43e(B
e$B8~>e$7$F$k$s$8$c$J$$$+$H;W$&$1$IL$7WB,e(B

  • e$B$@$$$?$$F0$$$F$k$1$I$?$V$s$^$@$^$@%P%0$@$i$1e(B

e$B$3$s$J46$8$J$s$G$9$,!"F~$l$A$c$C$F$$$$$G$7$g$&$+e(B?
e$B$h$1$l$P:#=5Cf$/$i$$$rL=h$K:n6H$7$^$9!#e(B

e$B$=$l$G$O!#e(B

e$B$^$D$b$He(B e$B$f$-$R$m$G$9e(B

In message “Re: [ruby-dev:31060] proposal: merge x64-mswin64 port”
on Tue, 26 Jun 2007 16:53:37 +0900, “U.Nakamura”
[email protected] writes:

|e$B$3$s$J46$8$J$s$G$9$,!"F~$l$A$c$C$F$$$$$G$7$g$&$+e(B?
|e$B$h$1$l$P:#=5Cf$/$i$$$rL=h$K:n6H$7$^$9!#e(B

e$B$$$$$s$8$c$J$$$G$7$g$&$+!#e(BFixnume$B$,e(B31bite$B$O$A$g$C$H$b$C$?$$$Je(B
e$B$$$s$G$9$,!“$^$”!“2a5n$N5DO@$r9M$($k$H$”$kDxEY$O$7$g$&$,$J$$e(B
e$B$+$b$7$l$^$;$s$M!#e(B

e$B$3$s$K$A$O!"$J$+$`$ie(B(e$B$&e(B)e$B$G$9!#e(B

In message “[ruby-dev:31061] Re: proposal: merge x64-mswin64 port”
on Jun.26,2007 17:08:05, [email protected] wrote:
| e$B$$$$$s$8$c$J$$$G$7$g$&$+!#e(BFixnume$B$,e(B31bite$B$O$A$g$C$H$b$C$?$$$Je(B
| e$B$$$s$G$9$,!“$^$”!“2a5n$N5DO@$r9M$($k$H$”$kDxEY$O$7$g$&$,$J$$e(B
| e$B$+$b$7$l$^$;$s$M!#e(B

e$BF~$l$^$7$?!#e(B

x64e$BHG$Ne(BWindowse$B$rF0$+$7$F$$$F!"e(Bx64e$BHG%3!<%I$rEG$/e(Bcl.exee$B$,F0$/>ue(B
e$BBV$G!“e(B
win32/configure.bat --target=x64-mswin64
nmake
e$B$H$9$k$3$H$K$h$C$Fe(Bx64-mswin64e$BHGe(BRubye$B$,:n@.$G$-$^$9!#e(B
bteste$B$*$h$Se(Bteste$B$O40Av$7$^$9e(B(teste$B$Oe(Bmswin32e$B$HF1?t$Ne(Bfailede$B$,=P$ke(B)e$B!#e(B
test-alle$B$O40Av$7$^$;$s$,!”$3$l$Oe(Bmswin32e$B$bF1$8$J$N$G$$A$$A$H!#e(B

e$B$;$C$+$/$J$N$Ge(BYARVe$B%Y%s%A$GF10l>r7o$G:n@.$7$?e(Bmswin32e$B$He(Bmswin64
e$B$NF0:nB.EY$rHf3S$7$F$_$^$7$?!#e(B
e$B:8$,e(Bmswin32e$B!"1&$,e(Bmswin64e$B$N7k2L$G$9!#e(B
e$B0lIt$r=|$1$P$@$$$?$$B.EY$O8~>e$9$k$h$&$G$9!#e(B

e$B$7$+$7$J$<e(Bpentominoe$B$O$3$s$J$KCY$$$s$@e(B…

– benchmark summary ---------------------------
app_answer 0.328 0.219
app_factorial 0.906 0.438
app_fib 2.719 2.625
app_mandelbrot 2.078 1.781
app_pentomino 62.062 155.547
app_raise 3.891 3.609
app_strconcat 1.171 1.000
app_tak 3.579 3.500
app_tarai 2.875 2.750
loop_times 4.578 4.234
loop_whileloop 3.578 3.547
loop_whileloop2 0.828 0.735
so_ackermann 3.062 3.125
so_array 4.812 4.094
so_concatenate 1.594 1.140
so_count_words 1.125 0.985
so_exception 6.000 4.532
so_lists 1.203 0.907
so_matrix 1.594 1.281
so_nested_loop 4.406 4.204
so_object 11.235 6.171
so_random 0.985 1.015
so_sieve 0.438 0.297
vm1_block 9.562 9.672
vm1_const 5.328 5.297
vm1_ensure 3.578 3.547
vm1_length 6.406 6.516
vm1_rescue 4.672 4.718
vm1_simplereturn 7.657 7.593
vm1_swap 4.844 4.828
vm2_array 5.844 3.578
vm2_method 7.219 7.234
vm2_poly_method 8.891 8.594
vm2_poly_method_ov 1.671 1.610
vm2_proc 2.797 2.593
vm2_regexp 3.610 3.437
vm2_send 1.844 1.719
vm2_super 2.297 2.235
vm2_unif1 1.750 1.672
vm2_zsuper 2.469 2.422
vm3_thread_create_join 0.375 0.344

e$B$=$l$G$O!#e(B