16bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines// RUN: %clang_cc1 -O1 -triple arm64-apple-ios7 -target-feature +neon -ffreestanding -S -o - -emit-llvm %s | FileCheck %s
2651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// Test ARM64 SIMD vcreate intrinsics
3651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
4651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines/*#include <arm_neon.h>*/
5651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines#include <arm_neon.h>
6651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
7651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesfloat32x2_t test_vcreate_f32(uint64_t a1) {
8651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK: test_vcreate_f32
9651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  return vcreate_f32(a1);
10651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK: bitcast {{.*}} to <2 x float>
11651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-NEXT: ret
12651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines}
13651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines
14651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// FIXME enable when scalar_to_vector in backend is fixed.  Also, change
15651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines// CHECK@ to CHECK<colon> and CHECK-NEXT@ to CHECK-NEXT<colon>
16651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines/*
17651f13cea278ec967336033dd032faef0e9fc2ecStephen Hinesfloat64x1_t test_vcreate_f64(uint64_t a1) {
18651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK@ test_vcreate_f64
19651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  return vcreate_f64(a1);
206bcf27bb9a4b5c3f79cb44c0e4654a6d7619ad89Stephen Hines  // CHECK@ llvm.aarch64.neon.saddlv.i64.v2i32
21651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines  // CHECK-NEXT@ ret
22651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines}
23651f13cea278ec967336033dd032faef0e9fc2ecStephen Hines*/
24