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

--- Comment #70 from Iain Sandoe <iains at gcc dot gnu.org> ---
(In reply to Douglas Mencken from comment #69)
> (In reply to Iain Sandoe from comment #64)
> > so all languages, m32/m64, --enable-checking=all,rtl,tree trunk bootstrap
> > completed without error (with the patch above + one to enable Ada to work on
> > Darwin9).
> 
> How do you build for ppc64? Because that’s what I got


I didn't :-) .. standard multilb build on powerpc-darwin builds (and tests) the
64b variants of the libraries - it doesn't build 64b tools.

> 
> ccache /Developer/usr/bin/g++-4.2 -m64 -std=gnu++98 -no-pie   -g  -DIN_GCC  
> -fno-strict-aliasing -fno-exceptions -fno-rtti -fasynchronous-unwind-tables
> -W -Wall -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute
> -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros
> -Wno-overlength-strings   -DHAVE_CONFIG_H  -o cc1 c/c-lang.o
> c-family/stub-objc.o attribs.o c/c-errors.o c/c-decl.o c/c-typeck.o
> c/c-convert.o c/c-aux-info.o c/c-objc-common.o c/c-parser.o c/c-fold.o
> c/gimple-parser.o c-family/c-common.o c-family/c-cppbuiltin.o
> c-family/c-dump.o c-family/c-format.o c-family/c-gimplify.o
> c-family/c-indentation.o c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o
> c-family/c-pch.o c-family/c-ppoutput.o c-family/c-pragma.o
> c-family/c-pretty-print.o c-family/c-semantics.o c-family/c-ada-spec.o
> c-family/c-ubsan.o c-family/known-headers.o c-family/c-attribs.o
> c-family/c-warn.o c-family/c-spellcheck.o darwin-c.o rs6000-c.o \
>         cc1-checksum.o libbackend.a main.o libcommon-target.a libcommon.a
> ../libcpp/libcpp.a ../libdecnumber/libdecnumber.a libcommon.a
> ../libcpp/libcpp.a  -liconv ../libbacktrace/.libs/libbacktrace.a
> ../libiberty/libiberty.a ../libdecnumber/libdecnumber.a 
> -L/Volumes/hfsplushd/Development/gcc-toolchain/_build/./isl/.libs  -lisl
> -L/Volumes/hfsplushd/Development/gcc-toolchain/_build/./gmp/.libs
> -L/Volumes/hfsplushd/Development/gcc-toolchain/_build/./mpfr/src/.libs
> -L/Volumes/hfsplushd/Development/gcc-toolchain/_build/./mpc/src/.libs -lmpc
> -lmpfr -lgmp   -L./../zlib -lz
> ccache /Developer/usr/bin/g++-4.2 -m64 -std=gnu++98 -no-pie   -g  -DIN_GCC  
> -fno-strict-aliasing -fno-exceptions -fno-rtti -fasynchronous-unwind-tables
> -W -Wall -Wwrite-strings -Wcast-qual -Wno-format -Wmissing-format-attribute
> -Woverloaded-virtual -pedantic -Wno-long-long -Wno-variadic-macros
> -Wno-overlength-strings   -DHAVE_CONFIG_H  -o cc1plus \
>             cp/cp-lang.o c-family/stub-objc.o cp/call.o cp/class.o 
> cp/constexpr.o
> cp/constraint.o cp/cp-gimplify.o cp/cp-objcp-common.o cp/cp-ubsan.o cp/cvt.o
> cp/cxx-pretty-print.o cp/decl.o cp/decl2.o cp/dump.o cp/error.o cp/except.o
> cp/expr.o cp/friend.o cp/init.o cp/lambda.o cp/lex.o cp/logic.o cp/mangle.o
> cp/method.o cp/name-lookup.o cp/optimize.o cp/parser.o cp/pt.o cp/ptree.o
> cp/repo.o cp/rtti.o cp/search.o cp/semantics.o cp/tree.o cp/typeck.o
> cp/typeck2.o cp/vtable-class-hierarchy.o attribs.o incpath.o
> c-family/c-common.o c-family/c-cppbuiltin.o c-family/c-dump.o
> c-family/c-format.o c-family/c-gimplify.o c-family/c-indentation.o
> c-family/c-lex.o c-family/c-omp.o c-family/c-opts.o c-family/c-pch.o
> c-family/c-ppoutput.o c-family/c-pragma.o c-family/c-pretty-print.o
> c-family/c-semantics.o c-family/c-ada-spec.o c-family/c-ubsan.o
> c-family/known-headers.o c-family/c-attribs.o c-family/c-warn.o
> c-family/c-spellcheck.o darwin-c.o rs6000-c.o cc1plus-checksum.o
> libbackend.a main.o libcommon-target.a libcommon.a ../libcpp/libcpp.a
> ../libdecnumber/libdecnumber.a libcommon.a ../libcpp/libcpp.a  -liconv
> ../libbacktrace/.libs/libbacktrace.a ../libiberty/libiberty.a
> ../libdecnumber/libdecnumber.a 
> -L/Volumes/hfsplushd/Development/gcc-toolchain/_build/./isl/.libs  -lisl
> -L/Volumes/hfsplushd/Development/gcc-toolchain/_build/./gmp/.libs
> -L/Volumes/hfsplushd/Development/gcc-toolchain/_build/./mpfr/src/.libs
> -L/Volumes/hfsplushd/Development/gcc-toolchain/_build/./mpc/src/.libs -lmpc
> -lmpfr -lgmp   -L./../zlib -lz
> ld: bl out of range (-17219580 max is +/-16M) from lookup_attribute(char
> const*, tree_node*)at 0x10106DA48 in __text of libbackend.a(stor-layout.o)
> to private_lookup_attribute(char const*, unsigned long, tree_node*)at
> 0x100001A9C in __text of  attribs.o in lookup_attribute(char const*,
> tree_node*)from libbackend.a(stor-layout.o)
> collect2: ld returned 1 exit status
> make[3]: *** [cc1] Error 1
> make[3]: *** Waiting for unfinished jobs....
> ld: bl out of range (-16777352 max is +/-16M) from
> gt_pch_nx_string_pool_data(void*) at 0x101271C9C in __text of
> libbackend.a(stringpool.o) to gt_pch_nx_lang_tree_node(void*) at 0x100271D0C
> in __text of  cp/tree.o in gt_pch_nx_string_pool_data(void*) from
> libbackend.a(stringpool.o)
> collect2: ld returned 1 exit status
> make[3]: *** [cc1plus] Error 1
> rm gcc.pod
> make[2]: *** [all-stage1-gcc] Error 2
> make[1]: *** [stage1-bubble] Error 2
> make: *** [all] Error 2

powerpc64 darwin is *much* less tested than the 32b variant.

I don't have any access to my ppc64 machine for the next week but... it looks
like our gcc exes are now getting too big for the 'our of the tin' linker.

The Apple ld64 impl. was quite broken for liner branch islanding on ppc64 -
there were some work-arounds from the mac ports / fink folks.  However, I
actually spent some time on it and more or less re-wrote the branch-islanding
code - that code / and a bootstrap toolchain is available from my github
account.  

https://github.com/iains/darwin-xtools (code)
https://github.com/iains/darwin-gcc-5/releases (release for 5.3)

I have a bunch of updates locally - but need to be cleaned up and released ..
time as ever the issue there.

Reply via email to