This is the mail archive of the binutils@sources.redhat.com mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

newbie problem with sparc64 architecture


I'm having trouble cross-building glibc-2.3.2 for sparc64-linux.
This is not terribly surprising, given that it's the first time
I've really tried, and I've never actually used sparc64 before.

The current hangup is the error
  Error: Illegal operands: There are only 32 single precision f registers; [0-31]

I trimmed down the problem to the following small test case:

:::::::::::: x.s ::::::::::::::::::::
        .section        ".text"
        .align 4
        .global _Qp_qtoi
        .type   _Qp_qtoi, #function
_Qp_qtoi:
        fqtoi %f52, %f60
        retl
        .size   _Qp_qtoi, .-_Qp_qtoi
:::::::::::::::::::::::::::::::::::::

Here's the problem in action:

$ sparc64-unknown-linux-gnu/bin/as -V -Av9b -64 x.s
GNU assembler version 2.15.90.0.3 (sparc64-unknown-linux-gnu) using BFD version 2.15.90.0.3 20040415
x.s: Assembler messages:
x.s:6: Error: Illegal operands: There are only 32 single precision f registers; [0-31]

Here's how binutils were configured and installed:
../binutils-2.15.90.0.3/configure --target=sparc64-unknown-linux-gnu --host=i686-host_pc-linux-gnu \
--prefix=/opt/crosstool/sparc64-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2 --disable-nls \
--with-sysroot=/opt/crosstool/sparc64-unknown-linux-gnu/gcc-3.4.0-glibc-2.3.2/sparc64-unknown-linux-gnu
make -j2 all
make install

Any clues?  I kinda thought that passing -Av9b -64 to
gas would tell it clearly that the source was for
sparcv9, where the manual clearly states that there
are 64 floating point registers.

Thanks,
Dan

--
My technical stuff: http://kegel.com
My politics: see http://www.misleader.org for examples of why I'm for regime change


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]