[Bug tree-optimization/58006] [4.8/4.9 Regression] ICE compiling VegaStrike with -ffast-math -ftree-parallelize-loops=2

2013-07-27 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58006 Marc Glisse changed: What|Removed |Added Status|WAITING |NEW Summary|ICE regression compi

[Bug c++/57945] [4.9 Regression] ICE: in varpool_get_node, at cgraph.h:840

2013-07-27 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=57945 Marc Glisse changed: What|Removed |Added Keywords||ice-on-invalid-code Status|UNCO

[Bug tree-optimization/58006] [4.8/4.9 Regression] ICE compiling VegaStrike with -ffast-math -ftree-parallelize-loops=2

2013-07-28 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58006 --- Comment #5 from Marc Glisse --- extern "C" float sqrtf (float); extern int a; extern int b; struct Vector { float i; float j; float Magnitude() const { return sqrtf( i*i+j*j ); } }; void f(){ int i = a; int end = b; for (;

[Bug c/58019] Problem with -O3 optimization

2013-07-29 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58019 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |WAITING Last reconfirmed|

[Bug tree-optimization/58223] [4.8/4.9 Regression] wrong code at -O3 on x86_64-linux-gnu

2013-08-23 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58223 Marc Glisse changed: What|Removed |Added Keywords||wrong-code Status|UNCONFIRMED

[Bug c/58236] -Wuninitialized doesn't report uninitialised variable as expected

2013-08-24 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58236 --- Comment #1 from Marc Glisse --- Note, from the documentation of -Wuninitialized: "Because these warnings depend on optimization, the exact variables or elements for which there are warnings depends on the precise optimization options and vers

[Bug c++/53025] [C++11] noexcept operator depends on copy-elision

2013-08-25 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53025 --- Comment #4 from Marc Glisse --- (In reply to Daniel Krügler from comment #3) > IMO it is important to fix at, because otherwise > it does have the potential to subtly change overload selection (if noexcept > is used as part of sfinae) and othe

[Bug c/58240] GCC optimize strncmp when N=1 incorrectly

2013-08-25 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58240 --- Comment #4 from Marc Glisse --- -fno-builtin (or some better such option)? strncmp is a standard function, your code redefining it has undefined behavior. gcc optimizes based on the standard behavior of the function.

[Bug c/58240] GCC optimize strncmp when N=1 incorrectly

2013-08-26 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58240 --- Comment #11 from Marc Glisse --- (In reply to shiyan from comment #7) > Thank you for the suggestion. Yes, I know -fno-builtin can work around it. I > can think of many possible ways to work around itbut whatever, it is a > bug. in your c

[Bug regression/58244] global variable: many THOUSANDS times slower execution

2013-08-26 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58244 --- Comment #3 from Marc Glisse --- With auxval local, the compiler knows that computing suma, etc is useless and removes all that code, including the calls to sin. So you would like the compiler to do the same for a global auxval? That requires t

[Bug middle-end/57219] __builtin_isinf_sign source comments more restrictive than documentation

2013-08-27 Thread glisse at gcc dot gnu.org
||glisse at gcc dot gnu.org Resolution|--- |FIXED --- Comment #2 from Marc Glisse --- r202021 | glisse | 2013-08-27 14:39:21 +0200 (Tue, 27 Aug 2013) | 7 lines 2013-08-27 Marc Glisse PR middle-end/57219 * doc/extend.texi

[Bug c/58275] __builtin_constant_p( expr ) returns true if expr is eliminated by CSE

2013-08-29 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58275 --- Comment #1 from Marc Glisse --- Where do you see a bug? The test argc!=23 is always true in this branch, so it *is* a compile-time constant. It is very much on purpose that __builtin_constant_p returns true.

[Bug rtl-optimization/58210] 400.perlbench fails with ICE

2013-09-04 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58210 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #1

[Bug tree-optimization/54855] Unnecessary duplication when performing scalar operation on vector element

2013-09-06 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54855 --- Comment #8 from Marc Glisse --- Just adding a link to the latest message of the conversation, for future reference: http://gcc.gnu.org/ml/gcc-patches/2012-12/msg00824.html

[Bug libstdc++/51965] Redundant move constructions in heap algorithms

2013-09-06 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51965 --- Comment #9 from Marc Glisse --- Most recent discussion about this: http://gcc.gnu.org/ml/libstdc++/2013-07/msg00105.html

[Bug c++/19476] Missed null checking elimination with new

2013-09-06 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19476 --- Comment #13 from Marc Glisse --- Without adding an attribute, can we identify those operator new that may not return 0? Is DECL_IS_OPERATOR_NEW && !TREE_NOTHROW good enough, or completely wrong? I am basing this on: "If the request succeeds,

[Bug libstdc++/58338] New: Add noexcept to functions with a narrow contract

2013-09-06 Thread glisse at gcc dot gnu.org
: enhancement Priority: P3 Component: libstdc++ Assignee: unassigned at gcc dot gnu.org Reporter: glisse at gcc dot gnu.org Hello, the standard only requires a noexcept specifier on functions with a wide contract, to allow some debug implementations of functions with a

[Bug bootstrap/58340] [4.9 regression] gcc/cp/pt.c:7064:1: internal compiler error: in propagate_threaded_block_debug_into, at tree-ssa-threadedge.c:623

2013-09-06 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58340 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug bootstrap/58340] [4.9 regression] gcc/cp/pt.c:7064:1: internal compiler error: in propagate_threaded_block_debug_into, at tree-ssa-threadedge.c:623

2013-09-06 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58340 --- Comment #5 from Marc Glisse --- (In reply to Jeffrey A. Law from comment #3) > Just to be sure, what version of the trunk are both of you using? 202346 for me. Configured with --prefix=... --with-system-zlib --disable-nls --enable-libstdcxx-t

[Bug rtl-optimization/58210] 400.perlbench fails with ICE

2013-09-07 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58210 --- Comment #4 from Marc Glisse --- Now that PR 58137 is fixed, can you still reproduce? Note that not everyone has access to spec benchmarks.

[Bug regression/58244] global variable: many THOUSANDS times slower execution

2013-09-07 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58244 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug libstdc++/58358] search_n has a Complexity violation for random access iterator

2013-09-07 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58358 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug middle-end/50385] missed-optimization: jump to __builtin_unreachable() not removed

2013-09-08 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=50385 --- Comment #2 from Marc Glisse --- This seems to work on current trunk. Can you confirm, and if so close the PR? (well, we may want to add the testcases)

[Bug tree-optimization/58359] New: __builtin_unreachable prevents vectorization

2013-09-08 Thread glisse at gcc dot gnu.org
Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: glisse at gcc dot gnu.org void f(int*q){ int*p=(int*)__builtin_assume_aligned(q,32); for(int i=0;i<(1<<20);++i){ if(p+i==0)__builtin_unreachable();

[Bug c++/58362] New: Wrong column number for unused parameter

2013-09-08 Thread glisse at gcc dot gnu.org
: P3 Component: c++ Assignee: unassigned at gcc dot gnu.org Reporter: glisse at gcc dot gnu.org void f (long s) { } y.cc:1:6: warning: unused parameter 's' [-Wunused-parameter] void f (long s) { } ^ Note the column information, which should point to s

[Bug c++/58362] Wrong column number for unused parameter

2013-09-08 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58362 --- Comment #2 from Marc Glisse --- (In reply to Paolo Carlini from comment #1) > Maybe it's just me, but I don't understand what -ignored- means in this > context, could you please explain? It means that the diagnostic machinery takes the column

[Bug libstdc++/58358] [4.7/4.8/4.9 Regression] search_n has a Complexity violation for random access iterator

2013-09-08 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58358 --- Comment #11 from Marc Glisse --- (In reply to Daniel Krügler from comment #9) > Shouldn't the library be able to use the new diamond operators > (specializations in void) that use perfect forwarding for both arguments and > result? User-code c

[Bug c++/58362] Wrong column number for unused parameter

2013-09-08 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58362 --- Comment #6 from Marc Glisse --- (In reply to Paolo Carlini from comment #4) > The damage happens at error.c:3435. Yes, location_of replaces the declaration of the argument with that of the function :-( > Should we just use "%qD", no '+' ? I

[Bug libstdc++/58358] [4.7/4.8/4.9 Regression] search_n has a Complexity violation for random access iterator

2013-09-08 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58358 --- Comment #12 from Marc Glisse --- Chris, did you consider applying this optimized code to bidirectional iterators and not just random access iterators? We may end up doing a few more ++/-- than necessary, but not by more than a factor 2 I belie

[Bug rtl-optimization/58365] likely wrong code bug

2013-09-08 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58365 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug tree-optimization/58364] [4.8/4.9 Regression] likely wrong code bug

2013-09-08 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58364 Marc Glisse changed: What|Removed |Added Keywords||wrong-code Status|UNCONFIRMED

[Bug middle-end/58385] likely wrong code bug

2013-09-10 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58385 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug other/58374] Wrong target check in configure.ac in libvtv

2013-09-10 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58374 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |RESOLVED Resolution|---

[Bug c++/35878] Useless NULL pointer check when constructing object

2013-09-11 Thread glisse at gcc dot gnu.org
||glisse at gcc dot gnu.org, ||redi at gcc dot gnu.org Resolution|DUPLICATE |--- --- Comment #2 from Marc Glisse --- I am separating this PR from PR 19476 because it really isn't the same at all. Co

[Bug c++/19476] Missed null checking elimination with new

2013-09-11 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19476 --- Comment #15 from Marc Glisse --- I posted a patch: http://gcc.gnu.org/ml/gcc-patches/2013-09/msg00676.html However, note that it only optimizes the testcase from this PR if we add #include at the beginning, otherwise the implicit declaration

[Bug c++/19476] Missed null checking elimination with new

2013-09-11 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=19476 --- Comment #16 from Marc Glisse --- (In reply to Marc Glisse from comment #15) > However, note that it only optimizes the testcase from this PR if we add > #include at the beginning, otherwise the implicit declaration of > operator new doesn't h

[Bug libstdc++/35878] Useless NULL pointer check when constructing object

2013-09-11 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=35878 Marc Glisse changed: What|Removed |Added Keywords||missed-optimization Status|UNCO

[Bug c++/58412] C++11 : numeric_limits::stuff must be constexpr

2013-09-13 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58412 --- Comment #1 from Marc Glisse --- It's already the case in recent versions, isn't it?

[Bug c++/58412] C++11 : numeric_limits::stuff must be constexpr

2013-09-13 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58412 --- Comment #2 from Marc Glisse --- I think you forgot () after quiet_NaN and got confused by the error message.

[Bug middle-end/58387] [4.9 Regression] wrong code at -Os and above on x86_64-linux-gnu (both 32-bit and 64-bit modes)

2013-09-13 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58387 --- Comment #19 from Marc Glisse --- (In reply to Jeffrey A. Law from comment #18) > I'll also note that the plan for the isolated paths that exhibit undefined > behaviour is to have them trap/abort at the statement which triggers the > undefined

[Bug middle-end/58387] [4.9 Regression] wrong code at -Os and above on x86_64-linux-gnu (both 32-bit and 64-bit modes)

2013-09-13 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58387 --- Comment #21 from Marc Glisse --- Thanks Jeff, sounds great :-) Even if we mark that a statement is not reachable, we probably won't eliminate many functions with side-effects executed before, since (I guess) we must be able to prove that they

[Bug tree-optimization/58417] Incorrect optimization

2013-09-13 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58417 Marc Glisse changed: What|Removed |Added Status|UNCONFIRMED |NEW Last reconfirmed|

[Bug middle-end/56873] vector shift lowered to scalars

2013-09-14 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56873 Marc Glisse changed: What|Removed |Added Component|tree-optimization |middle-end --- Comment #1 from Marc Glisse

[Bug tree-optimization/46507] std::tuple missed optimization

2013-09-14 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46507 Marc Glisse changed: What|Removed |Added Keywords||missed-optimization CC|

[Bug c++/58422] vector shift operations work in C but not C++

2013-09-14 Thread glisse at gcc dot gnu.org
||glisse at gcc dot gnu.org Resolution|--- |DUPLICATE --- Comment #2 from Marc Glisse --- Already implemented in 4.8. *** This bug has been marked as a duplicate of bug 54427 ***

[Bug c++/54427] Expose more vector extensions

2013-09-14 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=54427 Marc Glisse changed: What|Removed |Added CC||gabriel at teuton dot org --- Comment #14 f

[Bug tree-optimization/58431] [4.9 Regression] wrong code at -O3 on x86_64-linux-gnu (in 32-bit mode)

2013-09-16 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58431 --- Comment #3 from Marc Glisse --- -fdisable-tree-phicprop2 lets it pass (the dumps appear identical before and after this pass, but with verbose dumps we see some memory PHIs disappear) -fdisable-tree-cddce2 also lets it pass, with larger differ

[Bug c++/58437] Sorting value in reverse order is much slower compare to gcc44

2013-09-16 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58437 --- Comment #2 from Marc Glisse --- Ah forget my last message, I understand now you are really interested in how long it takes to reverse-sort an already sorted vector. Indeed it does take much longer with 4.6+ than with 4.4.

[Bug c++/58437] Sorting value in reverse order is much slower compare to gcc44

2013-09-16 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58437 --- Comment #3 from Marc Glisse --- Less confusing testcase: #include #include using namespace std; int main() { const int num = 1000; vector v; v.reserve(num); for(int i=0;i!=num;++i) v.push_back(-i); sort(v.begin(), v.end()); }

[Bug c++/58437] Sorting value in reverse order is much slower compare to gcc44

2013-09-16 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58437 --- Comment #1 from Marc Glisse --- I can't reproduce this. I tried compiling with -O3 (with 4.4, 4.7 and 4.8) after commenting out either of the 2 sort lines, and I see roughly the same execution times (maybe a few % difference, but nowhere near

[Bug libstdc++/58338] Add noexcept to functions with a narrow contract

2013-09-17 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58338 --- Comment #3 from Marc Glisse --- Author: glisse Date: Tue Sep 17 12:23:54 2013 New Revision: 202650 URL: http://gcc.gnu.org/viewcvs?rev=202650&root=gcc&view=rev Log: 2013-09-17 Marc Glisse PR libstdc++/58338 * include/bits/stl_vect

[Bug tree-optimization/58359] __builtin_unreachable prevents vectorization

2013-09-17 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58359 --- Comment #2 from Marc Glisse --- Another optimization prevented by __builtin_unreachable: extern void f(); void g(int i){ if(i>0){ f(); __builtin_unreachable(); } } misses that f is a tail call and generates at -O3 on x86_64:

[Bug target/58450] -fno-trapping-math causes decrease in performance

2013-09-17 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58450 --- Comment #1 from Marc Glisse --- I do see this time difference with 4.7 and 4.8 (didn't try to analyze), but not with 4.9 which seems fine.

[Bug libstdc++/58338] Add noexcept to functions with a narrow contract

2013-09-18 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58338 --- Comment #4 from Marc Glisse --- Author: glisse Date: Wed Sep 18 11:21:51 2013 New Revision: 202699 URL: http://gcc.gnu.org/viewcvs?rev=202699&root=gcc&view=rev Log: 2013-09-18 Marc Glisse PR libstdc++/58338 * include/bits/list.tcc

[Bug libstdc++/58338] Add noexcept to functions with a narrow contract

2013-09-18 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58338 --- Comment #5 from Marc Glisse --- Author: glisse Date: Wed Sep 18 18:31:01 2013 New Revision: 202716 URL: http://gcc.gnu.org/viewcvs?rev=202716&root=gcc&view=rev Log: 2013-09-18 Marc Glisse PR libstdc++/58338 * include/bits/stl_iter

[Bug libstdc++/58437] [4.7/4.8/4.9 Regression] Sorting value in reverse order is much slower compare to gcc44

2013-09-19 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58437 --- Comment #14 from Marc Glisse --- Hi Chris, (detail: could you pass -u10, or at least -p, to diff to make the patches easier to read? It isn't required so you don't have to) I don't really understand why the pivot is still considered in lower

[Bug libstdc++/58437] [4.7/4.8/4.9 Regression] Sorting value in reverse order is much slower compare to gcc44

2013-09-19 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58437 --- Comment #18 from Marc Glisse --- [Ugh, bugzilla seems half broken at the moment] > I would suggest my current patch (which is simpler than it looks from the > diff) for previous versions, then investigate pivot. Well, you're the one doing a

[Bug libstdc++/58338] Add noexcept to functions with a narrow contract

2013-09-19 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58338 --- Comment #6 from Marc Glisse --- Author: glisse Date: Thu Sep 19 11:40:29 2013 New Revision: 202737 URL: http://gcc.gnu.org/viewcvs?rev=202737&root=gcc&view=rev Log: 2013-09-19 Marc Glisse PR libstdc++/58338 * include/bits/stl_tree

[Bug libstdc++/58437] [4.7/4.8/4.9 Regression] Sorting value in reverse order is much slower compare to gcc44

2013-09-19 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58437 --- Comment #25 from Marc Glisse --- Note that naively doing what I am proposing in comment #14 (it's just an iter_swap and a +-1) also makes reverse-sorted arrays a bad case, because of the way we do partitioning, so it isn't an alternative to Ch

[Bug tree-optimization/58480] New: Use attribute((nonnull)) to optimize callers

2013-09-20 Thread glisse at gcc dot gnu.org
Priority: P3 Component: tree-optimization Assignee: unassigned at gcc dot gnu.org Reporter: glisse at gcc dot gnu.org Hello, in this first function, gcc knows that p is not zero and removes the test (I have to make sure q doesn't disappear too early, o

[Bug tree-optimization/58483] missing optimization opportunity for const std::vector compared to std::array

2013-09-20 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58483 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #1

[Bug libstdc++/58338] Add noexcept to functions with a narrow contract

2013-09-20 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58338 --- Comment #7 from Marc Glisse --- Author: glisse Date: Fri Sep 20 15:50:09 2013 New Revision: 202781 URL: http://gcc.gnu.org/viewcvs?rev=202781&root=gcc&view=rev Log: 2013-09-20 Marc Glisse PR libstdc++/58338 * include/bits/allocato

[Bug libstdc++/58265] [lwg/2063] std::string move assignment should be noexcept

2013-09-20 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58265 --- Comment #5 from Marc Glisse --- Author: glisse Date: Fri Sep 20 15:50:09 2013 New Revision: 202781 URL: http://gcc.gnu.org/viewcvs?rev=202781&root=gcc&view=rev Log: 2013-09-20 Marc Glisse PR libstdc++/58338 * include/bits/allocato

[Bug libstdc++/56166] std::string::clear() can throw despite being marked noexcept

2013-09-20 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56166 --- Comment #10 from Marc Glisse --- Author: glisse Date: Fri Sep 20 15:50:09 2013 New Revision: 202781 URL: http://gcc.gnu.org/viewcvs?rev=202781&root=gcc&view=rev Log: 2013-09-20 Marc Glisse PR libstdc++/58338 * include/bits/allocat

[Bug c++/58487] Missed return value optimization

2013-09-20 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58487 Marc Glisse changed: What|Removed |Added Keywords||missed-optimization --- Comment #1 from Mar

[Bug tree-optimization/58497] New: SLP vectorizes identical operations

2013-09-22 Thread glisse at gcc dot gnu.org
-optimization Assignee: unassigned at gcc dot gnu.org Reporter: glisse at gcc dot gnu.org typedef float float4 __attribute__((vector_size(16))); float4 g(int x) { float4 W; W[0]=W[1]=W[2]=W[3]=x+1; return W; } is vectorized by SLP to: vect_cst_.4_11 = {x_1(D), x_1(D), x_1(D

[Bug libstdc++/58338] Add noexcept to functions with a narrow contract

2013-09-24 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58338 --- Comment #8 from Marc Glisse --- Author: glisse Date: Tue Sep 24 10:07:32 2013 New Revision: 202861 URL: http://gcc.gnu.org/viewcvs?rev=202861&root=gcc&view=rev Log: 2013-09-24 Marc Glisse PR libstdc++/58338 PR libstdc++/56166

[Bug libstdc++/56166] std::string::clear() can throw despite being marked noexcept

2013-09-24 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=56166 --- Comment #11 from Marc Glisse --- Author: glisse Date: Tue Sep 24 10:07:32 2013 New Revision: 202861 URL: http://gcc.gnu.org/viewcvs?rev=202861&root=gcc&view=rev Log: 2013-09-24 Marc Glisse PR libstdc++/58338 PR libstdc++/56166

[Bug libstdc++/58265] [lwg/2063] std::string move assignment should be noexcept

2013-09-24 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58265 --- Comment #6 from Marc Glisse --- Author: glisse Date: Tue Sep 24 10:07:32 2013 New Revision: 202861 URL: http://gcc.gnu.org/viewcvs?rev=202861&root=gcc&view=rev Log: 2013-09-24 Marc Glisse PR libstdc++/58338 PR libstdc++/56166

[Bug tree-optimization/30318] VRP does not create ANTI_RANGEs on overflow

2012-05-04 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30318 --- Comment #8 from glisse at gcc dot gnu.org 2012-05-04 21:45:49 UTC --- Created attachment 27311 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27311 Wrap plus/minus This patch handles combinations of range/anti_range for PLUS_EXPR

[Bug middle-end/27139] Optimize double INT->FP->INT conversions with -ffast-math

2012-05-04 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=27139 glisse at gcc dot gnu.org changed: What|Removed |Added Status|NEW |RESOLVED CC

[Bug libstdc++/22200] numeric_limits::is_modulo is inconsistent with gcc

2012-05-04 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=22200 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #43

[Bug libstdc++/53244] internal compiler error while build for target c6x-elf

2012-05-05 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53244 --- Comment #2 from Marc Glisse 2012-05-05 08:56:27 UTC --- Hello, isn't that the same as PR53209 (and at least 2 other duplicates)? Does this patch fix it for you? http://gcc.gnu.org/ml/gcc-patches/2012-05/msg00280.html

[Bug tree-optimization/30318] VRP does not create ANTI_RANGEs on overflow

2012-05-05 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30318 Marc Glisse changed: What|Removed |Added Attachment #27311|0 |1 is obsolete|

[Bug tree-optimization/30318] VRP does not create ANTI_RANGEs on overflow

2012-05-05 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30318 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #11

[Bug tree-optimization/30318] VRP does not create ANTI_RANGEs on overflow

2012-05-05 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30318 --- Comment #12 from Marc Glisse 2012-05-05 13:43:04 UTC --- Er, sorry, don't know what key I accidentally pressed but it apparently sent incomplete messages :-( (In reply to comment #10) > Now for the testcases... ;) Yes, that was also my reac

[Bug middle-end/19805] sub-optimal initialisation of array on the stack

2012-05-05 Thread glisse at gcc dot gnu.org
||glisse at gcc dot gnu.org Known to work||4.4.7 Resolution||FIXED Known to fail||4.2.4 --- Comment #3 from Marc Glisse 2012-05-05 20:46:39 UTC --- Closing, fixed since 4.3

[Bug target/53101] Recognize casts to sub-vectors

2012-05-06 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53101 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #5

[Bug tree-optimization/30318] VRP does not create ANTI_RANGEs on overflow

2012-05-07 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30318 --- Comment #16 from Marc Glisse 2012-05-07 14:46:03 UTC --- (In reply to comment #15) > Looking at your second patch it looks entirely reasonable, though not > globbing MULT_EXPR together with PLUS/MINUS might be better for readability I wonder

[Bug rtl-optimization/43147] SSE shuffle merge

2012-05-07 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=43147 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #5

[Bug c++/53294] New: Optimize out some exception code

2012-05-09 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53294 Bug #: 53294 Summary: Optimize out some exception code Classification: Unclassified Product: gcc Version: 4.8.0 Status: UNCONFIRMED Severity: enhancement Priority: P3

[Bug c/53277] Warning using -Wconversion and -Ox in gcc 4.5, 4.6 and 4.7 but not in previous releases

2012-05-09 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53277 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #9

[Bug c/53293] Internal Compiler Error

2012-05-09 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53293 --- Comment #3 from Marc Glisse 2012-05-09 12:06:37 UTC --- typedef struct { unsigned Ebits_to_go ; int C } * EncodingEnvironmentPtr ; arienco_done_encoding ( EncodingEnvironmentPtr eep ) { if ( ( eep -> Ebits_to_go ) ) { while ( eep

[Bug c/53277] Warning using -Wconversion and -Ox in gcc 4.5, 4.6 and 4.7 but not in previous releases

2012-05-09 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53277 --- Comment #12 from Marc Glisse 2012-05-09 13:11:01 UTC --- (In reply to comment #10) > This is PR51294. Looks different. Here the compiler complains about casting 0 to size_t. > And there is PR52617. That one is not a bug, unless you want to

[Bug c++/53333] Initializer lists in std=c++03 mode must be an error

2012-05-12 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=5 --- Comment #2 from Marc Glisse 2012-05-12 19:46:08 UTC --- There is -pedantic-errors if you want an error.

[Bug c++/53333] Initializer lists in std=c++03 mode must be an error

2012-05-12 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=5 --- Comment #5 from Marc Glisse 2012-05-12 21:57:05 UTC --- (In reply to comment #4) > For other features of C++11 don't need -pedantic-errors to emit an error. [...] > It doesn't seem consistent. > What is the criteria? Allowing {} is a rather

[Bug c++/53055] ICE in cp_build_indirect_ref, at cp/typeck.c:2836

2012-05-12 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53055 --- Comment #4 from Marc Glisse 2012-05-12 23:33:16 UTC --- Created attachment 27390 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27390 patch 1 ice.cc:2:15: error: pointer to member must be on the right side of '->*' int i = p ->* p ;

[Bug target/48009] Bootstrap failure: c++locale.cc: invalid conversion from 'const char*' to 'char*'

2012-05-13 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48009 --- Comment #7 from Marc Glisse 2012-05-13 08:59:25 UTC --- (In reply to comment #6) > (If anyone can point me to a fixinclude that does the same > kind of one-line change elsewhere, I could work with that...) That's easy, just take a look at th

[Bug c++/51829] decltype() deduces non-const but only in a template

2012-05-13 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51829 --- Comment #6 from Marc Glisse 2012-05-13 09:06:42 UTC --- With boost 1.49, g++-4.7 compiles the code just fine, while g++-4.6 gives: u.cc: In function ‘void bug() [with = void]’: u.cc:14:24: instantiated from here u.cc:11:3: error: cannot c

[Bug target/52607] v4df __builtin_shuffle with {0,2,1,3} or {1,3,0,2}

2012-05-14 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=52607 --- Comment #30 from Marc Glisse 2012-05-14 20:19:39 UTC --- Author: glisse Date: Mon May 14 20:19:30 2012 New Revision: 187479 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=187479 Log: 2012-05-14 Marc Glisse PR target/52607

[Bug c++/53364] [4.7/4.8 Regression] Wrong code generation

2012-05-16 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53364 --- Comment #4 from Marc Glisse 2012-05-16 07:11:35 UTC --- Looking at -fdump-tree-all, 081t.phicprop1 is still the same for -O1 and -O2, but O82t.dse1 is missing the memory writes for -O2.

[Bug c++/53350] Internal compiler error when compiling boost/smart_ptr/intrusive_ptr.hpp 1.49

2012-05-16 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53350 --- Comment #10 from Marc Glisse 2012-05-17 06:11:43 UTC --- (In reply to comment #9) > The main issue is that it doesn't work in 6.4.1, which is the version provided > in Ubuntu 11.10, which means that anyone running 11.10 won't be able to > co

[Bug tree-optimization/53385] "Error: operand out of range" after changes for LSHIFT_EXPR in vrp.c

2012-05-17 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53385 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #6

[Bug tree-optimization/53385] [4.8 Regression] "Error: operand out of range" after changes for LSHIFT_EXPR in vrp.c

2012-05-17 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53385 --- Comment #7 from Marc Glisse 2012-05-17 21:34:23 UTC --- Created attachment 27429 --> http://gcc.gnu.org/bugzilla/attachment.cgi?id=27429 patch I believe you need something like this completely untested patch to avoid undefined behavior wit

[Bug libstdc++/21334] Lack of Posix compliant thread safety in std::basic_string

2012-05-30 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21334 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #43

[Bug c++/53545] g++ 4.70 --std=c++11 generates no object file, issues no errors

2012-05-31 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53545 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #1

[Bug c++/53545] g++ 4.70 --std=c++11 generates no object file, issues no errors

2012-05-31 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53545 Marc Glisse changed: What|Removed |Added CC|glisse at gcc dot gnu.org | --- Comment #2 from Marc Glisse 2012-05

[Bug c++/53545] g++ 4.70 --std=c++11 generates no object file, issues no errors

2012-06-04 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=53545 --- Comment #5 from Marc Glisse 2012-06-04 19:54:05 UTC --- (In reply to comment #4) > Could this be a similar problem as observed in bug 53498, comment 1? Indeed, the testcases look similar and the stack traces are both infinite recursions that

[Bug rtl-optimization/51938] missed optimization: 2 comparisons

2012-06-06 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51938 Marc Glisse changed: What|Removed |Added CC||glisse at gcc dot gnu.org --- Comment #3

[Bug tree-optimization/51938] missed optimization: 2 comparisons

2012-06-08 Thread glisse at gcc dot gnu.org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51938 --- Comment #5 from Marc Glisse 2012-06-08 13:06:52 UTC --- The main difficulty is trapping math. It isn't hard to add to tree-ssa-ifcombine an ifcombine_ifnotandif variant, and we could make it call maybe_fold_and_comparisons (as ifcombine_ifand

<    1   2   3   4   5   6   7   8   9   10   >