int64_t test_vdupd_lane_s64(int64x1_t src) { return vdupd_lane_s64(src, 0); // CHECK-LABEL: @test_vdupd_lane_s64 // CHECK: [[TMP1:%.*]] = bitcast <1 x i64> %src to [[TYPE:.*]] // CHECK: [[TMP2:%.*]] = bitcast [[TYPE]] [[TMP1]] to <1 x i64> // CHECK: extractelement <1 x i64> [[TMP2]], i32 0 // CHECK-BE-LABEL: @test_vdupd_lane_s64 // CHECK-BE: extractelement <1 x i64> {{.*}}, i32 0 }
wrap_vdupd_lane_s64_0 (int64x1_t dummy, int64x1_t a) { return vdupd_lane_s64 (a, 0); }
// CHECK-LABEL: @test_vdupd_lane_s64 int64_t test_vdupd_lane_s64(int64x1_t src) { return vdupd_lane_s64(src, 0); // CHECK: extractelement <1 x i64> %src, i32 0 // CHECK-BE: extractelement <1 x i64> %src, i32 0 }
// CHECK-LABEL: test_vdupd_lane_s64 int64_t test_vdupd_lane_s64(int64x1_t a) { return vdupd_lane_s64(a, 0); // CHECK: fmov {{x[0-9]+}}, {{d[0-9]+}} }
// CHECK-LABEL: define i64 @test_vdupd_lane_s64(<1 x i64> %a) #0 { // CHECK: [[TMP0:%.*]] = bitcast <1 x i64> %a to <8 x i8> // CHECK: [[TMP1:%.*]] = bitcast <8 x i8> [[TMP0]] to <1 x i64> // CHECK: [[VGET_LANE:%.*]] = extractelement <1 x i64> [[TMP1]], i32 0 // CHECK: ret i64 [[VGET_LANE]] int64_t test_vdupd_lane_s64(int64x1_t a) { return vdupd_lane_s64(a, 0); }
int64x1_t test_vdupd_lane_s64 (int64x2_t a) { return vdupd_lane_s64 (a, 2); }