After r187015 (Mar 31), gcc builds for rx-elf are failing with:

make[3]: Entering directory 
`/greed/dj/m32c/gcc/rx-elf-head/rx-elf/64-bit-double/libgcc'
# If this is the top-level multilib, build all the other
# multilibs.
/greed/dj/m32c/gcc/rx-elf-head/./gcc/xgcc 
-B/greed/dj/m32c/gcc/rx-elf-head/./gcc/ -B/greed/dj/m32c/install/rx-elf/bin/ 
-B/greed/dj/m32c/install/rx-elf/lib/ -isystem 
/greed/dj/m32c/install/rx-elf/include -isystem 
/greed/dj/m32c/install/rx-elf/sys-include    -g -O2 -m64bit-doubles -O2  -g -O2 
-DIN_GCC -DCROSS_DIRECTORY_STRUCTURE  -W -Wall -Wwrite-strings -Wcast-qual 
-Wstrict-prototypes -Wmissing-prototypes -Wold-style-definition  -isystem 
./include   -g -DIN_LIBGCC2 -fbuilding-libgcc -fno-stack-protector 
-Dinhibit_libc  -I. -I. -I../../.././gcc -I../../../../gcc/libgcc 
-I../../../../gcc/libgcc/. -I../../../../gcc/libgcc/../gcc 
-I../../../../gcc/libgcc/../include  -DHAVE_CC_TLS -DUSE_EMUTLS -o _mulvdi3.o 
-MT _mulvdi3.o -MD -MP -MF _mulvdi3.dep -DL_mulvdi3 -c 
../../../../gcc/libgcc/libgcc2.c 
../../../../gcc/libgcc/libgcc2.c: In function '__mulvdi3':
../../../../gcc/libgcc/libgcc2.c:397:1: internal compiler error: in 
subreg_get_info, at rtlanal.c:3308
 }
 ^

Can anyone else confirm this?


r187015 | rsandifo | 2012-05-01 10:45:24 -0400 (Tue, 01 May 2012) | 33 lines

gcc/
2012-03-31  Kenneth Zadeck  <zad...@naturalbridge.com>
            Richard Sandiford  <r.sandif...@uk.ibm.com>

        * Makefile.in (lower-subreg.o, target-globals.o): Depend on
        lower-subreg.h.
        * lower-subreg.h: New file.
        * target-globals.h (this_target_lower_subreg): Declare.
        (target_globals): Add lower_subreg;
        (restore_target_globals): Restore this_target_lower_subreg.
        * target-globals.c: Include it.
        (default_target_globals): Add default_target_lower_subreg.
        (save_target_globals): Initialize target_lower_subreg.
        * rtl.h (init_lower_subreg): Added declaration.
        * toplev.c (backend_init_target): Call initializer for lower-subreg
        pass.
        * lower-subreg.c (LOG_COSTS, FORCE_LOWERING): New macros.
        (default_target_lower_subreg): New variable.
        (this_target_lower_subreg): Likewise.
        (twice_word_mode, choices): New macros.
        (shift_cost, compute_splitting_shift, compute_costs)
        (init_lower_subreg): New functions.
        (resolve_simple_move): Add speed_p argument.  Check choices.
        (find_pseudo_copy): Don't check the mode size here.
        (resolve_simple_move): Assert the mode size.
        (find_decomposable_shift_zext): Add speed_p argument and return
        a bool.  Check choices.
        (resolve_shift_zext): Add comment.
        (dump_shift_choices, dump_choices): New functions.
        (decompose_multiword_subregs): Dump list of profitable
        transformations.  Add code to skip non profitable transformations.
        Update calls to simple_move and find_decomposable_shift_zext.

Reply via email to