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]
Other format: [Raw text]

Re: ___divti3 and ___umodti3 missing on Darwin



On 05/08/2006, at 5:19 PM, Jack Howarth wrote:


While testing the state of gfortran in gcc trunk at -m64 on MacOS X 10.4
I discovered a huge number of test failures (848 compared to 26 with -m32).
Almost all of these failures appear to be due to two undefined symbols in
libgfortran's shared library in the ppc64 version...


http://gcc.gnu.org/ml/fortran/2006-08/msg00112.html

The symbols, ___divti3 and ___umodti3, are not present in darwin- libgcc.10.4.ver
or darwin-libgcc.10.5.ver found in gcc/config/rs6000 but they are present
in the libgcc-std.ver in the gcc directory. I haven't found anything in
bugzilla about this issue, however it really should be addressed before
gcc 4.2 is released.

I believe this is a problem in libgcc.a and/or optabs.c, it should support __divti3. Apparently TImode is supposed to be supported by generic code, I see this comment in targhooks.c:


   By default we guess this means that any C type is supported.  If
   we can't map the mode back to a type that would be available in C,
   then reject it.  Special case, here, is the double-word arithmetic
   supported by optabs.c.  */

Here 'double-word' means 128-bits, TImode, since a word is 64 bits on ppc64.

Attachment: smime.p7s
Description: S/MIME cryptographic signature


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