1 // RUN: %clang_cc1 %s -O3 -triple=x86_64-apple-darwin -target-feature +avx -emit-llvm -o - | FileCheck %s 2 3 // Don't include mm_malloc.h, it's system specific. 4 #define __MM_MALLOC_H 5 6 #include <immintrin.h> 7 8 // 9 // Test LLVM IR codegen of shuffle instructions 10 // 11 test__mm256_loadu_ps(void * p)12__m256 test__mm256_loadu_ps(void* p) { 13 // CHECK: load <8 x float>* %{{.*}}, align 1 14 return _mm256_loadu_ps(p); 15 } 16 test__mm256_loadu_pd(void * p)17__m256d test__mm256_loadu_pd(void* p) { 18 // CHECK: load <4 x double>* %{{.*}}, align 1 19 return _mm256_loadu_pd(p); 20 } 21 test__mm256_loadu_si256(void * p)22__m256i test__mm256_loadu_si256(void* p) { 23 // CHECK: load <4 x i64>* %{{.+}}, align 1 24 return _mm256_loadu_si256(p); 25 } 26