[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2021-08-21 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=38497 --- Comment #10 from Andrew Pinski --- CLANG/LLVM does this while ICC peels off the first iteration of the loop.

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2017-06-26 Thread rguenth at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=38497 Richard Biener changed: What|Removed |Added Last reconfirmed|2010-03-03 10:57:32 |2017-6-26 --- Comment #9 from Richard B

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2017-06-25 Thread pinskia at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=38497 --- Comment #8 from Andrew Pinski --- (In reply to Richard Biener from comment #5) > now what is left is hoisting *a_2(D) to after the call. But that's not PRE. Yes I agree with this but hoisting was added to PRE and we still don't optimize it

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2010-05-05 Thread rguenth at gcc dot gnu dot org
--- Comment #7 from rguenth at gcc dot gnu dot org 2010-05-05 10:30 --- As *a_2(D) is ANTIC_OUT in bb3 (but not ANTIC_IN in bb3 because it dies in there) can we insert in bb3 instead of in bb5? -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38497

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2010-03-03 Thread steven at gcc dot gnu dot org
--- Comment #6 from steven at gcc dot gnu dot org 2010-03-03 14:26 --- Well, it is not hoisting, either. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38497

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2010-03-03 Thread rguenth at gcc dot gnu dot org
--- Comment #5 from rguenth at gcc dot gnu dot org 2010-03-03 11:03 --- I'm not so sure. We start with : plaintextlen_3 = *a_2(D); : # i_13 = PHI D.2725_5 = *a_2(D); DoHuffIteration (D.2725_5); i_6 = i_13 + 1; if (i_6 <= ) goto ; else goto ; : goto ; :

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2010-03-03 Thread steven at gcc dot gnu dot org
--- Comment #4 from steven at gcc dot gnu dot org 2010-03-03 10:57 --- I think pinskia means we could transform the test case of comment #0 to: void DoHuffIteration(int); int f(int *a) { int i; int plaintextlen=*a; pretmp = plaintextlen; for(i = 0; i< 1; i++) { D

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2010-03-03 Thread rguenth at gcc dot gnu dot org
--- Comment #3 from rguenth at gcc dot gnu dot org 2010-03-03 10:43 --- This isn't PRE but code hoisting which we have a dup for. -- rguenth at gcc dot gnu dot org changed: What|Removed |Added ---

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2010-03-02 Thread pinskia at gcc dot gnu dot org
--- Comment #2 from pinskia at gcc dot gnu dot org 2010-03-02 19:01 --- Still happens as of today on the trunk. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38497

[Bug tree-optimization/38497] PRE missing a load PRE which causes a loop to have two BBs

2008-12-11 Thread pinskia at gcc dot gnu dot org
--- Comment #1 from pinskia at gcc dot gnu dot org 2008-12-11 23:24 --- This is a reduced testcase from The huffman byte benchmark. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=38497