blob: b963c97cc18a6faa4780b8b0a50de139b3ba8779 [file] [log] [blame]
Craig Topper2ee2ac22012-01-25 04:26:17 +00001// 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
12__m256 test__mm256_loadu_ps(void* p) {
Chris Lattner9eb10cc2012-01-25 05:29:46 +000013 // CHECK: load <8 x float>* %{{.*}}, align 1
Craig Topper2ee2ac22012-01-25 04:26:17 +000014 return _mm256_loadu_ps(p);
15}
16
17__m256d test__mm256_loadu_pd(void* p) {
Chris Lattner9eb10cc2012-01-25 05:29:46 +000018 // CHECK: load <4 x double>* %{{.*}}, align 1
Craig Topper2ee2ac22012-01-25 04:26:17 +000019 return _mm256_loadu_pd(p);
20}
21
22__m256i test__mm256_loadu_si256(void* p) {
NAKAMURA Takumi56576f72012-01-25 09:11:21 +000023 // CHECK: load <4 x i64>* %{{.+}}, align 1
Craig Topper2ee2ac22012-01-25 04:26:17 +000024 return _mm256_loadu_si256(p);
25}