[PATCH][AArch64]Implemented vcopy_lane patterns using scalar dup
Jiangning Liu
liujiangning1 at gmail.com
Mon Dec 2 17:52:04 PST 2013
Hi Ana,
I mean the 3rd argument should be float64x2_t rather than float64x1_t,
because this intrinsic has contains 'laneq' rather than 'lane'.
float64x1_t vcopy_laneq_f64(float64x1_t a, const int lane1,
float64x2_t b, const int lane2)
Thanks,
-Jiangning
2013/12/3 Ana Pazos <apazos at codeaurora.org>
> Hi Jiangning,
>
>
>
> - The file head should be unchanged – thanks for catching
> that deleted line.
>
> - The test function does not have the lanes as input
> parameters, but the intrinsic call does, see the constant zero being
> passed. The intrinisic is correctly defined.
>
> float64x1_t test_vcopy_laneq_f64(float64x1_t a, float64x1_t c) {
>
> return *vcopy_laneq_f64(a, 0, c, 0);*
>
> }
>
> - Will add the missing vcopyq_laneq_f64.
>
>
>
> Will make these changes and check them in today.
>
>
>
> Thanks!
>
> Ana.
>
>
>
> *From:* Jiangning Liu [mailto:liujiangning1 at gmail.com]
> *Sent:* Wednesday, November 27, 2013 6:52 PM
> *To:* Ana Pazos
> *Cc:* llvm-commits; cfe-commits at cs.uiuc.edu; Jiangning Liu
> *Subject:* Re: [PATCH][AArch64]Implemented vcopy_lane patterns using
> scalar dup
>
>
>
> @@ -1,6 +1,3 @@
>
> -//===-- AArch64InstrNEON.td - NEON support for AArch64 -----*- tablegen
> -*-===//
>
> -//
>
> -// The LLVM Compiler Infrastructure
>
> //
>
> // This file is distributed under the University of Illinois Open Source
>
> // License. See LICENSE.TXT for details.
>
>
>
> We should not remove this file head, should we?
>
>
>
> +// CHECK_AARCH64: test_vcopy_laneq_f64
>
> +float64x1_t test_vcopy_laneq_f64(float64x1_t a, float64x1_t c) {
>
> + return vcopy_laneq_f64(a, 0, c, 0);
>
> +// CHECK: fmov {{d[0-9]+}}, {{d[0-9]+}}
>
> +// CHECK-NOT: dup {{d[0-9]+}}, {{v[0-9]+}}.d[0]
>
> +}
>
>
>
> vcopy_laneq_f64 should have prototype as below.
>
> float64x1_t vcopy_laneq_f64(float64x1_t a, const int lane1, float64x2_t b, const int lane2)
>
>
>
>
>
> And sorry, one more is missing in the list I previously gave you,
>
> float64x2_t vcopyq_laneq_f64(float64x2_t a, const int lane1, float64x2_t b, const int lane2)
>
>
>
>
>
> All others LGTM!
>
>
>
>
>
> Thanks,
>
>
>
> -Jiangning
>
>
>
>
>
>
>
> 2013/11/28 Ana Pazos <apazos at codeaurora.org>
>
> Hi Jiangning and reviewers,
>
>
>
> Here is the patch with the vcopy_lane* intrinsics that use scalar dup
> instructions.
>
>
>
> Send me your review/ok sign, and I will commit them.
>
>
>
> Thanks,
>
> Ana.
>
>
> _______________________________________________
> cfe-commits mailing list
> cfe-commits at cs.uiuc.edu
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>
>
>
>
>
> --
>
> Thanks,
>
> -Jiangning
>
--
Thanks,
-Jiangning
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/cfe-commits/attachments/20131203/aceb7b7a/attachment.html>
More information about the cfe-commits
mailing list