[Bug rtl-optimization/62151] [5 Regression] wrong code at -O2 and -O3 on x86_64-linux-gnu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62151 --- Comment #14 from amker at gcc dot gnu.org --- Working on a patch.
[Bug c/64249] New: Missing warning for if (A) else if (A)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64249 Bug ID: 64249 Summary: Missing warning for if (A) else if (A) Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: mpolacek at gcc dot gnu.org E.g. here we should warn: if (conditionX) { } else if (conditionY) ... when the two conditions don't have side-effects and are operand_equal_p. Cf. https://gcc.gnu.org/ml/gcc-patches/2014-12/msg00875.html
[Bug tree-optimization/61686] Incorrect check in comparison function range_entry_cmp() in tree_ssa_reassoc.c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61686 Marek Polacek mpolacek at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2014-12-10 CC||mpolacek at gcc dot gnu.org Assignee|unassigned at gcc dot gnu.org |mpolacek at gcc dot gnu.org Target Milestone|--- |4.8.4 Ever confirmed|0 |1 --- Comment #1 from Marek Polacek mpolacek at gcc dot gnu.org --- I'm fixing this.
[Bug tree-optimization/61686] Incorrect check in comparison function range_entry_cmp() in tree_ssa_reassoc.c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61686 --- Comment #2 from Marek Polacek mpolacek at gcc dot gnu.org --- Author: mpolacek Date: Wed Dec 10 08:20:43 2014 New Revision: 218560 URL: https://gcc.gnu.org/viewcvs?rev=218560root=gccview=rev Log: PR tree-optimization/61686 * tree-ssa-reassoc.c (range_entry_cmp): Use q-high instead of p-high. Modified: trunk/gcc/ChangeLog trunk/gcc/tree-ssa-reassoc.c
[Bug tree-optimization/61686] Incorrect check in comparison function range_entry_cmp() in tree_ssa_reassoc.c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61686 --- Comment #3 from Marek Polacek mpolacek at gcc dot gnu.org --- Author: mpolacek Date: Wed Dec 10 08:24:22 2014 New Revision: 218561 URL: https://gcc.gnu.org/viewcvs?rev=218561root=gccview=rev Log: PR tree-optimization/61686 * tree-ssa-reassoc.c (range_entry_cmp): Use q-high instead of p-high. Modified: branches/gcc-4_9-branch/gcc/ChangeLog branches/gcc-4_9-branch/gcc/tree-ssa-reassoc.c
[Bug tree-optimization/61686] Incorrect check in comparison function range_entry_cmp() in tree_ssa_reassoc.c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61686 --- Comment #4 from Marek Polacek mpolacek at gcc dot gnu.org --- Author: mpolacek Date: Wed Dec 10 08:29:44 2014 New Revision: 218562 URL: https://gcc.gnu.org/viewcvs?rev=218562root=gccview=rev Log: PR tree-optimization/61686 * tree-ssa-reassoc.c (range_entry_cmp): Use q-high instead of p-high. Modified: branches/gcc-4_8-branch/gcc/ChangeLog branches/gcc-4_8-branch/gcc/tree-ssa-reassoc.c
[Bug tree-optimization/61686] Incorrect check in comparison function range_entry_cmp() in tree_ssa_reassoc.c
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61686 Marek Polacek mpolacek at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #5 from Marek Polacek mpolacek at gcc dot gnu.org --- Fixed.
[Bug target/53513] [SH] Add support for fschg and fpchg insns and improve fenv support
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=53513 --- Comment #43 from Oleg Endo olegendo at gcc dot gnu.org --- Author: olegendo Date: Wed Dec 10 08:31:32 2014 New Revision: 218563 URL: https://gcc.gnu.org/viewcvs?rev=218563root=gccview=rev Log: gcc/ PR target/53513 * doc/extend.texi (__builtin_sh_set_fpscr): Fix typo. Modified: trunk/gcc/ChangeLog trunk/gcc/doc/extend.texi
[Bug middle-end/50865] Invalid code generation for INT64_MIN % 1 on x86_64
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=50865 Marek Polacek mpolacek at gcc dot gnu.org changed: What|Removed |Added CC||mpolacek at gcc dot gnu.org Component|tree-optimization |middle-end Target Milestone|--- |4.8.4 Severity|blocker |normal
[Bug c/64250] New: Missing warning for if (AA AA) / same expression multiple times used
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64250 Bug ID: 64250 Summary: Missing warning for if (AA AA) / same expression multiple times used Product: gcc Version: 5.0 Status: UNCONFIRMED Keywords: diagnostic Severity: normal Priority: P3 Component: c Assignee: unassigned at gcc dot gnu.org Reporter: burnus at gcc dot gnu.org CC: mpolacek at gcc dot gnu.org Related to PR64249. The following code gives the cppcheck warning: [foo.c:2] - [foo.c:2]: (style) Same expression on both sides of ''. I couldn't get GCC to warn for this. (Real-world code, I assume it should be a check for 'a' 'l' 'l'.) Similar: A check for ||. int foo(const char *argument) { if (argument[0] == 'a' argument[0] == 'a' argument[0] == 'a') return 1; return 0; }
[Bug c/63357] Warn for P P and P || P
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63357 Marek Polacek mpolacek at gcc dot gnu.org changed: What|Removed |Added CC||burnus at gcc dot gnu.org --- Comment #2 from Marek Polacek mpolacek at gcc dot gnu.org --- *** Bug 64250 has been marked as a duplicate of this bug. ***
[Bug c/64250] Missing warning for if (AA AA) / same expression multiple times used
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64250 Marek Polacek mpolacek at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|--- |DUPLICATE --- Comment #1 from Marek Polacek mpolacek at gcc dot gnu.org --- This RFE is already tracked in PR63357 I filed while back. *** This bug has been marked as a duplicate of bug 63357 ***
[Bug fortran/63413] cpp trying to expand vector word in commented line in fortran file on power8
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63413 Tobias Burnus burnus at gcc dot gnu.org changed: What|Removed |Added CC||burnus at gcc dot gnu.org --- Comment #3 from Tobias Burnus burnus at gcc dot gnu.org --- By the way, cpp -dM /dev/null shows all predefined macros - there should be also a definition for 'vector', I presume. (On my system, there isn't.) You could try processing the file with -undef, which should drastically reduce the number of defines. OR, looking at the code below, you could try: -std= (such as c90, cf. man cpp), which seems to disable the vector expansion. What's missing is a proper Fortran support in libcpp, which is able to handle Fortran comments etc. That's tracked, e.g., in PR 28662. * * * Code wise, it comes from the following code in gcc/config/spu/spu-c.c: if (!flag_iso) { /* Define this when supporting context-sensitive keywords. */ cpp_define (pfile, __VECTOR_KEYWORD_SUPPORTED__); cpp_define (pfile, vector=vector); /* Initialize vector keywords. */ __vector_keyword = get_identifier (__vector); C_CPP_HASHNODE (__vector_keyword)-flags |= NODE_CONDITIONAL; vector_keyword = get_identifier (vector); C_CPP_HASHNODE (vector_keyword)-flags |= NODE_CONDITIONAL; /* Enable context-sensitive macros. */ cpp_get_callbacks (pfile)-macro_to_expand = spu_macro_to_expand; }
[Bug target/63594] [5 Regression] ICE: in ix86_vector_duplicate_value, at config/i386/i386.c:39831 with -mavx512f
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63594 --- Comment #14 from Jakub Jelinek jakub at gcc dot gnu.org --- Author: jakub Date: Wed Dec 10 09:00:50 2014 New Revision: 218565 URL: https://gcc.gnu.org/viewcvs?rev=218565root=gccview=rev Log: PR target/63594 * config/i386/sse.md (vec_dupv4sf): Move after mask_codeforavx512_vec_dup_gprmodemask_name pattern. (*vec_dupv4si, *vec_dupv2di): Likewise. (mask_codeforavx512_vec_dup_memmodemask_name): Merge into ... (mask_codeforavx512_vec_dup_gprmodemask_name): ... this pattern. (*vec_dupmode AVX2_VEC_DUP_MODE splitter): Disable for TARGET_AVX512VL (for QI/HI scalar modes only if TARGET_AVX512BW is set too). * config/i386/i386.c (enum ix86_builtins): Remove IX86_BUILTIN_PBROADCASTQ256_MEM_MASK, IX86_BUILTIN_PBROADCASTQ128_MEM_MASK and IX86_BUILTIN_PBROADCASTQ512_MEM. (bdesc_args): Use __builtin_ia32_pbroadcastq512_gpr_mask, __builtin_ia32_pbroadcastq256_gpr_mask and __builtin_ia32_pbroadcastq128_gpr_mask instead of *_mem_mask regardless of OPTION_MASK_ISA_64BIT. * config/i386/avx512fintrin.h (_mm512_set1_epi64, _mm512_mask_set1_epi64, _mm512_maskz_set1_epi64): Use *_gpr_mask builtins regardless of whether TARGET_64BIT is defined or not. * config/i386/avx512vlintrin.h (_mm256_mask_set1_epi64, _mm256_maskz_set1_epi64, _mm_mask_set1_epi64, _mm_maskz_set1_epi64): Likewise. Modified: trunk/gcc/ChangeLog trunk/gcc/config/i386/avx512fintrin.h trunk/gcc/config/i386/avx512vlintrin.h trunk/gcc/config/i386/i386.c trunk/gcc/config/i386/sse.md
[Bug c/63357] Warn for P P and P || P (same expression used multiple times in a condition)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63357 Tobias Burnus burnus at gcc dot gnu.org changed: What|Removed |Added Summary|Warn for P P and P || P |Warn for P P and P || P ||(same expression used ||multiple times in a ||condition) --- Comment #3 from Tobias Burnus burnus at gcc dot gnu.org --- Augmented summary to make it better searchable. See also related PR64249.
[Bug c++/64191] [4.9/5 Regression] indirect clobbers messes up dead code elimination in loop calling dtor
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64191 --- Comment #13 from Richard Biener rguenth at gcc dot gnu.org --- Author: rguenth Date: Wed Dec 10 09:29:05 2014 New Revision: 218566 URL: https://gcc.gnu.org/viewcvs?rev=218566root=gccview=rev Log: 2014-12-10 Richard Biener rguent...@suse.de PR tree-optimization/64191 * tree-ssa-dce.c (mark_stmt_if_obviously_necessary): Do not mark clobbers as necessary. (eliminate_unnecessary_stmts): Keep clobbers live if we can. * g++.dg/pr64191.C: Make sure we can DCE empty loops with indirect clobbers. Added: trunk/gcc/testsuite/g++.dg/pr64191.C Modified: trunk/gcc/ChangeLog trunk/gcc/testsuite/ChangeLog trunk/gcc/tree-ssa-dce.c
[Bug c++/64191] [4.9 Regression] indirect clobbers messes up dead code elimination in loop calling dtor
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64191 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Known to work||5.0 Summary|[4.9/5 Regression] indirect |[4.9 Regression] indirect |clobbers messes up dead |clobbers messes up dead |code elimination in loop|code elimination in loop |calling dtor|calling dtor Known to fail||4.9.2 --- Comment #14 from Richard Biener rguenth at gcc dot gnu.org --- Fixed on trunk sofar.
[Bug tree-optimization/42108] [4.8/4.9/5 Regression] 50% performance regression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42108 --- Comment #61 from Richard Biener rguenth at gcc dot gnu.org --- (In reply to Richard Biener from comment #60) Ok, so I have a patch that teaches LIM to move the division by using the value-range information we now store. Which can't be done this way ... (the value-range is only valid in the place it was computed, not where LIM may move it to)
[Bug middle-end/64246] [5 Regression] ICE building libada for Windows due to NULL loop header
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64246 --- Comment #1 from rguenther at suse dot de rguenther at suse dot de --- On Wed, 10 Dec 2014, matt at gwalski dot com wrote: https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64246 Bug ID: 64246 Summary: [5 Regression] ICE building libada for Windows due to NULL loop header Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: major Priority: P3 Component: middle-end Assignee: unassigned at gcc dot gnu.org Reporter: matt at gwalski dot com CC: rguenther at suse dot de Host: x86_64-linux-gnu Target: i686-w64-mingw32 Build: x86_64-linux-gnu Attempting to build trunk SVN version 218496 supporting C,C++, and Ada fails with the following: /home/matt/buildgcc/./gcc/xgcc -B/home/matt/buildgcc/./gcc/ -L/usr/local/i686-w64-mingw32/lib -L/usr/local/mingw/lib -isystem /usr/local/i686-w64-mingw32/include -isystem /usr/local/mingw/include -B/usr/local/i686-w64-mingw32/bin/ -B/usr/local/i686-w64-mingw32/lib/ -isystem /usr/local/i686-w64-mingw32/include -isystem /usr/local/i686-w64-mingw32/sys-include-c -g -O2 -W -Wall -gnatpg -nostdinc g-awk.adb -o g-awk.o +===GNAT BUG DETECTED==+ | 5.0.0 20141208 (experimental) (i686-w64-mingw32) GCC error: | | in fix_loop_structure, at loop-init.c:263| | Error detected around g-awk.adb:727:8| | Please submit a bug report; see http://gcc.gnu.org/bugs.html.| | Use a subject line meaningful to you and us to track the bug.| | Include the entire contents of this bug box in the report. | | Include the exact command that you entered. | | Also include sources listed below. | +==+ Please include these source files with error report Note that list may not be accurate in some cases, so please double check that the problem can still be reproduced with the set of files listed. Consider also -gnatd.n switch (see debug.adb). system.ads g-awk.adb g-awk.ads gnat.ads ada.ads a-finali.ads s-finroo.ads g-regpat.ads s-regpat.ads a-except.ads s-parame.ads s-stalib.ads a-unccon.ads s-traent.ads a-textio.ads a-ioexce.ads a-stream.ads s-ficobl.ads interfac.ads i-cstrea.ads s-crtl.ads s-wchcon.ads a-string.ads a-strunb.ads a-strmap.ads a-charac.ads a-chlat1.ads s-atocou.ads a-strfix.ads a-uncdea.ads g-dirope.ads g-dyntab.ads g-os_lib.ads s-os_lib.ads s-string.ads s-exctab.ads a-tags.ads s-stoele.ads s-soflin.ads s-stache.ads s-finmas.ads s-stopoo.ads s-pooglo.ads s-unstyp.ads s-stratt.ads s-secsta.ads s-stposu.ads s-ststop.ads s-imgint.ads s-valint.ads s-valrea.ads g-dyntab.adb g-hesorg.ads s-memory.ads g-hesorg.adb s-stoele.adb raised TYPES.UNRECOVERABLE_ERROR : comperr.adb:423 make[4]: *** [g-awk.o] Error 1 It's hitting an assert added in r214957/r215012. I've been able to bootstrap a x86_64-linux-gnu Ada compiler fine with a revision that fails for i686-w64-mingw32. I believe I'm also seeing the error building a native i686-w64-mingw32 (bootstrap or no bootstrap) Ada compiler. Configuration options: configure --build=x86_64-linux-gnu --enable-shared --enable-static --disable-multilib --enable-threads=posix --enable-fully-dynamic-string --enable-sjlj-exceptions --enable-libgomp --enable-languages=c,c++,ada,lto --target=i686-w64-mingw32 --host=x86_64-linux-gnu Ok, trying to compile a cross compiler to reproduce the above seems to require target headers which I dont' have. I've built the ada compiler itself so can you please attach the files referenced above?
[Bug sanitizer/59009] libsanitizer merge from upstream r191666 breaks bootstrap on powerpc64-linux
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59009 Jiong Wang jiwang at gcc dot gnu.org changed: What|Removed |Added CC||jiwang at gcc dot gnu.org --- Comment #46 from Jiong Wang jiwang at gcc dot gnu.org --- (In reply to Andrew Pinski from comment #44) (In reply to Sandra Loosemore from comment #43) I'm seeing the same errors as in Comment 8 (complaints about arrays with negative sizes) when building a cross for aarch64-linux-gnu from mainline head. I'm confused about the status of this issue -- is there an uncommitted patch out there somewhere? Yes there is a missing patch for aarch64 with the later kernel header files. the bootstrap failure on aarch64 is caused by type mismatch. in libsanitizer/sanitizer_common/sanitizer_platform_limits_posix.h __kernel_old_uid_t should be unsigned int on aarch64, while it's defined as unsigned short thus triggered the assertion failure.
[Bug c++/64251] New: [5 Regression] Chromium build error only with --enable-checking=yes
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64251 Bug ID: 64251 Summary: [5 Regression] Chromium build error only with --enable-checking=yes Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: trippels at gcc dot gnu.org Created attachment 34237 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34237action=edit unreduced testcase Chromium build fails with a compiler configured with: ../gcc/configure --disable-libsanitizer --disable-bootstrap --disable-libstdcxx-pch --disable-libvtv --disable-libitm --disable-libcilkrts --disable-libssp --disable-libgomp --disable-werror --disable-multilib --enable-languages=c,c++ markus@x4 Release % g++ -O2 -std=c++11 -c devtools_protocol_dispatcher.ii In file included from ../../content/browser/devtools/protocol/devtools_protocol_handler.h:8:0, from gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.cc:11: gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.h: In instantiation of ‘base::Value* content::devtools::CreateValue(const T) [with T = base::DictionaryValue]’: gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.h:45:31: required from ‘base::Value* content::devtools::CreateValue(std::vector_RealType) [with T = base::DictionaryValue]’ gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.h:1140:36: required from here gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.h:28:42: error: no matching function for call to ‘base::FundamentalValue::FundamentalValue(const base::DictionaryValue)’ return new base::FundamentalValue(param); ^ In file included from ../../content/browser/devtools/protocol/devtools_protocol_client.h:9:0, from gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.h:14, from ../../content/browser/devtools/protocol/devtools_protocol_handler.h:8, from gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.cc:11: ../../base/values.h:123:12: note: candidate: base::FundamentalValue::FundamentalValue(double) explicit FundamentalValue(double in_value); ^ ../../base/values.h:123:12: note: no known conversion for argument 1 from ‘const base::DictionaryValue’ to ‘double’ ../../base/values.h:122:12: note: candidate: base::FundamentalValue::FundamentalValue(int) explicit FundamentalValue(int in_value); ^ ../../base/values.h:122:12: note: no known conversion for argument 1 from ‘const base::DictionaryValue’ to ‘int’ ../../base/values.h:121:12: note: candidate: base::FundamentalValue::FundamentalValue(bool) explicit FundamentalValue(bool in_value); ^ ../../base/values.h:121:12: note: no known conversion for argument 1 from ‘const base::DictionaryValue’ to ‘bool’ ../../base/values.h:119:7: note: candidate: base::FundamentalValue::FundamentalValue(const base::FundamentalValue) class BASE_EXPORT FundamentalValue : public Value { ^ ../../base/values.h:119:7: note: no known conversion for argument 1 from ‘const base::DictionaryValue’ to ‘const base::FundamentalValue’ In file included from ../../content/browser/devtools/protocol/devtools_protocol_client.h:9:0, from gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.h:14, from ../../content/browser/devtools/protocol/devtools_protocol_handler.h:8, from gen/content/browser/devtools/protocol/devtools_protocol_dispatcher.cc:11: /usr/lib/gcc/x86_64-pc-linux-gnu/5.0.0/include/g++-v5/bits/stl_construct.h: In instantiation of ‘void std::_Construct(_T1*, _Args ...) [with _T1 = base::DictionaryValue; _Args = {const base::DictionaryValue}]’: /usr/lib/gcc/x86_64-pc-linux-gnu/5.0.0/include/g++-v5/bits/stl_uninitialized.h:75:18: required from ‘static _ForwardIterator std::__uninitialized_copy_TrivialValueTypes::__uninit_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iteratorconst base::DictionaryValue*, std::vectorbase::DictionaryValue ; _ForwardIterator = base::DictionaryValue*; bool _TrivialValueTypes = false]’ /usr/lib/gcc/x86_64-pc-linux-gnu/5.0.0/include/g++-v5/bits/stl_uninitialized.h:125:15: required from ‘_ForwardIterator std::uninitialized_copy(_InputIterator, _InputIterator, _ForwardIterator) [with _InputIterator = __gnu_cxx::__normal_iteratorconst base::DictionaryValue*, std::vectorbase::DictionaryValue ; _ForwardIterator = base::DictionaryValue*]’ /usr/lib/gcc/x86_64-pc-linux-gnu/5.0.0/include/g++-v5/bits/stl_uninitialized.h:280:37: required from ‘_ForwardIterator std::__uninitialized_copy_a(_InputIterator, _InputIterator, _ForwardIterator, std::allocator_Tp) [with _InputIterator =
[Bug target/64252] New: [5 Regression] expand_vec_perm_pblendv caused miscompilation
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64252 Bug ID: 64252 Summary: [5 Regression] expand_vec_perm_pblendv caused miscompilation Product: gcc Version: 5.0 Status: UNCONFIRMED Keywords: wrong-code Severity: normal Priority: P3 Component: target Assignee: unassigned at gcc dot gnu.org Reporter: jakub at gcc dot gnu.org As Evgeny reported on gcc-patches, the following testcase is miscompiled on the trunk with -O2 -mavx2: typedef unsigned int V __attribute__((vector_size (32))); __attribute__((noinline, noclone)) void foo (V *a, V *b, V *c, V *d, V *e) { V t = __builtin_shuffle (*a, *b, *c); V v = __builtin_shuffle (t, (V) { ~0U, ~0U, ~0U, ~0U, ~0U, ~0U, ~0U, ~0U }, (V) { 0, 1, 8, 3, 4, 5, 9, 7 }); v = v + *d; *e = v; } int main () { V a, b, c, d, e; int i; a = (V) { 1, 2, 3, 4, 5, 6, 7, 8 }; b = (V) { 9, 10, 11, 12, 13, 14, 15, 16 }; c = (V) { 1, 3, 5, 7, 9, 11, 13, 15 }; d = (V) { 0, 0, 0, 0, 0, 0, 0, 0 }; foo (a, b, c, d, e); for (i = 0; i 8; i++) if (e[i] != ((i == 2 || i == 6) ? ~0U : 2 + 2 * i)) __builtin_abort (); return 0; }
[Bug c++/64251] [5 Regression] Chromium build error only with --enable-checking=yes
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64251 --- Comment #1 from Markus Trippelsdorf trippels at gcc dot gnu.org --- For example: markus@x4 /tmp % cat foo.ii class DictionaryValue {}; template typename T void CreateValue(T) { DictionaryValue(0); CreateValue(0); } markus@x4 /tmp % checking-release/g++ -std=c++11 -c foo.ii markus@x4 /tmp % checking-yes/g++ -std=c++11 -c foo.ii foo.ii: In instantiation of ‘void CreateValue(T) [with T = int]’: foo.ii:4:17: required from here foo.ii:3:4: error: no matching function for call to ‘DictionaryValue::DictionaryValue(int)’ DictionaryValue(0); ^ foo.ii:1:7: note: candidate: constexpr DictionaryValue::DictionaryValue() class DictionaryValue {}; ^ foo.ii:1:7: note: candidate expects 0 arguments, 1 provided foo.ii:1:7: note: candidate: constexpr DictionaryValue::DictionaryValue(const DictionaryValue) foo.ii:1:7: note: no known conversion for argument 1 from ‘int’ to ‘const DictionaryValue’ foo.ii:1:7: note: candidate: constexpr DictionaryValue::DictionaryValue(DictionaryValue) foo.ii:1:7: note: no known conversion for argument 1 from ‘int’ to ‘DictionaryValue’
[Bug bootstrap/64023] [5 Regression] r216964 breaks bootstrap on darwin when using gcc as the bootstrap compiler.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64023 Dominique d'Humieres dominiq at lps dot ens.fr changed: What|Removed |Added CC||law at redhat dot com --- Comment #5 from Dominique d'Humieres dominiq at lps dot ens.fr --- A working patch as been committed at https://gcc.gnu.org/ml/gcc/2014-12/msg00044.html. Could it be reviewed?
[Bug sanitizer/59009] libsanitizer merge from upstream r191666 breaks bootstrap on powerpc64-linux and aarch64-linux
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59009 --- Comment #47 from Jiong Wang jiwang at gcc dot gnu.org --- (In reply to Andrew Pinski from comment #44) (In reply to Sandra Loosemore from comment #43) I'm seeing the same errors as in Comment 8 (complaints about arrays with negative sizes) when building a cross for aarch64-linux-gnu from mainline head. I'm confused about the status of this issue -- is there an uncommitted patch out there somewhere? Yes there is a missing patch for aarch64 with the later kernel header files. aha...found the discussion. for those interested on AArch64, the missing patch is at https://gcc.gnu.org/ml/gcc-patches/2014-10/msg02571.html
[Bug target/63950] [AArch64] ICE at -O0 on vld1_lane intrinsics
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63950 alalaw01 at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED --- Comment #1 from alalaw01 at gcc dot gnu.org --- Author: alalaw01 Date: Tue Dec 9 19:37:18 2014 New Revision: 218531 URL: https://gcc.gnu.org/viewcvs?rev=218531root=gccview=rev Log: [AArch64]Fix ICE at -O0 on vld1_lane intrinsics gcc/: * config/aarch64/arm_neon.h (__AARCH64_NUM_LANES, __aarch64_lane *2): New. (aarch64_vset_lane_any): Redefine using previous, same for BE + LE. (vset_lane_f32, vset_lane_f64, vset_lane_p8, vset_lane_p16, vset_lane_s8, vset_lane_s16, vset_lane_s32, vset_lane_s64, vset_lane_u8, vset_lane_u16, vset_lane_u32, vset_lane_u64): Remove number of lanes. (vld1_lane_f32, vld1_lane_f64, vld1_lane_p8, vld1_lane_p16, vld1_lane_s8, vld1_lane_s16, vld1_lane_s32, vld1_lane_s64, vld1_lane_u8, vld1_lane_u16, vld1_lane_u32, vld1_lane_u64): Call __aarch64_vset_lane_any rather than vset_lane_xxx. gcc/testsuite/: * gcc.target/aarch64/vld1_lane-o0.c: New test.
[Bug target/64160] msp430 code generation error adding 32-bit integers
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64160 --- Comment #5 from Peter A. Bigot pab at pabigot dot com --- Thanks, Ulrich: that's a better explanation of what makes me uncomfortable with that part of the machine description. We have a complex split pattern that's the sole user of an idiosyncratic predicate. It supports a set of other patterns that are introduced with a comment starting with we are playing a dangerous game with GCC here and going on to suggest we put in some hacks to fix the situations we found where it didn't work. It only works on SI, not QI (and yes people do use 64-bit integer operations on this target). It's only done for add, not subtract. It's not clear why subregs are to be excluded from the overall concept of eliminating partial results. Basically, the whole set of patterns exposing carry looks like an attempt to optimize what's produced by a specific source-level expression, instead of a carefully constructed transformation designed to match the capabilities of the target ISA. As MSP430 user I'd rather see it pulled and replaced with something simple that works even if it isn't optimal: in mspgcc I just generated an ADD (SUB) followed by a sequence of ADDC (SUBC) determined by operand size and that worked out fine. Fixing the inefficiencies described in https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64027 would provide more value than special-casing 32-bit add operations.
[Bug target/63870] [Aarch64] [ARM] Errors in use of NEON intrinsics are reported incorrectly
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63870 alalaw01 at gcc dot gnu.org changed: What|Removed |Added CC||alalaw01 at gcc dot gnu.org --- Comment #4 from alalaw01 at gcc dot gnu.org --- (Apologies for out-of-orderness, I missed PRs from logs so adding by hand) Author: alalaw01 Date: Tue Dec 9 19:52:22 2014 Revision: 218532 https://gcc.gnu.org/viewcvs?rev=218532root=gccview=rev Log: [AArch64] Fix ICE on non-constant indices to __builtin_aarch64_im_lane_boundsi gcc/: * config/aarch64/aarch64-builtins.c (aarch64_types_binopv_qualifiers, TYPES_BINOPV): Delete. (enum aarch64_builtins): Add AARCH64_BUILTIN_SIMD_LANE_CHECK and AARCH64_SIMD_PATTERN_START. (aarch64_init_simd_builtins): Register __builtin_aarch64_im_lane_boundsi; use AARCH64_SIMD_PATTERN_START. (aarch64_simd_expand_builtin): Handle AARCH64_BUILTIN_LANE_CHECK; use AARCH64_SIMD_PATTERN_START. * config/aarch64/aarch64-simd.md (aarch64_im_lane_boundsi): Delete. * config/aarch64/aarch64-simd-builtins.def (im_lane_bound): Delete. * config/aarch64/arm_neon.h (__AARCH64_LANE_CHECK): New. (__aarch64_vget_lane_f64, __aarch64_vget_lane_s64, __aarch64_vget_lane_u64, __aarch64_vset_lane_any, vdupd_lane_f64, vdupd_lane_s64, vdupd_lane_u64, vext_f32, vext_f64, vext_p8, vext_p16, vext_s8, vext_s16, vext_s32, vext_s64, vext_u8, vext_u16, vext_u32, vext_u64, vextq_f32, vextq_f64, vextq_p8, vextq_p16, vextq_s8, vextq_s16, vextq_s32, vextq_s64, vextq_u8, vextq_u16, vextq_u32, vextq_u64, vmulq_lane_f64): Use __AARCH64_LANE_CHECK. gcc/testsuite/: * gcc.target/aarch64/simd/vset_lane_s16_const_1.c: New test.
[Bug c++/64100] A static assert using the the current class in a noexcept test leads to a segfault
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64100 --- Comment #6 from Kai Tietz ktietz at gcc dot gnu.org --- Author: ktietz Date: Wed Dec 10 11:22:34 2014 New Revision: 218571 URL: https://gcc.gnu.org/viewcvs?rev=218571root=gccview=rev Log: PR c++/64100 * typeck.c (lookup_destructor): Handle incomplete type. Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/typeck.c
[Bug c/64249] Missing warning for if (A) else if (A)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64249 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2014-12-10 CC||jakub at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Jakub Jelinek jakub at gcc dot gnu.org --- Perhaps we shouldn't warn if conditionX is diagnosed for other reasons (always true or always false). And, if (conditionZ) { ... } else if (conditionX) { ... } else if (conditionX) { ... } else { ... } should be of course diagnosed too.
[Bug c++/64100] A static assert using the the current class in a noexcept test leads to a segfault
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64100 --- Comment #7 from Kai Tietz ktietz at gcc dot gnu.org --- Author: ktietz Date: Wed Dec 10 11:26:47 2014 New Revision: 218572 URL: https://gcc.gnu.org/viewcvs?rev=218572root=gccview=rev Log: PR c++/64100 * g++.dg/template/pr64100.C: New file. Added: trunk/gcc/testsuite/g++.dg/template/pr64100.C Modified: trunk/gcc/testsuite/ChangeLog
[Bug c++/64127] [5 regression] ICE on invalid: tree check: expected identifier_node, have template_id_expr in cp_parser_diagnose_invalid_type_name, at cp/parser.c:2980
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64127 --- Comment #5 from Kai Tietz ktietz at gcc dot gnu.org --- Author: ktietz Date: Wed Dec 10 11:29:22 2014 New Revision: 218573 URL: https://gcc.gnu.org/viewcvs?rev=218573root=gccview=rev Log: PR c++/64127 * parser.c (cp_parser_diagnose_invalid_type_name): Check id for being an identifier before accessing it. Modified: trunk/gcc/cp/ChangeLog trunk/gcc/cp/parser.c
[Bug c++/64127] [5 regression] ICE on invalid: tree check: expected identifier_node, have template_id_expr in cp_parser_diagnose_invalid_type_name, at cp/parser.c:2980
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64127 --- Comment #6 from Kai Tietz ktietz at gcc dot gnu.org --- Author: ktietz Date: Wed Dec 10 11:32:00 2014 New Revision: 218574 URL: https://gcc.gnu.org/viewcvs?rev=218574root=gccview=rev Log: PR c++/64127 * g++.dg/cpp/pr64127.C: New file. Added: trunk/gcc/testsuite/g++.dg/cpp/pr64127.C Modified: trunk/gcc/testsuite/ChangeLog
[Bug c++/64127] [5 regression] ICE on invalid: tree check: expected identifier_node, have template_id_expr in cp_parser_diagnose_invalid_type_name, at cp/parser.c:2980
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64127 Kai Tietz ktietz at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED --- Comment #7 from Kai Tietz ktietz at gcc dot gnu.org --- Fixed.
[Bug fortran/59765] [4.9/5 Regression] [OOP] ICE on valid with finalizable array components
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59765 Alexander Vogt a.vogt at fulguritus dot com changed: What|Removed |Added CC||a.vogt at fulguritus dot com --- Comment #12 from Alexander Vogt a.vogt at fulguritus dot com --- Is there any update on this? This regression currently prohibits moving to 4.9.x for my code :( Thanks a lot!
[Bug tree-optimization/42108] [4.8/4.9/5 Regression] 50% performance regression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42108 --- Comment #62 from Richard Biener rguenth at gcc dot gnu.org --- Created attachment 34238 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34238action=edit frontend patch So the issue is that the division is executed conditionally because it is placed after the loop entry check. The frontend generates if (step 0) { if (to from) goto exit_label; countm1 = (to - from) / step; } else { if (to from) goto exit_label; countm1 = (from - to) / -step; } which ends up optimized to (as step is known to be positive here): if (to from) { countm1 = (to - from) / step; ...loop... if we instead generate if (step 0) { countm1 = (to - from) / step; if (to from) goto exit_label; } else { countm1 = (from - to) / -step; if (to from) goto exit_label; } the division can be hoisted out of the outer loop (at the cost of computing countm1 even when the loop is not entered -- but that would have happened if the desired transform happened anyway). Note that if step 0 cannot be optimized we still have the same issue, so in theory we could generate if (step 0) { tem1 = (to - from); tem2 = step; } else { tem1 = (from - to); tem2 = -step; } countm1 = tem1 / tem2; if (step 0) { if (to from) goto exit_label; } else { if (to from) goto exit_label; } but hoisting the division with conditional computed operands is a lot more expensive (but possible for exactly two ops, and likely done). The runtime overhead from the above is one extra branch. If we do that then unfortunately jump threading undoes that change creating the first variant again.
[Bug tree-optimization/42108] [4.8/4.9/5 Regression] 50% performance regression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=42108 --- Comment #63 from Richard Biener rguenth at gcc dot gnu.org --- Created attachment 34239 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34239action=edit LIM patch This is a patch to loop invariant motion I was playing with to use range information to move a stmt up to a place where we can determine the range information is still correct. Unfortunately for the testcase this doesn't allow moving the division at all and we are lucky that we have range information at all because of the fortran frontend casting 'n' to unsigned before dividing by it. Another possibility is to (finally) teach LIM to hoist code which conditional execution status needs to be preserved by guarding the hoisted code with that conditional code. Thus hoist a / b as either b != 0 ? a / b : 0(?) or as execution condition ? a / b : 0. Where for this case the condition of execution is probably more complex than testing the denominator for zero (thus testing the condition under which we have to preserve execution). Followup optimizations then eventually can get rid of that condition.
[Bug target/64252] [5 Regression] expand_vec_perm_pblendv caused miscompilation
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64252 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Target||x86_64-*-*, i?86-*-* Priority|P3 |P1 Target Milestone|--- |5.0
[Bug c++/64251] [5 Regression] Chromium build error only with --enable-checking=yes
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64251 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||rejects-valid Priority|P3 |P1 Target Milestone|--- |5.0
[Bug c++/64248] [5 Regression] Error: declarator-id missing; using reserved word ‘__FUNCTION__’
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64248 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||rejects-valid Priority|P3 |P1
[Bug middle-end/64247] program result depends on environment ?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64247 --- Comment #1 from Richard Biener rguenth at gcc dot gnu.org --- Are you sure you are not using uninitialized memory? try using the various -fsanitize flags (not sure if uninit memory use is in =address or =undefined).
[Bug middle-end/64247] program result depends on environment ?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64247 Joost VandeVondele Joost.VandeVondele at mat dot ethz.ch changed: What|Removed |Added CC||Joost.VandeVondele at mat dot ethz ||.ch --- Comment #2 from Joost VandeVondele Joost.VandeVondele at mat dot ethz.ch --- (In reply to Richard Biener from comment #1) Are you sure you are not using uninitialized memory? try using the various -fsanitize flags (not sure if uninit memory use is in =address or =undefined). yes, tried that, also clean (in addition to valgrind).
[Bug middle-end/64246] [5 Regression] ICE building libada for Windows due to NULL loop header
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64246 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |WAITING Last reconfirmed||2014-12-10 Assignee|unassigned at gcc dot gnu.org |rguenth at gcc dot gnu.org Target Milestone|--- |5.0 Ever confirmed|0 |1
[Bug middle-end/64247] program result depends on environment ?
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64247 --- Comment #3 from Joost VandeVondele Joost.VandeVondele at mat dot ethz.ch --- (In reply to Richard Biener from comment #1) Are you sure you are not using uninitialized memory? try using the various -fsanitize flags (not sure if uninit memory use is in =address or =undefined). as a ps, uninit memory use in is neither, that would require memsan, which is not ported to gcc.
[Bug target/64240] [5.0 Regression][AArch64] SMS-3.c causes runtime exception(segfault).
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64240 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||wrong-code Target Milestone|--- |5.0
[Bug c++/56493] [4.8/4.9/5 Regression] Performance regression in google dense hashmap
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56493 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED Known to fail||4.8.3, 4.9.2 --- Comment #23 from Richard Biener rguenth at gcc dot gnu.org --- Fixed.
[Bug tree-optimization/56982] [4.8 Regression] Bad optimization with setjmp()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56982 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED Target Milestone|4.8.4 |4.9.0 Known to fail||4.8.4 --- Comment #18 from Richard Biener rguenth at gcc dot gnu.org --- wontfix for 4.8, the fix triggered very many latent issues.
[Bug rtl-optimization/57067] Missing control flow edges for setjmp/longjmp
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57067 Bug 57067 depends on bug 56982, which changed state. Bug 56982 Summary: [4.8 Regression] Bad optimization with setjmp() https://gcc.gnu.org/bugzilla/show_bug.cgi?id=56982 What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED
[Bug debug/57481] [4.8 Regression] LTO VTA compile time hog
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57481 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug tree-optimization/57511] [4.8 Regression] Missing SCEV final value replacement
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57511 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED Target Milestone|4.8.4 |4.9.0 Known to fail||4.8.4 --- Comment #11 from Richard Biener rguenth at gcc dot gnu.org --- Fixed for 4.9, not backporting for said reasons and dependencies.
[Bug middle-end/55555] [4.8 Regression] miscompilation at -O2 (number_of_iterations)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=5 Bug 5 depends on bug 57511, which changed state. Bug 57511 Summary: [4.8 Regression] Missing SCEV final value replacement https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57511 What|Removed |Added Status|ASSIGNED|RESOLVED Resolution|--- |FIXED
[Bug rtl-optimization/57518] [4.8 Regression] Redundant insn generated in LRA
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57518 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||missed-optimization Priority|P3 |P2
[Bug go/57689] [4.8 Regression] ICE (segfault) building libgo on ia64-linux-gnu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57689 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |WAITING Last reconfirmed||2014-12-10 Ever confirmed|0 |1 --- Comment #6 from Richard Biener rguenth at gcc dot gnu.org --- Does it work for later 4.8 versions?
[Bug tree-optimization/57985] [4.8 Regression] ICE in cgraph_function_node with -fprofile-arcs -O2
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57985 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug rtl-optimization/58048] [4.8 Regression] internal compiler error: Max. number of generated reload insns per insn is achieved (90)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58048 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Target||x86_64-*-*, i?86-*-* Priority|P3 |P2
[Bug c++/58170] [4.8 Regression] [c++11] Crash when aliasing a template class that is a member of its template base class.
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58170 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug rtl-optimization/58369] [4.8 regression] ICE in subreg_get_info when compiling boost for m68k-linux
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58369 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug lto/58251] [4.8 Regression] -flto causes ICE lto1: internal compiler error: in splice_child_die, at dwarf2out.c:4706
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58251 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug other/58375] [4.8 Regression] internal compiler error: in push_reload, at reload.c:1360
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58375 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P4
[Bug rtl-optimization/58545] [4.8 Regression] error: unable to find a register to spill in class 'POINTER_REGS'
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58545 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P4
[Bug tree-optimization/58957] [4.8 Regression] compilation slow at -O3 on x86_64-linux-gnu (both 32-bit and 64-bit modes)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58957 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug c++/59004] [4.8 Regression] ICE generated by __func__
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59004 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug c++/59248] [4.8 regression] pointless -Wconversion warning with sizeof, take 2
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59248 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||diagnostic Priority|P3 |P2
[Bug tree-optimization/59374] [4.8 Regression] -ftree-slp-vectorize breaks unique_ptr's move constructor
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59374 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug middle-end/59630] [4.8 Regression] ICE converting the return type of a builtin function
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=59630 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug middle-end/60291] [4.8 Regression] slow compile times for any mode (-O0/-O1/-O2) on large .c source file (30MBs)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60291 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2 Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #21 from Richard Biener rguenth at gcc dot gnu.org --- I think we can declare this fixed as far as possible on the 4.8 branch.
[Bug fortran/60576] [4.8 Regression] FAIL: gfortran.dg/assumed_rank_7.f90
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60576 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P4
[Bug target/60617] [4.8 Regression] unable to find a register to spill in class 'LO_REGS'
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60617 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||ra Target||arm Priority|P3 |P2
[Bug rtl-optimization/60769] [4.8 Regression] ICE: Max. number of generated reload insns per insn is achieved (90)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=60769 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #7 from Richard Biener rguenth at gcc dot gnu.org --- Fixed.
[Bug debug/61033] [4.8/4.9 Regression] Infinite loop in variable tracking
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61033 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug tree-optimization/61068] [4.8 Regression] -O3 generates bad code (when tree-vectorize or inline-functions is on)
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61068 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||wrong-code Priority|P3 |P2
[Bug ipa/61190] [4.8/4.9 Regression] g++.old-deja/g++.mike/p4736b.C FAILs at -O2/-Os/-O3
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61190 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug bootstrap/61388] [4.8 Regression] linux/microblaze fails to build: undefined machine-specific constraint at this point: Q
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61388 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|--- |FIXED --- Comment #9 from Richard Biener rguenth at gcc dot gnu.org --- Assuming fixed then.
[Bug tree-optimization/61634] [4.8/4.9 Regression] ICE in in vect_get_vec_def_for_operand, at tree-vect-stmts.c:1423
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61634 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug tree-optimization/61680] [4.8 Regression] vectorization gives wrong answer for sandybridge target
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61680 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug c++/62255] [4.8/4.9 Regression] Introducing an unrelated template parameter causes compilation to fail
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62255 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||rejects-valid Priority|P3 |P2
[Bug other/62284] [4.8 Regression] AVR unable to find register to spill in the class POINTER_REGS
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62284 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P4
[Bug target/62642] [4.8/4.9/5 Regression] x86 rdtsc is moved through barrier
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62642 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||ra Target||i?86-*-* Priority|P3 |P2 CC||vmakarov at gcc dot gnu.org Summary|[4.8/4.9 Regression] x86|[4.8/4.9/5 Regression] x86 |rdtsc is moved through |rdtsc is moved through |barrier |barrier --- Comment #2 from Richard Biener rguenth at gcc dot gnu.org --- Confirmed on trunk.
[Bug target/63408] [4.8/4.9/5 regression] GCC emits incorrect fixed-fp conversion instruction on Cortex-M4 target
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63408 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||wrong-code Priority|P3 |P2 Summary|[4.8 regression] GCC emits |[4.8/4.9/5 regression] GCC |incorrect fixed-fp |emits incorrect fixed-fp |conversion instruction on |conversion instruction on |Cortex-M4 target|Cortex-M4 target --- Comment #4 from Richard Biener rguenth at gcc dot gnu.org --- But supposedly not only on the 4.8 branch.
[Bug debug/63505] [4.8/4.9 Regression] ICE with -fdebug-types-section in should_move_die_to_comdat, at dwarf2out.c:6702
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63505 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2 Status|UNCONFIRMED |NEW Last reconfirmed||2014-12-10 Component|other |debug Ever confirmed|0 |1 --- Comment #1 from Richard Biener rguenth at gcc dot gnu.org --- Confirmed.
[Bug c++/63522] [4.8/4.9/5] ICE: unexpected expression 'ElementIndices' of kind template_parm_index
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63522 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||ice-on-invalid-code Target Milestone|4.8.4 |---
[Bug c++/63584] [4.8/4.9 Regression] ICE in strip_typedefs, at cp/tree.c:1326
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63584 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||ice-on-valid-code Priority|P3 |P2 Target Milestone|4.8.5 |4.8.4
[Bug middle-end/63608] [4.8/4.9 Regression] error: type mismatch in binary expression
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63608 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||ice-checking, ||ice-on-valid-code Priority|P3 |P2 CC||ebotcazou at gcc dot gnu.org
[Bug tree-optimization/63841] [4.8 Regression] Incorrect strlen optimization after complete unroll
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63841 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Status|REOPENED|RESOLVED Resolution|--- |FIXED --- Comment #13 from Richard Biener rguenth at gcc dot gnu.org --- Fixed.
[Bug tree-optimization/63844] [4.8/4.9 Regression] open mp parallelization prevents vectorization
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63844 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug c++/64035] [C++11] ICE in reshape_init_r when using initializer list aggregate initialization for default function parameters
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64035 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Target Milestone|4.8.4 |--- Summary|[4.8/4.9/5 Regression] |[C++11] ICE in |[C++11] ICE in |reshape_init_r when using |reshape_init_r when using |initializer list aggregate |initializer list aggregate |initialization for default |initialization for default |function parameters |function parameters | Known to fail||4.8.3, 5.0 --- Comment #2 from Richard Biener rguenth at gcc dot gnu.org --- But 4.7 rejects it so there is no version that works. How's it a regression?
[Bug rtl-optimization/64037] [4.8/4.9/5 Regression] Miscompilation with -Os and enum class : char parameter
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64037 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug tree-optimization/64199] [4.8/4.9 Regression] ICE: tree check: expected class 'constant', have 'binary' (plus_expr) in fold_binary_loc, at fold-const.c:10404 with -ffast-math -frounding-math
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64199 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Priority|P3 |P2
[Bug middle-end/64225] [4.8/4.9 Regression] -funsafe-math-optimizations generates call to pow where multiply instruction would do
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64225 Richard Biener rguenth at gcc dot gnu.org changed: What|Removed |Added Keywords||missed-optimization Priority|P3 |P2 Known to work||5.0 Summary|[4.8/4.9/5 Regression] |[4.8/4.9 Regression] |-funsafe-math-optimizations |-funsafe-math-optimizations |generates call to pow where |generates call to pow where |multiply instruction would |multiply instruction would |do |do Known to fail|5.0 | --- Comment #14 from Richard Biener rguenth at gcc dot gnu.org --- Fixed on trunk sofar.
[Bug c++/52145] [C++11] [DR 903] zero-valued integer constant expression should prefer conversion to pointer
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=52145 Jonathan Wakely redi at gcc dot gnu.org changed: What|Removed |Added Keywords||accepts-invalid --- Comment #8 from Jonathan Wakely redi at gcc dot gnu.org --- DR 903 is a DR against C++11 ([diff.cpp03.conv] identifies it as an incompatibility with C++03, not with C++11). Clang also implements DR 903 in C++11 mode.
[Bug libstdc++/64239] regex_iterator::operator= should copy match_results::position
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64239 Jonathan Wakely redi at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed||2014-12-10 CC||timshen at gcc dot gnu.org Ever confirmed|0 |1 --- Comment #1 from Jonathan Wakely redi at gcc dot gnu.org --- The problem is that match_results::_M_in_iterator is always false after copy/moving a match_results object. I don't even understand what that member is for or what's name means. Tim?
[Bug tree-optimization/62021] ICE in verify_gimple_assign_single
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=62021 Jakub Jelinek jakub at gcc dot gnu.org changed: What|Removed |Added Status|NEW |ASSIGNED Assignee|unassigned at gcc dot gnu.org |jakub at gcc dot gnu.org --- Comment #6 from Jakub Jelinek jakub at gcc dot gnu.org --- Created attachment 34240 -- https://gcc.gnu.org/bugzilla/attachment.cgi?id=34240action=edit gcc5-pr62021.patch Untested fix.
[Bug libstdc++/64239] regex_iterator::operator= should copy match_results::position
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64239 --- Comment #2 from Jonathan Wakely redi at gcc dot gnu.org --- match_results::swap() fails to handle _M_in_iterator as well.
[Bug ipa/64253] New: [5 Regression] IPA inline analysis processes a code transform operation
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64253 Bug ID: 64253 Summary: [5 Regression] IPA inline analysis processes a code transform operation Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: ipa Assignee: unassigned at gcc dot gnu.org Reporter: marxin at gcc dot gnu.org CC: hubicka at ucw dot cz Hello. I created this issue as underlying problem for PR63909, where one can find a testcase. Problem is that a BB is split here: #0 gsi_split_seq_before (i=0x7fffd550, pnew_seq=0x7fffd528) at ../../gcc/gimple-iterator.c:429 #1 0x00b95a2a in gimple_split_block (bb=0x76c41548, stmt=0x0) at ../../gcc/tree-cfg.c:5707 #2 0x007563cf in split_block (bb=0x76c41548, i=i@entry=0x0) at ../../gcc/cfghooks.c:508 #3 0x00756b44 in split_block_after_labels (bb=optimized out) at ../../gcc/cfghooks.c:549 #4 make_forwarder_block (bb=optimized out, redirect_edge_p=redirect_edge_p@entry=0x75d4e0 mfb_keep_just(edge_def*), new_bb_cbk=new_bb_cbk@entry=0x0) at ../../gcc/cfghooks.c:842 #5 0x0076085a in create_preheader (loop=0x76d56948, flags=optimized out) at ../../gcc/cfgloopmanip.c:1563 #6 0x00760aea in create_preheaders (flags=1) at ../../gcc/cfgloopmanip.c:1613 #7 0x009bc6b0 in apply_loop_flags (flags=15) at ../../gcc/loop-init.c:75 #8 0x009bc7d3 in loop_optimizer_init (flags=15) at ../../gcc/loop-init.c:136 #9 0x00957914 in estimate_function_body_sizes (node=0x76c47620, early=false) at ../../gcc/ipa-inline-analysis.c:2480 #10 0x0095948b in compute_inline_parameters (node=0x76c47620, early=false) at ../../gcc/ipa-inline-analysis.c:2907 #11 0x0095bd88 in inline_analyze_function (node=0x76c47620) at ../../gcc/ipa-inline-analysis.c:3994 #12 0x0095bed3 in inline_generate_summary () at ../../gcc/ipa-inline-analysis.c:4045 #13 0x00a70b71 in execute_ipa_summary_passes (ipa_pass=0x1dcb9e0) Thanks, Martin
[Bug ipa/64253] [5 Regression] IPA inline analysis processes a code transform operation
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64253 Martin Liška marxin at gcc dot gnu.org changed: What|Removed |Added CC||marxin at gcc dot gnu.org Target Milestone|--- |5.0
[Bug ipa/64253] [5 Regression] IPA inline analysis processes a code transform operation
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64253 --- Comment #1 from Richard Biener rguenth at gcc dot gnu.org --- The issue is probably latent on branches (where nobody cares though).
[Bug ipa/63909] [5 Regression] ICE: SIGSEGV in ipa_icf_gimple::func_checker::compare_bb()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63909 --- Comment #2 from Martin Liška marxin at gcc dot gnu.org --- Author: marxin Date: Wed Dec 10 14:07:47 2014 New Revision: 218578 URL: https://gcc.gnu.org/viewcvs?rev=218578root=gccview=rev Log: PR ipa/63909 * gimple-iterator.h (gsi_start_bb_nondebug): New function. * ipa-icf-gimple.c (func_checker::compare_bb): Correct iteration replaces loop based on precomputed number of non-debug statements. * gcc.dg/ipa/pr63909.c: New test. Added: trunk/gcc/testsuite/gcc.dg/ipa/pr63909.c Modified: trunk/gcc/ChangeLog trunk/gcc/gimple-iterator.h trunk/gcc/ipa-icf-gimple.c trunk/gcc/testsuite/ChangeLog
[Bug ipa/63909] [5 Regression] ICE: SIGSEGV in ipa_icf_gimple::func_checker::compare_bb()
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=63909 Martin Liška marxin at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED Resolution|--- |FIXED --- Comment #3 from Martin Liška marxin at gcc dot gnu.org --- Fixed.
[Bug go/57689] [4.8 Regression] ICE (segfault) building libgo on ia64-linux-gnu
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=57689 --- Comment #7 from Matthias Klose doko at gcc dot gnu.org --- sorry, can't say anymore. Debian dropped ia64, and I don't have access anymore to any hardware.
[Bug middle-end/64182] [5 Regression] wide-int rounding division is broken
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64182 rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Last reconfirmed||2014-12-10 Ever confirmed|0 |1 --- Comment #3 from rsandifo at gcc dot gnu.org rsandifo at gcc dot gnu.org --- (In reply to Jakub Jelinek from comment #1) Created attachment 34222 [details] gcc5-pr64182.patch So like this (completely untested so far)? I'm hoping that remainder can't be ever for signed numbers equal to minimum signed value and thus hopefully wi::abs nor lshift of that by 1 should overflow. For UNSIGNED, not sure if wi::neg_p () is the right test for whether lshift by 1 will overflow. Looks OK to me, but I wonder if we could just use: wi::geu_p (y, remainder - y) for unsigned, and similarly with abses for signed, which avoids having to worry about overflow. Will try.