Summary: | editors/emacs : byte-compile-file fails on ia64 6-current | ||
---|---|---|---|
Product: | Ports & Packages | Reporter: | Yasuhiro Kimura <yasu> |
Component: | Individual Port(s) | Assignee: | MANTANI Nobutaka <nobutaka> |
Status: | Closed FIXED | ||
Severity: | Affects Only Me | ||
Priority: | Normal | ||
Version: | Latest | ||
Hardware: | Any | ||
OS: | Any |
Description
Yasuhiro Kimura
2005-01-05 00:20:25 UTC
Responsible Changed From-To: freebsd-ports-bugs->nobutaka Over to editors/emacs-maintainer I found emacs build on ia64 shows following strange warning: gcc -c -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib -Demacs -DHAVE_CONFIG_H -I. -I/q/scratch/yoichi/emacs-21.3/src -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib -g -O2 buffer.c buffer.c: In function `Fset_buffer_multibyte': buffer.c:2089: warning: comparison is always true due to limited range of data type /var/tmp//cc673udc.s: Assembler messages: /var/tmp//cc673udc.s:24790: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' (impliedf), specific resource number is 14 /var/tmp//cc673udc.s:24790: Warning: Only the first path encountering the conflict is reported /var/tmp//cc673udc.s:24789: Warning: This is the location of the conflicting usage I think it is a gcc bug. I confirmed that emacs compiled without -O2 optimization flag does't show the problems. Fix: compile buffer.c (or entire emacs) without -O2 flag on ia64 as a workaround -- Yoichi NAKAYAMA At Wed, 04 May 2005 07:42:11 +0900, Yoichi Nakayama wrote: > I found emacs build on ia64 shows following strange warning: > > gcc -c -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib -Demacs -DHAVE_CONFIG_H -I. -I/q/scratch/yoichi/emacs-21.3/src -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib -g -O2 buffer.c > buffer.c: In function `Fset_buffer_multibyte': > buffer.c:2089: warning: comparison is always true due to limited range of data type > /var/tmp//cc673udc.s: Assembler messages: > /var/tmp//cc673udc.s:24790: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' (impliedf), specific resource number is 14 > /var/tmp//cc673udc.s:24790: Warning: Only the first path encountering the conflict is reported > /var/tmp//cc673udc.s:24789: Warning: This is the location of the conflicting usage > > I think it is a gcc bug. I confirmed that emacs compiled > without -O2 optimization flag does't show the problems. I tried with newer gcc by rms's suggestion, and observed that the problem seems to be fixed in it: pluto1:/p/scratch/yoichi/emacs-21.3/src[199]% make CC=/p/scratch/yoichi/ports/gcc41/work/build/gcc/xgcc buffer.o /p/scratch/yoichi/ports/gcc41/work/build/gcc/xgcc -c -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib -Demacs -DHAVE_CONFIG_H -DUSE_LUCID -I. -I/p/scratch/yoichi/emacs-21.3/src -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib -I/usr/X11R6/include -g -O2 buffer.c buffer.c: In function 'Fset_buffer_major_mode': buffer.c:1461: warning: pointer targets in passing argument 1 of 'strcmp' differ in signedness buffer.c: In function 'Fset_buffer_multibyte': buffer.c:2089: warning: comparison is always true due to limited range of data type buffer.c: In function 'init_buffer': buffer.c:4949: warning: pointer targets in passing argument 2 of 'strcmp' differ in signedness pluto1:/p/scratch/yoichi/emacs-21.3/src[200]% rm buffer.o remove buffer.o? y pluto1:/p/scratch/yoichi/emacs-21.3/src[201]% make buffer.o gcc -c -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib -Demacs -DHAVE_CONFIG_H -DUSE_LUCID -I. -I/p/scratch/yoichi/emacs-21.3/src -I/usr/X11R6/include -I/usr/local/include -L/usr/local/lib -I/usr/X11R6/include -g -O2 buffer.c buffer.c: In function `Fset_buffer_multibyte': buffer.c:2089: warning: comparison is always true due to limited range of data type /var/tmp//ccRc1udt.s: Assembler messages: /var/tmp//ccRc1udt.s:24790: Warning: Use of 'mov' may violate WAW dependency 'GR%, % in 1 - 127' (impliedf), specific resource number is 14 /var/tmp//ccRc1udt.s:24790: Warning: Only the first path encountering the conflict is reported /var/tmp//ccRc1udt.s:24789: Warning: This is the location of the conflicting usage pluto1:/p/scratch/yoichi/emacs-21.3/src[202]% /p/scratch/yoichi/ports/gcc41/work/build/gcc/xgcc --version xgcc (GCC) 4.1.0 20050501 (experimental) Copyright (C) 2005 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. pluto1:/p/scratch/yoichi/emacs-21.3/src[203]% which gcc /usr/bin/gcc pluto1:/p/scratch/yoichi/emacs-21.3/src[204]% gcc --version gcc (GCC) 3.4.2 [FreeBSD] 20040728 Copyright (C) 2004 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. Then I recommend the following workaround for now: > Fix: > compile buffer.c (or entire emacs) without -O2 flag on ia64 as a workaround Regards, -- Yoichi NAKAYAMA State Changed From-To: open->closed Committed a workaround. I'm sorry to keep you waiting. |