gas: Rename .nop directive to .nops
authorH.J. Lu <hjl.tools@gmail.com>
Tue, 27 Feb 2018 22:45:48 +0000 (14:45 -0800)
committerH.J. Lu <hjl.tools@gmail.com>
Tue, 27 Feb 2018 22:46:03 +0000 (14:46 -0800)
Since directives of NO_PSEUDO_DOT targets don't have the leading '.'
and "nop" can be a valid instruction, rename .nop directive to .nops
to avoid conflict.

* NEWS: Rename .nop to .nops.
* doc/as.texinfo: Likewise.
* read.c (potable): Add "nops".  Remove "nop".
(s_nop): Renamed to ...
(s_nops): This.
* read.h (s_nop): Renamed to ...
(s_nops): This.
* write.c (cvt_frag_to_fill): Rename .nop to .nops.
(md_generate_nops): Likewise.
(relax_segment): Likewise.
* testsuite/gas/i386/nop-1.d: Updated.
* testsuite/gas/i386/nop-1.s: Likewise.
* testsuite/gas/i386/nop-2.d: Likewise.
* testsuite/gas/i386/nop-2.s: Likewise.
* testsuite/gas/i386/nop-3.d: Likewise.
* testsuite/gas/i386/nop-3.s: Likewise.
* testsuite/gas/i386/nop-4.d: Likewise.
* testsuite/gas/i386/nop-4.s: Likewise.
* testsuite/gas/i386/nop-5.d: Likewise.
* testsuite/gas/i386/nop-5.s: Likewise.
* testsuite/gas/i386/nop-6.d: Likewise.
* testsuite/gas/i386/nop-6.s: Likewise.
* testsuite/gas/i386/nop-bad-1.l: Likewise.
* testsuite/gas/i386/nop-bad-1.s: Likewise.
* testsuite/gas/i386/x86-64-nop-1.d: Likewise.
* testsuite/gas/i386/x86-64-nop-2.d: Likewise.
* testsuite/gas/i386/x86-64-nop-3.d: Likewise.
* testsuite/gas/i386/x86-64-nop-4.d: Likewise.
* testsuite/gas/i386/x86-64-nop-5.d: Likewise.
* testsuite/gas/i386/x86-64-nop-6.d: Likewise.

26 files changed:
gas/ChangeLog
gas/NEWS
gas/doc/as.texinfo
gas/read.c
gas/read.h
gas/testsuite/gas/i386/nop-1.d
gas/testsuite/gas/i386/nop-1.s
gas/testsuite/gas/i386/nop-2.d
gas/testsuite/gas/i386/nop-2.s
gas/testsuite/gas/i386/nop-3.d
gas/testsuite/gas/i386/nop-3.s
gas/testsuite/gas/i386/nop-4.d
gas/testsuite/gas/i386/nop-4.s
gas/testsuite/gas/i386/nop-5.d
gas/testsuite/gas/i386/nop-5.s
gas/testsuite/gas/i386/nop-6.d
gas/testsuite/gas/i386/nop-6.s
gas/testsuite/gas/i386/nop-bad-1.l
gas/testsuite/gas/i386/nop-bad-1.s
gas/testsuite/gas/i386/x86-64-nop-1.d
gas/testsuite/gas/i386/x86-64-nop-2.d
gas/testsuite/gas/i386/x86-64-nop-3.d
gas/testsuite/gas/i386/x86-64-nop-4.d
gas/testsuite/gas/i386/x86-64-nop-5.d
gas/testsuite/gas/i386/x86-64-nop-6.d
gas/write.c

index b28a79f..7c9f2f2 100644 (file)
@@ -1,5 +1,38 @@
 2018-02-27  H.J. Lu  <hongjiu.lu@intel.com>
 
+       * NEWS: Rename .nop to .nops.
+       * doc/as.texinfo: Likewise.
+       * read.c (potable): Add "nops".  Remove "nop".
+       (s_nop): Renamed to ...
+       (s_nops): This.
+       * read.h (s_nop): Renamed to ...
+       (s_nops): This.
+       * write.c (cvt_frag_to_fill): Rename .nop to .nops.
+       (md_generate_nops): Likewise.
+       (relax_segment): Likewise.
+       * testsuite/gas/i386/nop-1.d: Updated.
+       * testsuite/gas/i386/nop-1.s: Likewise.
+       * testsuite/gas/i386/nop-2.d: Likewise.
+       * testsuite/gas/i386/nop-2.s: Likewise.
+       * testsuite/gas/i386/nop-3.d: Likewise.
+       * testsuite/gas/i386/nop-3.s: Likewise.
+       * testsuite/gas/i386/nop-4.d: Likewise.
+       * testsuite/gas/i386/nop-4.s: Likewise.
+       * testsuite/gas/i386/nop-5.d: Likewise.
+       * testsuite/gas/i386/nop-5.s: Likewise.
+       * testsuite/gas/i386/nop-6.d: Likewise.
+       * testsuite/gas/i386/nop-6.s: Likewise.
+       * testsuite/gas/i386/nop-bad-1.l: Likewise.
+       * testsuite/gas/i386/nop-bad-1.s: Likewise.
+       * testsuite/gas/i386/x86-64-nop-1.d: Likewise.
+       * testsuite/gas/i386/x86-64-nop-2.d: Likewise.
+       * testsuite/gas/i386/x86-64-nop-3.d: Likewise.
+       * testsuite/gas/i386/x86-64-nop-4.d: Likewise.
+       * testsuite/gas/i386/x86-64-nop-5.d: Likewise.
+       * testsuite/gas/i386/x86-64-nop-6.d: Likewise.
+
+2018-02-27  H.J. Lu  <hongjiu.lu@intel.com>
+
        PR gas/22871
        * NEWS: Mention -O[2|s].
        * config/tc-i386.c (_i386_insn): Add no_optimize.
index 8a9d3a2..8a4b93a 100644 (file)
--- a/gas/NEWS
+++ b/gas/NEWS
@@ -3,7 +3,7 @@
 * Add -O[2|s] command-line options to x86 assembler to enable alternate
   shorter instruction encoding.
 
-* Add support for .nop directive.  It is currently supported only for
+* Add support for .nops directive.  It is currently supported only for
   x86 targets.
 
 Changes in 2.30:
index 392365d..f56515e 100644 (file)
@@ -4482,7 +4482,7 @@ Some machine configurations provide additional directives.
 * MRI::                                @code{.mri @var{val}}
 * Noaltmacro::                  @code{.noaltmacro}
 * Nolist::                      @code{.nolist}
-* Nop::                         @code{.nop @var{size}[, @var{control}]}
+* Nops::                        @code{.nops @var{size}[, @var{control}]}
 * Octa::                        @code{.octa @var{bignums}}
 * Offset::                     @code{.offset @var{loc}}
 * Org::                         @code{.org @var{new-lc}, @var{fill}}
@@ -6199,10 +6199,10 @@ internal counter (which is zero initially).   @code{.list} increments the
 counter, and @code{.nolist} decrements it.  Assembly listings are
 generated whenever the counter is greater than zero.
 
-@node Nop
-@section @code{.nop @var{size}[, @var{control}]}
+@node Nops
+@section @code{.nops @var{size}[, @var{control}]}
 
-@cindex @code{nop} directive
+@cindex @code{nops} directive
 @cindex filling memory with no-op instructions
 This directive emits @var{size} bytes filled with no-op instructions.
 @var{size} is absolute expression, which must be a positve value.
index 9ab88f8..ff78cae 100644 (file)
@@ -417,6 +417,7 @@ static const pseudo_typeS potable[] = {
   {"noformat", s_ignore, 0},
   {"nolist", listing_list, 0}, /* Turn listing off.  */
   {"nopage", listing_nopage, 0},
+  {"nops", s_nops, 0},
   {"octa", cons, 16},
   {"offset", s_struct, 0},
   {"org", s_org, 0},
@@ -442,7 +443,6 @@ static const pseudo_typeS potable[] = {
 /* size  */
   {"space", s_space, 0},
   {"skip", s_space, 0},
-  {"nop", s_nop, 0},
   {"sleb128", s_leb128, 1},
   {"spc", s_ignore, 0},
   {"stabd", s_stab, 'd'},
@@ -3510,7 +3510,7 @@ s_space (int mult)
 }
 
 void
-s_nop (int ignore ATTRIBUTE_UNUSED)
+s_nops (int ignore ATTRIBUTE_UNUSED)
 {
   expressionS exp;
   expressionS val;
@@ -3556,7 +3556,7 @@ s_nop (int ignore ATTRIBUTE_UNUSED)
        }
     }
   else
-    as_bad (_("unsupported variable nop control in .nop directive"));
+    as_bad (_("unsupported variable nop control in .nops directive"));
 
   demand_empty_rest_of_line ();
 }
index 3f0927b..352b802 100644 (file)
@@ -206,7 +206,7 @@ extern void s_purgem (int);
 extern void s_rept (int);
 extern void s_set (int);
 extern void s_space (int mult);
-extern void s_nop (int);
+extern void s_nops (int);
 extern void s_stab (int what);
 extern void s_struct (int);
 extern void s_text (int);
index 46422c8..5a9e03e 100644 (file)
@@ -1,5 +1,5 @@
 #objdump: -drw
-#name: i386 .nop 1
+#name: i386 .nops 1
 
 .*: +file format .*
 
index 891783d..94ec28e 100644 (file)
@@ -1,21 +1,21 @@
        .text
 single:
-       .nop 0
+       .nops 0
        nop
 
 pseudo_1:
-       .nop 1
+       .nops 1
 
 pseudo_8:
-       .nop 8
+       .nops 8
 
 pseudo_8_4:
-       .nop 8, 4
+       .nops 8, 4
 
 pseudo_20:
-       .nop 20
+       .nops 20
 
 pseudo_30:
-       .nop 30
+       .nops 30
 
        xor %eax, %eax
index 332b990..d248fd1 100644 (file)
@@ -1,5 +1,5 @@
 #objdump: -drw -Mi8086
-#name: i386 .nop 2
+#name: i386 .nops 2
 
 .*: +file format .*
 
index 2b71b97..9f7a372 100644 (file)
@@ -1,22 +1,22 @@
        .text
        .code16
 single:
-       .nop 0
+       .nops 0
        nop
 
 pseudo_1:
-       .nop 1
+       .nops 1
 
 pseudo_8:
-       .nop 8
+       .nops 8
 
 pseudo_8_4:
-       .nop 8, 4
+       .nops 8, 4
 
 pseudo_20:
-       .nop 20
+       .nops 20
 
 pseudo_30:
-       .nop 30
+       .nops 30
 
        xor %eax, %eax
index bebd24b..b2b4577 100644 (file)
@@ -1,5 +1,5 @@
 #objdump: -drw
-#name: i386 .nop 3
+#name: i386 .nops 3
 
 .*: +file format .*
 
index 57370ff..0a6bb58 100644 (file)
@@ -4,7 +4,7 @@ _start:
 140:
        testl %eax, %eax
 141:
-       .nop -(((144f-143f)-(141b-140b)) > 0)*((144f-143f)-(141b-140b)),7
+       .nops -(((144f-143f)-(141b-140b)) > 0)*((144f-143f)-(141b-140b)),7
 142:
        xor %eax, %eax
        .pushsection .altinstr_replacement,"ax"
index 99ddcd3..b548d07 100644 (file)
@@ -1,5 +1,5 @@
 #objdump: -drw
-#name: i386 .nop 4
+#name: i386 .nops 4
 
 .*: +file format .*
 
index f7aa111..4f0bfe6 100644 (file)
@@ -4,7 +4,7 @@ _start:
 140:
        testl %eax, %eax
 141:
-       .nop -(((144f-143f)-(141b-140b)) > 0)*((144f-143f)-(141b-140b))
+       .nops -(((144f-143f)-(141b-140b)) > 0)*((144f-143f)-(141b-140b))
 142:
        xor %eax, %eax
        .pushsection .altinstr_replacement,"ax"
index aab4258..6a47913 100644 (file)
@@ -1,5 +1,5 @@
 #objdump: -drw
-#name: i386 .nop 5
+#name: i386 .nops 5
 
 .*: +file format .*
 
index 4f563ce..d91f81f 100644 (file)
@@ -4,7 +4,7 @@ _start:
 140:
        testl %eax, %eax
 141:
-       .nop -(((144f-143f)-(141b-140b)) > 0)*((144f-143f)-(141b-140b)),6
+       .nops -(((144f-143f)-(141b-140b)) > 0)*((144f-143f)-(141b-140b)),6
 142:
        xor %eax, %eax
        .pushsection .altinstr_replacement,"ax"
index 93ee8de..851c129 100644 (file)
@@ -1,5 +1,5 @@
 #objdump: -drw
-#name: i386 .nop 6
+#name: i386 .nops 6
 
 .*: +file format .*
 
index c7b1e2c..d8952c9 100644 (file)
@@ -1,5 +1,5 @@
 .macro mknops nr_bytes
-    .nop \nr_bytes, 9
+    .nops \nr_bytes, 9
 .endm
 
 .macro ALTERNATIVE
index 34be496..2ae5b48 100644 (file)
@@ -1,4 +1,4 @@
 .*: Assembler messages:
 .*:2: Warning: negative nop control byte, ignored
-.*:4: Warning: \.space, \.nop or \.fill with negative value, ignored
+.*:4: Warning: \.space, \.nops or \.fill with negative value, ignored
 .*:3: Error: invalide single nop size: 20 \(expect within \[0, [0-9]+\]\)
index 53cc7d5..2f2bbfb 100644 (file)
@@ -1,4 +1,4 @@
        .text
-        .nop 100, -2
-        .nop 100, 20
-        .nop -1
+        .nops 100, -2
+        .nops 100, 20
+        .nops -1
index f3edc7d..ec6263b 100644 (file)
@@ -1,6 +1,6 @@
 #source: nop-1.s
 #objdump: -drw
-#name: x86-64 .nop 1
+#name: x86-64 .nops 1
 
 .*: +file format .*
 
index e894d2c..438e4f8 100644 (file)
@@ -1,6 +1,6 @@
 #source: nop-2.s
 #objdump: -drw -Mi8086
-#name: x86-64 .nop 2
+#name: x86-64 .nops 2
 
 .*: +file format .*
 
index b43239a..1dc9505 100644 (file)
@@ -1,6 +1,6 @@
 #source: nop-3.s
 #objdump: -drw
-#name: x86-64 .nop 3
+#name: x86-64 .nops 3
 
 .*: +file format .*
 
index a910171..25927ca 100644 (file)
@@ -1,6 +1,6 @@
 #source: nop-4.s
 #objdump: -drw
-#name: x86-64 .nop 4
+#name: x86-64 .nops 4
 
 .*: +file format .*
 
index 57493cf..a609a12 100644 (file)
@@ -1,6 +1,6 @@
 #source: nop-5.s
 #objdump: -drw
-#name: x86-64 .nop 5
+#name: x86-64 .nops 5
 
 .*: +file format .*
 
index 520f590..63f3817 100644 (file)
@@ -1,6 +1,6 @@
 #source: nop-6.s
 #objdump: -drw
-#name: x86-64 .nop 6
+#name: x86-64 .nops 6
 
 .*: +file format .*
 
index 9b14fda..4c8e42b 100644 (file)
@@ -453,7 +453,7 @@ skip_align:
       if (fragP->fr_offset < 0)
        {
          as_bad_where (fragP->fr_file, fragP->fr_line,
-                       _("attempt to .org/.space/.nop backwards? (%ld)"),
+                       _("attempt to .org/.space/.nops backwards? (%ld)"),
                        (long) fragP->fr_offset);
          fragP->fr_offset = 0;
        }
@@ -1587,7 +1587,7 @@ md_generate_nops (fragS *f ATTRIBUTE_UNUSED,
                  offsetT count ATTRIBUTE_UNUSED,
                  int control ATTRIBUTE_UNUSED)
 {
-  as_bad (_("unimplemented .nop directive"));
+  as_bad (_("unimplemented .nops directive"));
 }
 #endif
 
@@ -2840,7 +2840,7 @@ relax_segment (struct frag *segment_frag_root, segT segment, int pass)
                          }
 
                        as_warn_where (fragP->fr_file, fragP->fr_line,
-                                      _(".space, .nop or .fill with negative value, ignored"));
+                                      _(".space, .nops or .fill with negative value, ignored"));
                        fragP->fr_symbol = 0;
                      }
                    else