x86-64: bndmk, bndldx, and bndstx don't allow RIP-relative addressing
[deliverable/binutils-gdb.git] / gas / testsuite / gas / i386 / x86-64-bmi.s
CommitLineData
f12dc422
L
1# Check 64bit BMI instructions
2
3 .allow_index_reg
4 .text
5_start:
6
7# Test for op r16, r/m16
8 tzcnt %ax,%bx
9 tzcnt (%rcx),%bx
10 tzcnt (%rcx),%r15w
11
12# Test for op r32, r32, r/m32
13 andn %eax,%ebx,%esi
14 andn (%rcx),%ebx,%esi
15 andn %r9d,%r15d,%r10d
16 andn (%rcx),%r15d,%r10d
17
18# Test for op r32, r/m32, r32
19 bextr %eax,%ebx,%esi
20 bextr %ebx,(%rcx),%esi
21 bextr %r9d,%r15d,%r10d
22 bextr %r9d,(%rcx),%r10d
23
24# Test for op r32, r/m32
25 tzcnt %eax,%ebx
26 tzcnt (%rcx),%ebx
27 tzcnt (%rcx),%r15d
28 blsi %eax,%ebx
29 blsi (%rcx),%ebx
30 blsi (%rcx),%r15d
31 blsmsk %eax,%ebx
32 blsmsk (%rcx),%ebx
33 blsmsk (%rcx),%r15d
34 blsr %eax,%ebx
35 blsr (%rcx),%ebx
36 blsr (%rcx),%r15d
37
38# Test for op r64, r64, r/m64
39 andn %rax,%rbx,%rsi
40 andn (%rcx),%rbx,%rsi
41 andn %r9,%r15,%r10
42 andn (%rcx),%r15,%r10
43
44# Test for op r64, r/m64, r64
45 bextr %rax,%rbx,%rsi
46 bextr %rax,(%rcx),%rsi
47 bextr %r9,%r15,%r10
48 bextr %r9,(%rcx),%r10
49
50# Test for op r64, r/m64
51 tzcnt %rax,%rbx
52 tzcnt (%rcx),%rbx
53 tzcnt %r9,%r15
54 tzcnt (%rcx),%r15
55 blsi %rax,%rbx
56 blsi (%rcx),%rbx
57 blsi %r9,%r15
58 blsi (%rcx),%r15
59 blsmsk %rax,%rbx
60 blsmsk (%rcx),%rbx
61 blsmsk %r9,%r15
62 blsmsk (%rcx),%r15
63 blsr %rax,%rbx
64 blsr (%rcx),%rbx
65 blsr %r9,%r15
66 blsr (%rcx),%r15
67
68 .intel_syntax noprefix
69
70# Test for op r16, r/m16
71 tzcnt bx,ax
72 tzcnt bx,WORD PTR [rcx]
73 tzcnt r10w,WORD PTR [rcx]
74 tzcnt bx,[rcx]
75
76# Test for op r32, r32, r/m32
77 andn esi,ebx,eax
78 andn esi,ebx,DWORD PTR [rcx]
79 andn r15d,r10d,r9d
80 andn r15d,r10d,DWORD PTR [rcx]
81 andn esi,ebx,[rcx]
82
83# Test for op r32, r/m32, r32
84 bextr esi,ebx,eax
85 bextr esi,DWORD PTR [rcx],ebx
86 bextr r15d,r10d,r9d
87 bextr r15d,DWORD PTR [rcx],r9d
88 bextr esi,[rcx],ebx
89
90# Test for op r32, r/m32
91 tzcnt ebx,eax
92 tzcnt ebx,DWORD PTR [rcx]
93 tzcnt r10d,DWORD PTR [rcx]
94 tzcnt ebx,[rcx]
95 blsi ebx,eax
96 blsi ebx,DWORD PTR [rcx]
97 blsi r10d,DWORD PTR [rcx]
98 blsi ebx,[rcx]
99 blsmsk ebx,eax
100 blsmsk ebx,DWORD PTR [rcx]
101 blsmsk r10d,DWORD PTR [rcx]
102 blsmsk ebx,[rcx]
103 blsr ebx,eax
104 blsr ebx,DWORD PTR [rcx]
105 blsr r10d,DWORD PTR [rcx]
106 blsr ebx,[rcx]
107
108# Test for op r64, r64, r/m64
109 andn rsi,rbx,rax
110 andn rsi,rbx,QWORD PTR [rcx]
111 andn r10,r15,r9
112 andn r10,r15,QWORD PTR [rcx]
113 andn rsi,rbx,[rcx]
114
115# Test for op r64, r/m64, r64
116 bextr rsi,rbx,rax
117 bextr rsi,QWORD PTR [rcx],rax
118 bextr r10,r15,r9
119 bextr r10,QWORD PTR [rcx],r9
120 bextr rsi,[rcx],rax
121
122# Test for op r64, r/m64
123 tzcnt rbx,rax
124 tzcnt rbx,QWORD PTR [rcx]
125 tzcnt r15,r9
126 tzcnt r15,QWORD PTR [rcx]
127 tzcnt rbx,[rcx]
128 blsi rbx,rax
129 blsi rbx,QWORD PTR [rcx]
130 blsi r15,r9
131 blsi r15,QWORD PTR [rcx]
132 blsi rbx,[rcx]
133 blsmsk rbx,rax
134 blsmsk rbx,QWORD PTR [rcx]
135 blsmsk r15,r9
136 blsmsk r15,QWORD PTR [rcx]
137 blsmsk rbx,[rcx]
138 blsr rbx,rax
139 blsr rbx,QWORD PTR [rcx]
140 blsr r15,r9
141 blsr r15,QWORD PTR [rcx]
142 blsr rbx,[rcx]
This page took 0.379248 seconds and 4 git commands to generate.