* [Bug tree-optimization/45830] [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
@ 2010-09-29 15:33 ` rguenth at gcc dot gnu.org
2010-09-30 9:10 ` pinskia at gcc dot gnu.org
` (10 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: rguenth at gcc dot gnu.org @ 2010-09-29 15:33 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|UNCONFIRMED |NEW
Last reconfirmed| |2010.09.29 13:30:53
date| |
Component|ada |tree-optimization
Ever Confirmed|0 |1
--- Comment #1 from Richard Guenther <rguenth at gcc dot gnu.org> 2010-09-29 13:30:53 UTC ---
Confirmed.
I think switch-conversion should be merged with whatever tree-level
switch-lowering/expansion code we end up with.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
2010-09-29 15:33 ` [Bug tree-optimization/45830] " rguenth at gcc dot gnu.org
@ 2010-09-30 9:10 ` pinskia at gcc dot gnu.org
2010-09-30 11:34 ` rguenth at gcc dot gnu.org
` (9 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: pinskia at gcc dot gnu.org @ 2010-09-30 9:10 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Andrew Pinski <pinskia at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|--- |4.4.5
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
2010-09-29 15:33 ` [Bug tree-optimization/45830] " rguenth at gcc dot gnu.org
2010-09-30 9:10 ` pinskia at gcc dot gnu.org
@ 2010-09-30 11:34 ` rguenth at gcc dot gnu.org
2010-10-01 11:49 ` jakub at gcc dot gnu.org
` (8 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: rguenth at gcc dot gnu.org @ 2010-09-30 11:34 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Priority|P3 |P2
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (2 preceding siblings ...)
2010-09-30 11:34 ` rguenth at gcc dot gnu.org
@ 2010-10-01 11:49 ` jakub at gcc dot gnu.org
2010-11-19 16:18 ` jakub at gcc dot gnu.org
` (7 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu.org @ 2010-10-01 11:49 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.4.5 |4.4.6
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (3 preceding siblings ...)
2010-10-01 11:49 ` jakub at gcc dot gnu.org
@ 2010-11-19 16:18 ` jakub at gcc dot gnu.org
2010-11-19 23:50 ` jakub at gcc dot gnu.org
` (6 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu.org @ 2010-11-19 16:18 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |ASSIGNED
AssignedTo|unassigned at gcc dot |jakub at gcc dot gnu.org
|gnu.org |
--- Comment #2 from Jakub Jelinek <jakub at gcc dot gnu.org> 2010-11-19 16:17:06 UTC ---
Created attachment 22459
--> http://gcc.gnu.org/bugzilla/attachment.cgi?id=22459
gcc46-pr45830.patch
Untested fix that should cure both reported issues, i.e. don't optimize and let
switch being expanded as bit test if beneficial, and use smaller integral types
when possible for the CSWTCH arrays.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (4 preceding siblings ...)
2010-11-19 16:18 ` jakub at gcc dot gnu.org
@ 2010-11-19 23:50 ` jakub at gcc dot gnu.org
2010-11-19 23:54 ` [Bug tree-optimization/45830] [4.4/4.5 " jakub at gcc dot gnu.org
` (5 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu.org @ 2010-11-19 23:50 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
--- Comment #3 from Jakub Jelinek <jakub at gcc dot gnu.org> 2010-11-19 23:49:03 UTC ---
Author: jakub
Date: Fri Nov 19 23:48:57 2010
New Revision: 166966
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=166966
Log:
PR tree-optimization/45830
* stmt.c (expand_switch_using_bit_tests_p): New function.
(expand_case): Use it.
* tree.h (expand_switch_using_bit_tests_p): New prototype.
* tree-switch-conversion.c (struct switch_conv_info): Add
bit_test_uniq, bit_test_count and bit_test_bb fields.
(check_range): Fix a comment.
(check_process_case): Compute bit_test_uniq and bit_test_count.
(create_temp_arrays): Use XCNEWVEC, merge 3 arrays into one
allocation.
(free_temp_arrays): Use XDELETEVEC, adjust for the 3 arrays merging.
(constructor_contains_same_values_p): Use FOR_EACH_VEC_ELT.
(array_value_type): New function.
(build_one_array): Use it, if it returned different type,
fold_convert all constructor fields and convert back to the
wider type in the generated code.
(process_switch): Initialize bit_test_uniq, bit_test_count and
bit_test_bb fields. Don't optimize if expand_switch_using_bit_tests_p
returned true.
* gcc.target/i386/pr45830.c: New test.
* gcc.c-torture/execute/pr45830.c: New test.
Added:
trunk/gcc/testsuite/gcc.c-torture/execute/pr45830.c
trunk/gcc/testsuite/gcc.target/i386/pr45830.c
Modified:
trunk/gcc/ChangeLog
trunk/gcc/stmt.c
trunk/gcc/testsuite/ChangeLog
trunk/gcc/tree-switch-conversion.c
trunk/gcc/tree.h
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.4/4.5 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (5 preceding siblings ...)
2010-11-19 23:50 ` jakub at gcc dot gnu.org
@ 2010-11-19 23:54 ` jakub at gcc dot gnu.org
2011-04-16 9:59 ` jakub at gcc dot gnu.org
` (4 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu.org @ 2010-11-19 23:54 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Summary|[4.4/4.5/4.6 Regression] |[4.4/4.5 Regression]
|Code+rodata increase with |Code+rodata increase with
|-ftree-switch-conversion |-ftree-switch-conversion
--- Comment #4 from Jakub Jelinek <jakub at gcc dot gnu.org> 2010-11-19 23:53:04 UTC ---
Fixed on the trunk.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.4/4.5 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (6 preceding siblings ...)
2010-11-19 23:54 ` [Bug tree-optimization/45830] [4.4/4.5 " jakub at gcc dot gnu.org
@ 2011-04-16 9:59 ` jakub at gcc dot gnu.org
2011-12-12 20:52 ` gjl at gcc dot gnu.org
` (3 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu.org @ 2011-04-16 9:59 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.4.6 |4.4.7
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.4/4.5 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (7 preceding siblings ...)
2011-04-16 9:59 ` jakub at gcc dot gnu.org
@ 2011-12-12 20:52 ` gjl at gcc dot gnu.org
2012-03-13 14:46 ` [Bug tree-optimization/45830] [4.5 " jakub at gcc dot gnu.org
` (2 subsequent siblings)
11 siblings, 0 replies; 13+ messages in thread
From: gjl at gcc dot gnu.org @ 2011-12-12 20:52 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
--- Comment #5 from Georg-Johann Lay <gjl at gcc dot gnu.org> 2011-12-12 20:13:45 UTC ---
Author: gjl
Date: Mon Dec 12 20:13:40 2011
New Revision: 182262
URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=182262
Log:
PR tree-optimization/45830
* gcc.c-torture/execute/pr45830.c: Move from here to...
* gcc.dg/torture/pr45830.c: ...this new file. Add dg-do and
dg-additional-options magic.
Added:
trunk/gcc/testsuite/gcc.dg/torture/pr45830.c
- copied, changed from r182043,
trunk/gcc/testsuite/gcc.c-torture/execute/pr45830.c
Removed:
trunk/gcc/testsuite/gcc.c-torture/execute/pr45830.c
Modified:
trunk/gcc/testsuite/ChangeLog
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.5 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (8 preceding siblings ...)
2011-12-12 20:52 ` gjl at gcc dot gnu.org
@ 2012-03-13 14:46 ` jakub at gcc dot gnu.org
2012-04-18 20:35 ` steven at gcc dot gnu.org
2012-07-02 10:40 ` rguenth at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: jakub at gcc dot gnu.org @ 2012-03-13 14:46 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Jakub Jelinek <jakub at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Target Milestone|4.4.7 |4.5.4
--- Comment #6 from Jakub Jelinek <jakub at gcc dot gnu.org> 2012-03-13 12:46:58 UTC ---
4.4 branch is being closed, moving to 4.5.4 target.
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.5 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (9 preceding siblings ...)
2012-03-13 14:46 ` [Bug tree-optimization/45830] [4.5 " jakub at gcc dot gnu.org
@ 2012-04-18 20:35 ` steven at gcc dot gnu.org
2012-07-02 10:40 ` rguenth at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: steven at gcc dot gnu.org @ 2012-04-18 20:35 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Steven Bosscher <steven at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
CC| |steven at gcc dot gnu.org
--- Comment #7 from Steven Bosscher <steven at gcc dot gnu.org> 2012-04-18 20:33:05 UTC ---
*** Bug 53034 has been marked as a duplicate of this bug. ***
^ permalink raw reply [flat|nested] 13+ messages in thread
* [Bug tree-optimization/45830] [4.5 Regression] Code+rodata increase with -ftree-switch-conversion
2010-09-29 15:31 [Bug ada/45830] New: [4.4/4.5/4.6 Regression] Code+rodata increase with -ftree-switch-conversion jakub at gcc dot gnu.org
` (10 preceding siblings ...)
2012-04-18 20:35 ` steven at gcc dot gnu.org
@ 2012-07-02 10:40 ` rguenth at gcc dot gnu.org
11 siblings, 0 replies; 13+ messages in thread
From: rguenth at gcc dot gnu.org @ 2012-07-02 10:40 UTC (permalink / raw)
To: gcc-bugs
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45830
Richard Guenther <rguenth at gcc dot gnu.org> changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|ASSIGNED |RESOLVED
Resolution| |FIXED
Target Milestone|4.5.4 |4.6.0
--- Comment #8 from Richard Guenther <rguenth at gcc dot gnu.org> 2012-07-02 10:39:49 UTC ---
Fixed in 4.6.0, the 4.5 branch is being closed.
^ permalink raw reply [flat|nested] 13+ messages in thread