https://gcc.gnu.org/bugzilla/show_bug.cgi?id=113507

Kewen Lin <linkw at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
                 CC|                            |segher at gcc dot gnu.org
   Last reconfirmed|                            |2024-01-23
     Ever confirmed|0                           |1

--- Comment #5 from Kewen Lin <linkw at gcc dot gnu.org> ---
(In reply to H.J. Lu from comment #3)
> (In reply to Kewen Lin from comment #2)
> > Guessing /usr/local/bin/ld is a gnu ld? Based on what I heard before, gnu ld
> > has some problems on aix, people pass object files to aix system and use aix
> > ld there. Not sure if the understanding still holds.
> 
> I am building a cross compiler.  No AIX tools are involved.

Thanks for clarifying, I was dull and misunderstood it.

Confirmed, some symbols are from rs6000-builtin.cc (which is not generated) but
it requires some symbols in rs6000-builtins.cc (which is generated). Both
object files are not included in linking. The below diff can fix it:

diff --git a/gcc/config.gcc b/gcc/config.gcc
index b2d7d7dd475..6b62e4fe56c 100644
--- a/gcc/config.gcc
+++ b/gcc/config.gcc
@@ -557,8 +557,10 @@ rs6000*-*-*)
         extra_options="${extra_options} g.opt fused-madd.opt
rs6000/rs6000-tables.opt"
         extra_objs="rs6000-string.o rs6000-p8swap.o rs6000-logue.o"
         extra_objs="${extra_objs} rs6000-call.o rs6000-pcrel-opt.o"
+        extra_objs="${extra_objs} rs6000-builtin.o rs6000-builtins.o"
         target_gtfiles="$target_gtfiles
\$(srcdir)/config/rs6000/rs6000-logue.cc
\$(srcdir)/config/rs6000/rs6000-call.cc"
         target_gtfiles="$target_gtfiles
\$(srcdir)/config/rs6000/rs6000-pcrel-opt.cc"
+        target_gtfiles="$target_gtfiles ./rs6000-builtins.h"
         ;;
 sparc*-*-*)
         cpu_type=sparc

According to David's comments "rs6000-ibm-aix doesn't exist any more" and I
vaguely remembered Segher also mentioned rs6000*-*-*) becomes stale, maybe we
can aggressively drop the whole rs6000*-*-*) case handling?

Reply via email to