RISC-V: Remove a loop in the ISA parser
authorTsukasa OI <research_trasio@irq.a4lg.com>
Wed, 23 Feb 2022 01:47:22 +0000 (10:47 +0900)
committerNelson Chu <nelson.chu@sifive.com>
Fri, 25 Feb 2022 09:05:01 +0000 (17:05 +0800)
Since commit e601909a3287bf541c6a7d82214bb387d2c76d82 ("RISC-V: Support
to parse the multi-letter prefix in the architecture string.") changed
so that all prefixed extensions are parsed in single
riscv_parse_prefixed_ext call, a "while" loop on riscv_parse_subset
is no longer required.

bfd/ChangeLog:

* elfxx-riscv.c (riscv_parse_subset): Remove unnecessary loop.

bfd/elfxx-riscv.c

index d74e7a584eb6175440429d8e98aec37f055853e2..2915b74dd0f6e7f2a1a3860cdc29b39ac2b388a0 100644 (file)
@@ -2019,14 +2019,11 @@ riscv_parse_subset (riscv_parse_subset_t *rps,
   if (p == NULL)
     return false;
 
-  /* Parse the different classes of extensions in the specified order.  */
-  while (*p != '\0')
-    {
-      p = riscv_parse_prefixed_ext (rps, arch, p);
+  /* Parse prefixed extensions.  */
+  p = riscv_parse_prefixed_ext (rps, arch, p);
 
-      if (p == NULL)
-        return false;
-    }
+  if (p == NULL)
+    return false;
 
   /* Finally add implicit extensions according to the current
      extensions.  */