Hi Jiangning,
I see what you meant now. Note the original patch has already been committed. Find attached the clang patch to fix this issue. My read/write access to clang is not working. So if you can, commit it on my behalf tonight. Or I will ask Chad to do it tomorrow. Thanks, Ana. From: Jiangning Liu [mailto:[email protected]] Sent: Monday, December 02, 2013 5:52 PM To: Ana Pazos Cc: llvm-commits; [email protected]; Jiangning Liu Subject: Re: [PATCH][AArch64]Implemented vcopy_lane patterns using scalar dup 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 <[email protected]> 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:[email protected]] Sent: Wednesday, November 27, 2013 6:52 PM To: Ana Pazos Cc: llvm-commits; [email protected]; 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 <[email protected]> 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 [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits -- Thanks, -Jiangning -- Thanks, -Jiangning
0001-Fixed-vcopy_laneq_f64-intrinsic-implementation.patch
Description: Binary data
_______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
