This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


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

Error building V3 on i686-pc-linux-gnu



While building complex_io.o on i686-pc-linux-gnu, on the 3.0 branch, I
get:

  In file included from /usr/include/math.h:348,
		   from ../../../../libstdc++-v3/include/c_std/bits/std_cmath.h:43,
		   from ../../../../libstdc++-v3/include/bits/std_complex.h:43,
		   from ../../../../libstdc++-v3/src/complex_io.cc:30:
  /usr/include/bits/mathinline.h: In function `long int lrintf(float)':
  /usr/include/bits/mathinline.h:583: output number 0 not directly addressable
  /usr/include/bits/mathinline.h:583: inconsistent operand constraints in an 
     `asm'

That seems to refer to this code:

  #define __lrint_code \
    long int __lrintres;							      \
    __asm__ __volatile__							      \
      ("fistpl %0"							      \
       : "=m" (__lrintres) : "t" (__x) : "st");				      \
    return __lrintres
  __MATH_INLINE long int
  lrintf (float __x)
  {
    __lrint_code;
  }

I am frustruated.  Many of the recent x86 patches have not been tested
adequately.

I will identify the offending patch and remove it, unless I hear
quickly that someone else understands the problem.

And, henceforth let's have *no* x86-64 specific patches on the
branch.  

This is not a primary or secondary target for GCC 3.0, since the chip
is not in production yet.  There is no reason for patches that address
only x86-64, and not ia32, issues to be included on the branch.
Please place these changes on the mainline only.

Thank you,

--
Mark Mitchell                   mark@codesourcery.com
CodeSourcery, LLC               http://www.codesourcery.com


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