public inbox for binutils@sourceware.org
 help / color / mirror / Atom feed
* [PATCH 00/11] x86: NOP emission adjustments
@ 2023-09-27 15:46 Jan Beulich
  2023-09-27 15:47 ` [PATCH 01/11] x86: record flag_code in tc_frag_data Jan Beulich
                   ` (11 more replies)
  0 siblings, 12 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:46 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

I've noticed a number of issues and inefficiencies.

01: x86: record flag_code in tc_frag_data
02: x86: i386_generate_nops() may not derive decisions from global variables
03: x86: don't use 32-bit LEA as NOP surrogate in 64-bit code
04: x86: don't use operand size override with NOP in 16-bit code
05: x86: respect ".arch nonop" when selecting which NOPs to emit
06: x86: i686 != PentiumPro
07: x86: don't record full i386_cpu_flags in struct i386_tc_frag_data
08: x86: add a few more NOP patterns
09: x86: fold a few of the "alternative" NOP patterns
10: x86: fold NOP testcase expecations where possible
11: gas: make .nops output visible in listing

Jan

^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 01/11] x86: record flag_code in tc_frag_data
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
@ 2023-09-27 15:47 ` Jan Beulich
  2023-09-27 15:48 ` [PATCH 02/11] x86: i386_generate_nops() may not derive decisions from global variables Jan Beulich
                   ` (10 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:47 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

The recorded value, and not the global variable, will want using in
TC_FRAG_INIT(). The so far file scope variable therefore needs to become
external, to be accessible there.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -165,7 +165,7 @@ static const char *parse_insn (const cha
 static char *parse_operands (char *, const char *);
 static void swap_operands (void);
 static void swap_2_operands (unsigned int, unsigned int);
-static enum flag_code i386_addressing_mode (void);
+static enum i386_flag_code i386_addressing_mode (void);
 static void optimize_imm (void);
 static bool optimize_disp (const insn_template *t);
 static const insn_template *match_template (char);
@@ -579,15 +579,8 @@ static int this_operand = -1;
 /* Are we processing a .insn directive?  */
 #define dot_insn() (i.tm.mnem_off == MN__insn)
 
-/* We support four different modes.  FLAG_CODE variable is used to distinguish
-   these.  */
-
-enum flag_code {
-	CODE_32BIT,
-	CODE_16BIT,
-	CODE_64BIT };
-
-static enum flag_code flag_code;
+enum i386_flag_code i386_flag_code;
+#define flag_code i386_flag_code /* Permit to continue using original name.  */
 static unsigned int object_64bit;
 static unsigned int disallow_64bit_reloc;
 static int use_rela_relocations = 0;
@@ -9162,8 +9155,6 @@ output_branch (void)
       off = 0;
     }
 
-  frag_now->tc_frag_data.code64 = flag_code == CODE_64BIT;
-
   /* 1 possible extra opcode + 4 byte displacement go in var part.
      Pass reloc in fr_var.  */
   frag_var (rs_machine_dependent, 5, i.reloc[0], subtype, sym, off, p);
@@ -13524,7 +13515,8 @@ md_estimate_size_before_relax (fragS *fr
       else if (size == 2)
 	reloc_type = BFD_RELOC_16_PCREL;
 #if defined (OBJ_ELF) || defined (OBJ_MAYBE_ELF)
-      else if (fragP->tc_frag_data.code64 && fragP->fr_offset == 0
+      else if (fragP->tc_frag_data.code == CODE_64BIT
+	       && fragP->fr_offset == 0
 	       && need_plt32_p (fragP->fr_symbol))
 	reloc_type = BFD_RELOC_X86_64_PLT32;
 #endif
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -264,6 +264,15 @@ extern enum processor_type cpu_arch_tune
 extern enum processor_type cpu_arch_isa;
 extern i386_cpu_flags cpu_arch_isa_flags;
 
+/* We support four different modes.  I386_FLAG_CODE variable is used to
+   distinguish three of these.  */
+
+extern enum i386_flag_code {
+	CODE_32BIT,
+	CODE_16BIT,
+	CODE_64BIT
+} i386_flag_code;
+
 struct i386_tc_frag_data
 {
   union
@@ -275,6 +284,7 @@ struct i386_tc_frag_data
   enum processor_type isa;
   i386_cpu_flags isa_flags;
   enum processor_type tune;
+  enum i386_flag_code code;
   unsigned int max_bytes;
   unsigned char length;
   unsigned char last_length;
@@ -285,7 +295,6 @@ struct i386_tc_frag_data
   unsigned int mf_type : 3;
   unsigned int classified : 1;
   unsigned int branch_type : 3;
-  unsigned int code64 : 1; /* Only set by output_branch for now.  */
 };
 
 /* We need to emit the right NOP pattern in .align frags.  This is
@@ -301,6 +310,7 @@ struct i386_tc_frag_data
      (FRAGP)->tc_frag_data.isa = cpu_arch_isa;			\
      (FRAGP)->tc_frag_data.isa_flags = cpu_arch_isa_flags;	\
      (FRAGP)->tc_frag_data.tune = cpu_arch_tune;		\
+     (FRAGP)->tc_frag_data.code = i386_flag_code;		\
      (FRAGP)->tc_frag_data.max_bytes = (MAX_BYTES);		\
      (FRAGP)->tc_frag_data.length = 0;				\
      (FRAGP)->tc_frag_data.last_length = 0;			\


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 02/11] x86: i386_generate_nops() may not derive decisions from global variables
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
  2023-09-27 15:47 ` [PATCH 01/11] x86: record flag_code in tc_frag_data Jan Beulich
@ 2023-09-27 15:48 ` Jan Beulich
  2023-09-27 15:48 ` [PATCH 03/11] x86: don't use 32-bit LEA as NOP surrogate in 64-bit code Jan Beulich
                   ` (9 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:48 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

What matters is what was in effect at the time the original directive
was issued. Later changes to global state (bitness or ISA) must not
affect what code is generated.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1434,7 +1434,7 @@ i386_generate_nops (fragS *fragP, char *
      When -march= or .arch is used, we can't use anything beyond
      cpu_arch_isa_flags.   */
 
-  if (flag_code == CODE_16BIT)
+  if (fragP->tc_frag_data.code == CODE_16BIT)
     {
       patt = f16_patt;
       max_single_nop_size = sizeof (f16_patt) / sizeof (f16_patt[0]);
@@ -1446,7 +1446,7 @@ i386_generate_nops (fragS *fragP, char *
       if (fragP->tc_frag_data.isa == PROCESSOR_UNKNOWN)
 	{
 	  /* PROCESSOR_UNKNOWN means that all ISAs may be used.  */
-	  switch (cpu_arch_tune)
+	  switch (fragP->tc_frag_data.tune)
 	    {
 	    case PROCESSOR_UNKNOWN:
 	      /* We use cpu_arch_isa_flags to check if we SHOULD
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -148,6 +148,7 @@ if [gas_32_check] then {
     run_dump_test "nops-7"
     run_dump_test "nops-8"
     run_dump_test "nops-9"
+    run_dump_test "nops-10"
     run_dump_test "noreg16"
     run_list_test "noreg16"
     run_dump_test "noreg16-data32"
--- /dev/null
+++ b/gas/testsuite/gas/i386/nops-10.d
@@ -0,0 +1,13 @@
+#objdump: -drw
+#name: nops 10
+
+.*: +file format .*
+
+
+Disassembly of section .text:
+
+0+ <default>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+#pass
--- /dev/null
+++ b/gas/testsuite/gas/i386/nops-10.s
@@ -0,0 +1,6 @@
+	.text
+default:
+	movsbl %al,%esi
+	.p2align 4
+
+	.code16
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-nops-6.d
@@ -0,0 +1,13 @@
+#objdump: -drw
+#name: x86-64 nops 6
+
+.*: +file format .*
+
+
+Disassembly of section .text:
+
+0+ <default>:
+[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
+[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw (0x)?0\(%rax,%rax,1\)
+[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
+#pass
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-nops-6.s
@@ -0,0 +1,7 @@
+	.text
+default:
+	movsbl %al,%esi
+	.p2align 4
+
+	.code32
+	.arch generic32
--- a/gas/testsuite/gas/i386/x86-64.exp
+++ b/gas/testsuite/gas/i386/x86-64.exp
@@ -116,6 +116,7 @@ run_dump_test "x86-64-nops-4-core2"
 run_dump_test "x86-64-nops-4-k8"
 run_dump_test "x86-64-nops-5"
 run_dump_test "x86-64-nops-5-k8"
+run_dump_test "x86-64-nops-6"
 run_dump_test "x86-64-nops-7"
 run_dump_test "x86-64-sysenter"
 run_dump_test "x86-64-sysenter-intel"


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 03/11] x86: don't use 32-bit LEA as NOP surrogate in 64-bit code
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
  2023-09-27 15:47 ` [PATCH 01/11] x86: record flag_code in tc_frag_data Jan Beulich
  2023-09-27 15:48 ` [PATCH 02/11] x86: i386_generate_nops() may not derive decisions from global variables Jan Beulich
@ 2023-09-27 15:48 ` Jan Beulich
  2023-09-27 15:49 ` [PATCH 04/11] x86: don't use operand size override with NOP in 16-bit code Jan Beulich
                   ` (8 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:48 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

Except for the shared 1- and 2-byte cases, the LEA uses corrupt %rsi
(by zero-extending %esi to %rsi). Introduce separate 64-bit patterns
which keep %rsi intact.
---
What is odd that there even was a testcase covering this, just that its
expectations were wrong.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1279,6 +1279,18 @@ static const unsigned char f32_6[] =
   {0x8d,0xb6,0x00,0x00,0x00,0x00};	/* leal 0L(%esi),%esi	*/
 static const unsigned char f32_7[] =
   {0x8d,0xb4,0x26,0x00,0x00,0x00,0x00};	/* leal 0L(%esi,1),%esi */
+static const unsigned char f64_3[] =
+  {0x48,0x89,0xf6};			/* mov %rsi,%rsi	*/
+static const unsigned char f64_4[] =
+  {0x48,0x8d,0x76,0x00};		/* lea 0(%rsi),%rsi	*/
+#define f64_5 (f64_6 + 1)		/* lea 0(%rsi,%riz),%rsi	*/
+static const unsigned char f64_6[] =
+  {0x2e,0x48,0x8d,0x74,0x26,0x00};	/* lea %cs:0(%rsi,%riz),%rsi	*/
+static const unsigned char f64_7[] =
+  {0x48,0x8d,0xb6,0x00,0x00,0x00,0x00};	/* lea 0L(%rsi),%rsi	*/
+#define f64_8 (f64_9 + 1)		/* lea 0L(%rsi,%riz),%rsi */
+static const unsigned char f64_9[] =
+  {0x2e,0x48,0x8d,0xb4,0x26,0x00,0x00,0x00,0x00}; /* lea %cs:0L(%rsi,%riz),%rsi */
 static const unsigned char f16_3[] =
   {0x8d,0x74,0x00};			/* lea 0(%si),%si	*/
 static const unsigned char f16_4[] =
@@ -1293,6 +1305,10 @@ static const unsigned char jump16_disp32
 static const unsigned char *const f32_patt[] = {
   f32_1, f32_2, f32_3, f32_4, NULL, f32_6, f32_7
 };
+/* 64-bit NOPs patterns.  */
+static const unsigned char *const f64_patt[] = {
+  f32_1, f32_2, f64_3, f64_4, f64_5, f64_6, f64_7, f64_8, f64_9
+};
 /* 16-bit NOPs patterns.  */
 static const unsigned char *const f16_patt[] = {
   f32_1, f32_2, f16_3, f16_4
@@ -1428,7 +1444,7 @@ i386_generate_nops (fragS *fragP, char *
      2. For the rest, alt_patt will be used.
 
      When -mtune= isn't used, alt_patt will be used if
-     cpu_arch_isa_flags has CpuNop.  Otherwise, f32_patt will
+     cpu_arch_isa_flags has CpuNop.  Otherwise, f32_patt/f64_patt will
      be used.
 
      When -march= or .arch is used, we can't use anything beyond
@@ -1443,6 +1459,7 @@ i386_generate_nops (fragS *fragP, char *
     }
   else
     {
+      patt = fragP->tc_frag_data.code == CODE_64BIT ? f64_patt : f32_patt;
       if (fragP->tc_frag_data.isa == PROCESSOR_UNKNOWN)
 	{
 	  /* PROCESSOR_UNKNOWN means that all ISAs may be used.  */
@@ -1453,8 +1470,6 @@ i386_generate_nops (fragS *fragP, char *
 		 optimize with nops.  */
 	      if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
 		patt = alt_patt;
-	      else
-		patt = f32_patt;
 	      break;
 	    case PROCESSOR_PENTIUM4:
 	    case PROCESSOR_NOCONA:
@@ -1477,7 +1492,6 @@ i386_generate_nops (fragS *fragP, char *
 	    case PROCESSOR_PENTIUMPRO:
 	    case PROCESSOR_IAMCU:
 	    case PROCESSOR_GENERIC32:
-	      patt = f32_patt;
 	      break;
 	    case PROCESSOR_NONE:
 	      abort ();
@@ -1509,8 +1523,6 @@ i386_generate_nops (fragS *fragP, char *
 		 with nops.  */
 	      if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
 		patt = alt_patt;
-	      else
-		patt = f32_patt;
 	      break;
 	    case PROCESSOR_PENTIUMPRO:
 	    case PROCESSOR_PENTIUM4:
@@ -1520,8 +1532,6 @@ i386_generate_nops (fragS *fragP, char *
 	    case PROCESSOR_COREI7:
 	      if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
 		patt = alt_patt;
-	      else
-		patt = f32_patt;
 	      break;
 	    case PROCESSOR_GENERIC64:
 	      patt = alt_patt;
@@ -1531,9 +1541,10 @@ i386_generate_nops (fragS *fragP, char *
 	    }
 	}
 
-      if (patt == f32_patt)
+      if (patt != alt_patt)
 	{
-	  max_single_nop_size = sizeof (f32_patt) / sizeof (f32_patt[0]);
+	  max_single_nop_size = patt == f32_patt ? ARRAY_SIZE (f32_patt)
+						 : ARRAY_SIZE (f64_patt);
 	  /* Limit number of NOPs to 2 for older processors.  */
 	  max_number_of_nops = 2;
 	}
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-1-pentium.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-1-pentium.d
@@ -2,166 +2,4 @@
 #as: -mtune=pentium
 #objdump: -drw
 #name: x86-64 (ILP32) -mtune=pentium nops 1
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%rsi,%riz,1\),%esi
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%rsi\),%esi
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%rsi,%riz,1\),%esi
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%rsi\),%esi
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: ../x86-64-nops-1-pentium.d
--- a/gas/testsuite/gas/i386/x86-64-nops-1-pentium.d
+++ b/gas/testsuite/gas/i386/x86-64-nops-1-pentium.d
@@ -9,31 +9,29 @@ Disassembly of section .text:
 
 0+ <nop15>:
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 48 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
+[ 	]*[a-f0-9]+:	2e 48 8d 74 26 00    	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
 
 0+10 <nop14>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 48 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
+[ 	]*[a-f0-9]+:	48 8d 74 26 00       	lea    (0x)?0\(%rsi,%riz,1\),%rsi
 
 0+20 <nop13>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 48 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
+[ 	]*[a-f0-9]+:	48 8d 76 00          	lea    (0x)?0\(%rsi\),%rsi
 
 0+30 <nop12>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 48 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
+[ 	]*[a-f0-9]+:	48 89 f6             	mov    %rsi,%rsi
 
 0+40 <nop11>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -41,8 +39,8 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 48 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
+[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
 
 0+50 <nop10>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -51,8 +49,8 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 48 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
+[ 	]*[a-f0-9]+:	90                   	nop
 
 0+60 <nop9>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -62,8 +60,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
+[ 	]*[a-f0-9]+:	2e 48 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
 
 0+70 <nop8>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -74,8 +71,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	48 8d b4 26 00 00 00 00 	lea    (0x)?0\(%rsi,%riz,1\),%rsi
 
 0+80 <nop7>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -87,7 +83,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	48 8d b6 00 00 00 00 	lea    (0x)?0\(%rsi\),%rsi
 
 0+90 <nop6>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -100,7 +96,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 48 8d 74 26 00    	cs lea (0x)?0\(%rsi,%riz,1\),%rsi
 
 0+a0 <nop5>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -114,8 +110,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	48 8d 74 26 00       	lea    (0x)?0\(%rsi,%riz,1\),%rsi
 
 0+b0 <nop4>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -130,7 +125,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	48 8d 76 00          	lea    (0x)?0\(%rsi\),%rsi
 
 0+c0 <nop3>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -146,7 +141,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	48 89 f6             	mov    %rsi,%rsi
 
 0+d0 <nop2>:
 [ 	]*[a-f0-9]+:	90                   	nop


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 04/11] x86: don't use operand size override with NOP in 16-bit code
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (2 preceding siblings ...)
  2023-09-27 15:48 ` [PATCH 03/11] x86: don't use 32-bit LEA as NOP surrogate in 64-bit code Jan Beulich
@ 2023-09-27 15:49 ` Jan Beulich
  2023-09-27 15:50 ` [PATCH 05/11] x86: respect ".arch nonop" when selecting which NOPs to emit Jan Beulich
                   ` (7 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:49 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

Since we don't key the NOP selection to user-controlled properties, we
may not use i386 features; otherwise we would violate a possible .arch
directive restricting ISA to pre-386.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1291,6 +1291,7 @@ static const unsigned char f64_7[] =
 #define f64_8 (f64_9 + 1)		/* lea 0L(%rsi,%riz),%rsi */
 static const unsigned char f64_9[] =
   {0x2e,0x48,0x8d,0xb4,0x26,0x00,0x00,0x00,0x00}; /* lea %cs:0L(%rsi,%riz),%rsi */
+#define f16_2 (f64_3 + 1)		/* mov %si,%si	*/
 static const unsigned char f16_3[] =
   {0x8d,0x74,0x00};			/* lea 0(%si),%si	*/
 static const unsigned char f16_4[] =
@@ -1311,7 +1312,7 @@ static const unsigned char *const f64_pa
 };
 /* 16-bit NOPs patterns.  */
 static const unsigned char *const f16_patt[] = {
-  f32_1, f32_2, f16_3, f16_4
+  f32_1, f16_2, f16_3, f16_4
 };
 /* nopl (%[re]ax) */
 static const unsigned char alt_3[] =
--- a/gas/testsuite/gas/i386/nop-2.d
+++ b/gas/testsuite/gas/i386/nop-2.d
@@ -26,7 +26,7 @@ Disassembly of section .text:
  +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
  +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
  +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	66 90                	xchg   %eax,%eax
+ +[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+26 <pseudo_30>:
  +[a-f0-9]+:	eb 1c                	jmp    44 <pseudo_129>
--- a/gas/testsuite/gas/i386/nops16-1.d
+++ b/gas/testsuite/gas/i386/nops16-1.d
@@ -55,7 +55,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	66 90                	xchg   %eax,%eax
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+80 <nop27>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -118,7 +118,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	66 90                	xchg   %eax,%eax
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+100 <nop23>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -193,7 +193,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	66 90                	xchg   %eax,%eax
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+180 <nop19>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -280,7 +280,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	66 90                	xchg   %eax,%eax
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+200 <nop15>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -315,7 +315,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	eb 0a                	jmp    240 <nop11>
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	66 90                	xchg   %eax,%eax
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+240 <nop11>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -336,7 +336,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	66 90                	xchg   %eax,%eax
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+260 <nop9>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -387,7 +387,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	66 90                	xchg   %eax,%eax
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+2a0 <nop5>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -450,5 +450,5 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %eax,%eax
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 #pass
--- a/gas/testsuite/gas/i386/x86-64-nop-2.d
+++ b/gas/testsuite/gas/i386/x86-64-nop-2.d
@@ -27,7 +27,7 @@ Disassembly of section .text:
  +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
  +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
  +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	66 90                	xchg   %eax,%eax
+ +[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+26 <pseudo_30>:
  +[a-f0-9]+:	eb 1c                	jmp    44 <pseudo_129>


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 05/11] x86: respect ".arch nonop" when selecting which NOPs to emit
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (3 preceding siblings ...)
  2023-09-27 15:49 ` [PATCH 04/11] x86: don't use operand size override with NOP in 16-bit code Jan Beulich
@ 2023-09-27 15:50 ` Jan Beulich
  2023-09-27 15:50 ` [PATCH 06/11] x86: i686 != PentiumPro Jan Beulich
                   ` (6 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:50 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

Making GENERIC64 a special case was never correct; prior to the
generalization of ".arch .no*" to cover all ISA extensions other
processor families supporting long NOPs should have been covered as
well. When introducing ".arch .nonops" (among others) it wasn't
apparent that a hidden implication of .cpunop not being possible to
separately turn off existed here. Seeing that the two large case label
blocks in the 2nd switch() already had identical behavior, simply
collapse all of the (useful) case labels into a single "default" one.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -802,7 +802,7 @@ static const char *cpu_arch_name = NULL;
 static char *cpu_sub_arch_name = NULL;
 
 /* CPU feature flags.  */
-static i386_cpu_flags cpu_arch_flags = CPU_UNKNOWN_FLAGS;
+i386_cpu_flags cpu_arch_flags = CPU_UNKNOWN_FLAGS;
 
 /* If we have selected a cpu we are generating instructions for.  */
 static int cpu_arch_tune_set = 0;
@@ -1463,7 +1463,8 @@ i386_generate_nops (fragS *fragP, char *
       patt = fragP->tc_frag_data.code == CODE_64BIT ? f64_patt : f32_patt;
       if (fragP->tc_frag_data.isa == PROCESSOR_UNKNOWN)
 	{
-	  /* PROCESSOR_UNKNOWN means that all ISAs may be used.  */
+	  /* PROCESSOR_UNKNOWN means that all ISAs may be used, unless
+	     explicitly disabled.  */
 	  switch (fragP->tc_frag_data.tune)
 	    {
 	    case PROCESSOR_UNKNOWN:
@@ -1485,8 +1486,10 @@ i386_generate_nops (fragS *fragP, char *
 	    case PROCESSOR_BD:
 	    case PROCESSOR_ZNVER:
 	    case PROCESSOR_BT:
-	      patt = alt_patt;
+	      if (fragP->tc_frag_data.cpunop)
+		patt = alt_patt;
 	      break;
+
 	    case PROCESSOR_I386:
 	    case PROCESSOR_I486:
 	    case PROCESSOR_PENTIUM:
@@ -1508,35 +1511,13 @@ i386_generate_nops (fragS *fragP, char *
 	      abort ();
 	      break;
 
-	    case PROCESSOR_I386:
-	    case PROCESSOR_I486:
-	    case PROCESSOR_PENTIUM:
-	    case PROCESSOR_IAMCU:
-	    case PROCESSOR_K6:
-	    case PROCESSOR_ATHLON:
-	    case PROCESSOR_K8:
-	    case PROCESSOR_AMDFAM10:
-	    case PROCESSOR_BD:
-	    case PROCESSOR_ZNVER:
-	    case PROCESSOR_BT:
-	    case PROCESSOR_GENERIC32:
+	    default:
 	      /* We use cpu_arch_isa_flags to check if we CAN optimize
 		 with nops.  */
 	      if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
 		patt = alt_patt;
 	      break;
-	    case PROCESSOR_PENTIUMPRO:
-	    case PROCESSOR_PENTIUM4:
-	    case PROCESSOR_NOCONA:
-	    case PROCESSOR_CORE:
-	    case PROCESSOR_CORE2:
-	    case PROCESSOR_COREI7:
-	      if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
-		patt = alt_patt;
-	      break;
-	    case PROCESSOR_GENERIC64:
-	      patt = alt_patt;
-	      break;
+
 	    case PROCESSOR_NONE:
 	      abort ();
 	    }
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -260,6 +260,7 @@ enum processor_type
   PROCESSOR_NONE
 };
 
+extern i386_cpu_flags cpu_arch_flags;
 extern enum processor_type cpu_arch_tune;
 extern enum processor_type cpu_arch_isa;
 extern i386_cpu_flags cpu_arch_isa_flags;
@@ -295,6 +296,7 @@ struct i386_tc_frag_data
   unsigned int mf_type : 3;
   unsigned int classified : 1;
   unsigned int branch_type : 3;
+  unsigned int cpunop : 1;
 };
 
 /* We need to emit the right NOP pattern in .align frags.  This is
@@ -310,6 +312,7 @@ struct i386_tc_frag_data
      (FRAGP)->tc_frag_data.isa = cpu_arch_isa;			\
      (FRAGP)->tc_frag_data.isa_flags = cpu_arch_isa_flags;	\
      (FRAGP)->tc_frag_data.tune = cpu_arch_tune;		\
+     (FRAGP)->tc_frag_data.cpunop = cpu_arch_flags.bitfield.cpunop; \
      (FRAGP)->tc_frag_data.code = i386_flag_code;		\
      (FRAGP)->tc_frag_data.max_bytes = (MAX_BYTES);		\
      (FRAGP)->tc_frag_data.length = 0;				\
--- a/gas/testsuite/gas/i386/x86-64.exp
+++ b/gas/testsuite/gas/i386/x86-64.exp
@@ -109,6 +109,8 @@ run_dump_test "x86-64-nops-1-g64"
 run_dump_test "x86-64-nops-1-k8"
 run_dump_test "x86-64-nops-1-core2"
 run_dump_test "x86-64-nops-1-pentium"
+run_dump_test "x86-64-nops-1a-g64"
+run_dump_test "x86-64-nops-1a-core2"
 run_dump_test "x86-64-nops-2"
 run_dump_test "x86-64-nops-3"
 run_dump_test "x86-64-nops-4"
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-nops-1a-core2.d
@@ -0,0 +1,5 @@
+#as: -march=core2+nonop
+#source: nops-1.s
+#objdump: -drw
+#name: x86-64 -march=core2+nonop nops 1
+#dump: x86-64-nops-1-pentium.d
--- /dev/null
+++ b/gas/testsuite/gas/i386/x86-64-nops-1a-g64.d
@@ -0,0 +1,5 @@
+#as: -march=generic64+nonop
+#source: nops-1.s
+#objdump: -drw
+#name: x86-64 -march=generic64+nonop nops 1
+#dump: x86-64-nops-1-pentium.d


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 06/11] x86: i686 != PentiumPro
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (4 preceding siblings ...)
  2023-09-27 15:50 ` [PATCH 05/11] x86: respect ".arch nonop" when selecting which NOPs to emit Jan Beulich
@ 2023-09-27 15:50 ` Jan Beulich
  2023-09-27 15:51 ` [PATCH 07/11] x86: don't record full i386_cpu_flags in struct i386_tc_frag_data Jan Beulich
                   ` (5 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:50 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

The two are distinct in opcodes/, distinguished precisely by CpuNOP
that's relevant in i386_generate_nops(), yet the function has the PPro
case label in the other group. Simply removing it revealed that
cpu_arch[] had a wrong entry for i686.

While there also add PROCESSOR_IAMCU to the respective comment.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -987,8 +987,8 @@ static const arch_entry cpu_arch[] =
   ARCH (i386, I386, 386, false),
   ARCH (i486, I486, 486, false),
   ARCH (i586, PENTIUM, 586, false),
-  ARCH (i686, PENTIUMPRO, 686, false),
   ARCH (pentium, PENTIUM, 586, false),
+  ARCH (i686, I686, 686, false),
   ARCH (pentiumpro, PENTIUMPRO, PENTIUMPRO, false),
   ARCH (pentiumii, PENTIUMPRO, P2, false),
   ARCH (pentiumiii, PENTIUMPRO, P3, false),
@@ -1440,7 +1440,7 @@ i386_generate_nops (fragS *fragP, char *
   /* We need to decide which NOP sequence to use for 32bit and
      64bit. When -mtune= is used:
 
-     1. For PROCESSOR_I386, PROCESSOR_I486, PROCESSOR_PENTIUM and
+     1. For PROCESSOR_I?86, PROCESSOR_PENTIUM, PROCESSOR_IAMCU, and
      PROCESSOR_GENERIC32, f32_patt will be used.
      2. For the rest, alt_patt will be used.
 
@@ -1473,6 +1473,8 @@ i386_generate_nops (fragS *fragP, char *
 	      if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
 		patt = alt_patt;
 	      break;
+
+	    case PROCESSOR_PENTIUMPRO:
 	    case PROCESSOR_PENTIUM4:
 	    case PROCESSOR_NOCONA:
 	    case PROCESSOR_CORE:
@@ -1493,7 +1495,7 @@ i386_generate_nops (fragS *fragP, char *
 	    case PROCESSOR_I386:
 	    case PROCESSOR_I486:
 	    case PROCESSOR_PENTIUM:
-	    case PROCESSOR_PENTIUMPRO:
+	    case PROCESSOR_I686:
 	    case PROCESSOR_IAMCU:
 	    case PROCESSOR_GENERIC32:
 	      break;
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -242,6 +242,7 @@ enum processor_type
   PROCESSOR_I386,
   PROCESSOR_I486,
   PROCESSOR_PENTIUM,
+  PROCESSOR_I686,
   PROCESSOR_PENTIUMPRO,
   PROCESSOR_PENTIUM4,
   PROCESSOR_NOCONA,


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 07/11] x86: don't record full i386_cpu_flags in struct i386_tc_frag_data
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (5 preceding siblings ...)
  2023-09-27 15:50 ` [PATCH 06/11] x86: i686 != PentiumPro Jan Beulich
@ 2023-09-27 15:51 ` Jan Beulich
  2023-09-27 15:51 ` [PATCH 08/11] x86: add a few more NOP patterns Jan Beulich
                   ` (4 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:51 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

We only use a single bit of this ever growing structure.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1470,7 +1470,7 @@ i386_generate_nops (fragS *fragP, char *
 	    case PROCESSOR_UNKNOWN:
 	      /* We use cpu_arch_isa_flags to check if we SHOULD
 		 optimize with nops.  */
-	      if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
+	      if (fragP->tc_frag_data.isanop)
 		patt = alt_patt;
 	      break;
 
@@ -1516,7 +1516,7 @@ i386_generate_nops (fragS *fragP, char *
 	    default:
 	      /* We use cpu_arch_isa_flags to check if we CAN optimize
 		 with nops.  */
-	      if (fragP->tc_frag_data.isa_flags.bitfield.cpunop)
+	      if (fragP->tc_frag_data.isanop)
 		patt = alt_patt;
 	      break;
 
--- a/gas/config/tc-i386.h
+++ b/gas/config/tc-i386.h
@@ -284,7 +284,6 @@ struct i386_tc_frag_data
     } u;
   addressT padding_address;
   enum processor_type isa;
-  i386_cpu_flags isa_flags;
   enum processor_type tune;
   enum i386_flag_code code;
   unsigned int max_bytes;
@@ -298,6 +297,7 @@ struct i386_tc_frag_data
   unsigned int classified : 1;
   unsigned int branch_type : 3;
   unsigned int cpunop : 1;
+  unsigned int isanop : 1;
 };
 
 /* We need to emit the right NOP pattern in .align frags.  This is
@@ -311,9 +311,9 @@ struct i386_tc_frag_data
      (FRAGP)->tc_frag_data.u.padding_fragP = NULL;		\
      (FRAGP)->tc_frag_data.padding_address = 0;			\
      (FRAGP)->tc_frag_data.isa = cpu_arch_isa;			\
-     (FRAGP)->tc_frag_data.isa_flags = cpu_arch_isa_flags;	\
      (FRAGP)->tc_frag_data.tune = cpu_arch_tune;		\
      (FRAGP)->tc_frag_data.cpunop = cpu_arch_flags.bitfield.cpunop; \
+     (FRAGP)->tc_frag_data.isanop = cpu_arch_isa_flags.bitfield.cpunop; \
      (FRAGP)->tc_frag_data.code = i386_flag_code;		\
      (FRAGP)->tc_frag_data.max_bytes = (MAX_BYTES);		\
      (FRAGP)->tc_frag_data.length = 0;				\


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 08/11] x86: add a few more NOP patterns
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (6 preceding siblings ...)
  2023-09-27 15:51 ` [PATCH 07/11] x86: don't record full i386_cpu_flags in struct i386_tc_frag_data Jan Beulich
@ 2023-09-27 15:51 ` Jan Beulich
  2023-09-27 15:52 ` [PATCH 09/11] x86: fold a few of the "alternative" " Jan Beulich
                   ` (3 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:51 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

First of all add f32_5[], allowing to eliminate the extra slot-is-NULL
code from i386_output_nops(). Plus then introduce f32_8[] and f16_5[]
following the same concept of adding a %cs segment override prefix.

Also re-use patterns when possible and correct comments as applicable.
Similarly re-use testcase expectations as much as possible, where they
need touching anyway.
---
The x86-64-nops-5* tests are kind of bogus: The source file has .code32
almost first thing, and hence there's no real 64-bit testing there. We
could likely as well delete them, rather than fiddling with them here.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1273,12 +1273,14 @@ static const unsigned char f32_2[] =
   {0x66,0x90};				/* xchg %ax,%ax		*/
 static const unsigned char f32_3[] =
   {0x8d,0x76,0x00};			/* leal 0(%esi),%esi	*/
-static const unsigned char f32_4[] =
-  {0x8d,0x74,0x26,0x00};		/* leal 0(%esi,1),%esi	*/
+#define f32_4 (f32_5 + 1)	/* leal 0(%esi,%eiz),%esi */
+static const unsigned char f32_5[] =
+  {0x2e,0x8d,0x74,0x26,0x00};		/* leal %cs:0(%esi,%eiz),%esi	*/
 static const unsigned char f32_6[] =
   {0x8d,0xb6,0x00,0x00,0x00,0x00};	/* leal 0L(%esi),%esi	*/
-static const unsigned char f32_7[] =
-  {0x8d,0xb4,0x26,0x00,0x00,0x00,0x00};	/* leal 0L(%esi,1),%esi */
+#define f32_7 (f32_8 + 1)	/* leal 0L(%esi,%eiz),%esi */
+static const unsigned char f32_8[] =
+  {0x2e,0x8d,0xb4,0x26,0x00,0x00,0x00,0x00}; /* leal %cs:0L(%esi,%eiz),%esi */
 static const unsigned char f64_3[] =
   {0x48,0x89,0xf6};			/* mov %rsi,%rsi	*/
 static const unsigned char f64_4[] =
@@ -1294,8 +1296,9 @@ static const unsigned char f64_9[] =
 #define f16_2 (f64_3 + 1)		/* mov %si,%si	*/
 static const unsigned char f16_3[] =
   {0x8d,0x74,0x00};			/* lea 0(%si),%si	*/
-static const unsigned char f16_4[] =
-  {0x8d,0xb4,0x00,0x00};		/* lea 0W(%si),%si	*/
+#define f16_4 (f16_5 + 1)		/* lea 0W(%si),%si */
+static const unsigned char f16_5[] =
+  {0x2e,0x8d,0xb4,0x00,0x00};		/* lea %cs:0W(%si),%si	*/
 static const unsigned char jump_disp8[] =
   {0xeb};				/* jmp disp8	       */
 static const unsigned char jump32_disp32[] =
@@ -1304,7 +1307,7 @@ static const unsigned char jump16_disp32
   {0x66,0xe9};				/* jmp disp32	       */
 /* 32-bit NOPs patterns.  */
 static const unsigned char *const f32_patt[] = {
-  f32_1, f32_2, f32_3, f32_4, NULL, f32_6, f32_7
+  f32_1, f32_2, f32_3, f32_4, f32_5, f32_6, f32_7, f32_8
 };
 /* 64-bit NOPs patterns.  */
 static const unsigned char *const f64_patt[] = {
@@ -1312,7 +1315,7 @@ static const unsigned char *const f64_pa
 };
 /* 16-bit NOPs patterns.  */
 static const unsigned char *const f16_patt[] = {
-  f32_1, f16_2, f16_3, f16_4
+  f32_1, f16_2, f16_3, f16_4, f16_5
 };
 /* nopl (%[re]ax) */
 static const unsigned char alt_3[] =
@@ -1368,14 +1371,6 @@ i386_output_nops (char *where, const uns
     }
 
   nops = patt[max_single_nop_size - 1];
-
-  /* Use the smaller one if the requsted one isn't available.  */
-  if (nops == NULL)
-    {
-      max_single_nop_size--;
-      nops = patt[max_single_nop_size - 1];
-    }
-
   last = count % max_single_nop_size;
 
   count -= last;
@@ -1385,17 +1380,7 @@ i386_output_nops (char *where, const uns
   if (last)
     {
       nops = patt[last - 1];
-      if (nops == NULL)
-	{
-	  /* Use the smaller one plus one-byte NOP if the needed one
-	     isn't available.  */
-	  last--;
-	  nops = patt[last - 1];
-	  memcpy (where + offset, nops, last);
-	  where[offset + last] = *patt[0];
-	}
-      else
-	memcpy (where + offset, nops, last);
+      memcpy (where + offset, nops, last);
     }
 }
 
--- a/gas/testsuite/gas/i386/align-branch-6.d
+++ b/gas/testsuite/gas/i386/align-branch-6.d
@@ -8,14 +8,13 @@ Disassembly of section .text:
 
 0+ <_start>:
  +[a-f0-9]+:	eb 3c                	jmp    3e <_start\+0x3e>
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	f2 73 bf             	bnd jae 0 <_start>
  +[a-f0-9]+:	c3                   	ret
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-5-k8.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-5-k8.d
@@ -2,78 +2,4 @@
 #as: -march=k8
 #objdump: -drw
 #name: x86-64 (ILP32) -march=k8 nops 5
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <i386>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+10 <i486>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+20 <i586>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+30 <i686>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+40 <pentium4>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+50 <nocona>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+60 <core>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+70 <core2>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+80 <k6>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+90 <athlon>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+a0 <k8>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+b0 <generic32>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+c0 <generic64>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+d0 <amdfam10>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: ../x86-64-nops-5.d
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-5.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-5.d
@@ -1,78 +1,4 @@
 #source: ../nops-5.s
 #objdump: -drw
 #name: x86-64 (ILP32) nops 5
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <i386>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+10 <i486>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+20 <i586>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+30 <i686>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+40 <pentium4>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+50 <nocona>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+60 <core>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+70 <core2>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+80 <k6>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+90 <athlon>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+a0 <k8>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+b0 <generic32>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+c0 <generic64>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+d0 <amdfam10>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: ../x86-64-nops-5.d
--- a/gas/testsuite/gas/i386/nop-1.d
+++ b/gas/testsuite/gas/i386/nop-1.d
@@ -13,46 +13,42 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
 
 0+2 <pseudo_8>:
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+a <pseudo_8_4>:
  +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
 
 0+12 <pseudo_20>:
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
 
 0+26 <pseudo_30>:
  +[a-f0-9]+:	eb 1c                	jmp    44 <pseudo_129>
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
 
 0+44 <pseudo_129>:
  +[a-f0-9]+:	eb 7f                	jmp    c5 <end>
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
 
 0+c5 <end>:
  +[a-f0-9]+:	31 c0                	xor    %eax,%eax
--- a/gas/testsuite/gas/i386/nop-1-suffix.d
+++ b/gas/testsuite/gas/i386/nop-1-suffix.d
@@ -14,46 +14,42 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
 
 0+2 <pseudo_8>:
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+a <pseudo_8_4>:
  +[a-f0-9]+:	8d 74 26 00          	leal   0x0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	8d 74 26 00          	leal   0x0\(%esi,%eiz,1\),%esi
 
 0+12 <pseudo_20>:
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	leal   0x0\(%esi\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 74 26 00          	leal   0x0\(%esi,%eiz,1\),%esi
 
 0+26 <pseudo_30>:
  +[a-f0-9]+:	eb 1c                	jmp    44 <pseudo_129>
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 74 26 00          	leal   0x0\(%esi,%eiz,1\),%esi
 
 0+44 <pseudo_129>:
  +[a-f0-9]+:	eb 7f                	jmp    c5 <end>
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	leal   %cs:(0x)?0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	leal   0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
 
 0+c5 <end>:
  +[a-f0-9]+:	31 c0                	xorl   %eax,%eax
--- a/gas/testsuite/gas/i386/nop-2.d
+++ b/gas/testsuite/gas/i386/nop-2.d
@@ -13,8 +13,8 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
 
 0+2 <pseudo_8>:
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+a <pseudo_8_4>:
  +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
@@ -22,56 +22,48 @@ Disassembly of section .text:
 
 0+12 <pseudo_20>:
  +[a-f0-9]+:	eb 12                	jmp    26 <pseudo_30>
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	89 f6                	mov    %si,%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+26 <pseudo_30>:
  +[a-f0-9]+:	eb 1c                	jmp    44 <pseudo_129>
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+44 <pseudo_129>:
  +[a-f0-9]+:	eb 7f                	jmp    c5 <end>
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+ +[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+c5 <end>:
  +[a-f0-9]+:	66 31 c0             	xor    %eax,%eax
--- a/gas/testsuite/gas/i386/nop-4.d
+++ b/gas/testsuite/gas/i386/nop-4.d
@@ -9,8 +9,8 @@ Disassembly of section .text:
 0+ <_start>:
  +[a-f0-9]+:	31 c0                	xor    %eax,%eax
  +[a-f0-9]+:	85 c0                	test   %eax,%eax
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	31 c0                	xor    %eax,%eax
  +[a-f0-9]+:	31 c0                	xor    %eax,%eax
 
--- a/gas/testsuite/gas/i386/nop-5.d
+++ b/gas/testsuite/gas/i386/nop-5.d
@@ -9,9 +9,9 @@ Disassembly of section .text:
 0+ <_start>:
  +[a-f0-9]+:	31 c0                	xor    %eax,%eax
  +[a-f0-9]+:	85 c0                	test   %eax,%eax
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
+ +[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	31 c0                	xor    %eax,%eax
  +[a-f0-9]+:	31 c0                	xor    %eax,%eax
 
--- a/gas/testsuite/gas/i386/nops-1.d
+++ b/gas/testsuite/gas/i386/nops-1.d
@@ -9,31 +9,29 @@ Disassembly of section .text:
 
 0+ <nop15>:
  +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
 
 0+10 <nop14>:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d b6 00 00 00 00    	lea    (0x)?0\(%esi\),%esi
 
 0+20 <nop13>:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+30 <nop12>:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 74 26 00          	lea    (0x)?0\(%esi,%eiz,1\),%esi
 
 0+40 <nop11>:
  +[a-f0-9]+:	90                   	nop
@@ -41,8 +39,8 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 76 00             	lea    (0x)?0\(%esi\),%esi
 
 0+50 <nop10>:
  +[a-f0-9]+:	90                   	nop
@@ -51,8 +49,8 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	66 90                	xchg   %ax,%ax
 
 0+60 <nop9>:
  +[a-f0-9]+:	90                   	nop
@@ -62,8 +60,8 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	90                   	nop
 
 0+70 <nop8>:
  +[a-f0-9]+:	90                   	nop
@@ -74,8 +72,7 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+80 <nop7>:
  +[a-f0-9]+:	90                   	nop
@@ -114,8 +111,7 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+b0 <nop4>:
  +[a-f0-9]+:	90                   	nop
--- a/gas/testsuite/gas/i386/nops-1-i386.d
+++ b/gas/testsuite/gas/i386/nops-1-i386.d
@@ -2,166 +2,4 @@
 #source: nops-1.s
 #objdump: -drw
 #name: i386 -mtune=i386 nops 1
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop15>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+10 <nop14>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+20 <nop13>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+30 <nop12>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+50 <nop10>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+60 <nop9>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+70 <nop8>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+80 <nop7>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+90 <nop6>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+a0 <nop5>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+b0 <nop4>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+c0 <nop3>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+d0 <nop2>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-1.d
--- a/gas/testsuite/gas/i386/nops-1-i386-i686.d
+++ b/gas/testsuite/gas/i386/nops-1-i386-i686.d
@@ -2,166 +2,4 @@
 #source: nops-1.s
 #objdump: -drw
 #name: i386 nops -march=i386 -mtune=i686 1
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-1.d
--- a/gas/testsuite/gas/i386/nops-1-i686.d
+++ b/gas/testsuite/gas/i386/nops-1-i686.d
@@ -2,167 +2,4 @@
 #source: nops-1.s
 #objdump: -drw
 #name: i386 -mtune=i686 nops 1
-
-.*: +file format .*
-
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-1.d
--- a/gas/testsuite/gas/i386/nops-10.d
+++ b/gas/testsuite/gas/i386/nops-10.d
@@ -8,6 +8,6 @@ Disassembly of section .text:
 
 0+ <default>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 #pass
--- a/gas/testsuite/gas/i386/nops-2.d
+++ b/gas/testsuite/gas/i386/nops-2.d
@@ -9,36 +9,34 @@ Disassembly of section .text:
 
 0+ <nop>:
  +[a-f0-9]+:	0f be f0             	movsbl %al,%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+10 <nop15>:
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    (0x)?0\(%esi,%eiz,1\),%esi
 
 0+20 <nop14>:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d b6 00 00 00 00    	lea    (0x)?0\(%esi\),%esi
 
 0+30 <nop13>:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+40 <nop12>:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 74 26 00          	lea    (0x)?0\(%esi,%eiz,1\),%esi
 
 0+50 <nop11>:
  +[a-f0-9]+:	90                   	nop
@@ -46,8 +44,8 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 76 00             	lea    (0x)?0\(%esi\),%esi
 
 0+60 <nop10>:
  +[a-f0-9]+:	90                   	nop
@@ -56,8 +54,8 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	66 90                	xchg   %ax,%ax
 
 0+70 <nop9>:
  +[a-f0-9]+:	90                   	nop
@@ -67,8 +65,8 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	90                   	nop
 
 0+80 <nop8>:
  +[a-f0-9]+:	90                   	nop
@@ -79,8 +77,7 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+90 <nop7>:
  +[a-f0-9]+:	90                   	nop
@@ -119,8 +116,7 @@ Disassembly of section .text:
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
  +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
+ +[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+c0 <nop4>:
  +[a-f0-9]+:	90                   	nop
--- a/gas/testsuite/gas/i386/nops-2-core2.d
+++ b/gas/testsuite/gas/i386/nops-2-core2.d
@@ -2,171 +2,4 @@
 #source: nops-2.s
 #objdump: -drw
 #name: i386 -march=i386 -mtune=core2 nops 2
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop>:
- +[a-f0-9]+:	0f be f0             	movsbl %al,%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+10 <nop15>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+20 <nop14>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+30 <nop13>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+40 <nop12>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+50 <nop11>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+60 <nop10>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+70 <nop9>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+80 <nop8>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+90 <nop7>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+a0 <nop6>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+b0 <nop5>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+c0 <nop4>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+d0 <nop3>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+e0 <nop2>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-2.d
--- a/gas/testsuite/gas/i386/nops-2-i386.d
+++ b/gas/testsuite/gas/i386/nops-2-i386.d
@@ -2,171 +2,4 @@
 #source: nops-2.s
 #objdump: -drw
 #name: i386 nops -mtune=i386 2
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop>:
- +[a-f0-9]+:	0f be f0             	movsbl %al,%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+10 <nop15>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+20 <nop14>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+30 <nop13>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+40 <nop12>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+50 <nop11>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+60 <nop10>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+70 <nop9>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+80 <nop8>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+90 <nop7>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+a0 <nop6>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+b0 <nop5>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
-
-0+c0 <nop4>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+d0 <nop3>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+e0 <nop2>:
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	90                   	nop
- +[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-2.d
--- a/gas/testsuite/gas/i386/nops-3.d
+++ b/gas/testsuite/gas/i386/nops-3.d
@@ -10,12 +10,11 @@ Disassembly of section .text:
 0+ <nop>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1d                	jmp    20 <nop\+0x20>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 [ 	]*[a-f0-9]+:	89 c3                	mov    %eax,%ebx
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    (0x)?0\(%esi\),%esi
 #pass
--- a/gas/testsuite/gas/i386/nops-3-i386.d
+++ b/gas/testsuite/gas/i386/nops-3-i386.d
@@ -2,20 +2,4 @@
 #source: nops-3.s
 #objdump: -drw
 #name: i386 nops -mtune=i386 3
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1d                	jmp    20 <nop\+0x20>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	89 c3                	mov    %eax,%ebx
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-#pass
+#dump: nops-3.d
--- a/gas/testsuite/gas/i386/nops-3-i686.d
+++ b/gas/testsuite/gas/i386/nops-3-i686.d
@@ -2,20 +2,4 @@
 #source: nops-3.s
 #objdump: -drw
 #name: i386 -mtune=i686 nops 3
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1d                	jmp    20 <nop\+0x20>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	89 c3                	mov    %eax,%ebx
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-#pass
+#dump: nops-3.d
--- a/gas/testsuite/gas/i386/nops-4.d
+++ b/gas/testsuite/gas/i386/nops-4.d
@@ -9,30 +9,29 @@ Disassembly of section .text:
 0+ <nop31>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1d                	jmp    20 <nop30>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+20 <nop30>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1c                	jmp    40 <nop29>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    (0x)?0\(%esi,%eiz,1\),%esi
 
 0+40 <nop29>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1b                	jmp    60 <nop28>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d 76 00             	lea    (0x)?0\(%esi\),%esi
 
 0+60 <nop28>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -40,11 +39,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1a                	jmp    80 <nop27>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
 
 0+80 <nop27>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -53,10 +51,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 19                	jmp    a0 <nop26>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	90                   	nop
 
 0+a0 <nop26>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -66,10 +64,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 18                	jmp    c0 <nop25>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+c0 <nop25>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -80,10 +77,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 17                	jmp    e0 <nop24>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    (0x)?0\(%esi,%eiz,1\),%esi
 
 0+e0 <nop24>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -95,10 +91,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 16                	jmp    100 <nop23>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    (0x)?0\(%esi\),%esi
 
 0+100 <nop23>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -110,10 +105,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 15                	jmp    120 <nop22>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    (0x)?0\(%esi,%eiz,1\),%esi
 
 0+120 <nop22>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -126,10 +120,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 14                	jmp    140 <nop21>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    (0x)?0\(%esi\),%esi
 
 0+140 <nop21>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -143,11 +136,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 13                	jmp    160 <nop20>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+160 <nop20>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -162,9 +153,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    (0x)?0\(%esi,%eiz,1\),%esi
 
 0+180 <nop19>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -180,10 +171,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d 76 00             	lea    (0x)?0\(%esi\),%esi
 
 0+1a0 <nop18>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -200,9 +190,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
 
 0+1c0 <nop17>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -220,9 +210,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	90                   	nop
 
 0+1e0 <nop16>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -241,7 +231,6 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 #pass
--- a/gas/testsuite/gas/i386/nops-4-i386.d
+++ b/gas/testsuite/gas/i386/nops-4-i386.d
@@ -2,247 +2,4 @@
 #source: nops-4.s
 #objdump: -drw
 #name: i386 nops -mtune=i386 4
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop31>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1d                	jmp    20 <nop30>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+20 <nop30>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1c                	jmp    40 <nop29>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+40 <nop29>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1b                	jmp    60 <nop28>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+60 <nop28>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1a                	jmp    80 <nop27>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+80 <nop27>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 19                	jmp    a0 <nop26>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+a0 <nop26>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 18                	jmp    c0 <nop25>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+c0 <nop25>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 17                	jmp    e0 <nop24>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+e0 <nop24>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 16                	jmp    100 <nop23>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+100 <nop23>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 15                	jmp    120 <nop22>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+120 <nop22>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 14                	jmp    140 <nop21>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+140 <nop21>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 13                	jmp    160 <nop20>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+160 <nop20>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+180 <nop19>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+1a0 <nop18>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+1c0 <nop17>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+1e0 <nop16>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-4.d
--- a/gas/testsuite/gas/i386/nops-4-i686.d
+++ b/gas/testsuite/gas/i386/nops-4-i686.d
@@ -2,247 +2,4 @@
 #source: nops-4.s
 #objdump: -drw
 #name: i386 -mtune=i686 nops 4
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop31>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1d                	jmp    20 <nop30>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+20 <nop30>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1c                	jmp    40 <nop29>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+40 <nop29>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1b                	jmp    60 <nop28>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+60 <nop28>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 1a                	jmp    80 <nop27>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+80 <nop27>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 19                	jmp    a0 <nop26>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+a0 <nop26>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 18                	jmp    c0 <nop25>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+c0 <nop25>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 17                	jmp    e0 <nop24>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+e0 <nop24>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 16                	jmp    100 <nop23>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+100 <nop23>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 15                	jmp    120 <nop22>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+120 <nop22>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 14                	jmp    140 <nop21>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+140 <nop21>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 13                	jmp    160 <nop20>
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+160 <nop20>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+180 <nop19>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+1a0 <nop18>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-
-0+1c0 <nop17>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 76 00             	lea    0x0\(%esi\),%esi
-
-0+1e0 <nop16>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-4.d
--- a/gas/testsuite/gas/i386/nops-5.d
+++ b/gas/testsuite/gas/i386/nops-5.d
@@ -7,23 +7,23 @@ Disassembly of section .text:
 
 0+ <i386>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+10 <i486>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+20 <i586>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+30 <i686>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+40 <pentium4>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
@@ -47,8 +47,8 @@ Disassembly of section .text:
 
 0+80 <k6>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+90 <athlon>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
@@ -62,8 +62,8 @@ Disassembly of section .text:
 
 0+b0 <generic32>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+c0 <generic64>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
--- a/gas/testsuite/gas/i386/nops-5-i686.d
+++ b/gas/testsuite/gas/i386/nops-5-i686.d
@@ -2,78 +2,4 @@
 #source: nops-5.s
 #objdump: -drw
 #name: i386 -march=i686 nops 5
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <i386>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+10 <i486>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+20 <i586>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+30 <i686>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+40 <pentium4>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+50 <nocona>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+60 <core>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+70 <core2>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+80 <k6>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+90 <athlon>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+a0 <k8>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+b0 <generic32>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
-
-0+c0 <generic64>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+d0 <amdfam10>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-5.d
--- a/gas/testsuite/gas/i386/nops-6.d
+++ b/gas/testsuite/gas/i386/nops-6.d
@@ -7,8 +7,8 @@ Disassembly of section .text:
 
 0+ <i386>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+10 <i386_nop>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
--- a/gas/testsuite/gas/i386/nops-7.d
+++ b/gas/testsuite/gas/i386/nops-7.d
@@ -8,163 +8,146 @@ Disassembly of section .text:
 0+ <_start>:
  +[a-f0-9]+:	31 c0                	xor    %eax,%eax
  +[a-f0-9]+:	e9 f9 01 00 00       	jmp    200 <func1>
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	90                   	nop
 
 0+200 <func1>:
  +[a-f0-9]+:	31 db                	xor    %ebx,%ebx
  +[a-f0-9]+:	e9 f9 00 00 00       	jmp    300 <func2>
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	90                   	nop
 
 0+300 <func2>:
  +[a-f0-9]+:	31 db                	xor    %ebx,%ebx
  +[a-f0-9]+:	eb 7c                	jmp    380 <func3>
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	90                   	nop
 
 0+380 <func3>:
  +[a-f0-9]+:	31 c9                	xor    %ecx,%ecx
  +[a-f0-9]+:	eb 3c                	jmp    3c0 <func4>
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
  +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
 
 0+3c0 <func4>:
  +[a-f0-9]+:	31 d2                	xor    %edx,%edx
  +[a-f0-9]+:	eb 1c                	jmp    3e0 <func5>
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
- +[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+ +[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
 
 0+3e0 <func5>:
  +[a-f0-9]+:	31 ff                	xor    %edi,%edi
--- a/gas/testsuite/gas/i386/nops-9.d
+++ b/gas/testsuite/gas/i386/nops-9.d
@@ -7,19 +7,18 @@ Disassembly of section .text:
 
 0+ <default>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+10 <nopopcnt>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%esi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
 
 0+20 <popcnt>:
 [ 	]*[a-f0-9]+:	f3 0f b8 f0          	popcnt %eax,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    0x0\(%esi,%eiz,1\),%esi
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	lea    %cs:(0x)?0\(%esi,%eiz,1\),%esi
+[ 	]*[a-f0-9]+:	8d 74 26 00          	lea    (0x)?0\(%esi,%eiz,1\),%esi
 
 0+30 <nop>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
--- a/gas/testsuite/gas/i386/nops16-1.d
+++ b/gas/testsuite/gas/i386/nops16-1.d
@@ -9,39 +9,35 @@ Disassembly of section .text:
 0+ <nop31>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1d                	jmp    20 <nop30>
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 [ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	90                   	nop
 
 0+20 <nop30>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1c                	jmp    40 <nop29>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+40 <nop29>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1b                	jmp    60 <nop28>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+60 <nop28>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -49,13 +45,12 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 1a                	jmp    80 <nop27>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	90                   	nop
 
 0+80 <nop27>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -64,13 +59,11 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 19                	jmp    a0 <nop26>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 
 0+a0 <nop26>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -80,12 +73,11 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 18                	jmp    c0 <nop25>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    (0x)?0\(%si\),%si
 
 0+c0 <nop25>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -96,12 +88,11 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 17                	jmp    e0 <nop24>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+e0 <nop24>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -113,11 +104,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 16                	jmp    100 <nop23>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 [ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+100 <nop23>:
@@ -131,11 +121,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 15                	jmp    120 <nop22>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 [ 	]*[a-f0-9]+:	90                   	nop
 
 0+120 <nop22>:
@@ -150,11 +139,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 14                	jmp    140 <nop21>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 
 0+140 <nop21>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -169,11 +157,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 13                	jmp    160 <nop20>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    (0x)?0\(%si\),%si
 
 0+160 <nop20>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -189,11 +176,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 12                	jmp    180 <nop19>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+180 <nop19>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -210,11 +196,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 11                	jmp    1a0 <nop18>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+1a0 <nop18>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -232,10 +217,10 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 10                	jmp    1c0 <nop17>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	90                   	nop
 
 0+1c0 <nop17>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -254,10 +239,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 0f                	jmp    1e0 <nop16>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 
 0+1e0 <nop16>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -277,44 +261,39 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 0e                	jmp    200 <nop15>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    (0x)?0\(%si\),%si
 
 0+200 <nop15>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	eb 0d                	jmp    210 <nop14>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+210 <nop14>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 0c                	jmp    220 <nop13>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    (0x)?0\(%si\),%si
 
 0+220 <nop13>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 0b                	jmp    230 <nop12>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+230 <nop12>:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	eb 0a                	jmp    240 <nop11>
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 [ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+240 <nop11>:
@@ -323,9 +302,9 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	90                   	nop
 
 0+250 <nop10>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -334,9 +313,8 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 
 0+260 <nop9>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -346,9 +324,8 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    (0x)?0\(%si\),%si
 
 0+270 <nop8>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -359,8 +336,8 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	8d 74 00             	lea    (0x)?0\(%si\),%si
 
 0+280 <nop7>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -372,8 +349,8 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
 
 0+290 <nop6>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -386,8 +363,8 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	89 f6                	mov    %si,%si
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
+[ 	]*[a-f0-9]+:	90                   	nop
 
 0+2a0 <nop5>:
 [ 	]*[a-f0-9]+:	90                   	nop
@@ -401,8 +378,7 @@ Disassembly of section .text:
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
 [ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-[ 	]*[a-f0-9]+:	90                   	nop
+[ 	]*[a-f0-9]+:	2e 8d b4 00 00       	lea    %cs:(0x)?0\(%si\),%si
 
 0+2b0 <nop4>:
 [ 	]*[a-f0-9]+:	90                   	nop
--- a/gas/testsuite/gas/i386/x86-64-nop-2.d
+++ b/gas/testsuite/gas/i386/x86-64-nop-2.d
@@ -1,79 +1,4 @@
 #source: nop-2.s
 #objdump: -drw -Mi8086
 #name: x86-64 .nops 2
-
-.*: +file format .*
-
-
-Disassembly of section .text:
-
-0+ <single>:
- +[a-f0-9]+:	90                   	nop
-
-0+1 <pseudo_1>:
- +[a-f0-9]+:	90                   	nop
-
-0+2 <pseudo_8>:
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-
-0+a <pseudo_8_4>:
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-
-0+12 <pseudo_20>:
- +[a-f0-9]+:	eb 12                	jmp    26 <pseudo_30>
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	89 f6                	mov    %si,%si
-
-0+26 <pseudo_30>:
- +[a-f0-9]+:	eb 1c                	jmp    44 <pseudo_129>
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
-
-0+44 <pseudo_129>:
- +[a-f0-9]+:	eb 7f                	jmp    c5 <end>
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d b4 00 00          	lea    0x0\(%si\),%si
- +[a-f0-9]+:	8d 74 00             	lea    0x0\(%si\),%si
-
-0+c5 <end>:
- +[a-f0-9]+:	66 31 c0             	xor    %eax,%eax
-#pass
+#dump: nop-2.d
--- a/gas/testsuite/gas/i386/x86-64-nops-5.d
+++ b/gas/testsuite/gas/i386/x86-64-nops-5.d
@@ -9,23 +9,23 @@ Disassembly of section .text:
 
 0+ <i386>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	cs lea (0x)?0\(%rsi,%riz,1\),%esi
 
 0+10 <i486>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	cs lea (0x)?0\(%rsi,%riz,1\),%esi
 
 0+20 <i586>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	cs lea (0x)?0\(%rsi,%riz,1\),%esi
 
 0+30 <i686>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	cs lea (0x)?0\(%rsi,%riz,1\),%esi
 
 0+40 <pentium4>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
@@ -49,8 +49,8 @@ Disassembly of section .text:
 
 0+80 <k6>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	cs lea (0x)?0\(%rsi,%riz,1\),%esi
 
 0+90 <athlon>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
@@ -64,8 +64,8 @@ Disassembly of section .text:
 
 0+b0 <generic32>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
+[ 	]*[a-f0-9]+:	2e 8d b4 26 00 00 00 00 	cs lea (0x)?0\(%rsi,%riz,1\),%esi
+[ 	]*[a-f0-9]+:	2e 8d 74 26 00       	cs lea (0x)?0\(%rsi,%riz,1\),%esi
 
 0+c0 <generic64>:
 [ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
--- a/gas/testsuite/gas/i386/x86-64-nops-5-k8.d
+++ b/gas/testsuite/gas/i386/x86-64-nops-5-k8.d
@@ -2,79 +2,4 @@
 #source: nops-5.s
 #objdump: -drw
 #name: x86-64 -march=k8 nops 5
-
-.*: +file format .*
-
-
-Disassembly of section .text:
-
-0+ <i386>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+10 <i486>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+20 <i586>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+30 <i686>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+40 <pentium4>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+50 <nocona>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+60 <core>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+70 <core2>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+80 <k6>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+90 <athlon>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+a0 <k8>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+b0 <generic32>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	8d b4 26 00 00 00 00 	lea    0x0\(%rsi,%riz,1\),%esi
-[ 	]*[a-f0-9]+:	8d b6 00 00 00 00    	lea    0x0\(%rsi\),%esi
-
-0+c0 <generic64>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+d0 <amdfam10>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: x86-64-nops-5.d


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 09/11] x86: fold a few of the "alternative" NOP patterns
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (7 preceding siblings ...)
  2023-09-27 15:51 ` [PATCH 08/11] x86: add a few more NOP patterns Jan Beulich
@ 2023-09-27 15:52 ` Jan Beulich
  2023-09-27 15:52 ` [PATCH 10/11] x86: fold NOP testcase expectations where possible Jan Beulich
                   ` (2 subsequent siblings)
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:52 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

Since named objects may not overlap, the compiler is not permitted to do
this for us, to avoid wasting space and cache bandwidth/capacity.

--- a/gas/config/tc-i386.c
+++ b/gas/config/tc-i386.c
@@ -1324,8 +1324,7 @@ static const unsigned char alt_3[] =
 static const unsigned char alt_4[] =
   {0x0f,0x1f,0x40,0x00};
 /* nopl 0(%[re]ax,%[re]ax,1) */
-static const unsigned char alt_5[] =
-  {0x0f,0x1f,0x44,0x00,0x00};
+#define alt_5 (alt_6 + 1)
 /* nopw 0(%[re]ax,%[re]ax,1) */
 static const unsigned char alt_6[] =
   {0x66,0x0f,0x1f,0x44,0x00,0x00};
@@ -1333,14 +1332,12 @@ static const unsigned char alt_6[] =
 static const unsigned char alt_7[] =
   {0x0f,0x1f,0x80,0x00,0x00,0x00,0x00};
 /* nopl 0L(%[re]ax,%[re]ax,1) */
-static const unsigned char alt_8[] =
-  {0x0f,0x1f,0x84,0x00,0x00,0x00,0x00,0x00};
+#define alt_8 (alt_9 + 1)
 /* nopw 0L(%[re]ax,%[re]ax,1) */
 static const unsigned char alt_9[] =
   {0x66,0x0f,0x1f,0x84,0x00,0x00,0x00,0x00,0x00};
 /* nopw %cs:0L(%[re]ax,%[re]ax,1) */
-static const unsigned char alt_10[] =
-  {0x66,0x2e,0x0f,0x1f,0x84,0x00,0x00,0x00,0x00,0x00};
+#define alt_10 (alt_11 + 1)
 /* data16 nopw %cs:0L(%eax,%eax,1) */
 static const unsigned char alt_11[] =
   {0x66,0x66,0x2e,0x0f,0x1f,0x84,0x00,0x00,0x00,0x00,0x00};


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 10/11] x86: fold NOP testcase expectations where possible
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (8 preceding siblings ...)
  2023-09-27 15:52 ` [PATCH 09/11] x86: fold a few of the "alternative" " Jan Beulich
@ 2023-09-27 15:52 ` Jan Beulich
  2023-09-27 15:53 ` [PATCH 11/11] gas: make .nops output visible in listing Jan Beulich
  2023-09-27 15:59 ` [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:52 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

Like done earlier for files needing adjustment anyway, also do this for
the remaining set.

--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-1-core2.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-1-core2.d
@@ -2,159 +2,4 @@
 #as: -mtune=core2
 #objdump: -drw
 #name: x86-64 (ILP32) -mtune=core2 nops 1
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: ../x86-64-nops-1.d
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-1-k8.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-1-k8.d
@@ -2,159 +2,4 @@
 #as: -mtune=k8
 #objdump: -drw
 #name: x86-64 (ILP32) -mtune=k8 nops 1
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: ../x86-64-nops-1.d
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-1.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-1.d
@@ -2,159 +2,4 @@
 #as: -mtune=generic64
 #objdump: -drw
 #name: x86-64 (ILP32) nops 1
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: ../x86-64-nops-1.d
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-2.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-2.d
@@ -2,164 +2,4 @@
 #as: -mtune=generic64
 #objdump: -drw
 #name: x86-64 (ILP32) nops 2
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop>:
-[ 	]*[a-f0-9]+:	0f be f0             	movsbl %al,%esi
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+10 <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+20 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+30 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+40 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+50 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+60 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+70 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+80 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+90 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+a0 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+b0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+c0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+d0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+e0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: ../x86-64-nops-2.d
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-3.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-3.d
@@ -2,17 +2,4 @@
 #as: -mtune=generic64
 #objdump: -drw
 #name: x86-64 (ILP32) nops 3
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	89 c3                	mov    %eax,%ebx
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-#pass
+#dump: ../x86-64-nops-3.d
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-4-core2.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-4-core2.d
@@ -2,217 +2,4 @@
 #as: -mtune=core2
 #objdump: -drw
 #name: x86-64 (ILP32) nops -mtune=core2 4
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop31>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+20 <nop30>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+40 <nop29>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+60 <nop28>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+80 <nop27>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+a0 <nop26>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop25>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+e0 <nop24>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+100 <nop23>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+120 <nop22>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+140 <nop21>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+160 <nop20>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+180 <nop19>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+1a0 <nop18>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+1c0 <nop17>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+1e0 <nop16>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-#pass
+#dump: ../x86-64-nops-4.d
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-4-k8.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-4-k8.d
@@ -2,217 +2,4 @@
 #as: -mtune=k8
 #objdump: -drw
 #name: x86-64 (ILP32) nops -mtune=k8 4
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop31>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+20 <nop30>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+40 <nop29>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+60 <nop28>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+80 <nop27>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+a0 <nop26>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop25>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+e0 <nop24>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+100 <nop23>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+120 <nop22>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+140 <nop21>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+160 <nop20>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+180 <nop19>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+1a0 <nop18>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+1c0 <nop17>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+1e0 <nop16>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-#pass
+#dump: ../x86-64-nops-4.d
--- a/gas/testsuite/gas/i386/ilp32/x86-64-nops-4.d
+++ b/gas/testsuite/gas/i386/ilp32/x86-64-nops-4.d
@@ -2,217 +2,4 @@
 #as: -mtune=generic64
 #objdump: -drw
 #name: x86-64 (ILP32) nops 4
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop31>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+20 <nop30>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+40 <nop29>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+60 <nop28>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+80 <nop27>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+a0 <nop26>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop25>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+e0 <nop24>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+100 <nop23>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+120 <nop22>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+140 <nop21>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+160 <nop20>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+180 <nop19>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+1a0 <nop18>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+1c0 <nop17>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+1e0 <nop16>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-#pass
+#dump: ../x86-64-nops-4.d
--- a/gas/testsuite/gas/i386/nops-1-k8.d
+++ b/gas/testsuite/gas/i386/nops-1-k8.d
@@ -2,159 +2,4 @@
 #source: nops-1.s
 #objdump: -drw
 #name: i386 -mtune=k8 nops 1
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%eax\)
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%eax\)
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 nopw %cs:0x0\(%eax,%eax,1\)
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	nopw   %cs:0x0\(%eax,%eax,1\)
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%eax,%eax,1\)
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%eax,%eax,1\)
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%eax\)
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%eax,%eax,1\)
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%eax,%eax,1\)
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%eax\)
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%eax\)
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: nops-1-core2.d
--- a/gas/testsuite/gas/i386/x86-64-nops-1-core2.d
+++ b/gas/testsuite/gas/i386/x86-64-nops-1-core2.d
@@ -2,160 +2,4 @@
 #source: nops-1.s
 #objdump: -drw
 #name: x86-64 -mtune=core2 nops 1
-
-.*: +file format .*
-
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: x86-64-nops-1.d
--- a/gas/testsuite/gas/i386/x86-64-nops-1-g64.d
+++ b/gas/testsuite/gas/i386/x86-64-nops-1-g64.d
@@ -2,160 +2,4 @@
 #as: -mtune=generic64
 #objdump: -drw
 #name: x86-64 -mtune=generic64 nops 1
-
-.*: +file format .*
-
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: x86-64-nops-1.d
--- a/gas/testsuite/gas/i386/x86-64-nops-1-k8.d
+++ b/gas/testsuite/gas/i386/x86-64-nops-1-k8.d
@@ -2,159 +2,4 @@
 #source: nops-1.s
 #objdump: -drw
 #name: x86-64 -mtune=k8 nops 1
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop15>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+10 <nop14>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+20 <nop13>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+30 <nop12>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+40 <nop11>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+50 <nop10>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+60 <nop9>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+70 <nop8>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+80 <nop7>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+90 <nop6>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+a0 <nop5>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+b0 <nop4>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop3>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+d0 <nop2>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-#pass
+#dump: x86-64-nops-1.d
--- a/gas/testsuite/gas/i386/x86-64-nops-4-core2.d
+++ b/gas/testsuite/gas/i386/x86-64-nops-4-core2.d
@@ -2,218 +2,4 @@
 #source: nops-4.s
 #objdump: -drw
 #name: x86-64 nops -mtune=core2 4
-
-.*: +file format .*
-
-
-Disassembly of section .text:
-
-0+ <nop31>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+20 <nop30>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+40 <nop29>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+60 <nop28>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+80 <nop27>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+a0 <nop26>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop25>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+e0 <nop24>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+100 <nop23>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+120 <nop22>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+140 <nop21>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+160 <nop20>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+180 <nop19>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+1a0 <nop18>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+1c0 <nop17>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+1e0 <nop16>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-#pass
+#dump: x86-64-nops-4.d
--- a/gas/testsuite/gas/i386/x86-64-nops-4-k8.d
+++ b/gas/testsuite/gas/i386/x86-64-nops-4-k8.d
@@ -2,217 +2,4 @@
 #source: nops-4.s
 #objdump: -drw
 #name: x86-64 nops -mtune=k8 4
-
-.*: +file format .*
-
-Disassembly of section .text:
-
-0+ <nop31>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+20 <nop30>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+40 <nop29>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+60 <nop28>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+80 <nop27>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-
-0+a0 <nop26>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 40 00          	nopl   0x0\(%rax\)
-
-0+c0 <nop25>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 00             	nopl   \(%rax\)
-
-0+e0 <nop24>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 90                	xchg   %ax,%ax
-
-0+100 <nop23>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	90                   	nop
-
-0+120 <nop22>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-
-0+140 <nop21>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 2e 0f 1f 84 00 00 00 00 00 	cs nopw 0x0\(%rax,%rax,1\)
-
-0+160 <nop20>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 84 00 00 00 00 00 	nopw   0x0\(%rax,%rax,1\)
-
-0+180 <nop19>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 84 00 00 00 00 00 	nopl   0x0\(%rax,%rax,1\)
-
-0+1a0 <nop18>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 80 00 00 00 00 	nopl   0x0\(%rax\)
-
-0+1c0 <nop17>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	66 0f 1f 44 00 00    	nopw   0x0\(%rax,%rax,1\)
-
-0+1e0 <nop16>:
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	90                   	nop
-[ 	]*[a-f0-9]+:	66 66 2e 0f 1f 84 00 00 00 00 00 	data16 cs nopw 0x0\(%rax,%rax,1\)
-[ 	]*[a-f0-9]+:	0f 1f 44 00 00       	nopl   0x0\(%rax,%rax,1\)
-#pass
+#dump: x86-64-nops-4.d


^ permalink raw reply	[flat|nested] 13+ messages in thread

* [PATCH 11/11] gas: make .nops output visible in listing
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (9 preceding siblings ...)
  2023-09-27 15:52 ` [PATCH 10/11] x86: fold NOP testcase expectations where possible Jan Beulich
@ 2023-09-27 15:53 ` Jan Beulich
  2023-09-27 15:59 ` [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:53 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

Due to using a different frag type (in turn due to storing data
differently), making the resulting code appear in listings requires
special handling.

--- a/gas/as.h
+++ b/gas/as.h
@@ -247,7 +247,9 @@ enum _relax_state
      1 constant byte: no-op fill control byte.  */
   rs_space_nop,
 
-  /* Similar to rs_fill.  It is used to implement .nop directive .  */
+  /* Similar to rs_fill.  It is used to implement .nops directive.
+     When listings are enabled, fr_opcode gets the buffer assigned, once
+     that's available.  */
   rs_fill_nop,
 
   /* A DWARF leb128 value; only ELF uses this.  The subtype is 0 for
--- a/gas/listing.c
+++ b/gas/listing.c
@@ -815,6 +815,28 @@ calc_hex (list_info_type *list)
 		var_rep_idx = var_rep_max;
 	    }
 	}
+      else if (frag_ptr->fr_type == rs_fill_nop && frag_ptr->fr_opcode)
+	{
+	  gas_assert (!octet_in_frag);
+
+	  /* Print as many bytes from fr_opcode as is sensible.  */
+	  while (octet_in_frag < (unsigned int) frag_ptr->fr_offset
+		 && data_buffer_size < MAX_BYTES - 3)
+	    {
+	      if (address == ~(unsigned int) 0)
+		address = frag_ptr->fr_address / OCTETS_PER_BYTE;
+
+	      sprintf (data_buffer + data_buffer_size,
+		       "%02X",
+		       frag_ptr->fr_opcode[octet_in_frag] & 0xff);
+	      data_buffer_size += 2;
+
+	      octet_in_frag++;
+	    }
+
+	  free (frag_ptr->fr_opcode);
+	  frag_ptr->fr_opcode = NULL;
+	}
 
       frag_ptr = frag_ptr->fr_next;
     }
--- a/gas/write.c
+++ b/gas/write.c
@@ -1682,7 +1682,12 @@ write_contents (bfd *abfd ATTRIBUTE_UNUS
 			  bfd_get_filename (stdoutput),
 			  bfd_errmsg (bfd_get_error ()));
 	      offset += count;
-	      free (buf);
+#ifndef NO_LISTING
+	      if (listing & LISTING_LISTING)
+		f->fr_opcode = buf;
+	      else
+#endif
+		free (buf);
 	    }
 	  continue;
 	}
--- a/gas/testsuite/gas/i386/i386.exp
+++ b/gas/testsuite/gas/i386/i386.exp
@@ -598,6 +598,7 @@ if [gas_32_check] then {
     run_list_test "inval-pseudo" "-al"
     run_dump_test "nop-1"
     run_dump_test "nop-1-suffix"
+    run_list_test "nop-1" "-aln"
     run_dump_test "nop-2"
     run_dump_test "optimize-1"
     run_dump_test "optimize-1a"
--- /dev/null
+++ b/gas/testsuite/gas/i386/nop-1.l
@@ -0,0 +1,39 @@
+[ 	]*[0-9]+[ 	]+\.text
+[ 	]*[0-9]+[ 	]+single:
+[ 	]*[0-9]+[ 	]+\.nops 0
+[ 	]*[0-9]+[ 	]+.... 90[ 	]+nop
+[ 	]*[0-9]+[ 	]*
+[ 	]*[0-9]+[ 	]+pseudo_1:
+[ 	]*[0-9]+[ 	]+.... 90[ 	]+\.nops 1
+[ 	]*[0-9]+[ 	]*
+[ 	]*[0-9]+[ 	]+pseudo_8:
+[ 	]*[0-9]+[ 	]+.... 2E8DB426[ 	]+\.nops 8
+[ 	]*[0-9]+[ 	]+00000000 *
+[ 	]*[0-9]+[ 	]*
+[ 	]*[0-9]+[ 	]+pseudo_8_4:
+[ 	]*[0-9]+[ 	]+.... 8D742600[ 	]+\.nops 8, 4
+[ 	]*[0-9]+[ 	]+8D742600 *
+[ 	]*[0-9]+[ 	]*
+[ 	]*[0-9]+[ 	]+pseudo_20:
+[ 	]*[0-9]+[ 	]+.... 2E8DB426[ 	]+\.nops 20
+[ 	]*[0-9]+[ 	]+00000000 *
+[ 	]*[0-9]+[ 	]+2E8DB426 *
+[ 	]*[0-9]+[ 	]+00000000 *
+[ 	]*[0-9]+[ 	]+8D742600 *
+[ 	]*[0-9]+[ 	]*
+[ 	]*[0-9]+[ 	]+pseudo_30:
+[ 	]*[0-9]+[ 	]+.... EB1C2E8D[ 	]+\.nops 30
+[ 	]*[0-9]+[ 	]+B4260000 *
+[ 	]*[0-9]+[ 	]+00002E8D *
+[ 	]*[0-9]+[ 	]+B4260000 *
+[ 	]*[0-9]+[ 	]+00002E8D *
+[ 	]*[0-9]+[ 	]*
+[ 	]*[0-9]+[ 	]+pseudo_129:
+[ 	]*[0-9]+[ 	]+.... EB7F2E8D[ 	]+\.nops 129
+[ 	]*[0-9]+[ 	]+B4260000 *
+[ 	]*[0-9]+[ 	]+00002E8D *
+[ 	]*[0-9]+[ 	]+B4260000 *
+[ 	]*[0-9]+[ 	]+00002E8D *
+[ 	]*[0-9]+[ 	]*
+[ 	]*[0-9]+[ 	]+end:
+#pass


^ permalink raw reply	[flat|nested] 13+ messages in thread

* Re: [PATCH 00/11] x86: NOP emission adjustments
  2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
                   ` (10 preceding siblings ...)
  2023-09-27 15:53 ` [PATCH 11/11] gas: make .nops output visible in listing Jan Beulich
@ 2023-09-27 15:59 ` Jan Beulich
  11 siblings, 0 replies; 13+ messages in thread
From: Jan Beulich @ 2023-09-27 15:59 UTC (permalink / raw)
  To: Binutils; +Cc: H.J. Lu

On 27.09.2023 17:46, Jan Beulich via Binutils wrote:
> I've noticed a number of issues and inefficiencies.
> 
> 01: x86: record flag_code in tc_frag_data
> 02: x86: i386_generate_nops() may not derive decisions from global variables
> 03: x86: don't use 32-bit LEA as NOP surrogate in 64-bit code
> 04: x86: don't use operand size override with NOP in 16-bit code
> 05: x86: respect ".arch nonop" when selecting which NOPs to emit
> 06: x86: i686 != PentiumPro
> 07: x86: don't record full i386_cpu_flags in struct i386_tc_frag_data
> 08: x86: add a few more NOP patterns
> 09: x86: fold a few of the "alternative" NOP patterns
> 10: x86: fold NOP testcase expecations where possible
> 11: gas: make .nops output visible in listing

I shall have mentioned one further observation: When we use LEA as NOP-
surrogate, we always use %{,e,r}si as destination. I was suspecting this
might not be optimal when these actually end up executing, and indeed on
one of the three systems I checked (a Skylake) there was a reliably
measurable difference between that and alternating the destination
registers used. Question is whether that's enough of a concern, when
generally we expect people to build 64-bit code and not use .arch .nonop.

Jan

^ permalink raw reply	[flat|nested] 13+ messages in thread

end of thread, other threads:[~2023-09-27 15:59 UTC | newest]

Thread overview: 13+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2023-09-27 15:46 [PATCH 00/11] x86: NOP emission adjustments Jan Beulich
2023-09-27 15:47 ` [PATCH 01/11] x86: record flag_code in tc_frag_data Jan Beulich
2023-09-27 15:48 ` [PATCH 02/11] x86: i386_generate_nops() may not derive decisions from global variables Jan Beulich
2023-09-27 15:48 ` [PATCH 03/11] x86: don't use 32-bit LEA as NOP surrogate in 64-bit code Jan Beulich
2023-09-27 15:49 ` [PATCH 04/11] x86: don't use operand size override with NOP in 16-bit code Jan Beulich
2023-09-27 15:50 ` [PATCH 05/11] x86: respect ".arch nonop" when selecting which NOPs to emit Jan Beulich
2023-09-27 15:50 ` [PATCH 06/11] x86: i686 != PentiumPro Jan Beulich
2023-09-27 15:51 ` [PATCH 07/11] x86: don't record full i386_cpu_flags in struct i386_tc_frag_data Jan Beulich
2023-09-27 15:51 ` [PATCH 08/11] x86: add a few more NOP patterns Jan Beulich
2023-09-27 15:52 ` [PATCH 09/11] x86: fold a few of the "alternative" " Jan Beulich
2023-09-27 15:52 ` [PATCH 10/11] x86: fold NOP testcase expectations where possible Jan Beulich
2023-09-27 15:53 ` [PATCH 11/11] gas: make .nops output visible in listing Jan Beulich
2023-09-27 15:59 ` [PATCH 00/11] x86: NOP emission adjustments Jan Beulich

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).