* [PATCH]: Get IPA PTA working again
@ 2008-06-27 16:15 Daniel Berlin
2008-06-27 18:29 ` Jan Hubicka
0 siblings, 1 reply; 4+ messages in thread
From: Daniel Berlin @ 2008-06-27 16:15 UTC (permalink / raw)
To: gcc-patches, Jan Hubicka
[-- Attachment #1: Type: text/plain, Size: 495 bytes --]
This makes IPA pta stop crashing due to stmts being marked as modified.
Jan, maybe you could explain to me why the TODO_update_ssa we have in
the todo_finish flags doesn't make this work?
(It would also be nice to document the difference between
SIMPLE_IPA_PASS and IPA_PASS, since i went down the road of seeing if
that would fix the issue).
--Dan
2008-06-27 Daniel Berlin <dberlin@dberlin.org>
* tree-ssa-structalias.c (find_func_aliases): Trivial fix to get
ipa-pta working again.
[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: ipapta.diff --]
[-- Type: text/x-patch; name=ipapta.diff, Size: 562 bytes --]
Index: tree-ssa-structalias.c
===================================================================
--- tree-ssa-structalias.c (revision 137180)
+++ tree-ssa-structalias.c (working copy)
@@ -3897,7 +3897,8 @@ find_func_aliases (tree origt)
need to re-scan most statements. FIXME: Try to minimize the
number of statements re-scanned. It's not really necessary to
re-scan *all* statements. */
- mark_stmt_modified (origt);
+ if (!in_ipa_mode)
+ mark_stmt_modified (origt);
VEC_free (ce_s, heap, rhsc);
VEC_free (ce_s, heap, lhsc);
}
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH]: Get IPA PTA working again
2008-06-27 16:15 [PATCH]: Get IPA PTA working again Daniel Berlin
@ 2008-06-27 18:29 ` Jan Hubicka
2008-06-27 19:19 ` Daniel Berlin
0 siblings, 1 reply; 4+ messages in thread
From: Jan Hubicka @ 2008-06-27 18:29 UTC (permalink / raw)
To: Daniel Berlin; +Cc: gcc-patches, Jan Hubicka
> This makes IPA pta stop crashing due to stmts being marked as modified.
>
>
> Jan, maybe you could explain to me why the TODO_update_ssa we have in
> the todo_finish flags doesn't make this work?
TODO_update_ssa ought to trigger updating on all function bodies. How
does it fails for you?
>
> (It would also be nice to document the difference between
> SIMPLE_IPA_PASS and IPA_PASS, since i went down the road of seeing if
> that would fix the issue).
I will add some docs into tree-pass.h. It should not make any
difference in this.
Honza
>
> --Dan
>
>
> 2008-06-27 Daniel Berlin <dberlin@dberlin.org>
>
> * tree-ssa-structalias.c (find_func_aliases): Trivial fix to get
> ipa-pta working again.
> Index: tree-ssa-structalias.c
> ===================================================================
> --- tree-ssa-structalias.c (revision 137180)
> +++ tree-ssa-structalias.c (working copy)
> @@ -3897,7 +3897,8 @@ find_func_aliases (tree origt)
> need to re-scan most statements. FIXME: Try to minimize the
> number of statements re-scanned. It's not really necessary to
> re-scan *all* statements. */
> - mark_stmt_modified (origt);
> + if (!in_ipa_mode)
> + mark_stmt_modified (origt);
> VEC_free (ce_s, heap, rhsc);
> VEC_free (ce_s, heap, lhsc);
> }
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH]: Get IPA PTA working again
2008-06-27 18:29 ` Jan Hubicka
@ 2008-06-27 19:19 ` Daniel Berlin
2008-06-27 19:22 ` Jan Hubicka
0 siblings, 1 reply; 4+ messages in thread
From: Daniel Berlin @ 2008-06-27 19:19 UTC (permalink / raw)
To: Jan Hubicka; +Cc: gcc-patches
On Fri, Jun 27, 2008 at 2:21 PM, Jan Hubicka <jh@suse.cz> wrote:
>> This makes IPA pta stop crashing due to stmts being marked as modified.
>>
>>
>> Jan, maybe you could explain to me why the TODO_update_ssa we have in
>> the todo_finish flags doesn't make this work?
>
> TODO_update_ssa ought to trigger updating on all function bodies. How
> does it fails for you?
TODO_update_ssa should also end up marking all the statements as not
modified because it calls update_stmt.
We have TODO_update_ssa in the finish flags of ipa_pta, but it either
isn't running, or verifier is verifying each function individually
before running finish flag.
The symptom is that if you remove the patch i just committed, it will
complain that we have marked statements modified.
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH]: Get IPA PTA working again
2008-06-27 19:19 ` Daniel Berlin
@ 2008-06-27 19:22 ` Jan Hubicka
0 siblings, 0 replies; 4+ messages in thread
From: Jan Hubicka @ 2008-06-27 19:22 UTC (permalink / raw)
To: Daniel Berlin; +Cc: Jan Hubicka, gcc-patches
> On Fri, Jun 27, 2008 at 2:21 PM, Jan Hubicka <jh@suse.cz> wrote:
> >> This makes IPA pta stop crashing due to stmts being marked as modified.
> >>
> >>
> >> Jan, maybe you could explain to me why the TODO_update_ssa we have in
> >> the todo_finish flags doesn't make this work?
> >
> > TODO_update_ssa ought to trigger updating on all function bodies. How
> > does it fails for you?
>
> TODO_update_ssa should also end up marking all the statements as not
> modified because it calls update_stmt.
>
> We have TODO_update_ssa in the finish flags of ipa_pta, but it either
> isn't running, or verifier is verifying each function individually
> before running finish flag.
Yep, it will do update_ssa and verification in seqeunce on each function
individually.
Well, modified statements from other function should not hurt, right?
I will look into it.
Honza
>
> The symptom is that if you remove the patch i just committed, it will
> complain that we have marked statements modified.
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2008-06-27 19:19 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2008-06-27 16:15 [PATCH]: Get IPA PTA working again Daniel Berlin
2008-06-27 18:29 ` Jan Hubicka
2008-06-27 19:19 ` Daniel Berlin
2008-06-27 19:22 ` Jan Hubicka
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).