This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [Patch PR44955]: Strip off the real and imagine part in gathering memory references for prefetching
- From: Sebastian Pop <sebpop at gmail dot com>
- To: Zdenek Dvorak <rakdver at kam dot mff dot cuni dot cz>
- Cc: "Fang, Changpeng" <Changpeng dot Fang at amd dot com>, Christian Borntraeger <borntraeger at de dot ibm dot com>, Richard Guenther <richard dot guenther at gmail dot com>, "gcc-patches at gcc dot gnu dot org" <gcc-patches at gcc dot gnu dot org>, "uweigand at de dot ibm dot com" <uweigand at de dot ibm dot com>
- Date: Wed, 21 Jul 2010 10:45:25 -0500
- Subject: Re: [Patch PR44955]: Strip off the real and imagine part in gathering memory references for prefetching
- References: <D4C76825A6780047854A11E93CDE84D00A678CF8@SAUSEXMBP01.amd.com> <20100721064441.GA12606@kam.mff.cuni.cz>
On Wed, Jul 21, 2010 at 01:44, Zdenek Dvorak <rakdver@kam.mff.cuni.cz> wrote:
> Hi,
>
>> Attached is a patch that fixes bug 44955: over-prefetched for array of complex numbers.
>>
>> Current prefetch pass inserts prefetches for the real part and imagine part of a complex array
>> separately, and thus over-prefetched. The reason is that they have different bases and go to
>> different groups, and reuse analysis could not be performed across groups.
>>
>> The attached patch strip off the REALPART_EXPR and IMAGPART_EXPR with an adjustment
>> of the offset for the IMAGPART_EXPR. As a result, the related two references could have the same
>> base and fall into the same group. For the test case in bug 44955, prefetches are generated only
>> for the real parts after applying the patch.
>>
>> Ptached passed bootstrapping.
>>
>> Is it OK for the trunk?
>
> yes.
Committed r162381.