Develop and Download Open Source Software

Browse Subversion Repository

Contents of /branches/mty-makai/RELEASE-NOTES-x64-utf8.txt

Parent Directory Parent Directory | Revision Log Revision Log


Revision 192 - (show annotations) (download)
Mon May 26 06:29:35 2008 UTC (15 years, 10 months ago) by notanpe
File MIME type: text/plain
File size: 2915 byte(s)
シーズン 2 に向けて
1 まあ、待て屋。(64ビット版)
2 Thu 23 Aug 2007
3
4
5 * パフォーマンスに関するメモ
6
7 AMD64 では、ALU 版の方が速いです。
8 Core2 マイクロアーキテクチャでは、やはり XMM 版の方が速いです。
9
10
11
12 * いじりかた
13
14 ** Windows の場合
15
16 現時点では64ビットアプリ作成環境が限られています。
17 そのうち非 MSFT 環境でビルドできるようになるといいなと希望を持ってます。
18 私は Visual Studio 8 を使ってみました。
19 参考までに、200509版は、MSFT 配布の VC Toolkit 2003 を利用していました。
20
21 プリプロセッサシンボル USE_64_XMM(SSE2版) もしくは USE_64 (ALU版) を
22 定義すればコンパイルできます。
23 ただし、ソース構成の都合上、crypt64.S は手動で行います。
24 以前私は yasm を用いました。
25
26 http://www.tortall.net/projects/yasm/
27
28 1) プリプロセッサを通します。私はメンドくさいので GCC に行わせました。
29
30 $ gcc -DUSE_64_XMM -E crypt64.S -o crypt64.asm
31
32 2) 中間ファイル crypt64.asm を手で修正します。現時点の yasm は
33 gas 完全コンパチではないので、以下の作業を行う必要があるようです。
34
35 -- .if から .endif を手動で切り取る
36 -- セミコロン ; はコメント開始として扱われてしまうので、手で改行に置換。
37
38 3) アセンブル
39
40 $ yasm -f win64 -p gas -m amd64 crypt64.asm -o crypt64.obj
41
42 以上の作業を行わせる Perl スクリプトの断片を以下に示します。FYI.
43
44 open($F1, "gcc -DUSE_64_XMM -E crypt64.S |");
45 open($F2, "| gcc -E - | ./yasm -f win64 -p gas -m amd64 - -o crypt64.obj -l crypt64.lst");
46 while (<$F1>)
47 {
48 s/\.if/#if/g;
49 s/\.else/#else/g;
50 s/\.endif/#endif/g;
51 s/;/\n/g;
52 print $F2 $_;
53 }
54
55 最近は、 GNU binutils の x86_64-pc-mingw32-as を作って crypt64.obj などをつくっています。
56 http://www.mingw.org/ を見ても、x64 サポートの日は近そうです。
57
58 また、expr_parse.y, expr_scan.lex は、Cygwin に処理させました。
59
60 実行ファイルをインストール不要で再配布可能にするためには、ライブラリを
61 静的リンクする必要があります。Vista x64 付属のランタイム DLL は早くも
62 古くなってしまったようです。
63
64
65 ** Linux など、POSIX 準拠 OS の場合
66
67 シンボル USE_64_XMM もしくは USE_64 を定義の上コンパイルしてください。
68 (てぬき)
69 Suse 9.0 にてコンパイルおよび動作確認していた時期も、私にはありましたが、
70 SOURCEFORGE.JP の AMD64 庭がとんでしまったので、ノーチェックです。
71 ただ、最近でも枝分かれした兄弟のコードを ppc64-linux にて
72 コンパイルできているので、大きな障壁はなさそうです。
73
74
75
76 * How to contact me
77
78 mailto:chapuni@users.sourceforge.jp
79
80
81 *EOF

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Rev URL

Back to OSDN">Back to OSDN
ViewVC Help
Powered by ViewVC 1.1.26