[Message Prev][Message Next][Thread Prev][Thread Next][Message Index][Thread Index]
[MD:7400] pdump 削除
- X-ml-count: 7400
- Subject: [MD:7400] pdump 削除
- From: "M.Fujii" <boochang@xxxxxxxxxxxx>
- Date: Sat, 22 Jul 2006 14:49:34 +0900 (JST)
- X-mailer: Mew version 4.2 on Emacs 22.0.50 / Mule 5.0 (SAKAKI)
藤井です。
pdump 関連コードの削除を行ないました。
とりあえず以下の環境で動いています。
OS: Windows 2000 sp4
Compiler: Cygwin gcc or MS VS.NET 2003(MSVC 7.1)
ビルドはフルビルドが必要になります。
- configure.meadow.bat の実行
- make bootstrap (nmake bootstrap)
- make install (nmake install)
他の OS (特に Win9X 系)やコンパイラでの動作を確認いただけると助かります。
なお、削除前のコードのスナップショットを tags/BEFORE-NO-PDUMP に、削除
後のスナップショットを tags/AFTER-NO-PDUMP に置いています。
以下、今回の変更内容のサマリです。
<<変更概要>>
(1) mw32mem.c の廃止、および w32heap.c と unexw32.c の復活。
(2) エントリポイントの変更(mw32_start:mw32mem.c -> _start:unexw32.c)
(3) pdump 関連コードの削除(alloc.c, emacs.c など多数)
(4) [MD:6474] の Lisp_Float, Lisp_Cons の下記未マージ分のマージおよび、
仮対処コードの削除
From: MIYOSHI Masanori <miyoshi@xxxxxxxxxxx>
> 以下、問題があってマージしていない部分に関するメモです。
>
> o Lisp_Float と Lisp_Cons に GC 用のマークビットを仮に追加
> (lisp.h)。pdump の実装を容易にするため。これらの両オブジェクトの
> マークビットは下記のようにオブジェクトの外部に移動された。この変
> 更に、pdumper を対応させるのは面倒(というかよく分からん)だったの
> で、このように仮に対処。
>
> alloc.c:
> > struct float_block
> > {
> > /* Place `floats' at the beginning, to ease up FLOAT_INDEX's job. */
> > struct Lisp_Float floats[FLOAT_BLOCK_SIZE];
> > int gcmarkbits[1 + FLOAT_BLOCK_SIZE / (sizeof(int) * CHAR_BIT)];
> > struct float_block *next;
> > };
(5) [MD:6498] での pdump 8 バイトアライメント対応のコード削除
(6) PURESIZE の調整
(PURESIZE を直接変更するのではなく、src/s/ms-w32.h の
SYSTEM_PURESIZE_EXTRA を変更)
(7) reinit_* の処理を呼び出し元に移動
# このあたりの変更は元々 #ifdef なしで変更が入っていたため、
# どこまでが pdump 関連の変更か判別できていません。
# 今回の修正で余計なことをしているかもしれません。
(8) dump.bat の変更
(9) makefile の変更
- (2) のエントリポイント変更への対応
- ビルドに addsection.exe が必要になるので、makefile に追加
- meadow.dmp についてのルールを削除。
- -nd オプション廃止にともなう修正
--
藤井 正行 / Masayuki FUJII