public inbox for linux-ia64@vger.kernel.org
 help / color / mirror / Atom feed
* [Linux-ia64] Asm error when building cross-compiler
@ 2000-08-01  0:20 Thomas Lofgren
  2000-08-01  1:48 ` Jim Wilson
  0 siblings, 1 reply; 2+ messages in thread
From: Thomas Lofgren @ 2000-08-01  0:20 UTC (permalink / raw)
  To: linux-ia64

Hi all,

I figure people on this list have experience with compiling
cross-compilers with IA64 as the target.  If there is a more
appropriate place to ask, let me know.

I downloaded the toolchain linked from the ia64linux.org page:
 ftp://ftp.cygnus.com/private/intel/

When building it, I run in to the following:

cp ../../gcc/config/ia64/lib1funcs.asm libgcc1.S
for name in __divdf3 __divsf3 __divdi3 __moddi3 __udivdi3 __umoddi3 __divsi3 __modsi3 __udivsi3 __umodsi3 __save_stack_nonlocal __nonlocal_goto __restore_stack_nonlocal; \
do \
  echo ${name}; \
  /home/lofgren/work/ia64_toolchain/build/gcc/xgcc -B/home/lofgren/work/ia64_toolchain/build/gcc/ -B/usr/local/ia64/ia64-hp-linux-gnu/bin/ -I/usr/local/ia64/ia64-hp-linux-gnu/include -O2  -DCROSS_COMPILE -DIN_GCC    -g -O2  -I./include  -fPIC -g1  -DIN_LIBGCC2 -D__GCC_FLOAT_NOT_NEEDED  -I. -I../../gcc -I../../gcc/config -I../../gcc/../include -c -DL${name} libgcc1.S; \
  if [ $? -eq 0 ] ; then true; else exit 1; fi; \
  mv libgcc1.o ${name}.o; \
  /home/lofgren/work/ia64_toolchain/build/binutils/ar rc tmplibgcc1.a ${name}.o; \
  rm -f ${name}.o; \
done
__divdf3
__divsf3
__divdi3
__moddi3
__udivdi3
__umoddi3
__divsi3
__modsi3
__udivsi3
__umodsi3
__save_stack_nonlocal
__nonlocal_goto
libgcc1.S: Assembler messages:
libgcc1.S:604: Error: Unknown opcode `mov.ret.sptk.few.dc.dc rp=r33,.L0'
make[1]: *** [libgcc1-asm.a] Error 1
make[1]: Leaving directory `/home/lofgren/work/ia64_toolchain/build/gcc'
make: *** [all-gcc] Error 2

As far as I see, the instruction is valid.  I tried removing the
.dc.dc completers, since they're deprecated, but it still fails.  Any
ideas?

All other tools (bfd, binutils, gdb, gas, ld, ...) appeared to have
been built flawlessly.

Thanks,
Tom Lofgren
-- 
T. Lofgren <tlofgren@cup.hp.com>: Wherever I lay my .emacs, that's my ${HOME}
PGP Key ID: DC68D8F6                  Encryption is the envelope for email



^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [Linux-ia64] Asm error when building cross-compiler
  2000-08-01  0:20 [Linux-ia64] Asm error when building cross-compiler Thomas Lofgren
@ 2000-08-01  1:48 ` Jim Wilson
  0 siblings, 0 replies; 2+ messages in thread
From: Jim Wilson @ 2000-08-01  1:48 UTC (permalink / raw)
  To: linux-ia64

You have a mismatched assembler and compiler.  I'm not sure how you could
have done that if everything you are using is from the toolchain downloaded
from ftp.cygnus.com.  If you have any assembler newer than the one in the
February release then it would fail this way, because this problem was
fixed shortly after the February release.

Do you perhaps already have a new assembler in
/usr/local/ia64/ia64-hp-linux-gnu/bin?  If so, then that could explain the
problem.  The -B options in the makefiles are in the wrong order, so if you
try build on top of an existing toolchain then this problem can happen.

The instruction in question is not valid because the .dc.dc and .few
completers were removed from the architecture.  If you have a new
assembler, and you remove both, then it should work.  Though you may have
other problems if you aren't using the assembler that came with this compiler.
C++ EH for instance won't work, and there might be problems with shared
libraries.

Jim




^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2000-08-01  1:48 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2000-08-01  0:20 [Linux-ia64] Asm error when building cross-compiler Thomas Lofgren
2000-08-01  1:48 ` Jim Wilson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox