can't build sparcv9-sun-solaris

Patrick J. McEvoy swagman@swagman.com
Tue Dec 7 15:35:00 GMT 1999


Dear GCC-BUGS,

I can't seem to build a sparcv9 (64-bit) compiler from 2.95.2 source,
although the
same source tree builds the default (32-bit) compiler for my Sun Ultra-5
Solaris 2.7
box just fine.

    -- I realize sparc64 is not supported in 2.95.2, but I think sparcv9
is supported

    -- as per the gcc instructions I am using Sun's /usr/ccs/bin/{as,ld}
rather
       than binutils.

    -- for my bootstrap compiler I have tried both the 32-bit compiler I
built from this
       source tree and a pkgadd-format version of 2.95.2 from
www.sunfreeware.com

    -- since the problem is showing up in /usr/ccs/bin/as, I have tried
both
       "---without-gnu-as --without-gnu-ld" and "--with-gnu-as
--with-gnu-ld"

    -- as per the gcc instructions, I do not have patch 107058-01
(1999-01-13) installed.

Here's the sequence:

    mkdir obj
    cd obj
    ../src/configure sparcv9-sun-solaris
    make bootstrap

[I've also tried ../src/configure sparcv9-sun-solaris2.7]

The build always dies on the first pass when it is trying to make
libgcc2.a (full error log below):

    /usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 274: error: detect
global register use\

not covered .register pseudo-op

It seems the compiler is putting out stuff that Sun's assembler can't
handle.

Swagman

 ==========================================================

make libgcc2.a
rm -f tmplibgcc2.a
for name in _muldi3 _divdi3 _moddi3 _udivdi3 _umoddi3 _negdi2  _lshrdi3
_ashldi3 _ashrdi3 _ffsdi2  _udiv_w_sdiv _udivmoddi4 _cmpdi2 _ucmpdi2
_floatdidf _floatdisf  _fixunsdfsi _fixunssfsi _fixunsdfdi _fixdfdi
_fixunssfdi _fixsfdi  _fixxfdi _fixunsxfdi _floatdixf _fixunsxfsi
_fixtfdi _fixunstfdi _floatditf  __gcc_bcmp _varargs __dummy _eprintf
_bb _shtab _clear_cache _trampoline __main _exit  _ctors _pure; \
do \
  echo ${name}; \
  ./xgcc -B/usr/local/sparcv9-sun-solaris2.7/bin/ -B./
-I/usr/local/sparcv9-sun-solaris2.7/include -O2   -DIN_GCC -DHAIFA
-DSVR4  -g -I./include  -fPIC -g1 -DHAVE_GTHR_DEFAULT -DIN_LIBGCC2
-D__GCC_FLOAT_NOT_NEEDED -I. -I../../src/gcc -I../../src/gcc/config
-I../../src/gcc/../include -c -DL${name} \
       ../../src/gcc/libgcc2.c -o ${name}.o; \
  if [ $? -eq 0 ] ; then true; else exit 1; fi; \
  `  if [ -f /opt/local/src/gcc-2.95.2/onemotime/gcc/../binutils/ar ] ;
then  echo /opt/local/src/gcc-2.95.2/onemotime/gcc/../binutils/ar ;
else  if [ "sparcv9-sun-solaris2.7" = "sparcv9-sun-solaris2.7" ] ; then
echo ar;  else  t='s,x,x,'; echo ar | sed -e $t ;  fi;  fi` rc
tmplibgcc2.a ${name}.o; \
  rm -f ${name}.o; \
done
_muldi3
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 274: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 274: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 275: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 275: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 310: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 310: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 314: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 314: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 314: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 314: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 317: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 318: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 319: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 321: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 321: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 322: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 322: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 324: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 325: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 325: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 326: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 326: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 327: error: detect global
register use not covered .register pseudo-op
/usr/ccs/bin/as: "/var/tmp/ccsfxys9.s", line 329: error: detect global
register use not covered .register pseudo-op
*** Error code 1
make: Fatal error: Command failed for target `libgcc2.a'




More information about the Gcc-bugs mailing list