[PATCH] Fix array sizes created by Java FE (PR libgcj/57074)

Alan Modra amodra@gmail.com
Sat May 4 00:03:00 GMT 2013


On Fri, May 03, 2013 at 07:10:15PM +0200, Jakub Jelinek wrote:
> Fixed thusly, bootstrapped/regtested on x86_64-linux and i686-linux, but
> not tested on powerpc32 where it actually caused runtime issues, can
> somebody please try it there?  Ok for trunk/4.8?

/home/amodra/build/gcc-current/./gcc/gcj -B/home/amodra/build/gcc-current/powerpc-linux/64/libjava/ -B/home/amodra/build/gcc-current/powerpc-linux/64/libjava/ -B/home/amodra/build/gcc-current/./gcc/ -B/home/amodra/gnu/powerpc-linux/bin/ -B/home/amodra/gnu/powerpc-linux/lib/ -isystem /home/amodra/gnu/powerpc-linux/include -isystem /home/amodra/gnu/powerpc-linux/sys-include -m64 -fclasspath= -fbootclasspath=/home/amodra/src/gcc-current/libjava/classpath/lib --encoding=UTF-8 -Wno-deprecated -fbootstrap-classes -g -O2 -m64 -fsource-filename=/home/amodra/build/gcc-current/powerpc-linux/64/libjava/classpath/lib/classes -fjni -findirect-dispatch -fno-indirect-classes -c @gnu-CORBA.list  -fPIC -o .libs/gnu-CORBA.o -v -save-temps

Looks like this is not the only problem.  Using the attached patch to
verify section anchor block layout leads me to

        .org .LANCB76+23560
        .type   _atable_syms_gnu_CORBA_NamingService_NameValidator, @object
        .size   _atable_syms_gnu_CORBA_NamingService_NameValidator, 96
_atable_syms_gnu_CORBA_NamingService_NameValidator:
        .quad   _Utf42
        .quad   _Utf34
        .quad   _Utf35
        .quad   _Utf3318.82185
        .quad   _Utf34
        .quad   _Utf170
        .quad   _Utf293
        .quad   _Utf34
        .quad   _Utf170
        .quad   0
        .quad   0
        .quad   0
        .org .LANCB76+23608

The difference between .org's is 48, but the actual size 96.  The next
_atable in this file shows 48/72.

-- 
Alan Modra
Australia Development Lab, IBM
-------------- next part --------------
A non-text attachment was scrubbed...
Name: pr57074-2.diff
Type: text/x-diff
Size: 1557 bytes
Desc: not available
URL: <http://gcc.gnu.org/pipermail/gcc-patches/attachments/20130504/069e87de/attachment.bin>


More information about the Gcc-patches mailing list