1# MPX instructions
2	.allow_index_reg
3	.text
4
5	### bndmk
6	bndmk (%eax), %bnd1
7	bndmk 0x3(%ecx,%ebx,1), %bnd1
8	bndmk (%rip), %bnd3
9	bndmk (%eip), %bnd2
10
11	### bndmov
12	bndmov (%r8d), %bnd1
13	bndmov 0x3(%r9d,%edx,1), %bnd1
14
15	bndmov %bnd1, (%eax)
16	bndmov %bnd1, 0x3(%ecx,%eax,1)
17
18	### bndcl
19	bndcl (%ecx), %bnd1
20	bndcl 0x3(%ecx,%eax,1), %bnd1
21
22	### bndcu
23	bndcu (%ecx), %bnd1
24	bndcu 0x3(%ecx,%eax,1), %bnd1
25
26	### bndcn
27	bndcn (%ecx), %bnd1
28	bndcn 0x3(%ecx,%eax,1), %bnd1
29
30	### bndstx
31	bndstx %bnd0, 0x3(%eax,%ebx,1)
32	bndstx %bnd2, 3(%ebx,1)
33	bndstx %bnd1, (%r15,%rax,2)
34	bndstx %bnd3, base(%rip)
35	bndstx %bnd1, base(%eip)
36
37	### bndldx
38	bndldx 0x3(%eax,%ebx,1), %bnd0
39	bndldx 3(%ebx,1), %bnd2
40	bndldx (%rax,%r15,4), %bnd3
41	bndldx base(%rip), %bnd1
42	bndldx base(%eip), %bnd3
43
44.intel_syntax noprefix
45	bndmk bnd1, [eax]
46	bndmk bnd1, [edx+1*eax+0x3]
47	bndmk bnd3, [rip]
48	bndmk bnd2, [eip]
49
50	### bndmov
51	bndmov bnd1, [eax]
52	bndmov bnd1, [edx+1*eax+0x3]
53
54	bndmov [eax], bnd1
55	bndmov [edx+1*eax+0x3], bnd1
56
57	### bndcl
58	bndcl bnd1, [eax]
59	bndcl bnd1, [edx+1*eax+0x3]
60
61	### bndcu
62	bndcu bnd1, [eax]
63	bndcu bnd1, [edx+1*eax+0x3]
64
65	### bndcn
66	bndcn bnd1, [eax]
67	bndcn bnd1, [edx+1*eax+0x3]
68
69	### bndstx
70	bndstx [eax+ebx*1+0x3], bnd0
71	bndstx [1*ebx+3], bnd2
72	bndstx [r8+rdi*4], bnd2
73	bndstx [rip+base], bnd1
74	bndstx [eip+base], bnd3
75
76	### bndldx
77	bndldx bnd0, [eax+ebx*1+0x3]
78	bndldx bnd2, [1*ebx+3]
79	bndldx bnd2, [rdi+r8*8]
80	bndldx bnd1, [rip+base]
81	bndldx bnd3, [eip+base]
82