This is the mail archive of the
mailing list for the GCC project.
Re: [PATCH] PR/27733, synth_mult cache missing too much
> My plan for 4.3 was to avoid the generation of
RTL in tree-ssa-loop-ivopts.c:multiply_by_cost. We spend a lot of
time whilst deciding whether to hoist a multiplication out of a loop
choosing between low latency sequences that have the same "cost",
which is often easy to estimate based on bit-counts. This will get
worse with "multiply-by-11".
You may still want to do that because the original testcase's
compilation time, 30 seconds, is not ludicrous but still high. You can
threshold and call choose_mult_variant directly, with a low cost limit
(which may not even need to be target dependent), and compute the cost
based on bitcounts if that fail.