Really remove unnecessary power9 group terminating nop
authorAlan Modra <amodra@gmail.com>
Thu, 8 Mar 2018 04:04:09 +0000 (14:34 +1030)
committerAlan Modra <amodra@gmail.com>
Thu, 8 Mar 2018 04:07:26 +0000 (14:37 +1030)
Oops, not tested well enough.  -mpower9 sets all the PPC_OPCODE_POWERn
for n <= 9.

* config/tc-ppc.c (ppc_handle_align): Correct last patch.  Really
don't emit a group terminating nop for power9.  Simplify cpu
tests.

gas/ChangeLog
gas/config/tc-ppc.c

index 7670ee2..8a6161d 100644 (file)
@@ -1,5 +1,11 @@
 2018-03-08  Alan Modra  <amodra@gmail.com>
 
+       * config/tc-ppc.c (ppc_handle_align): Correct last patch.  Really
+       don't emit a group terminating nop for power9.  Simplify cpu
+       tests.
+
+2018-03-08  Alan Modra  <amodra@gmail.com>
+
        * config/tc-ppc.c (ppc_handle_align): Don't emit a group
        terminating nop for power9.
 
index dc63d60..ff76221 100644 (file)
@@ -6549,8 +6549,7 @@ ppc_handle_align (struct frag *fragP)
       md_number_to_chars (dest, 0x60000000, 4);
 
       if ((ppc_cpu & PPC_OPCODE_POWER6) != 0
-         || (ppc_cpu & PPC_OPCODE_POWER7) != 0
-         || (ppc_cpu & PPC_OPCODE_POWER8) != 0)
+         && (ppc_cpu & PPC_OPCODE_POWER9) == 0)
        {
          /* For power6, power7, and power8, we want the last nop to
             be a group terminating one.  Do this by inserting an
@@ -6570,8 +6569,7 @@ ppc_handle_align (struct frag *fragP)
              dest = group_nop->fr_literal;
            }
 
-         if ((ppc_cpu & PPC_OPCODE_POWER7) != 0
-             || (ppc_cpu & PPC_OPCODE_POWER8) != 0)
+         if ((ppc_cpu & PPC_OPCODE_POWER7) != 0)
            {
              if (ppc_cpu & PPC_OPCODE_E500MC)
                /* e500mc group terminating nop: "ori 0,0,0".  */