[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-11-05 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 Andrew Pinski changed: What|Removed |Added Depends on||112356 --- Comment #24 from Andrew

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-11-05 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 Andrew Pinski changed: What|Removed |Added See Also||https://github.com/llvm/llv

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-26 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #22 from CVS Commits --- The trunk branch has been updated by Andrew Pinski : https://gcc.gnu.org/g:c3c6f30496d945b77dcb7f4ad8c3f8094f5a64a4 commit r14-4280-gc3c6f30496d945b77dcb7f4ad8c3f8094f5a64a4 Author: Andrew Pinski Date:

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-20 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #21 from Andrew Pinski --- (In reply to Andrew Pinski from comment #18) > I think the only thing left is supporting floating point. Another testcase for integer but with a nop_conversion: ``` int f(int a) { unsigned b = a;

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-18 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #20 from Andrew Pinski --- (In reply to Andrew Pinski from comment #19) > Another integer testcase which is missed here: > ``` > _Bool f(int a) > { > _Bool t = a == 0; > unsigned t1 = a; > _Bool t2 = t1 >= 3;

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-18 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 Andrew Pinski changed: What|Removed |Added See Also||https://gcc.gnu.org/bugzill

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-14 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #18 from Andrew Pinski --- I think the only thing left is supporting floating point.

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-14 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #17 from CVS Commits --- The trunk branch has been updated by Andrew Pinski : https://gcc.gnu.org/g:5e4a248b03f01f422b0dbc9e1464eb6c2f2bafc6 commit r14-3995-g5e4a248b03f01f422b0dbc9e1464eb6c2f2bafc6 Author: Andrew Pinski Date:

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #16 from Andrew Pinski --- Next patch: https://gcc.gnu.org/pipermail/gcc-patches/2023-September/630241.html

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #15 from Andrew Pinski --- Created attachment 55895 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55895=edit testcases for the constants off by one

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-09-13 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #14 from Andrew Pinski --- Created attachment 55894 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55894=edit Third patch to support the constants that are off by one This patch adds what I mentioned was missing in comment

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-07-31 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #13 from CVS Commits --- The trunk branch has been updated by Andrew Pinski : https://gcc.gnu.org/g:ac0e0966ebf08c454d53042a649403e2880ccbc1 commit r14-2887-gac0e0966ebf08c454d53042a649403e2880ccbc1 Author: Andrew Pinski Date:

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-07-31 Thread cvs-commit at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #12 from CVS Commits --- The trunk branch has been updated by Andrew Pinski : https://gcc.gnu.org/g:0258b73680e21fd96290af961c80966ac6b3cc68 commit r14-2886-g0258b73680e21fd96290af961c80966ac6b3cc68 Author: Andrew Pinski Date:

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-07-31 Thread rguenther at suse dot de via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #11 from rguenther at suse dot de --- On Sat, 29 Jul 2023, pinskia at gcc dot gnu.org wrote: > https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 > > --- Comment #6 from Andrew Pinski --- > I think I have a better patch. > >

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-07-30 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #10 from Andrew Pinski --- Patches submitted with testcase: https://gcc.gnu.org/pipermail/gcc-patches/2023-July/625808.html https://gcc.gnu.org/pipermail/gcc-patches/2023-July/625807.html

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-07-29 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #9 from Andrew Pinski --- Created attachment 55658 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55658=edit Secondary patch to add the thing I mentioned Note this does not handle the constant case since we change `a >= 2`

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-07-29 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #8 from Andrew Pinski --- (In reply to Andrew Pinski from comment #7) > Created attachment 55657 [details] > Patch which just needs some testcases > > This simple patch implements what I Mentioned about extending those other >

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-07-29 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #7 from Andrew Pinski --- Created attachment 55657 --> https://gcc.gnu.org/bugzilla/attachment.cgi?id=55657=edit Patch which just needs some testcases This simple patch implements what I Mentioned about extending those other

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2023-07-29 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #6 from Andrew Pinski --- I think I have a better patch. There are patterns for: Convert (X OP1 CST1) || (X OP2 CST2). externding them easily to support: Convert (X OP1 Y) || (X OP2 Y). is a few lines. Don't even need to call

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2022-07-04 Thread rguenth at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #5 from Richard Biener --- (In reply to Andrew Pinski from comment #4) > This is the match.pd code: > (for bitop (bit_and bit_ior) > (for cmp (tcc_comparison) > (for ocmp (tcc_comparison) >(for ncmp (tcc_comparison) >

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2022-07-01 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #4 from Andrew Pinski --- This is the match.pd code: (for bitop (bit_and bit_ior) (for cmp (tcc_comparison) (for ocmp (tcc_comparison) (for ncmp (tcc_comparison) (simplify (bitop (cmp:c @0 @1) (ocmp @0 @1)) (with

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2022-07-01 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #3 from Andrew Pinski --- (In reply to Andrew Pinski from comment #2) > (In reply to Andrew Pinski from comment #1) > > This is done by fold_range_test in fold-const.cc > > Actually no, it is fold_truth_andor_1. Anyways I am

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2022-07-01 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 Andrew Pinski changed: What|Removed |Added Status|UNCONFIRMED |ASSIGNED Ever confirmed|0

[Bug tree-optimization/106164] (a > b) & (a >= b) does not get optimized until reassoc1

2022-07-01 Thread pinskia at gcc dot gnu.org via Gcc-bugs
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106164 --- Comment #1 from Andrew Pinski --- This is done by fold_range_test in fold-const.cc