1// RUN: %clang_cc1 %s -O3 -triple=x86_64-apple-darwin -target-feature +rtm -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
8unsigned int test_xbegin(void) {
9  // CHECK: i32 @llvm.x86.xbegin()
10  return _xbegin();
11}
12
13void
14test_xend(void) {
15  // CHECK: void @llvm.x86.xend()
16  _xend();
17}
18
19void
20test_xabort(void) {
21  // CHECK: void @llvm.x86.xabort(i8 2)
22  _xabort(2);
23}
24
25unsigned int test_xtest(void) {
26  // CHECK: i32 @llvm.x86.xtest()
27  return _xtest();
28}
29