[llvm] r311263 - [AVX512] Use alignedstore256 in a pattern that's emitting a 256-bit movaps from an extract subvector operation.

Hans Wennborg via llvm-commits llvm-commits at lists.llvm.org
Tue Aug 22 10:46:06 PDT 2017


Sure, r311478.

On Tue, Aug 22, 2017 at 10:17 AM, Craig Topper <craig.topper at gmail.com> wrote:
> Hans, can we merge this to 5.0? It looks like it was missed in r286342 which
> fixed PR30947 back in November 2016.
>
> ~Craig
>
> On Sat, Aug 19, 2017 at 3:02 PM, Craig Topper via llvm-commits
> <llvm-commits at lists.llvm.org> wrote:
>>
>> Author: ctopper
>> Date: Sat Aug 19 15:02:02 2017
>> New Revision: 311263
>>
>> URL: http://llvm.org/viewvc/llvm-project?rev=311263&view=rev
>> Log:
>> [AVX512] Use alignedstore256 in a pattern that's emitting a 256-bit movaps
>> from an extract subvector operation.
>>
>> Modified:
>>     llvm/trunk/lib/Target/X86/X86InstrAVX512.td
>>     llvm/trunk/test/CodeGen/X86/avx512-extract-subvector.ll
>>
>> Modified: llvm/trunk/lib/Target/X86/X86InstrAVX512.td
>> URL:
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/lib/Target/X86/X86InstrAVX512.td?rev=311263&r1=311262&r2=311263&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/lib/Target/X86/X86InstrAVX512.td (original)
>> +++ llvm/trunk/lib/Target/X86/X86InstrAVX512.td Sat Aug 19 15:02:02 2017
>> @@ -3721,8 +3721,8 @@ let Predicates = [HasVLX] in {
>>    def : Pat<(alignedstore256 (v4f64 (extract_subvector
>>                                       (v8f64 VR512:$src), (iPTR 0))),
>> addr:$dst),
>>       (VMOVAPDZ256mr addr:$dst, (v4f64 (EXTRACT_SUBREG
>> VR512:$src,sub_ymm)))>;
>> -  def : Pat<(alignedstore (v8f32 (extract_subvector
>> -                                  (v16f32 VR512:$src), (iPTR 0))),
>> addr:$dst),
>> +  def : Pat<(alignedstore256 (v8f32 (extract_subvector
>> +                                     (v16f32 VR512:$src), (iPTR 0))),
>> addr:$dst),
>>       (VMOVAPSZ256mr addr:$dst, (v8f32 (EXTRACT_SUBREG
>> VR512:$src,sub_ymm)))>;
>>    def : Pat<(alignedstore256 (v4i64 (extract_subvector
>>                                       (v8i64 VR512:$src), (iPTR 0))),
>> addr:$dst),
>>
>> Modified: llvm/trunk/test/CodeGen/X86/avx512-extract-subvector.ll
>> URL:
>> http://llvm.org/viewvc/llvm-project/llvm/trunk/test/CodeGen/X86/avx512-extract-subvector.ll?rev=311263&r1=311262&r2=311263&view=diff
>>
>> ==============================================================================
>> --- llvm/trunk/test/CodeGen/X86/avx512-extract-subvector.ll (original)
>> +++ llvm/trunk/test/CodeGen/X86/avx512-extract-subvector.ll Sat Aug 19
>> 15:02:02 2017
>> @@ -493,7 +493,7 @@ entry:
>>  define void @extract_subvector512_v8f32_store_lo_align_16(float*
>> nocapture %addr, <16 x float> %a) nounwind uwtable ssp {
>>  ; SKX-LABEL: extract_subvector512_v8f32_store_lo_align_16:
>>  ; SKX:       ## BB#0: ## %entry
>> -; SKX-NEXT:    vmovaps %ymm0, (%rdi)
>> +; SKX-NEXT:    vmovups %ymm0, (%rdi)
>>  ; SKX-NEXT:    vzeroupper
>>  ; SKX-NEXT:    retq
>>  entry:
>>
>>
>> _______________________________________________
>> llvm-commits mailing list
>> llvm-commits at lists.llvm.org
>> http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits
>
>


More information about the llvm-commits mailing list