This is the mail archive of the gcc-patches@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] n-th try: move profiling to SSA form


On Sun, Oct 31, 2010 at 4:03 PM, H.J. Lu <hjl.tools@gmail.com> wrote:
> On Mon, Oct 4, 2010 at 7:57 AM, Richard Guenther <rguenther@suse.de> wrote:
>>
>> This makes a simple IPA pass out of profile instrumentation and read,
>> scheduled after early optimizations. ?That gets rid of the early
>> non-SSA IPA inliner (that was supposed to make -fprofile-generate and
>> tramp3d happy). ?It also moves profile instrumentation to where
>> we envision it to be for the WHOPR profile generate/use.
>>
>> This version now properly updates pure/const state of functions
>> and thus passes SPEC 2k build and profiledbootstrap.
>>
>> Bootstrapped and tested on x86_64-unknown-linux-gnu. ?I will apply
>> this tomorrow if there are no objections.
>>
>> Thanks,
>> Richard.
>>
>> 2010-10-04 ?Richard Guenther ?<rguenther@suse.de>
>>
>> ? ? ? ?* value-prof.c (gimple_divmod_fixed_value): Work on SSA form.
>> ? ? ? ?(gimple_mod_pow2): Likewise.
>> ? ? ? ?(gimple_mod_subtract): Likewise.
>> ? ? ? ?(gimple_ic): Likewise.
>> ? ? ? ?(gimple_stringop_fixed_value): Likewise.
>> ? ? ? ?* tree-profile.c (tree_init_edge_profiler): Mark profile
>> ? ? ? ?functions nothrow and leaf.
>> ? ? ? ?(add_abnormal_goto_call_edges): Remove.
>> ? ? ? ?(tree_gen_edge_profiler): Work on SSA form.
>> ? ? ? ?(tree_gen_ic_profiler): Likewise. ?Simplify.
>> ? ? ? ?(do_tree_profiling): Update SSA form.
>> ? ? ? ?(pass_tree_profile): Remove.
>> ? ? ? ?(do_tree_profiling): Likewise.
>> ? ? ? ?(gate_tree_profile_ipa): New function.
>> ? ? ? ?(pass_ipa_tree_profile): New.
>> ? ? ? ?(tree_profiling): Re-write as IPA pass. ?Properly drop const/pure
>> ? ? ? ?state of instrumented functions.
>> ? ? ? ?* passes.c (init_optimization_passes): Remove early non-SSA
>> ? ? ? ?inlining. ?Move profiling after early optimizations.
>> ? ? ? ?* ipa-inline.c (cgraph_gate_ipa_early_inlining): Remove.
>> ? ? ? ?(pass_ipa_early_inline): Likewise.
>> ? ? ? ?* tree-pass.h (pass_ipa_early_inline): Remove.
>> ? ? ? ?(pass_tree_profile): Likewise.
>> ? ? ? ?(pass_ipa_tree_profile): Declare.
>>
>
> This caused:
>
> http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46255
>

This also caused:

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=46528


-- 
H.J.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]