On Tue, Apr 26, 2016 at 11:39 AM, H.J. Lu <hjl.to...@gmail.com> wrote:
> On Tue, Apr 26, 2016 at 11:31 AM, Bernd Schmidt <bschm...@redhat.com> wrote:
>> On 04/26/2016 08:21 PM, Richard Sandiford wrote:
>>>
>>> "H.J. Lu" <hongjiu...@intel.com> writes:
>>>>
>>>> I am working a patch to enable SSE, AVX and AVX512 for memcpy/memset
>>>> optimization.  x86 backend defines MAX_BITSIZE_MODE_ANY_INT to 128
>>>> to keep the OI and XI modes from confusing the compiler into thinking
>>>> that these modes could actually be used for computation.  But the OI
>>>> and XI modes can be used for data movement with vector instructions.
>>>
>>>
>>> But doesn't this then open the possibility that a memset or memcpy
>>> will be seen as a "normal" integer operation?  Routines like
>>> simplify_immed_subreg could in principle create a constant integer
>>> for the stored value, which could then be treated by later passes as
>>> a wide_int, breaking the MAX_BITSIZE_MODE_ANY_INT assumption.
>>>
>>> Couldn't we move to allowing vector modes instead?  That seems better
>>> than having to pander to the current situation in which every vector
>>> effectively needs an associated integer mode.
>>
>>
>> I'm actually working on a patch in this area. Haven't gotten to the point of
>> allowing vector modes yet, but it's something that I've had on my mind; I
>> think it would be a good idea.
>>
>
> I am looking forward to seeing your patch.
>

Hi Bernd,

Are you planning to submit your patch before July?  If not, I will resubmit
mine and work out all the issues.  It may take a long time to review and I
have patches to enable SSE, AVX, AVX512 f memset and memcpy, which
depend on it.  I'd like to see them before stage 2 for GCC 7.

Thanks.

-- 
H.J.

Reply via email to