It feels good to know that the widening mults issue has been resolved as it was a bit of a disapointment I noted the erratic behaviour with GCC 4.4.1. Perhaps you would care to comment on what to expect as a user now, then?
Another issue that gave me porting problems was the SIMD memory accesses, for e g doing a wide load into two adjacent narrow registers with one instruction. This was resolved earlier on the mailinglist to not be handleable on RTL, so I wonder now if anything has been done for this, as it too seems rather reasonable, just like the widening loads? /Jonas Paulsson > On 04/27/2010 08:41 PM, Jonas Paulsson wrote: > >>> I've recently been bitten by the lost-widening-multiplication- >>> when-in-loop issue myself, and noted it for revisit Some Day. >>> Fixing that by other means made a whopping 27% improvement for >>> the application where I saw it: a hot loop doing a MDCT using >>> Q31 fixed-point, where a common operation is to widen-multiply >>> two 32-bit numbers and pick the high 32 bits of the 64-bit >>> result (being the result divided by 2; i.e. Q30-ish for that >>> operation). >>> >>> brgds, H-P > > Widening multiplies should work again after r158633 and 158643. If > there are cases that still don't work for you, please file bugzilla PRs. > > > Bernd > >