blob: 294fbc0579ebc116d3cf861ffc08def4a70f7126 [file] [log] [blame]
Chandler Carruth345032a2012-02-20 07:35:45 +00001// RUN: %clang_cc1 %s -O3 -triple=x86_64-unknown-unknown -target-feature +3dnow -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 <x86intrin.h>
7
8__m64 test_m_pavgusb(__m64 m1, __m64 m2) {
9 // CHECK: define i64 @test_m_pavgusb
10 // CHECK: @llvm.x86.3dnow.pavgusb
11 return _m_pavgusb(m1, m2);
12}
13
14__m64 test_m_pf2id(__m64 m) {
15 // CHECK: define i64 @test_m_pf2id
16 // CHECK: @llvm.x86.3dnow.pf2id
17 return _m_pf2id(m);
18}
19
20__m64 test_m_pfacc(__m64 m1, __m64 m2) {
21 // CHECK: define i64 @test_m_pfacc
22 // CHECK: @llvm.x86.3dnow.pfacc
23 return _m_pfacc(m1, m2);
24}
25
26__m64 test_m_pfadd(__m64 m1, __m64 m2) {
27 // CHECK: define i64 @test_m_pfadd
28 // CHECK: @llvm.x86.3dnow.pfadd
29 return _m_pfadd(m1, m2);
30}
31
32__m64 test_m_pfcmpeq(__m64 m1, __m64 m2) {
33 // CHECK: define i64 @test_m_pfcmpeq
34 // CHECK: @llvm.x86.3dnow.pfcmpeq
35 return _m_pfcmpeq(m1, m2);
36}
37
38__m64 test_m_pfcmpge(__m64 m1, __m64 m2) {
39 // CHECK: define i64 @test_m_pfcmpge
40 // CHECK: @llvm.x86.3dnow.pfcmpge
41 return _m_pfcmpge(m1, m2);
42}
43
44__m64 test_m_pfcmpgt(__m64 m1, __m64 m2) {
45 // CHECK: define i64 @test_m_pfcmpgt
46 // CHECK: @llvm.x86.3dnow.pfcmpgt
47 return _m_pfcmpgt(m1, m2);
48}
49
50__m64 test_m_pfmax(__m64 m1, __m64 m2) {
51 // CHECK: define i64 @test_m_pfmax
52 // CHECK: @llvm.x86.3dnow.pfmax
53 return _m_pfmax(m1, m2);
54}
55
56__m64 test_m_pfmin(__m64 m1, __m64 m2) {
57 // CHECK: define i64 @test_m_pfmin
58 // CHECK: @llvm.x86.3dnow.pfmin
59 return _m_pfmin(m1, m2);
60}
61
62__m64 test_m_pfmul(__m64 m1, __m64 m2) {
63 // CHECK: define i64 @test_m_pfmul
64 // CHECK: @llvm.x86.3dnow.pfmul
65 return _m_pfmul(m1, m2);
66}
67
68__m64 test_m_pfrcp(__m64 m) {
69 // CHECK: define i64 @test_m_pfrcp
70 // CHECK: @llvm.x86.3dnow.pfrcp
71 return _m_pfrcp(m);
72}
73
74__m64 test_m_pfrcpit1(__m64 m1, __m64 m2) {
75 // CHECK: define i64 @test_m_pfrcpit1
76 // CHECK: @llvm.x86.3dnow.pfrcpit1
77 return _m_pfrcpit1(m1, m2);
78}
79
80__m64 test_m_pfrcpit2(__m64 m1, __m64 m2) {
81 // CHECK: define i64 @test_m_pfrcpit2
82 // CHECK: @llvm.x86.3dnow.pfrcpit2
83 return _m_pfrcpit2(m1, m2);
84}
85
86__m64 test_m_pfrsqrt(__m64 m) {
87 // CHECK: define i64 @test_m_pfrsqrt
88 // CHECK: @llvm.x86.3dnow.pfrsqrt
89 return _m_pfrsqrt(m);
90}
91
92__m64 test_m_pfrsqrtit1(__m64 m1, __m64 m2) {
93 // CHECK: define i64 @test_m_pfrsqrtit1
94 // CHECK: @llvm.x86.3dnow.pfrsqit1
95 return _m_pfrsqrtit1(m1, m2);
96}
97
98__m64 test_m_pfsub(__m64 m1, __m64 m2) {
99 // CHECK: define i64 @test_m_pfsub
100 // CHECK: @llvm.x86.3dnow.pfsub
101 return _m_pfsub(m1, m2);
102}
103
104__m64 test_m_pfsubr(__m64 m1, __m64 m2) {
105 // CHECK: define i64 @test_m_pfsubr
106 // CHECK: @llvm.x86.3dnow.pfsubr
107 return _m_pfsubr(m1, m2);
108}
109
110__m64 test_m_pi2fd(__m64 m) {
111 // CHECK: define i64 @test_m_pi2fd
112 // CHECK: @llvm.x86.3dnow.pi2fd
113 return _m_pi2fd(m);
114}
115
116__m64 test_m_pmulhrw(__m64 m1, __m64 m2) {
117 // CHECK: define i64 @test_m_pmulhrw
118 // CHECK: @llvm.x86.3dnow.pmulhrw
119 return _m_pmulhrw(m1, m2);
120}
121
122__m64 test_m_pf2iw(__m64 m) {
123 // CHECK: define i64 @test_m_pf2iw
124 // CHECK: @llvm.x86.3dnowa.pf2iw
125 return _m_pf2iw(m);
126}
127
128__m64 test_m_pfnacc(__m64 m1, __m64 m2) {
129 // CHECK: define i64 @test_m_pfnacc
130 // CHECK: @llvm.x86.3dnowa.pfnacc
131 return _m_pfnacc(m1, m2);
132}
133
134__m64 test_m_pfpnacc(__m64 m1, __m64 m2) {
135 // CHECK: define i64 @test_m_pfpnacc
136 // CHECK: @llvm.x86.3dnowa.pfpnacc
137 return _m_pfpnacc(m1, m2);
138}
139
140__m64 test_m_pi2fw(__m64 m) {
141 // CHECK: define i64 @test_m_pi2fw
142 // CHECK: @llvm.x86.3dnowa.pi2fw
143 return _m_pi2fw(m);
144}
145
146__m64 test_m_pswapdsf(__m64 m) {
147 // CHECK: define i64 @test_m_pswapdsf
148 // CHECK: @llvm.x86.3dnowa.pswapd
149 return _m_pswapdsf(m);
150}
151
152__m64 test_m_pswapdsi(__m64 m) {
153 // CHECK: define i64 @test_m_pswapdsi
154 // CHECK: @llvm.x86.3dnowa.pswapd
155 return _m_pswapdsi(m);
156}