[Patch] [AArch64] Implement getMaximumUnrollFactor()
Hal Finkel
hfinkel at anl.gov
Tue Apr 8 22:50:48 PDT 2014
----- Original Message -----
> From: "Jiangning Liu" <liujiangning1 at gmail.com>
> To: "Zhaoshi" <zhaoshiz at codeaurora.org>
> Cc: "llvm-commits at cs.uiuc.edu for LLVM" <llvm-commits at cs.uiuc.edu>
> Sent: Wednesday, April 9, 2014 12:30:25 AM
> Subject: Re: [Patch] [AArch64] Implement getMaximumUnrollFactor()
>
>
>
>
> Hi Zhaoshi,
>
>
>
> +;CHECK-LABEL: array_add
> +;CHECK: load <4 x i32>
> +;CHECK: load <4 x i32>
> +;CHECK: load <4 x i32>
> +;CHECK: load <4 x i32>
> +;CHECK: add nsw <4 x i32>
> +;CHECK: add nsw <4 x i32>
> +;CHECK: store <4 x i32>
> +;CHECK: store <4 x i32>
> +;CHECK: ret
>
>
> Since we don't really have out-of-order CHECK,
Do you mean CHECK-DAG?
> this CHECK ordering
> could fail after loop unrolling in theory, right?
FWIW, I think that the form above is better because it makes it clear that you're looking for the vectorizer's interleaved unrolling (and not the concatenation unrolling from the generic unroller).
-Hal
> Maybe simply
> checking there are only two stores like below is enough?
>
>
>
> ;CHECK: store <4 x i32>
> ;CHECK: store <4 x i32>
> ;CHECK-NOT: store
>
>
> Thanks,
> -Jiangning
>
>
>
>
>
> 2014-04-08 9:26 GMT+08:00 < zhaoshiz at codeaurora.org > :
>
>
> Hello,
>
> This patch allows vectorized loops to be unrolled by a factor of 2 on
> AArch64. Please help review
>
> Thanks,
> Zhaoshi
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
>
>
>
>
> --
>
> Thanks,
> -Jiangning
> _______________________________________________
> llvm-commits mailing list
> llvm-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/llvm-commits
>
--
Hal Finkel
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
More information about the llvm-commits
mailing list