Updated French translation for the opcodes directory.
[binutils-gdb.git] / opcodes / s390-mkopc.c
index 8e0b332585338f1f64917ab54f353b9a0771f34f..bcd453314a16be9428ce9e44734ffdd3fbbeeb91 100644 (file)
@@ -1,5 +1,5 @@
 /* s390-mkopc.c -- Generates opcode table out of s390-opc.txt
-   Copyright (C) 2000-2017 Free Software Foundation, Inc.
+   Copyright (C) 2000-2021 Free Software Foundation, Inc.
    Contributed by Martin Schwidefsky (schwidefsky@de.ibm.com).
 
    This file is part of the GNU opcodes library.
@@ -240,7 +240,8 @@ insertExpandedMnemonic (char *opcode, char *mnemonic, char *format,
       ext_table = s390_crb_extensions;
       ext_table_length = NUM_CRB_EXTENSIONS;
       break;
-    default: fprintf (stderr, "Unknown tag char: %c\n", *tag);
+    default:
+      abort ();                        /* Should be unreachable.  */
     }
 
   for (i = 0; i < ext_table_length; i++)
@@ -374,8 +375,14 @@ main (void)
       else if (strcmp (cpu_string, "z13") == 0
               || strcmp (cpu_string, "arch11") == 0)
        min_cpu = S390_OPCODE_Z13;
-      else if (strcmp (cpu_string, "arch12") == 0)
+      else if (strcmp (cpu_string, "z14") == 0
+              || strcmp (cpu_string, "arch12") == 0)
        min_cpu = S390_OPCODE_ARCH12;
+      else if (strcmp (cpu_string, "z15") == 0
+              || strcmp (cpu_string, "arch13") == 0)
+       min_cpu = S390_OPCODE_ARCH13;
+      else if (strcmp (cpu_string, "arch14") == 0)
+       min_cpu = S390_OPCODE_ARCH14;
       else {
        fprintf (stderr, "Couldn't parse cpu string %s\n", cpu_string);
        exit (1);
@@ -411,18 +418,18 @@ main (void)
                && (str[7] == 0 || str[7] == ',')) {
              flag_bits |= S390_INSTR_FLAG_OPTPARM;
              str += 7;
+           } else if (strncmp (str, "optparm2", 8) == 0
+                      && (str[8] == 0 || str[8] == ',')) {
+             flag_bits |= S390_INSTR_FLAG_OPTPARM2;
+             str += 8;
            } else if (strncmp (str, "htm", 3) == 0
-               && (str[3] == 0 || str[3] == ',')) {
+                      && (str[3] == 0 || str[3] == ',')) {
              flag_bits |= S390_INSTR_FLAG_HTM;
              str += 3;
            } else if (strncmp (str, "vx", 2) == 0
-               && (str[2] == 0 || str[2] == ',')) {
+                      && (str[2] == 0 || str[2] == ',')) {
              flag_bits |= S390_INSTR_FLAG_VX;
              str += 2;
-           } else if (strncmp (str, "vx2", 3) == 0
-               && (str[3] == 0 || str[3] == ',')) {
-             flag_bits |= S390_INSTR_FLAG_VX2;
-             str += 3;
            } else {
              fprintf (stderr, "Couldn't parse flags string %s\n",
                       flags_string);