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: Fixes to estimate_num_insns try II


On Mon, May 11, 2009 at 2:39 PM, Jan Hubicka <hubicka@ucw.cz> wrote:
> Hi,

> The remaining testcase updates are quite easy; we need to prevent in lining
> in ipacost testcases and slp-3.c that got unrolled after previous change is no
> longer getting unrolled interanl loop (iterating 8 times containing one load
> and one store, so it is sane decionsion to not do so).
>
> Bootstrapped/regtested x86_64-linux, OK?
>
> Honza
>
> ? ? ? ?* gcc.dg/tree-ssa/loop-36.c: Reduce amount of iterations to 2 so unrolling
> ? ? ? ?still happens.
> ? ? ? ?* gcc.dg/ipa/ipacost-1.c: Prevent inlining
> ? ? ? ?* gcc.dg/ipa/ipacost-2.c: Likewise.
> ? ? ? ?* gcc.dg/vect/slp-3.c: Loop is no longer unrolled.
>
> ? ? ? ?* tree-inline.c (estimate_operator_cost): Add operands;
> ? ? ? ?when division happens by constant, it is cheap.
> ? ? ? ?(estimate_num_insns): Loads and stores are not having cost of 0;
> ? ? ? ?EH magic stuff is cheap; when computing runtime cost of switch,
> ? ? ? ?use log2 base of amount of its cases; builtin_expect has cost of 0;
> ? ? ? ?compute cost for moving return value of call.
> ? ? ? ?(init_inline_once): Initialize time_based flags.
> ? ? ? ?* tree-inline.h (eni_weights_d): Add time_based flag.

There is an invalid memory read in this patch:

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

-- 
H.J.


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