1# 64bit lockable Instructions
2
3	.text
4foo:
5	lock add %eax, (%rbx)
6	lock add $0x64, (%rbx)
7	lock adc %eax, (%rbx)
8	lock adc $0x64, (%rbx)
9	lock and %eax, (%rbx)
10	lock and $0x64, (%rbx)
11	lock btc %eax, (%rbx)
12	lock btc $0x64, (%rbx)
13	lock btr %eax, (%rbx)
14	lock btr $0x64, (%rbx)
15	lock bts %eax, (%rbx)
16	lock bts $0x64, (%rbx)
17	lock cmpxchg %eax,(%rbx)
18	lock cmpxchg8b (%rbx)
19	lock cmpxchg16b (%rbx)
20	lock decl (%rbx)
21	lock incl (%rbx)
22	lock negl (%rbx)
23	lock notl (%rbx)
24	lock or %eax, (%rbx)
25	lock or $0x64, (%rbx)
26	lock sbb %eax, (%rbx)
27	lock sbb $0x64, (%rbx)
28	lock sub %eax, (%rbx)
29	lock sub $0x64, (%rbx)
30	lock xadd %eax, (%rbx)
31	lock xchg (%rbx), %eax
32	lock xchg %eax, (%rbx)
33	lock xor %eax, (%rbx)
34	lock xor $0x64, (%rbx)
35
36	.intel_syntax noprefix
37	lock add DWORD PTR [rbx],eax
38	lock add DWORD PTR [rbx],0x64
39	lock adc DWORD PTR [rbx],eax
40	lock adc DWORD PTR [rbx],0x64
41	lock and DWORD PTR [rbx],eax
42	lock and DWORD PTR [rbx],0x64
43	lock btc DWORD PTR [rbx],eax
44	lock btc DWORD PTR [rbx],0x64
45	lock btr DWORD PTR [rbx],eax
46	lock btr DWORD PTR [rbx],0x64
47	lock bts DWORD PTR [rbx],eax
48	lock bts DWORD PTR [rbx],0x64
49	lock cmpxchg DWORD PTR [rbx],eax
50	lock cmpxchg8b QWORD PTR [rbx]
51	lock cmpxchg16b OWORD PTR [rbx]
52	lock dec DWORD PTR [rbx]
53	lock inc DWORD PTR [rbx]
54	lock neg DWORD PTR [rbx]
55	lock not DWORD PTR [rbx]
56	lock or DWORD PTR [rbx],eax
57	lock or DWORD PTR [rbx],0x64
58	lock sbb DWORD PTR [rbx],eax
59	lock sbb DWORD PTR [rbx],0x64
60	lock sub DWORD PTR [rbx],eax
61	lock sub DWORD PTR [rbx],0x64
62	lock xadd DWORD PTR [rbx],eax
63	lock xchg DWORD PTR [rbx],eax
64	lock xchg DWORD PTR [rbx],eax
65	lock xor DWORD PTR [rbx],eax
66	lock xor DWORD PTR [rbx],0x64
67