[Bug rtl-optimization/50213] [4.6/4.7 Regression] Regression in space-optimized code relative to 4.5.x
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50213 Richard Guenther rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||missed-optimization Target||x86_64-*-* Target Milestone|--- |4.6.2 Summary|Regression in |[4.6/4.7 Regression] |space-optimized code|Regression in |relative to 4.5.x |space-optimized code ||relative to 4.5.x
[Bug middle-end/50215] [4.7 Regression] FAIL: gcc.dg/guality/pr45882.c
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50215 Richard Guenther rguenth at gcc dot gnu.org changed: What|Removed |Added Target Milestone|--- |4.7.0
[Bug bootstrap/50218] New: [4.7 regression] tree-ssa-loop-ivopts.c triggers -Werror=maybe-uninitialized breaking i686-linux bootstrap
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50218 Bug #: 50218 Summary: [4.7 regression] tree-ssa-loop-ivopts.c triggers -Werror=maybe-uninitialized breaking i686-linux bootstrap Classification: Unclassified Product: gcc Version: 4.7.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: bootstrap AssignedTo: unassig...@gcc.gnu.org ReportedBy: mi...@it.uu.se gcc-4.7-20110827 fails to bootstrap on i686-linux due to: /mnt/scratch/gcc-4.7-20110827/gcc/tree-ssa-loop-ivopts.c: In function 'determine_use_iv_cost': /mnt/scratch/gcc-4.7-20110827/gcc/tree-ssa-loop-ivopts.c:4846:19: error: 'comp' may be used uninitialized in this function [-Werror=maybe-uninitialized] /mnt/scratch/gcc-4.7-20110827/gcc/tree-ssa-loop-ivopts.c:4760:18: note: 'comp' was declared here cc1: all warnings being treated as errors make[3]: *** [tree-ssa-loop-ivopts.o] Error 1 make[3]: Leaving directory `/mnt/scratch/objdir47/gcc' make[2]: *** [all-stage2-gcc] Error 2 make[2]: Leaving directory `/mnt/scratch/objdir47' make[1]: *** [stage2-bubble] Error 2 make[1]: Leaving directory `/mnt/scratch/objdir47' make: *** [bootstrap] Error 2 Configured as: /mnt/scratch/gcc-4.7-20110827/configure --prefix=/mnt/scratch/install47 --with-gmp=/home/mikpe/pkgs/linux-x86/gmp-4.3.2 --with-mpfr=/home/mikpe/pkgs/linux-x86/mpfr-2.4.2 --with-mpc=/home/mikpe/pkgs/linux-x86/mpc-0.8.2 --enable-checking=release --enable-languages=c --disable-build-poststage1-with-cxx I have a patch.
[Bug bootstrap/50218] [4.7 regression] tree-ssa-loop-ivopts.c triggers -Werror=maybe-uninitialized breaking i686-linux bootstrap
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50218 --- Comment #1 from Mikael Pettersson mikpe at it dot uu.se 2011-08-28 09:46:26 UTC --- Patch posted: http://gcc.gnu.org/ml/gcc-patches/2011-08/msg02234.html
[Bug c++/40866] [4.5 Regression] ICE in create_tmp_var, at gimplify.c:504
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=40866 --- Comment #11 from Thomas Koenig tkoenig at gcc dot gnu.org 2011-08-28 10:08:54 UTC --- Author: tkoenig Date: Sun Aug 28 10:08:50 2011 New Revision: 178140 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=178140 Log: 2011-08-28 Thomas Koenig tkoe...@gcc.gnu.org PR fortran/40866 * generated/iall_i1.c: Regenerated. * generated/iall_i16.c: Regenerated. * generated/iall_i2.c: Regenerated. * generated/iall_i4.c: Regenerated. * generated/iall_i8.c: Regenerated. * generated/iany_i1.c: Regenerated. * generated/iany_i16.c: Regenerated. * generated/iany_i2.c: Regenerated. * generated/iany_i4.c: Regenerated. * generated/iany_i8.c: Regenerated. * generated/iparity_i1.c: Regenerated. * generated/iparity_i16.c: Regenerated. * generated/iparity_i2.c: Regenerated. * generated/iparity_i4.c: Regenerated. * generated/iparity_i8.c: Regenerated. * generated/norm2_r10.c: Regenerated. * generated/norm2_r16.c: Regenerated. * generated/norm2_r4.c: Regenerated. * generated/norm2_r8.c: Regenerated. * generated/parity_l1.c: Regenerated. * generated/parity_l16.c: Regenerated. * generated/parity_l2.c: Regenerated. * generated/parity_l4.c: Regenerated. * generated/parity_l8.c: Regenerated. * generated/misc_specifics.F90: Regenerated (comment change). * generated/_abs_c10.F90: Regenerated (comment change). * generated/_abs_c16.F90: Regenerated (comment change). * generated/_abs_c4.F90: Regenerated (comment change). * generated/_abs_c8.F90: Regenerated (comment change). * generated/_abs_i16.F90: Regenerated (comment change). * generated/_abs_i4.F90: Regenerated (comment change). * generated/_abs_i8.F90: Regenerated (comment change). * generated/_abs_r10.F90: Regenerated (comment change). * generated/_abs_r16.F90: Regenerated (comment change). * generated/_abs_r4.F90: Regenerated (comment change). * generated/_abs_r8.F90: Regenerated (comment change). * generated/_acosh_r10.F90: Regenerated (comment change). * generated/_acosh_r16.F90: Regenerated (comment change). * generated/_acosh_r4.F90: Regenerated (comment change). * generated/_acosh_r8.F90: Regenerated (comment change). * generated/_acos_r10.F90: Regenerated (comment change). * generated/_acos_r16.F90: Regenerated (comment change). * generated/_acos_r4.F90: Regenerated (comment change). * generated/_acos_r8.F90: Regenerated (comment change). * generated/_aimag_c10.F90: Regenerated (comment change). * generated/_aimag_c16.F90: Regenerated (comment change). * generated/_aimag_c4.F90: Regenerated (comment change). * generated/_aimag_c8.F90: Regenerated (comment change). * generated/_aint_r10.F90: Regenerated (comment change). * generated/_aint_r16.F90: Regenerated (comment change). * generated/_aint_r4.F90: Regenerated (comment change). * generated/_aint_r8.F90: Regenerated (comment change). * generated/_anint_r10.F90: Regenerated (comment change). * generated/_anint_r16.F90: Regenerated (comment change). * generated/_anint_r4.F90: Regenerated (comment change). * generated/_anint_r8.F90: Regenerated (comment change). * generated/_asinh_r10.F90: Regenerated (comment change). * generated/_asinh_r16.F90: Regenerated (comment change). * generated/_asinh_r4.F90: Regenerated (comment change). * generated/_asinh_r8.F90: Regenerated (comment change). * generated/_asin_r10.F90: Regenerated (comment change). * generated/_asin_r16.F90: Regenerated (comment change). * generated/_asin_r4.F90: Regenerated (comment change). * generated/_asin_r8.F90: Regenerated (comment change). * generated/_atan2_r10.F90: Regenerated (comment change). * generated/_atan2_r16.F90: Regenerated (comment change). * generated/_atan2_r4.F90: Regenerated (comment change). * generated/_atan2_r8.F90: Regenerated (comment change). * generated/_atanh_r10.F90: Regenerated (comment change). * generated/_atanh_r16.F90: Regenerated (comment change). * generated/_atanh_r4.F90: Regenerated (comment change). * generated/_atanh_r8.F90: Regenerated (comment change). * generated/_atan_r10.F90: Regenerated (comment change). * generated/_atan_r16.F90: Regenerated (comment change). * generated/_atan_r4.F90: Regenerated (comment change). * generated/_atan_r8.F90: Regenerated (comment change). * generated/_conjg_c10.F90: Regenerated (comment change). * generated/_conjg_c16.F90: Regenerated (comment change). * generated/_conjg_c4.F90: Regenerated (comment change). * generated/_conjg_c8.F90: Regenerated (comment change). * generated/_cosh_r10.F90: Regenerated (comment change). * generated/_cosh_r16.F90: Regenerated (comment change). * generated/_cosh_r4.F90: Regenerated (comment change). * generated/_cosh_r8.F90: Regenerated (comment change). *
[Bug java/48417] -ffixed-regs option can't work in mips-elf-gcj compiler
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48417 --- Comment #7 from Mikael Pettersson mikpe at it dot uu.se 2011-08-28 10:25:41 UTC --- I guess !global_regs[regno] vs !fixed_regs[regno] matters for compilation units that are compiled with -ffixed-$N but where there is no global register variable declaration for $N in scope. Can you construct a C test case which shows that gcc clobbers a register $N even though the file is compiled with -ffixed-$N ?
[Bug debug/50215] [4.7 Regression] FAIL: gcc.dg/guality/pr45882.c
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50215 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2011-08-28 CC||jakub at gcc dot gnu.org Component|middle-end |debug Ever Confirmed|0 |1
[Bug debug/50215] [4.7 Regression] FAIL: gcc.dg/guality/pr45882.c
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50215 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added Status|NEW |ASSIGNED AssignedTo|unassigned at gcc dot |jakub at gcc dot gnu.org |gnu.org | --- Comment #1 from Jakub Jelinek jakub at gcc dot gnu.org 2011-08-28 11:19:39 UTC --- Created attachment 25122 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=25122 gcc47-pr50215.patch Untested fix.
[Bug debug/50215] [4.7 Regression] FAIL: gcc.dg/guality/pr45882.c
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50215 --- Comment #2 from Bernd Schmidt bernds at gcc dot gnu.org 2011-08-28 11:44:05 UTC --- How was this caused by my patch then? I can't even reproduce this here.
[Bug debug/50215] [4.7 Regression] FAIL: gcc.dg/guality/pr45882.c
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50215 --- Comment #3 from Jakub Jelinek jakub at gcc dot gnu.org 2011-08-28 12:01:52 UTC --- I think the rtl.def changes resulted in different hashing of the RTLs in question.
[Bug debug/50215] [4.7 Regression] FAIL: gcc.dg/guality/pr45882.c
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50215 --- Comment #4 from Jakub Jelinek jakub at gcc dot gnu.org 2011-08-28 12:05:51 UTC --- Verified now, without the var-tracking.c fix this: --- rtl.def (revision 178135) +++ rtl.def (working copy) @@ -296,12 +296,6 @@ DEF_RTL_EXPR(CALL, call, ee, RTX_EXT DEF_RTL_EXPR(RETURN, return, , RTX_EXTRA) -/* Like RETURN, but truly represents only a function return, while - RETURN may represent an insn that also performs other functions - of the function epilogue. Like RETURN, this may also occur in - conditional jumps. */ -DEF_RTL_EXPR(SIMPLE_RETURN, simple_return, , RTX_EXTRA) - /* Special for EH return from subroutine. */ DEF_RTL_EXPR(EH_RETURN, eh_return, , RTX_EXTRA) @@ -1284,6 +1278,12 @@ DEF_RTL_EXPR(COND, cond, Ee, RTX_EXT #endif /* GENERATOR_FILE */ +/* Like RETURN, but truly represents only a function return, while + RETURN may represent an insn that also performs other functions + of the function epilogue. Like RETURN, this may also occur in + conditional jumps. */ +DEF_RTL_EXPR(SIMPLE_RETURN, simple_return, , RTX_EXTRA) + /* Local variables: mode:c also fixes it.
[Bug bootstrap/50218] [4.7 regression] tree-ssa-loop-ivopts.c triggers -Werror=maybe-uninitialized breaking i686-linux bootstrap
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50218 --- Comment #2 from vries at gcc dot gnu.org 2011-08-28 12:08:45 UTC --- Author: vries Date: Sun Aug 28 12:08:41 2011 New Revision: 178141 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=178141 Log: 2011-08-28 Mikael Pettersson mi...@it.uu.se PR bootstrap/50218 * tree-ssa-loop-ivopts.c (determine_use_iv_cost_condition): Initialize comp. Modified: trunk/gcc/ChangeLog trunk/gcc/tree-ssa-loop-ivopts.c
[Bug bootstrap/50218] [4.7 regression] tree-ssa-loop-ivopts.c triggers -Werror=maybe-uninitialized breaking i686-linux bootstrap
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50218 vries at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution||FIXED AssignedTo|unassigned at gcc dot |mikpe at it dot uu.se |gnu.org | --- Comment #3 from vries at gcc dot gnu.org 2011-08-28 12:11:09 UTC --- Proposed patch checked in.
[Bug c/50219] New: Combine pass generated wrong code for unsigned char comparison on MIPS target
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50219 Bug #: 50219 Summary: Combine pass generated wrong code for unsigned char comparison on MIPS target Classification: Unclassified Product: gcc Version: 3.4.4 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassig...@gcc.gnu.org ReportedBy: yaoc...@gmail.com Gcc3.4.4 generate wrong MIPS instructions for the codes following when using -O1 and -O2. int test(unsigned char a, int *b) { if(b==NULL) return -1; if(a=0x01 a=0xaf) { *b++; return 0; } else if(a=0xfe) return 1; else return 3; return 4; } In assemble codes, (a=0x01 a=0xaf) correspond to add $8,$8,-1; sltui $8,$8,-81 . According to MIPS instruction manual, sltui $8,$8,-81 means the value in $8 will be compared with the constant 0xFFAF. So when the variable a has a value larger than 0xaf, but sltui $8,$8,-81 make the condition (a=0x01 a=0xaf) hold, and the program flow go into if-body, and get wrong result. It seems to me that when simplify_comparison combining tow rtl insn about the if condition, zero_extend and ltu, the constant was signed-extended. This problem doesn't occur in 2.96 and 4.3, other versions not tested.
[Bug c++/50220] New: [C++0x] ICE when capturing a by-reference template function argument in a lambda
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50220 Bug #: 50220 Summary: [C++0x] ICE when capturing a by-reference template function argument in a lambda Classification: Unclassified Product: gcc Version: unknown Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ AssignedTo: unassig...@gcc.gnu.org ReportedBy: grum...@gmail.com Following code causes an internal compiler error. Changing the function argument from a reference to a value, makes the error go away, using a regular struct instead of a template doesn't trigger it either: $ cat internalbug.cpp templatetypename Foo struct Foobar {}; void foobar(const Foobarvoid obj) { [obj](){}(); } /* EOF */ $ g++-svn -std=c++0x -c internalbug.cpp -o internalbug.o internalbug.cpp: In lambda function: internalbug.cpp:5:10: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See http://gcc.gnu.org/bugs.html for instructions. $ g++-svn --version g++ (GCC) 4.7.0 20110828 (experimental) Copyright (C) 2011 Free Software Foundation, Inc. This is free software; see the source for copying conditions. There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. $ uname -a Linux duo 2.6.38-11-generic #48-Ubuntu SMP Fri Jul 29 19:05:14 UTC 2011 i686 i686 i386 GNU/Linux $ lsb_release -a LSB Version: core-2.0-ia32:core-2.0-noarch:core-3.0-ia32:core-3.0-noarch:core-3.1-ia32:core-3.1-noarch:core-3.2-ia32:core-3.2-noarch:core-4.0-ia32:core-4.0-noarch:cxx-3.0-ia32:cxx-3.0-noarch:cxx-3.1-ia32:cxx-3.1-noarch:cxx-3.2-ia32:cxx-3.2-noarch:cxx-4.0-ia32:cxx-4.0-noarch:desktop-3.1-ia32:desktop-3.1-noarch:desktop-3.2-ia32:desktop-3.2-noarch:desktop-4.0-ia32:desktop-4.0-noarch:graphics-2.0-ia32:graphics-2.0-noarch:graphics-3.0-ia32:graphics-3.0-noarch:graphics-3.1-ia32:graphics-3.1-noarch:graphics-3.2-ia32:graphics-3.2-noarch:graphics-4.0-ia32:graphics-4.0-noarch:languages-3.2-ia32:languages-3.2-noarch:languages-4.0-ia32:languages-4.0-noarch:multimedia-3.2-ia32:multimedia-3.2-noarch:multimedia-4.0-ia32:multimedia-4.0-noarch:printing-3.2-ia32:printing-3.2-noarch:printing-4.0-ia32:printing-4.0-noarch:qt4-3.1-ia32:qt4-3.1-noarch Distributor ID:Ubuntu Description:Ubuntu 11.04 Release:11.04 Codename:natty
[Bug c++/48582] [C++0x] [DR 342] Template non-type arguments doesn't accept null pointer constant value
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48582 --- Comment #2 from Jason Merrill jason at gcc dot gnu.org 2011-08-28 15:38:33 UTC --- Author: jason Date: Sun Aug 28 15:38:29 2011 New Revision: 178144 URL: http://gcc.gnu.org/viewcvs?root=gccview=revrev=178144 Log: Core DR 342 PR c++/48582 * pt.c (check_valid_ptrmem_cst_expr): A null member pointer value is valid in C++11. (convert_nontype_argument): Likewise. Implicitly convert nullptr and do constant folding. * mangle.c (write_template_arg_literal): Mangle null member pointer values as 0. * call.c (null_member_pointer_value_p): New. * cp-tree.h: Declare it. Added: trunk/gcc/testsuite/g++.dg/abi/mangle50.C Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/call.c trunk/gcc/cp/cp-tree.h trunk/gcc/cp/mangle.c trunk/gcc/cp/pt.c trunk/gcc/testsuite/ChangeLog
[Bug c++/48582] [C++0x] [DR 342] Template non-type arguments doesn't accept null pointer constant value
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48582 Jason Merrill jason at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution||FIXED Target Milestone|--- |4.7.0 --- Comment #3 from Jason Merrill jason at gcc dot gnu.org 2011-08-28 15:39:14 UTC --- Implemented for 4.7.
[Bug fortran/50221] New: Allocatable string length fails with array assignment
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50221 Bug #: 50221 Summary: Allocatable string length fails with array assignment Classification: Unclassified Product: gcc Version: 4.6.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: fortran AssignedTo: unassig...@gcc.gnu.org ReportedBy: clivegp...@gmail.com The program below: program testalloc implicit none character(:), allocatable, dimension(:) :: array array = (/'xx', 'yy', 'zz'/) print *, 'array=', array, len(array(1)), size(array) end program Should print out something like: array=xxyyzz 2 3 but with gfortran (v4.6.0) I get array=zz 2 3
[Bug c/50222] New: ICE with -O{1,2} -funswitch-loops -ftree-loop-distribution
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50222 Bug #: 50222 Summary: ICE with -O{1,2} -funswitch-loops -ftree-loop-distribution Classification: Unclassified Product: gcc Version: 4.6.1 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c AssignedTo: unassig...@gcc.gnu.org ReportedBy: franxisco1988+...@gmail.com Created attachment 25123 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=25123 Temporary saved file I'm hitting an ICE in the attached file, the ICE happens with either -O1 and -O2 with gcc being killed for a segmentation fault. Here is the output of $ LANG=C gcc -O1 -funswitch-loops -ftree-loop-distribution -I. -I.. -I../.. nutenc.c -include libavutil/internal.h -I ../../ -c -save-temps -v Using built-in specs. Reading specs from /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/vanilla.specs Reading specs from /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/hardenednossp.specs Reading specs from /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/hardenednopie.specs COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.6.1/gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.6.1/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/configure --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.6.1 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.1 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.1/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.1/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/include/g++-v4 --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec --disable-fixed-point --without-ppl --without-cloog --enable-lto --enable-nls --without-included-gettext --with-system-zlib --disable-werror --enable-secureplt --enable-multilib --enable-libmudflap --disable-libssp --enable-esp --enable-libgomp --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.6.1/python --enable-checking=release --disable-libgcj --enable-languages=c,c++ --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo Hardened 4.6.1-r1 p1.0, pie-0.4.5' Thread model: posix gcc version 4.6.1 (Gentoo Hardened 4.6.1-r1 p1.0, pie-0.4.5) COLLECT_GCC_OPTIONS='-O1' '-funswitch-loops' '-ftree-loop-distribution' '-I' '.' '-I' '..' '-I' '../..' '-include' 'libavutil/internal.h' '-I' '../../' '-c' '-save-temps' '-v' '-mtune=generic' '-march=x86-64' /usr/libexec/gcc/x86_64-pc-linux-gnu/4.6.1/cc1 -E -quiet -v -I . -I .. -I ../.. -I ../../ -include libavutil/internal.h nutenc.c -D_FORTIFY_SOURCE=2 -mtune=generic -march=x86-64 -funswitch-loops -ftree-loop-distribution -O1 -fpch-preprocess -o nutenc.i ignoring nonexistent directory /usr/local/include ignoring nonexistent directory /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/../../../../x86_64-pc-linux-gnu/include ignoring duplicate directory ../../ #include ... search starts here: #include ... search starts here: . .. ../.. /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/include /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/include-fixed /usr/include End of search list. COLLECT_GCC_OPTIONS='-O1' '-funswitch-loops' '-ftree-loop-distribution' '-I' '.' '-I' '..' '-I' '../..' '-include' 'libavutil/internal.h' '-I' '../../' '-c' '-save-temps' '-v' '-mtune=generic' '-march=x86-64' /usr/libexec/gcc/x86_64-pc-linux-gnu/4.6.1/cc1 -fpreprocessed nutenc.i -quiet -dumpbase nutenc.c -mtune=generic -march=x86-64 -auxbase nutenc -O1 -version -funswitch-loops -ftree-loop-distribution -o nutenc.s GNU C (Gentoo Hardened 4.6.1-r1 p1.0, pie-0.4.5) version 4.6.1 (x86_64-pc-linux-gnu) compiled by GNU C version 4.6.1, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 GNU C (Gentoo Hardened 4.6.1-r1 p1.0, pie-0.4.5) version 4.6.1 (x86_64-pc-linux-gnu) compiled by GNU C version 4.6.1, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: ee3b77d3e57fd2e78f1e57adb19b4a68 nutenc.c: In function 'write_header': nutenc.c:580:12: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See http://bugs.gentoo.org/ for instructions. And the output of $ LANG=C gcc -O2 -funswitch-loops -ftree-loop-distribution -I. -I.. -I../.. nutenc.c -include libavutil/internal.h -I ../../ -c -save-temps -v Using built-in specs. Reading specs from /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/vanilla.specs Reading specs from /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/hardenednossp.specs Reading specs from /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/hardenednopie.specs
[Bug target/50193] ARM: ICE on a | (b negative-constant)
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50193 --- Comment #1 from Michael Hope michael.hope at linaro dot org 2011-08-28 21:40:01 UTC --- Also occurs when building LLVM trunk. See: http://builds.linaro.org/toolchain/llvm-3.0~svn138625/logs/armv7l-natty-cbuild172-ursa1-cortexa9r1/llvm-build.txt /scratch/cbuild/slave/slaves/ursa1/llvm-3.0~svn138625/llvm/llvm-3.0~/tools/clang/unittests/AST/APValueTest.cpp: In member function 'virtual void {anonymous}::APValue_Diagnostics_Test::TestBody()': /scratch/cbuild/slave/slaves/ursa1/llvm-3.0~svn138625/llvm/llvm-3.0~/tools/clang/unittests/AST/APValueTest.cpp:77:1: error: insn does not satisfy its constraints: (insn 1267 1266 1269 72 (set (subreg:SI (reg:DI 1327) 0) (ior:SI (ashift:SI (reg:SI 1330) (const_int -16 [0xfff0])) (subreg:SI (reg:DI 1327) 0))) /scratch/cbuild/slave/slaves/ursa1/llvm-3.0~svn138625/llvm/llvm-3.0~/include/llvm/ADT/APInt.h:140 257 {*arith_shiftsi} (nil)) /scratch/cbuild/slave/slaves/ursa1/llvm-3.0~svn138625/llvm/llvm-3.0~/tools/clang/unittests/AST/APValueTest.cpp:77:1: internal compiler error: in extract_constrain_insn_cached, at recog.c:2028
[Bug c/50222] ICE with -O{1,2} -funswitch-loops -ftree-loop-distribution
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50222 --- Comment #1 from klondike franxisco1988+gcc at gmail dot com 2011-08-28 22:08:56 UTC --- Just for the record I can reproduce this with vanilla gcc: # LANG=C gcc -O2 -funswitch-loops -ftree-loop-distribution -I. -I.. -I../.. nutenc.c -include libavutil/internal.h -I ../../ -c -save-temps -v Using built-in specs. COLLECT_GCC=/usr/x86_64-pc-linux-gnu/gcc-bin/4.6.1/gcc COLLECT_LTO_WRAPPER=/usr/libexec/gcc/x86_64-pc-linux-gnu/4.6.1/lto-wrapper Target: x86_64-pc-linux-gnu Configured with: /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/configure --prefix=/usr --bindir=/usr/x86_64-pc-linux-gnu/gcc-bin/4.6.1 --includedir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/include --datadir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.1 --mandir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.1/man --infodir=/usr/share/gcc-data/x86_64-pc-linux-gnu/4.6.1/info --with-gxx-include-dir=/usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/include/g++-v4 --host=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu --disable-altivec --disable-fixed-point --without-ppl --without-cloog --enable-lto --enable-nls --without-included-gettext --with-system-zlib --disable-werror --enable-secureplt --enable-multilib --enable-libmudflap --disable-libssp --enable-libgomp --with-python-dir=/share/gcc-data/x86_64-pc-linux-gnu/4.6.1/python --enable-checking=release --disable-libgcj --enable-languages=c,c++ --enable-shared --enable-threads=posix --enable-__cxa_atexit --enable-clocale=gnu --with-bugurl=http://bugs.gentoo.org/ --with-pkgversion='Gentoo 4.6.1-r1' Thread model: posix gcc version 4.6.1 (Gentoo 4.6.1-r1) COLLECT_GCC_OPTIONS='-O2' '-funswitch-loops' '-ftree-loop-distribution' '-I' '.' '-I' '..' '-I' '../..' '-include' 'libavutil/internal.h' '-I' '../../' '-c' '-save-temps' '-v' '-mtune=generic' '-march=x86-64' /usr/libexec/gcc/x86_64-pc-linux-gnu/4.6.1/cc1 -E -quiet -v -I . -I .. -I ../.. -I ../../ -include libavutil/internal.h nutenc.c -mtune=generic -march=x86-64 -funswitch-loops -ftree-loop-distribution -O2 -fpch-preprocess -o nutenc.i ignoring nonexistent directory /usr/local/include ignoring nonexistent directory /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/../../../../x86_64-pc-linux-gnu/include ignoring duplicate directory ../../ #include ... search starts here: #include ... search starts here: . .. ../.. /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/include /usr/lib/gcc/x86_64-pc-linux-gnu/4.6.1/include-fixed /usr/include End of search list. COLLECT_GCC_OPTIONS='-O2' '-funswitch-loops' '-ftree-loop-distribution' '-I' '.' '-I' '..' '-I' '../..' '-include' 'libavutil/internal.h' '-I' '../../' '-c' '-save-temps' '-v' '-mtune=generic' '-march=x86-64' /usr/libexec/gcc/x86_64-pc-linux-gnu/4.6.1/cc1 -fpreprocessed nutenc.i -quiet -dumpbase nutenc.c -mtune=generic -march=x86-64 -auxbase nutenc -O2 -version -funswitch-loops -ftree-loop-distribution -o nutenc.s GNU C (Gentoo 4.6.1-r1) version 4.6.1 (x86_64-pc-linux-gnu) compiled by GNU C version 4.6.1, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 GNU C (Gentoo 4.6.1-r1) version 4.6.1 (x86_64-pc-linux-gnu) compiled by GNU C version 4.6.1, GMP version 5.0.2, MPFR version 3.0.1-p4, MPC version 0.8.2 GGC heuristics: --param ggc-min-expand=100 --param ggc-min-heapsize=131072 Compiler executable checksum: ddaf27b7508d5ce8d54dc64b17e05c96 nutenc.c: In function 'write_header': nutenc.c:580:12: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See http://bugs.gentoo.org/ for instructions. (gdb) bt #0 0x0081fb8f in rename_use_op (bb=0x76794410) at /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/gcc/tree-vect-loop-manip.c:55 #1 rename_variables_in_bb (bb=0x76794410) at /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/gcc/tree-vect-loop-manip.c:95 #2 0x0081fbce in rename_variables_in_loop (loop=0x76750a18) at /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/gcc/tree-vect-loop-manip.c:111 #3 0x0075f27a in copy_loop_before (loop=value optimized out, stmts=value optimized out) at /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/gcc/tree-loop-distribution.c:137 #4 generate_loops_for_partition (loop=value optimized out, stmts=value optimized out) at /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/gcc/tree-loop-distribution.c:171 #5 generate_code_for_partition (loop=value optimized out, stmts=value optimized out) at /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/gcc/tree-loop-distribution.c:395 #6 ldist_gen (loop=value optimized out, stmts=value optimized out) at /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/gcc/tree-loop-distribution.c:1133 #7 distribute_loop (loop=value optimized out, stmts=value optimized out) at /var/tmp/portage/sys-devel/gcc-4.6.1-r1/work/gcc-4.6.1/gcc/tree-loop-distribution.c:1218 #8
[Bug c/50223] New: AVRGCC - dont clear r26 and r27.....its a (small) waste of CPU cycles.
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50223 Bug #: 50223 Summary: AVRGCC - dont clear r26 and r27.its a (small) waste of CPU cycles. Classification: Unclassified Product: gcc Version: unknown Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: c AssignedTo: unassig...@gcc.gnu.org ReportedBy: nickpar...@eaton.com Host: PC Windows XP Target: AVR Mega 128 Build: avr-gcc (WinAVR 20100110) 4.3.3 Dont clear r26 and r27.its a (small) waste of CPU cycles. Regards, Nick. This function normalises a 32bit unsigned integer and returns the number of shifts. uint8_t ldgZeroCntNormU32(uint32_t * x) { uint8_t zCount=0; uint8_t shft; uint32_t quad; quad=*x; while (!(uint8_t)(quad 24)) { zCount += 8; quad =8; } shft = pgm_read_byte(leadingZeros[(uint8_t)(quad 24)]); *x = quad shft; return (zCount + shft); } .file divu16u16.c 2__SREG__ = 0x3f 3__SP_H__ = 0x3e 4__SP_L__ = 0x3d 5__CCP__ = 0x34 6__tmp_reg__ = 0 7__zero_reg__ = 1 15.Ltext0: 16.global ldgZeroCntNormU32 18ldgZeroCntNormU32: 19.LFB12: 20.LM1: 21.LVL0: 22 CF93 push r28 23 0002 DF93 push r29 24/* prologue: function */ 25/* frame size = 0 */ 26 0004 EC01 movw r28,r24 27.LM2: 28 0006 2881 ld r18,Y 29 0008 3981 ldd r19,Y+1 30 000a 4A81 ldd r20,Y+2 31 000c 5B81 ldd r21,Y+3 32.LVL1: 33.LM3: 34 000e 852F mov r24,r21 35 0010 9927 clr r25 36 0012 AA27 clr r26 37 0014 BB27 clr r27 38.LVL2: 39 0016 E82F mov r30,r24 40 0018 8823 tst r24 41 001a 01F4 brne .L8 42 001c 60E0 ldi r22,lo8(0) 43.LVL3: 44.L4: 45.LM4: 46 001e 685F subi r22,lo8(-(8)) 47.LM5: 48 0020 542F mov r21,r20 49 0022 432F mov r20,r19 50 0024 322F mov r19,r18 51 0026 2227 clr r18 52.LM6: 53 0028 852F mov r24,r21 54 002a 9927 clr r25 55 002c AA27 clr r26 56 002e BB27 clr r27 57 0030 E82F mov r30,r24 58 0032 8823 tst r24 59 0034 01F0 breq .L4 60.L3: 61.LBB2: 62.LM7: 63 0036 F0E0 ldi r31,lo8(0) 64 0038 E050 subi r30,lo8(-(leadingZeros)) 65 003a F040 sbci r31,hi8(-(leadingZeros)) 66/* #APP */ 67 ; 111 divu16u16.c 1 68 003c E491 lpm r30, Z 69 70 ; 0 2 71.LVL4: 72/* #NOAPP */ 73.LBE2: 74.LM8: 75 003e 0E2E mov r0,r30 76 0040 00C0 rjmp 2f 77 0042 220F 1: lsl r18 78 0044 331F rol r19 79 0046 441F rol r20 80 0048 551F rol r21 81 004a 0A94 2: dec r0 82 004c 02F4 brpl 1b 83 004e 2883 st Y,r18 84 0050 3983 std Y+1,r19 85 0052 4A83 std Y+2,r20 86 0054 5B83 std Y+3,r21 87.LM9: 88 0056 8E2F mov r24,r30 89 0058 860F add r24,r22 90/* epilogue start */ 91 005a DF91 pop r29 92 005c CF91 pop r28 93.LVL5: 94 005e 0895 ret
[Bug target/50194] wrong tail call optimization for mixed arm/thumb mode
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50194 Doug Kwan dougkwan at google dot com changed: What|Removed |Added CC||dougkwan at google dot com --- Comment #2 from Doug Kwan dougkwan at google dot com 2011-08-29 02:50:20 UTC --- Did you try -fuse-ld=bfd to see if this problem appear in both linkers?
[Bug tree-optimization/50204] [4.5/4.6/4.7 Regression] Missed fully redundant load found in crafty (SPEC 2k)
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50204 --- Comment #2 from Andrew Pinski pinskia at gcc dot gnu.org 2011-08-29 03:00:48 UTC --- Created attachment 25124 -- http://gcc.gnu.org/bugzilla/attachment.cgi?id=25124 Patch which was tested on x86_64 without any regressions Note I am going to add this patch here as the copyright assignment for Cavium is not completed yet (though it is in the process of clearing up). This implements what is mentioned in comment #1 and was tested on x86_64-linux-gnu with no regressions. I don't know what the compile time slow down that happens yet and have not added any testcases but it works on the testcase attached to the bug. I also have not checked what the performance increase on SPEC would be.