aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--opcodes/ChangeLog5
-rw-r--r--opcodes/arc-dis.c20
2 files changed, 11 insertions, 14 deletions
diff --git a/opcodes/ChangeLog b/opcodes/ChangeLog
index 1442a71..325cd84 100644
--- a/opcodes/ChangeLog
+++ b/opcodes/ChangeLog
@@ -1,5 +1,10 @@
2017-06-29 Anton Kolesov <Anton.Kolesov@synopsys.com>
+ * arc-dis.c (parse_disassembler_options): Use
+ FOR_EACH_DISASSEMBLER_OPTION.
+
+2017-06-29 Anton Kolesov <Anton.Kolesov@synopsys.com>
+
* arc-dis.c (parse_option): Use disassembler_options_cmp to compare
disassembler option strings.
(parse_cpu_option): Likewise.
diff --git a/opcodes/arc-dis.c b/opcodes/arc-dis.c
index b46424a..addd75c 100644
--- a/opcodes/arc-dis.c
+++ b/opcodes/arc-dis.c
@@ -823,6 +823,8 @@ parse_cpu_option (const char *option)
static void
parse_disassembler_options (const char *options)
{
+ const char *option;
+
if (options == NULL)
return;
@@ -832,25 +834,15 @@ parse_disassembler_options (const char *options)
CPU when new options are being parsed. */
enforced_isa_mask = ARC_OPCODE_NONE;
- while (*options)
+ FOR_EACH_DISASSEMBLER_OPTION (option, options)
{
- /* Skip empty options. */
- if (*options == ',')
- {
- ++ options;
- continue;
- }
-
/* A CPU option? Cannot use STRING_COMMA_LEN because strncmp is also a
preprocessor macro. */
- if (strncmp (options, "cpu=", 4) == 0)
+ if (strncmp (option, "cpu=", 4) == 0)
/* Strip leading `cpu=`. */
- enforced_isa_mask = parse_cpu_option (options + 4);
+ enforced_isa_mask = parse_cpu_option (option + 4);
else
- parse_option (options);
-
- while (*options != ',' && *options != '\0')
- ++ options;
+ parse_option (option);
}
}