On Mon, Jul 4, 2011 at 4:31 PM, Andrew Stubbs <a...@codesourcery.com> wrote: > On 28/06/11 16:30, Andrew Stubbs wrote: >> >> On 23/06/11 15:42, Andrew Stubbs wrote: >>> >>> This patch fixes the case where widening multiply-and-accumulate were >>> not recognised because the multiplication itself is not actually >>> widening. >>> >>> This can happen when you have "DI + SI * SI" - the multiplication will >>> be done in SImode as a non-widening multiply, and it's only the final >>> accumulate step that is widening. >>> >>> This was not recognised for two reasons: >>> >>> 1. is_widening_mult_p inferred the output type from the multiply >>> statement, which in not useful in this case. >>> >>> 2. The inputs to the multiply instruction may not have been converted at >>> all (because they're not being widened), so the pattern match failed. >>> >>> The patch fixes these issues by making the output type explicit, and by >>> permitting unconverted inputs (the types are still checked, so this is >>> safe). >>> >>> OK? >> >> This update fixes Janis' testsuite issue. > > This updates the context changed by my update to patch 3. > > The content of this patch has not changed.
Ok. Thanks, Richard. > Andrew >