On 14/06/16 08:04, Marc Glisse wrote:
On Mon, 13 Jun 2016, Kyrill Tkachov wrote:
The new function vect_synth_mult_by_constant that does all the hard work is
very similar in structure to expand_mult_const from expmed.c but it operates on
gimple SSA rather than RTL.
I think in some cases this transformation creates undefined overflow from
well-defined code. While this is fine in RTL, I would expect to need a cast to
unsigned_type_for in gimple for some of the algorithms.
(not completely sure, just something to look at)
Would casting the initial argument to the unsigned type using fold_convert,
performing the algorithm and then
casting the final result back to signed if necessary at the end work?
Kyrill