[tuples] Bootstrap failure building libjava on ppc64

Daniel Berlin dberlin@dberlin.org
Tue Jul 15 06:50:00 GMT 2008


On Mon, Jul 14, 2008 at 5:22 PM, Diego Novillo <dnovillo@google.com> wrote:
> We are failing to build libjava on PPC64 because of this:
>
> /home/dnovillo/perf/sbox/tuples/local.ppc64/bld/./gcc/xgcc -shared
> -libgcc -B/home/dnovillo/perf/sbox/tuples/local.ppc64/bld/./gcc
> -nostdinc++ -L/home/d
> novillo/perf/sbox/tuples/local.ppc64/bld/powerpc64-unknown-linux-gnu/libstdc++-v3/src
>  -L/home/dnovillo/perf/sbox/tuples/local.ppc64/bld/powerpc64-unknown-linux-gnu/libstd
> c++-v3/src/.libs
> -B/home/dnovillo/perf/sbox/tuples/local.ppc64/inst/powerpc64-unknown
> -linux-gnu/bin/
> -B/home/dnovillo/perf/sbox/tuples/local.ppc64/inst/powerpc64-unknown-
> linux-gnu/lib/ -isystem
> /home/dnovillo/perf/sbox/tuples/local.ppc64/inst/powerpc64-un
> known-linux-gnu/include -isystem
> /home/dnovillo/perf/sbox/tuples/local.ppc64/inst/pow
> erpc64-unknown-linux-gnu/sys-include -DHAVE_CONFIG_H -I.
> -I/home/dnovillo/perf/sbox/t
> uples/local.ppc64/src/libjava -I./include -I./gcj
> -I/home/dnovillo/perf/sbox/tuples/l
> ocal.ppc64/src/libjava -Iinclude
> -I/home/dnovillo/perf/sbox/tuples/local.ppc64/src/li
> bjava/include -I/home/dnovillo/perf/sbox/tuples/local.ppc64/src/libjava/classpath/inc
> lude -Iclasspath/include
> -I/home/dnovillo/perf/sbox/tuples/local.ppc64/src/libjava/cl
> asspath/native/fdlibm
> -I/home/dnovillo/perf/sbox/tuples/local.ppc64/src/libjava/../bo
> ehm-gc/include -I../boehm-gc/include
> -I/home/dnovillo/perf/sbox/tuples/local.ppc64/sr
> c/libjava/libltdl
> -I/home/dnovillo/perf/sbox/tuples/local.ppc64/src/libjava/libltdl -
> I/home/dnovillo/perf/sbox/tuples/local.ppc64/src/libjava/.././libjava/../gcc
> -I/home/
> dnovillo/perf/sbox/tuples/local.ppc64/src/libjava/../zlib
> -I/home/dnovillo/perf/sbox/
> tuples/local.ppc64/src/libjava/../libffi/include -I../libffi/include
> -fno-rtti -fnon-
> call-exceptions -fdollars-in-identifiers -Wswitch-enum
> -D_FILE_OFFSET_BITS=64 -mminim
> al-toc -Wextra -Wall -D_GNU_SOURCE
> -DPREFIX=\"/home/dnovillo/perf/sbox/tuples/local.p
> pc64/inst\" -DTOOLEXECLIBDIR=\"/home/dnovillo/perf/sbox/tuples/local.ppc64/inst/lib/.
> ./lib64\" -DJAVA_HOME=\"/home/dnovillo/perf/sbox/tuples/local.ppc64/inst\"
> -DBOOT_CLA
> SS_PATH=\"/home/dnovillo/perf/sbox/tuples/local.ppc64/inst/share/java/libgcj-4.4.0.ja
> r\" -DJAVA_EXT_DIRS=\"/home/dnovillo/perf/sbox/tuples/local.ppc64/inst/share/java/ext
> \" -DGCJ_ENDORSED_DIRS=\"/home/dnovillo/perf/sbox/tuples/local.ppc64/inst/share/java/
> gcj-endorsed\" -DGCJ_VERSIONED_LIBDIR=\"/home/dnovillo/perf/sbox/tuples/local.ppc64/i
> nst/lib/../lib64/gcj-4.4.0-10\" -DPATH_SEPARATOR=\":\"
> -DECJ_JAR_FILE=\"\" -DLIBGCJ_D
> EFAULT_DATABASE=\"/home/dnovillo/perf/sbox/tuples/local.ppc64/inst/lib/../lib64/gcj-4
> .4.0-10/classmap.db\"
> -DLIBGCJ_DEFAULT_DATABASE_PATH_TAIL=\"gcj-4.4.0-10/classmap.db\
> " -g -O2 -D_GNU_SOURCE -MT stacktrace.lo -MD -MP -MF
> .deps/stacktrace.Tpo -c /home/dn
> ovillo/perf/sbox/tuples/local.ppc64/src/libjava/stacktrace.cc  -fPIC
> -DPIC -o .libs/s
> tacktrace.o
> /home/dnovillo/perf/sbox/tuples/local.ppc64/src/libjava/stacktrace.cc:
> In static memb
> er function 'static _Unwind_Reason_Code
> _Jv_StackTrace::UnwindTraceFn(_Unwind_Context
> *, void*)':
> /home/dnovillo/perf/sbox/tuples/local.ppc64/src/libjava/stacktrace.cc:105:
> internal c
> ompiler error: in copy_reference_ops_from_ref, at tree-ssa-sccvn.c:615
> Please submit a full bug report,
> with preprocessed source if appropriate.
> See <http://gcc.gnu.org/bugs.html> for instructions.
> make[3]: *** [stacktrace.lo] Error 1
> make[3]: *** Waiting for unfinished jobs....
>

This error implies you have something in a "tcc_reference" operation
(IE load or store) that we've never seen before (or we are improperly
classifying something as a reference when it isn't).


Can you go up a frame and print out the first argument to
copy_reference_ops_from_ref using debug_tree (or it's equivalent. The
important thing is to know what operations it contains, not that it
look nice).
The argument is reused locally during the function, hence the request
to go up a frame :P

> Do you think you could take a look at it.  I could probably be able to
> give you a reduced .ii file if that helps.
> Otherwise, it's easy to reproduce by doing a ppc64 bootstrap on tuples.
>
> Thanks.  Diego.
>



More information about the Gcc mailing list