On Mon, Jan 12, 2015 at 11:08 AM, Uros Bizjak <ubiz...@gmail.com> wrote: > Hello! > >> Upstream libffi has added support for Go closures (using the static chain), >> and support for complex numbers. Perhaps less relevant is new support for >> arc, microblaze, moxie, nios, and or1k targets. >> >> Without additional changes for Go, this merge has little effect. Within the >> gcc tree libffi is primarily used by libjava. >> >> Tested with no regressions on {i686,x86_64,ppc64,s390x,aarch64,alpha}-linux. > > This patchset regressed libjava on -m32 x86_64-linux-gnu (Fedora 21): > > === libjava tests === > > > Running target unix > > === libjava Summary for unix === > > > Running target unix/-m32 > FAIL: libjava.jar/TestClosureGC.jar execution - gij test > FAIL: libjava.jar/simple.jar execution - gij test > FAIL: PR15133 execution - gij test > FAIL: PR18116 execution - gij test > FAIL: PR28178 execution - gij test > FAIL: bytebuffer execution - gij test > FAIL: calls execution - gij test > FAIL: cxxtest execution - gij test > FAIL: directbuffer execution - gij test > FAIL: field execution - gij test > FAIL: final_method execution - gij test > FAIL: findclass execution - gij test > FAIL: findclass2 execution - gij test > FAIL: iface execution - gij test > FAIL: init execution - gij test > FAIL: invoke execution - gij test > FAIL: jniutf execution - gij test > FAIL: martin execution - gij test > FAIL: noclass execution - gij test > FAIL: overload execution - gij test > FAIL: pr11951 execution - gij test > FAIL: pr18278 execution - gij test > FAIL: pr23739 execution - gij test > FAIL: register execution - gij test > FAIL: register2 execution - gij test > FAIL: simple_int execution - gij test > FAIL: throwit execution - gij test > FAIL: virtual execution - gij test > FAIL: PR16923 run > FAIL: pr29812 execution - gij test > FAIL: getargssize run > FAIL: getlocalvartable run > FAIL: getstacktrace run > FAIL: ExtraClassLoader execution - source compiled test > FAIL: ExtraClassLoader -findirect-dispatch execution - source compiled test > FAIL: ExtraClassLoader -O3 execution - source compiled test > FAIL: ExtraClassLoader -O3 -findirect-dispatch execution - source compiled > test > FAIL: TestEarlyGC execution - source compiled test > > === libjava Summary for unix/-m32 === > > > === libjava Summary === > > # of expected passes 5092 > # of unexpected failures 38 > # of expected failures 8 > # of untested testcases 38
It also breaks x32: https://gcc.gnu.org/ml/gcc-regression/2015-01/msg00203.html libtool: link: /export/gnu/import/git/gcc-test-x32/bld/./gcc/xgcc -shared-libgcc -B/export/gnu/import/git/gcc-test-x32/bld/./gcc -nostdinc++ -L/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libstdc++-v3/src -L/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libstdc++-v3/src/.libs -L/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libstdc++-v3/libsupc++/.libs -B/usr/5.0.0/x86_64-unknown-linux-gnu/bin/ -B/usr/5.0.0/x86_64-unknown-linux-gnu/lib/ -isystem /usr/5.0.0/x86_64-unknown-linux-gnu/include -isystem /usr/5.0.0/x86_64-unknown-linux-gnu/sys-include -mx32 -fPIC -DPIC -shared -nostdlib /lib/../libx32/crti.o /export/gnu/import/git/gcc-test-x32/bld/./gcc/x32/crtbeginS.o .libs/jni-libjvm.o -Wl,-rpath -Wl,/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libjava/.libs -Wl,-rpath -Wl,/usr/5.0.0/lib/../libx32 -L/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libjava/.libs -L/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libstdc++-v3/src -L/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libstdc++-v3/src/.libs -L/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libstdc++-v3/libsupc++/.libs ./.libs/libgcj.so -L/export/gnu/import/git/gcc-test-x32/bld/x86_64-unknown-linux-gnu/x32/libjava -lpthread -lrt -ldl -lz -L/export/gnu/import/git/gcc-test-x32/bld/./gcc/x32 -L/lib/../libx32 -L/usr/lib/../libx32 -L/export/gnu/import/git/gcc-test-x32/bld/./gcc -lc -lgcc_s /export/gnu/import/git/gcc-test-x32/bld/./gcc/x32/crtendS.o /lib/../libx32/crtn.o -mx32 -mx32 -mx32 -Wl,-Bsymbolic -Wl,-soname -Wl,libjvm.so -o .libs/libjvm.so ./.libs/libgcj.so: undefined reference to `ffi_raw_call' ./.libs/libgcj.so: undefined reference to `ffi_prep_raw_closure_loc' ./.libs/libgcj.so: undefined reference to `ffi_prep_cif_machdep' ./.libs/libgcj.so: undefined reference to `ffi_prep_closure_loc' ./.libs/libgcj.so: undefined reference to `ffi_call' collect2: error: ld returned 1 exit status make[8]: *** [jv-convert] Error 1 -- H.J.