2012-11-10 13:17:46 +08:00
|
|
|
// RUN: %clang_cc1 %s -O3 -triple=x86_64-apple-darwin -target-feature +rtm -emit-llvm -o - | FileCheck %s
|
|
|
|
|
|
|
|
// Don't include mm_malloc.h, it's system specific.
|
|
|
|
#define __MM_MALLOC_H
|
|
|
|
|
|
|
|
#include <immintrin.h>
|
|
|
|
|
|
|
|
unsigned int test_xbegin(void) {
|
|
|
|
// CHECK: i32 @llvm.x86.xbegin()
|
|
|
|
return _xbegin();
|
|
|
|
}
|
|
|
|
|
|
|
|
void
|
|
|
|
test_xend(void) {
|
|
|
|
// CHECK: void @llvm.x86.xend()
|
|
|
|
_xend();
|
|
|
|
}
|
|
|
|
|
|
|
|
void
|
|
|
|
test_xabort(void) {
|
|
|
|
// CHECK: void @llvm.x86.xabort(i8 2)
|
|
|
|
_xabort(2);
|
|
|
|
}
|
2013-03-29 13:14:06 +08:00
|
|
|
|
|
|
|
unsigned int test_xtest(void) {
|
|
|
|
// CHECK: i32 @llvm.x86.xtest()
|
|
|
|
return _xtest();
|
|
|
|
}
|