[PATCH] lower-subreg: Decompose multiword shifts

Andreas Tobler toa@pop.agri.ch
Wed Aug 8 18:40:00 GMT 2007


Andreas Krebbel wrote:
> Hello,
> 
>> The patch is OK with that change, assuming it still passes bootstrap
>> and testsuite.
> 
> Thanks for reviewing. I've applied the attached patch after retesting
> on s390, s390x, i686 and x86_64.
> 
> 2007-08-07  Andreas Krebbel  <krebbel1@de.ibm.com>
> 
> 	* lower-subreg.c (resolve_subreg_use): Remove assertion.
> 	(find_decomposable_shift_zext, resolve_shift_zext): New functions.
> 	(decompose_multiword_subregs): Use the functions above to decompose
> 	multiword shifts and zero-extends.

I get a bootstrap failure on sparc-solaris just after this commit 
(127270), before it was ok.

Starting program: /export/data/devel-test/gcc-svn/objdir/gcc/cc1 
-fpreprocessed libgcc2.i -quiet -dumpbase libgcc2.c -mcpu=v9 
-auxbase-strip _fixunssfdi.o -g -g -g -O2 -O2 -O2 -W -Wall 
-Wwrite-strings -Wstrict-prototypes -Wmissing-prototypes 
-Wold-style-definition -version -fkeep-inline-functions -fPIC -o libgcc2.s
GNU C version 4.3.0 20070807 (experimental) (sparc-sun-solaris2.8)
         compiled by GNU C version 3.4.3, GMP version 4.2.1, MPFR 
version 2.2.1.
GGC heuristics: --param ggc-min-expand=30 --param ggc-min-heapsize=4096
Compiler executable checksum: c8bf21b328ed0b35dd163e9c65e923cd
/export/data/devel-test/gcc-svn/trunk/libgcc/../gcc/libgcc2.c: In 
function '__fixunssfdi':
/export/data/devel-test/gcc-svn/trunk/libgcc/../gcc/libgcc2.c:1348: 
internal compiler error: in simplify_subreg, at simplify-rtx.c:4679
Please submit a full bug report,
with preprocessed source if appropriate.
See <URL:http://gcc.gnu.org/bugs.html> for instructions.

Program exited with code 04.

Luckily the above code compiles with O0 :(

Shall I attach the .i ?

Andreas



More information about the Gcc-patches mailing list