public inbox for gcc-bugs@sourceware.org help / color / mirror / Atom feed
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). [not found] <bug-15347-4@http.gcc.gnu.org/bugzilla/> @ 2011-04-27 17:54 ` matt at use dot net 2011-04-27 18:32 ` hjl.tools at gmail dot com ` (4 subsequent siblings) 5 siblings, 0 replies; 12+ messages in thread From: matt at use dot net @ 2011-04-27 17:54 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 Matt Hargett <matt at use dot net> changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |matt at use dot net --- Comment #9 from Matt Hargett <matt at use dot net> 2011-04-27 17:52:06 UTC --- This appears to be fixed in 4.6.0. Mark as resolved? ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). [not found] <bug-15347-4@http.gcc.gnu.org/bugzilla/> 2011-04-27 17:54 ` [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0) matt at use dot net @ 2011-04-27 18:32 ` hjl.tools at gmail dot com 2011-04-28 9:59 ` rguenth at gcc dot gnu.org ` (3 subsequent siblings) 5 siblings, 0 replies; 12+ messages in thread From: hjl.tools at gmail dot com @ 2011-04-27 18:32 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 --- Comment #10 from H.J. Lu <hjl.tools at gmail dot com> 2011-04-27 18:32:34 UTC --- (In reply to comment #9) > This appears to be fixed in 4.6.0. Mark as resolved? Need to add a few testcases first. ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). [not found] <bug-15347-4@http.gcc.gnu.org/bugzilla/> 2011-04-27 17:54 ` [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0) matt at use dot net 2011-04-27 18:32 ` hjl.tools at gmail dot com @ 2011-04-28 9:59 ` rguenth at gcc dot gnu.org 2011-04-28 10:02 ` rguenth at gcc dot gnu.org ` (2 subsequent siblings) 5 siblings, 0 replies; 12+ messages in thread From: rguenth at gcc dot gnu.org @ 2011-04-28 9:59 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED --- Comment #13 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-04-28 09:57:05 UTC --- Fi-xed. ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). [not found] <bug-15347-4@http.gcc.gnu.org/bugzilla/> ` (2 preceding siblings ...) 2011-04-28 9:59 ` rguenth at gcc dot gnu.org @ 2011-04-28 10:02 ` rguenth at gcc dot gnu.org 2011-04-28 10:05 ` rguenth at gcc dot gnu.org 2014-10-31 4:02 ` pinskia at gcc dot gnu.org 5 siblings, 0 replies; 12+ messages in thread From: rguenth at gcc dot gnu.org @ 2011-04-28 10:02 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 Richard Guenther <rguenth at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|--- |4.6.0 --- Comment #12 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-04-28 09:56:52 UTC --- Fixed. Thanks for noticing. ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). [not found] <bug-15347-4@http.gcc.gnu.org/bugzilla/> ` (3 preceding siblings ...) 2011-04-28 10:02 ` rguenth at gcc dot gnu.org @ 2011-04-28 10:05 ` rguenth at gcc dot gnu.org 2014-10-31 4:02 ` pinskia at gcc dot gnu.org 5 siblings, 0 replies; 12+ messages in thread From: rguenth at gcc dot gnu.org @ 2011-04-28 10:05 UTC (permalink / raw) To: gcc-bugs http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 --- Comment #11 from Richard Guenther <rguenth at gcc dot gnu.org> 2011-04-28 09:55:46 UTC --- Author: rguenth Date: Thu Apr 28 09:55:41 2011 New Revision: 173064 URL: http://gcc.gnu.org/viewcvs?root=gcc&view=rev&rev=173064 Log: 2011-04-28 Richard Guenther <rguenther@suse.de> PR tree-optimization/40052 PR tree-optimization/15347 * gcc.dg/tree-ssa/vrp57.c: New testcase. * gcc.dg/pr15347.c: Likewise. Added: trunk/gcc/testsuite/gcc.dg/pr15347.c trunk/gcc/testsuite/gcc.dg/tree-ssa/vrp57.c Modified: trunk/gcc/testsuite/ChangeLog ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). [not found] <bug-15347-4@http.gcc.gnu.org/bugzilla/> ` (4 preceding siblings ...) 2011-04-28 10:05 ` rguenth at gcc dot gnu.org @ 2014-10-31 4:02 ` pinskia at gcc dot gnu.org 5 siblings, 0 replies; 12+ messages in thread From: pinskia at gcc dot gnu.org @ 2014-10-31 4:02 UTC (permalink / raw) To: gcc-bugs https://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 Bug 15347 depends on bug 15459, which changed state. Bug 15459 Summary: [meta-bug] there should be a tree combiner like the rtl one https://gcc.gnu.org/bugzilla/show_bug.cgi?id=15459 What |Removed |Added ---------------------------------------------------------------------------- Status|ASSIGNED |RESOLVED Resolution|--- |FIXED ^ permalink raw reply [flat|nested] 12+ messages in thread
[parent not found: <bug-15347-5009@http.gcc.gnu.org/bugzilla/>]
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). [not found] <bug-15347-5009@http.gcc.gnu.org/bugzilla/> @ 2005-12-07 3:23 ` pinskia at gcc dot gnu dot org 2006-09-17 8:44 ` pinskia at gcc dot gnu dot org 1 sibling, 0 replies; 12+ messages in thread From: pinskia at gcc dot gnu dot org @ 2005-12-07 3:23 UTC (permalink / raw) To: gcc-bugs ------- Comment #7 from pinskia at gcc dot gnu dot org 2005-12-07 03:23 ------- I should note that the first testcase in comment #0 in the bug is fixed but not the second, non reduced one. -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- Last reconfirmed|2005-09-07 18:50:42 |2005-12-07 03:23:13 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). [not found] <bug-15347-5009@http.gcc.gnu.org/bugzilla/> 2005-12-07 3:23 ` pinskia at gcc dot gnu dot org @ 2006-09-17 8:44 ` pinskia at gcc dot gnu dot org 1 sibling, 0 replies; 12+ messages in thread From: pinskia at gcc dot gnu dot org @ 2006-09-17 8:44 UTC (permalink / raw) To: gcc-bugs ------- Comment #8 from pinskia at gcc dot gnu dot org 2006-09-17 08:44 ------- Just to clarify what testcase is still broken, here it is: void baz (void) { if ("<12ers" + 1 == 0) bar (); } ------ The reason why strchr testcase is fixed is because we turn the strchr call into &"<12ers"[1]. -- pinskia at gcc dot gnu dot org changed: What |Removed |Added ---------------------------------------------------------------------------- CC| |pinskia at gcc dot gnu dot | |org Last reconfirmed|2006-03-01 02:45:29 |2006-09-17 08:44:52 date| | http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug optimization/15347] New: [tree-ssa] fold if ("<12ers" + 1 == 0). @ 2004-05-09 19:25 kazu at cs dot umass dot edu 2004-05-24 22:29 ` [Bug tree-optimization/15347] " pinskia at gcc dot gnu dot org ` (3 more replies) 0 siblings, 4 replies; 12+ messages in thread From: kazu at cs dot umass dot edu @ 2004-05-09 19:25 UTC (permalink / raw) To: gcc-bugs void bar (); int foo (void) { if ("<12ers" + 1 == 0) bar (); } which is reduced from from extern const char tree_code_type[]; extern char *strchr (__const char *__s, int __c) __attribute__ ((__pure__)); extern void abort (void) __attribute__ ((__noreturn__)); int foo (int a) { if (tree_code_type[a] == '1') if (strchr ("<12ers", tree_code_type[a]) == 0) abort (); } which is in turn reduced from find_base_decl() in alias.c. -- Summary: [tree-ssa] fold if ("<12ers" + 1 == 0). Product: gcc Version: tree-ssa Status: UNCONFIRMED Keywords: pessimizes-code Severity: normal Priority: P2 Component: optimization AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: kazu at cs dot umass dot edu CC: gcc-bugs at gcc dot gnu dot org http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). 2004-05-09 19:25 [Bug optimization/15347] New: " kazu at cs dot umass dot edu @ 2004-05-24 22:29 ` pinskia at gcc dot gnu dot org 2004-06-01 6:45 ` kazu at cs dot umass dot edu ` (2 subsequent siblings) 3 siblings, 0 replies; 12+ messages in thread From: pinskia at gcc dot gnu dot org @ 2004-05-24 22:29 UTC (permalink / raw) To: gcc-bugs -- What |Removed |Added ---------------------------------------------------------------------------- Target Milestone|3.5.0 |--- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). 2004-05-09 19:25 [Bug optimization/15347] New: " kazu at cs dot umass dot edu 2004-05-24 22:29 ` [Bug tree-optimization/15347] " pinskia at gcc dot gnu dot org @ 2004-06-01 6:45 ` kazu at cs dot umass dot edu 2004-06-01 6:48 ` kazu at cs dot umass dot edu 2004-06-03 23:22 ` pinskia at gcc dot gnu dot org 3 siblings, 0 replies; 12+ messages in thread From: kazu at cs dot umass dot edu @ 2004-06-01 6:45 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From kazu at cs dot umass dot edu 2004-06-01 06:45 ------- Now that Steven's strchr patch is in, let me reiterate the problem. void bar (void); void foo (void) { int c = '1'; if (strchr ("<12ers", c) == 0) bar (); } void baz (void) { int c = '1'; if ("<12ers" + 1 == 0) bar (); } The last tree-ssa form looks like: ;; Function foo (foo) foo () { int c; char * T.0; <bb 0>: T.0_2 = "<12ers" + 1B; if (T.0_2 == 0B) goto <L0>; else goto <L1>; <L0>:; bar () [tail call]; <L1>:; return; } ;; Function baz (baz) baz () { int c; <bb 0>: if ("<12ers" == -1B) goto <L0>; else goto <L1>; <L0>:; bar () [tail call]; <L1>:; return; } In either case, we miss the folding opportunity. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). 2004-05-09 19:25 [Bug optimization/15347] New: " kazu at cs dot umass dot edu 2004-05-24 22:29 ` [Bug tree-optimization/15347] " pinskia at gcc dot gnu dot org 2004-06-01 6:45 ` kazu at cs dot umass dot edu @ 2004-06-01 6:48 ` kazu at cs dot umass dot edu 2004-06-03 23:22 ` pinskia at gcc dot gnu dot org 3 siblings, 0 replies; 12+ messages in thread From: kazu at cs dot umass dot edu @ 2004-06-01 6:48 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From kazu at cs dot umass dot edu 2004-06-01 06:47 ------- "int c = '1';" in baz() in comment #4 is an unintended garbage. Please ignore it. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 ^ permalink raw reply [flat|nested] 12+ messages in thread
* [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0). 2004-05-09 19:25 [Bug optimization/15347] New: " kazu at cs dot umass dot edu ` (2 preceding siblings ...) 2004-06-01 6:48 ` kazu at cs dot umass dot edu @ 2004-06-03 23:22 ` pinskia at gcc dot gnu dot org 3 siblings, 0 replies; 12+ messages in thread From: pinskia at gcc dot gnu dot org @ 2004-06-03 23:22 UTC (permalink / raw) To: gcc-bugs ------- Additional Comments From pinskia at gcc dot gnu dot org 2004-06-03 23:22 ------- I should note that "12ers" == 0 is folded to false by: /* If this is an equality comparison of the address of a non-weak object against zero, then we know the result. */ So improving that part will help. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=15347 ^ permalink raw reply [flat|nested] 12+ messages in thread
end of thread, other threads:[~2014-10-31 4:02 UTC | newest] Thread overview: 12+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- [not found] <bug-15347-4@http.gcc.gnu.org/bugzilla/> 2011-04-27 17:54 ` [Bug tree-optimization/15347] [tree-ssa] fold if ("<12ers" + 1 == 0) matt at use dot net 2011-04-27 18:32 ` hjl.tools at gmail dot com 2011-04-28 9:59 ` rguenth at gcc dot gnu.org 2011-04-28 10:02 ` rguenth at gcc dot gnu.org 2011-04-28 10:05 ` rguenth at gcc dot gnu.org 2014-10-31 4:02 ` pinskia at gcc dot gnu.org [not found] <bug-15347-5009@http.gcc.gnu.org/bugzilla/> 2005-12-07 3:23 ` pinskia at gcc dot gnu dot org 2006-09-17 8:44 ` pinskia at gcc dot gnu dot org 2004-05-09 19:25 [Bug optimization/15347] New: " kazu at cs dot umass dot edu 2004-05-24 22:29 ` [Bug tree-optimization/15347] " pinskia at gcc dot gnu dot org 2004-06-01 6:45 ` kazu at cs dot umass dot edu 2004-06-01 6:48 ` kazu at cs dot umass dot edu 2004-06-03 23:22 ` pinskia at gcc dot gnu dot org
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).