[Momonga-devel.ja:01367] gcc-3.2.2 build problem on ppc


かずひこです。

さきほどコミットされたばかりの gcc-3.2.2-1m を ppc でビルドしたら、

gcc -c -DIN_GCC    -g  -W -Wall -Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes -Wtraditional -pedantic -Wno-long-long  -DHAVE_CONFIG_H    -I. -I. -I../../gcc -I../../gcc/. -I../../gcc/config -I../../gcc/../include ../../gcc/protector.c -o protector.o
../../gcc/protector.c: In function `rtl_epilogue':
../../gcc/protector.c:774: warning: implicit declaration of function `direct_return'
../../gcc/protector.c:1947:3: attempt to use poisoned "bzero"
make[2]: *** [protector.o] Error 1

というエラーになりました。これは、「今時 bzero なんか使っちゃだめよ?」
という意味なのでしょうか?

--- gcc-3.2.2/gcc/protector.c~	2003-01-10 10:20:36.000000000 +0900
+++ gcc-3.2.2/gcc/protector.c	2003-02-08 21:40:50.000000000 +0900
@@ -1944,7 +1944,7 @@
 {
   /* init fp_equiv */
   fp_equiv = (int *) alloca (max_reg_num () * sizeof (int));
-  bzero ((char *) fp_equiv, max_reg_num () * sizeof (int));
+  memset ((char *) fp_equiv, 0, max_reg_num () * sizeof (int));
 		
   for (; insn; insn = NEXT_INSN (insn))
     if (GET_CODE (insn) == INSN || GET_CODE (insn) == JUMP_INSN

とやったら protector.c のコンパイルは通ったのですが、こういう修正でいい
のでしょうか?
ただ、ix86 だとこんなことしなくてもコンパイルできていますし、もしパッチ
をあてるとしても
%ifarch ppc
%endif
で囲っておいた方がいいのでしょうか?

なお、ppc での ssp は、かつて試したときに挙動不審すぎた (猛烈な速度低下
だったかな?) ために、pkgs/rpmrc の optflags では今のところ使っていませ
ん。そういう意味では ppc では
%define with_ssp 0
としてしまってもいいのですが、どうしましょう。

すみませんが、どなたかアドバイスくださると幸いです。
-- 
かずひこ <http://www.fdiary.net/~kazuhiko/diary/>
  ★シャア「名字が付いてない」
  ☆一兵卒「あんなの飾りです。偉い人にはそれが分からんのです」