x86: extend 64-bit invalid MPX insn forms testcase
authorJan Beulich <jbeulich@novell.com>
Thu, 23 Feb 2017 10:00:44 +0000 (11:00 +0100)
committerJan Beulich <jbeulich@suse.com>
Thu, 23 Feb 2017 10:00:44 +0000 (11:00 +0100)
gas/ChangeLog
gas/testsuite/gas/i386/x86-64-mpx-inval-2.l
gas/testsuite/gas/i386/x86-64-mpx-inval-2.s

index 2b118053d9bd8b02848c12ad6e9e51f15fcbeab2..c306584b127b0006a77db51f3267dc63a8a7fbcd 100644 (file)
@@ -1,3 +1,10 @@
+2017-02-21  Jan Beulich  <jbeulich@suse.com>
+
+       * gas/testsuite/gas/i386/x86-64-mpx-inval-2.d: Add 32- and 16-
+       bit GPR forms of BNDCL, BNDCU, and BNDCN. Add RSP-as-index
+       Intel syntax forms of BNDMK, BNDSTX, and BNDLDX.
+       * gas/testsuite/gas/i386/x86-64-mpx-inval-2.l: Adjust.
+
 2017-02-22  Maciej W. Rozycki  <macro@imgtec.com>
 
        * ecoff.c (ecoff_directive_end) [md_flush_pending_output]: Call
index 8bd427c610320d0e2a3a517729e5d3ac5813e0b2..ed69fe5b03559d9e09d3ce5bacfcf276e0295483 100644 (file)
@@ -9,44 +9,59 @@
 .*:16: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:19: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:20: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:23: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:24: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:27: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:28: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:21: Error: .* `bndcl'
+.*:22: Error: .* `bndcl'
+.*:25: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:26: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:27: Error: .* `bndcu'
+.*:28: Error: .* `bndcu'
 .*:31: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:32: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:33: Warning: register scaling is being ignored here
-.*:34: Error: `base\(%rip\)' cannot be used here
-.*:35: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:33: Error: .* `bndcn'
+.*:34: Error: .* `bndcn'
+.*:37: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:38: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:39: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:40: Warning: register scaling is being ignored here
-.*:41: Error: `base\(%rip\)' cannot be used here
-.*:42: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:39: Warning: register scaling is being ignored here
+.*:40: Error: `base\(%rip\)' cannot be used here
+.*:41: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:44: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:45: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:46: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:47: Error: `\[rip\]' cannot be used here
+.*:46: Warning: register scaling is being ignored here
+.*:47: Error: `base\(%rip\)' cannot be used here
 .*:48: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:51: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:52: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:53: Error: `\[rip\]' cannot be used here
 .*:54: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:55: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:55: Error: `\[rax\+rsp\]' is not a valid base/index expression
 .*:58: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:59: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:61: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:62: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:63: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:65: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:66: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:67: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:70: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:67: Error: .* `bndcl'
+.*:68: Error: .* `bndcl'
 .*:71: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:72: Warning: register scaling is being ignored here
-.*:73: Error: `\[rip\+base\]' cannot be used here
-.*:74: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:72: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:73: Error: .* `bndcu'
+.*:74: Error: .* `bndcu'
 .*:77: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
 .*:78: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-.*:79: Warning: register scaling is being ignored here
-.*:80: Error: `\[rip\+base\]' cannot be used here
-.*:81: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:79: Error: .* `bndcn'
+.*:80: Error: .* `bndcn'
+.*:83: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:84: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:85: Warning: register scaling is being ignored here
+.*:86: Error: `\[rip\+base\]' cannot be used here
+.*:87: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:88: Error: `\[rax\+rsp\]' is not a valid base/index expression
+.*:91: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:92: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:93: Warning: register scaling is being ignored here
+.*:94: Error: `\[rip\+base\]' cannot be used here
+.*:95: Error: 32-bit address isn't allowed in 64-bit MPX instructions.
+.*:96: Error: `\[rax\+rsp\]' is not a valid base/index expression
 GAS LISTING .*
 
 
@@ -54,175 +69,193 @@ GAS LISTING .*
 [      ]*2[    ]+\.allow_index_reg
 [      ]*3[    ]+\.text
 [      ]*4[    ]+
-[      ]*5[    ]+\#\#\# bndmk
-[      ]*6[    ]+\?\?\?\? 67F30F1B             bndmk \(%eax\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*6[    ]+08
-[      ]*7[    ]+\?\?\?\? 67F30F1B             bndmk 0x3\(%ecx,%ebx,1\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*7[    ]+4C1903
-[      ]*8[    ]+bndmk \(%rip\), %bnd3
-[      ]*9[    ]+\?\?\?\? 67F30F1B             bndmk \(%eip\), %bnd2
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*9[    ]+15000000 
-[      ]*9[    ]+00
-[      ]*10[   ]+
-[      ]*11[   ]+\#\#\# bndmov
-[      ]*12[   ]+\?\?\?\? 6766410F             bndmov \(%r8d\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*12[   ]+1A08
-[      ]*13[   ]+\?\?\?\? 6766410F             bndmov 0x3\(%r9d,%edx,1\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*13[   ]+1A4C1103 
-[      ]*14[   ]+
-[      ]*15[   ]+\?\?\?\? 67660F1B             bndmov %bnd1, \(%eax\)
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*15[   ]+08
-[      ]*16[   ]+\?\?\?\? 67660F1B             bndmov %bnd1, 0x3\(%ecx,%eax,1\)
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*16[   ]+4C0103
-[      ]*17[   ]+
-[      ]*18[   ]+\#\#\# bndcl
-[      ]*19[   ]+\?\?\?\? 67F30F1A             bndcl \(%ecx\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*19[   ]+09
-[      ]*20[   ]+\?\?\?\? 67F30F1A             bndcl 0x3\(%ecx,%eax,1\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*20[   ]+4C0103
-[      ]*21[   ]+
-[      ]*22[   ]+\#\#\# bndcu
-[      ]*23[   ]+\?\?\?\? 67F20F1A             bndcu \(%ecx\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*23[   ]+09
-[      ]*24[   ]+\?\?\?\? 67F20F1A             bndcu 0x3\(%ecx,%eax,1\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*24[   ]+4C0103
-[      ]*25[   ]+
-[      ]*26[   ]+\#\#\# bndcn
-[      ]*27[   ]+\?\?\?\? 67F20F1B             bndcn \(%ecx\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*27[   ]+09
-[      ]*28[   ]+\?\?\?\? 67F20F1B             bndcn 0x3\(%ecx,%eax,1\), %bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*28[   ]+4C0103
-[      ]*29[   ]+
-[      ]*30[   ]+\#\#\# bndstx
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndmk
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1B             bndmk \(%eax\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1B             bndmk 0x3\(%ecx,%ebx,1\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C1903
+[      ]*[1-9][0-9]*[  ]+bndmk \(%rip\), %bnd3
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1B             bndmk \(%eip\), %bnd2
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+15000000 
+[      ]*[1-9][0-9]*[  ]+00
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndmov
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 6766410F             bndmov \(%r8d\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+1A08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 6766410F             bndmov 0x3\(%r9d,%edx,1\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+1A4C1103 
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67660F1B             bndmov %bnd1, \(%eax\)
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67660F1B             bndmov %bnd1, 0x3\(%ecx,%eax,1\)
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C0103
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndcl
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1A             bndcl \(%ecx\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+09
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1A             bndcl 0x3\(%ecx,%eax,1\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C0103
+[      ]*[1-9][0-9]*[  ]+bndcl %ecx, %bnd1
+[      ]*[1-9][0-9]*[  ]+bndcl %cx, %bnd1
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndcu
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F20F1A             bndcu \(%ecx\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+09
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F20F1A             bndcu 0x3\(%ecx,%eax,1\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C0103
+[      ]*[1-9][0-9]*[  ]+bndcu %ecx, %bnd1
+[      ]*[1-9][0-9]*[  ]+bndcu %cx, %bnd1
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndcn
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F20F1B             bndcn \(%ecx\), %bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+09
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F20F1B             bndcn 0x3\(%ecx,%eax,1\), %bnd1
 \fGAS LISTING .*
 
 
-[      ]*31[   ]+\?\?\?\? 670F1B44             bndstx %bnd0, 0x3\(%eax,%ebx,1\)
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*31[   ]+1803
-[      ]*32[   ]+\?\?\?\? 670F1B53             bndstx %bnd2, 3\(%ebx,1\)
+[      ]*[1-9][0-9]*[  ]+4C0103
+[      ]*[1-9][0-9]*[  ]+bndcn %ecx, %bnd1
+[      ]*[1-9][0-9]*[  ]+bndcn %cx, %bnd1
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndstx
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1B44             bndstx %bnd0, 0x3\(%eax,%ebx,1\)
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+1803
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1B53             bndstx %bnd2, 3\(%ebx,1\)
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*32[   ]+03
-[      ]*33[   ]+\?\?\?\? 410F1B0C             bndstx %bnd1, \(%r15,%rax,2\)
+[      ]*[1-9][0-9]*[  ]+03
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 410F1B0C             bndstx %bnd1, \(%r15,%rax,2\)
 .*  Warning: register scaling is being ignored here
-[      ]*33[   ]+47
-[      ]*34[   ]+bndstx %bnd3, base\(%rip\)
-[      ]*35[   ]+\?\?\?\? 670F1B0D             bndstx %bnd1, base\(%eip\)
+[      ]*[1-9][0-9]*[  ]+47
+[      ]*[1-9][0-9]*[  ]+bndstx %bnd3, base\(%rip\)
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1B0D             bndstx %bnd1, base\(%eip\)
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*35[   ]+[0-9a-f][0-9a-f][0-9a-f]00000 
-[      ]*36[   ]+
-[      ]*37[   ]+\#\#\# bndldx
-[      ]*38[   ]+\?\?\?\? 670F1A44             bndldx 0x3\(%eax,%ebx,1\), %bnd0
+[      ]*[1-9][0-9]*[  ]+[0-9a-f][0-9a-f][0-9a-f]00000 
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndldx
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1A44             bndldx 0x3\(%eax,%ebx,1\), %bnd0
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*38[   ]+1803
-[      ]*39[   ]+\?\?\?\? 670F1A53             bndldx 3\(%ebx,1\), %bnd2
+[      ]*[1-9][0-9]*[  ]+1803
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1A53             bndldx 3\(%ebx,1\), %bnd2
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*39[   ]+03
-[      ]*40[   ]*\?\?\?\? 420F1A1C             bndldx \(%rax,%r15,4\), %bnd3
+[      ]*[1-9][0-9]*[  ]+03
+[      ]*[1-9][0-9]*[  ]*\?\?\?\? 420F1A1C             bndldx \(%rax,%r15,4\), %bnd3
 .*  Warning: register scaling is being ignored here
-[      ]*40[   ]*B8
-[      ]*41[   ]*bndldx base\(%rip\), %bnd1
-[      ]*42[   ]*\?\?\?\? 670F1A1D             bndldx base\(%eip\), %bnd3
+[      ]*[1-9][0-9]*[  ]*B8
+[      ]*[1-9][0-9]*[  ]*bndldx base\(%rip\), %bnd1
+[      ]*[1-9][0-9]*[  ]*\?\?\?\? 670F1A1D             bndldx base\(%eip\), %bnd3
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*42[   ]*[0-9a-f][0-9a-f][0-9a-f]00000 
-[      ]*43[   ]+
-[      ]*44[   ]+\.intel_syntax noprefix
-[      ]*45[   ]+\?\?\?\? 67F30F1B             bndmk bnd1, \[eax\]
+[      ]*[1-9][0-9]*[  ]+[0-9a-f][0-9a-f][0-9a-f]00000 
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\.intel_syntax noprefix
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1B             bndmk bnd1, \[eax\]
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*45[   ]+08
-[      ]*46[   ]+\?\?\?\? 67F30F1B             bndmk bnd1, \[edx\+1\*eax\+0x3\]
+[      ]*[1-9][0-9]*[  ]+08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1B             bndmk bnd1, \[edx\+1\*eax\+0x3\]
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*46[   ]+4C0203
-[      ]*47[   ]*bndmk bnd3, \[rip\]
-[      ]*48[   ]*\?\?\?\? 67F30F1B             bndmk bnd2, \[eip\]
+[      ]*[1-9][0-9]*[  ]+4C0203
+[      ]*[1-9][0-9]*[  ]*bndmk bnd3, \[rip\]
+[      ]*[1-9][0-9]*[  ]*\?\?\?\? 67F30F1B             bndmk bnd2, \[eip\]
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions.
-[      ]*48[   ]*15000000 
-[      ]*48[   ]*00
-[      ]*49[   ]+
-[      ]*50[   ]+\#\#\# bndmov
-[      ]*51[   ]+\?\?\?\? 67660F1A             bndmov bnd1, \[eax\]
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*51[   ]+08
-[      ]*52[   ]+\?\?\?\? 67660F1A             bndmov bnd1, \[edx\+1\*eax\+0x3\]
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*52[   ]+4C0203
-[      ]*53[   ]+
-[      ]*54[   ]+\?\?\?\? 67660F1B             bndmov \[eax\], bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*54[   ]+08
-[      ]*55[   ]+\?\?\?\? 67660F1B             bndmov \[edx\+1\*eax\+0x3\], bnd1
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*55[   ]+4C0203
-[      ]*56[   ]+
+[      ]*[1-9][0-9]*[  ]*15000000 
+[      ]*[1-9][0-9]*[  ]*00
+[      ]*[1-9][0-9]*[  ]+bndmk bnd2, \[rax\+rsp\]
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndmov
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67660F1A             bndmov bnd1, \[eax\]
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67660F1A             bndmov bnd1, \[edx\+1\*eax\+0x3\]
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C0203
+[      ]*[1-9][0-9]*[  ]+
 \fGAS LISTING .*
 
 
-[      ]*57[   ]+\#\#\# bndcl
-[      ]*58[   ]+\?\?\?\? 67F30F1A             bndcl bnd1, \[eax\]
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*58[   ]+08
-[      ]*59[   ]+\?\?\?\? 67F30F1A             bndcl bnd1, \[edx\+1\*eax\+0x3\]
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*59[   ]+4C0203
-[      ]*60[   ]+
-[      ]*61[   ]+\#\#\# bndcu
-[      ]*62[   ]+\?\?\?\? 67F20F1A             bndcu bnd1, \[eax\]
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*62[   ]+08
-[      ]*63[   ]+\?\?\?\? 67F20F1A             bndcu bnd1, \[edx\+1\*eax\+0x3\]
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*63[   ]+4C0203
-[      ]*64[   ]+
-[      ]*65[   ]+\#\#\# bndcn
-[      ]*66[   ]+\?\?\?\? 67F20F1B             bndcn bnd1, \[eax\]
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*66[   ]+08
-[      ]*67[   ]+\?\?\?\? 67F20F1B             bndcn bnd1, \[edx\+1\*eax\+0x3\]
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*67[   ]+4C0203
-[      ]*68[   ]+
-[      ]*69[   ]+\#\#\# bndstx
-[      ]*70[   ]+\?\?\?\? 670F1B44             bndstx \[eax\+ebx\*1\+0x3\], bnd0
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*70[   ]+1803
-[      ]*71[   ]+\?\?\?\? 670F1B14             bndstx \[1\*ebx\+3\], bnd2
-.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*71[   ]+1D030000 
-[      ]*71[   ]+00
-[      ]*72[   ]+\?\?\?\? 410F1B14             bndstx \[r8\+rdi\*4\], bnd2
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67660F1B             bndmov \[eax\], bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67660F1B             bndmov \[edx\+1\*eax\+0x3\], bnd1
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C0203
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndcl
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1A             bndcl bnd1, \[eax\]
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F30F1A             bndcl bnd1, \[edx\+1\*eax\+0x3\]
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C0203
+[      ]*[1-9][0-9]*[  ]+bndcl bnd1, eax
+[      ]*[1-9][0-9]*[  ]+bndcl bnd1, dx
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndcu
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F20F1A             bndcu bnd1, \[eax\]
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F20F1A             bndcu bnd1, \[edx\+1\*eax\+0x3\]
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C0203
+[      ]*[1-9][0-9]*[  ]+bndcu bnd1, eax
+[      ]*[1-9][0-9]*[  ]+bndcu bnd1, dx
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndcn
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F20F1B             bndcn bnd1, \[eax\]
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+08
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 67F20F1B             bndcn bnd1, \[edx\+1\*eax\+0x3\]
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+4C0203
+[      ]*[1-9][0-9]*[  ]+bndcn bnd1, eax
+[      ]*[1-9][0-9]*[  ]+bndcn bnd1, dx
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndstx
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1B44             bndstx \[eax\+ebx\*1\+0x3\], bnd0
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+1803
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1B14             bndstx \[1\*ebx\+3\], bnd2
+.*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
+[      ]*[1-9][0-9]*[  ]+1D030000 
+[      ]*[1-9][0-9]*[  ]+00
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 410F1B14             bndstx \[r8\+rdi\*4\], bnd2
 .*  Warning: register scaling is being ignored here
-[      ]*72[   ]+B8
-[      ]*73[   ]+bndstx \[rip\+base\], bnd1
-[      ]*74[   ]+\?\?\?\? 670F1B1D             bndstx \[eip\+base\], bnd3
+[      ]*[1-9][0-9]*[  ]+B8
+[      ]*[1-9][0-9]*[  ]+bndstx \[rip\+base\], bnd1
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1B1D             bndstx \[eip\+base\], bnd3
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*74[   ]+[0-9a-f][0-9a-f][0-9a-f]00000 
-[      ]*75[   ]+
-[      ]*76[   ]+\#\#\# bndldx
-[      ]*77[   ]+\?\?\?\? 670F1A44             bndldx bnd0, \[eax\+ebx\*1\+0x3\]
+[      ]*[1-9][0-9]*[  ]+[0-9a-f][0-9a-f][0-9a-f]00000 
+[      ]*[1-9][0-9]*[  ]+bndstx \[rax\+rsp\], bnd3
+[      ]*[1-9][0-9]*[  ]+
+[      ]*[1-9][0-9]*[  ]+\#\#\# bndldx
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1A44             bndldx bnd0, \[eax\+ebx\*1\+0x3\]
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*77[   ]+1803
-[      ]*78[   ]+\?\?\?\? 670F1A14             bndldx bnd2, \[1\*ebx\+3\]
+\fGAS LISTING .*
+
+
+[      ]*[1-9][0-9]*[  ]+1803
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1A14             bndldx bnd2, \[1\*ebx\+3\]
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*78[   ]+1D030000 
-[      ]*78[   ]+00
-[      ]*79[   ]+\?\?\?\? 420F1A14             bndldx bnd2, \[rdi\+r8\*8\]
+[      ]*[1-9][0-9]*[  ]+1D030000 
+[      ]*[1-9][0-9]*[  ]+00
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 420F1A14             bndldx bnd2, \[rdi\+r8\*8\]
 .*  Warning: register scaling is being ignored here
-[      ]*79[   ]+C7
-[      ]*80[   ]+bndldx bnd1, \[rip\+base\]
-[      ]*81[   ]+\?\?\?\? 670F1A1D             bndldx bnd3, \[eip\+base\]
+[      ]*[1-9][0-9]*[  ]+C7
+[      ]*[1-9][0-9]*[  ]+bndldx bnd1, \[rip\+base\]
+[      ]*[1-9][0-9]*[  ]+\?\?\?\? 670F1A1D             bndldx bnd3, \[eip\+base\]
 .*  Error: 32-bit address isn't allowed in 64-bit MPX instructions\.
-[      ]*81      [0-9a-f][0-9a-f][0-9a-f]00000 
+[      ]*[1-9][0-9]*[  ]+[0-9a-f][0-9a-f][0-9a-f]00000 
+[      ]*[1-9][0-9]*[  ]+bndldx bnd3, \[rax\+rsp\]
 #pass
index 7e8e8d53d7fad5d4634e03d088dc4aaba9108e2c..0ff0e782497da0fed2f1f0439acc1752d1b12061 100644 (file)
        ### bndcl
        bndcl (%ecx), %bnd1
        bndcl 0x3(%ecx,%eax,1), %bnd1
+       bndcl %ecx, %bnd1
+       bndcl %cx, %bnd1
 
        ### bndcu
        bndcu (%ecx), %bnd1
        bndcu 0x3(%ecx,%eax,1), %bnd1
+       bndcu %ecx, %bnd1
+       bndcu %cx, %bnd1
 
        ### bndcn
        bndcn (%ecx), %bnd1
        bndcn 0x3(%ecx,%eax,1), %bnd1
+       bndcn %ecx, %bnd1
+       bndcn %cx, %bnd1
 
        ### bndstx
        bndstx %bnd0, 0x3(%eax,%ebx,1)
@@ -46,6 +52,7 @@
        bndmk bnd1, [edx+1*eax+0x3]
        bndmk bnd3, [rip]
        bndmk bnd2, [eip]
+       bndmk bnd2, [rax+rsp]
 
        ### bndmov
        bndmov bnd1, [eax]
        ### bndcl
        bndcl bnd1, [eax]
        bndcl bnd1, [edx+1*eax+0x3]
+       bndcl bnd1, eax
+       bndcl bnd1, dx
 
        ### bndcu
        bndcu bnd1, [eax]
        bndcu bnd1, [edx+1*eax+0x3]
+       bndcu bnd1, eax
+       bndcu bnd1, dx
 
        ### bndcn
        bndcn bnd1, [eax]
        bndcn bnd1, [edx+1*eax+0x3]
+       bndcn bnd1, eax
+       bndcn bnd1, dx
 
        ### bndstx
        bndstx [eax+ebx*1+0x3], bnd0
@@ -72,6 +85,7 @@
        bndstx [r8+rdi*4], bnd2
        bndstx [rip+base], bnd1
        bndstx [eip+base], bnd3
+       bndstx [rax+rsp], bnd3
 
        ### bndldx
        bndldx bnd0, [eax+ebx*1+0x3]
@@ -79,3 +93,4 @@
        bndldx bnd2, [rdi+r8*8]
        bndldx bnd1, [rip+base]
        bndldx bnd3, [eip+base]
+       bndldx bnd3, [rax+rsp]