From: Mike Frysinger <vapier@gentoo.org>
To: gdb-patches@sourceware.org
Subject: [PATCH/committed 7/8] sim: ppc: rework igen error to match common
Date: Mon, 1 Jan 2024 18:22:18 -0500 [thread overview]
Message-ID: <20240101232219.3003-7-vapier@gentoo.org> (raw)
In-Reply-To: <20240101232219.3003-1-vapier@gentoo.org>
Switch to an ERROR macro and tweak the error signature to match the
common igen version in preparation for merging the two implementations.
---
sim/ppc/gen-idecode.c | 2 +-
sim/ppc/gen-model.c | 4 ++--
sim/ppc/igen.c | 4 ++--
sim/ppc/ld-cache.c | 2 +-
sim/ppc/ld-decode.c | 2 +-
sim/ppc/ld-insn.c | 14 +++++++-------
sim/ppc/lf.c | 2 +-
sim/ppc/misc.c | 8 ++++----
sim/ppc/misc.h | 7 +++++--
sim/ppc/table.c | 2 +-
10 files changed, 25 insertions(+), 22 deletions(-)
diff --git a/sim/ppc/gen-idecode.c b/sim/ppc/gen-idecode.c
index 256ba7586b89..5d2253500594 100644
--- a/sim/ppc/gen-idecode.c
+++ b/sim/ppc/gen-idecode.c
@@ -1543,6 +1543,6 @@ gen_idecode_c(lf *file,
}
else {
- error("Something is wrong!\n");
+ ERROR("Something is wrong!\n");
}
}
diff --git a/sim/ppc/gen-model.c b/sim/ppc/gen-model.c
index a8bcc66e9f14..11a533b2d93a 100644
--- a/sim/ppc/gen-model.c
+++ b/sim/ppc/gen-model.c
@@ -52,7 +52,7 @@ model_c_or_h_function(insn_table *entry,
{
if (function->fields[function_type] == NULL
|| function->fields[function_type][0] == '\0') {
- error("Model function type not specified for %s", function->fields[function_name]);
+ ERROR("Model function type not specified for %s", function->fields[function_name]);
}
lf_printf(file, "\n");
lf_print_function_type(file, function->fields[function_type], prefix, " ");
@@ -203,7 +203,7 @@ model_c_function(insn_table *table,
{
if (function->fields[function_type] == NULL
|| function->fields[function_type][0] == '\0') {
- error("Model function return type not specified for %s", function->fields[function_name]);
+ ERROR("Model function return type not specified for %s", function->fields[function_name]);
}
else {
lf_printf(file, "\n");
diff --git a/sim/ppc/igen.c b/sim/ppc/igen.c
index 61afa491bb9e..264d8086874a 100644
--- a/sim/ppc/igen.c
+++ b/sim/ppc/igen.c
@@ -450,7 +450,7 @@ main(int argc,
code &= ~generate_with_icache;
break;
default:
- error ("Expecting -Ggen-icache or -Ggen-icache=<N>\n");
+ ERROR ("Expecting -Ggen-icache or -Ggen-icache=<N>\n");
}
}
break;
@@ -568,7 +568,7 @@ main(int argc,
real_file_name = NULL;
break;
default:
- error("unknown option\n");
+ ERROR("unknown option\n");
}
}
return 0;
diff --git a/sim/ppc/ld-cache.c b/sim/ppc/ld-cache.c
index 9a78f908b05a..a5d101daf6c9 100644
--- a/sim/ppc/ld-cache.c
+++ b/sim/ppc/ld-cache.c
@@ -115,7 +115,7 @@ main(int argc, char **argv)
{
cache_table *rules;
if (argc != 3)
- error("Usage: cache <cache-file> <hi-bit-nr>\n");
+ ERROR("Usage: cache <cache-file> <hi-bit-nr>\n");
rules = load_cache_table(argv[1], a2i(argv[2]));
dump_cache_rules(rules, 0);
return 0;
diff --git a/sim/ppc/ld-decode.c b/sim/ppc/ld-decode.c
index 63c2c2e53d40..a631645f54de 100644
--- a/sim/ppc/ld-decode.c
+++ b/sim/ppc/ld-decode.c
@@ -143,7 +143,7 @@ main(int argc, char **argv)
{
decode_table *rules;
if (argc != 3)
- error("Usage: decode <decode-file> <hi-bit-nr>\n");
+ ERROR("Usage: decode <decode-file> <hi-bit-nr>\n");
rules = load_decode_table(argv[1], a2i(argv[2]));
dump_decode_rules(rules, 0);
return 0;
diff --git a/sim/ppc/ld-insn.c b/sim/ppc/ld-insn.c
index 5cb72b226226..c11b449a58c1 100644
--- a/sim/ppc/ld-insn.c
+++ b/sim/ppc/ld-insn.c
@@ -110,7 +110,7 @@ parse_insn_format(table_entry *entry,
/* sanity check */
if (!isdigit(*chp)) {
- error("%s:%d: missing position field at `%s'\n",
+ ERROR("%s:%d: missing position field at `%s'\n",
entry->file_name, entry->line_nr, chp);
}
@@ -122,7 +122,7 @@ parse_insn_format(table_entry *entry,
if (*chp == '.' && strlen_pos > 0)
chp++;
else {
- error("%s:%d: missing field value at %s\n",
+ ERROR("%s:%d: missing field value at %s\n",
entry->file_name, entry->line_nr, chp);
break;
}
@@ -137,7 +137,7 @@ parse_insn_format(table_entry *entry,
if (*chp == ',')
chp++;
else if (*chp != '\0' || strlen_val == 0) {
- error("%s:%d: missing field terminator at %s\n",
+ ERROR("%s:%d: missing field terminator at %s\n",
entry->file_name, entry->line_nr, chp);
break;
}
@@ -216,7 +216,7 @@ parse_include_entry (table *file,
{
/* parse the include file_entry */
if (file_entry->nr_fields < 4)
- error ("Incorrect nr fields for include record\n");
+ ERROR ("Incorrect nr fields for include record\n");
/* process it */
if (!is_filtered_out(file_entry->fields[include_flags], filters))
{
@@ -326,7 +326,7 @@ insn_table_insert_insn(insn_table *table,
}
if (!model_ptr)
- error("%s:%d: machine model `%s' was not known about\n",
+ ERROR("%s:%d: machine model `%s' was not known about\n",
file_entry->file_name, file_entry->line_nr, name);
}
@@ -663,7 +663,7 @@ insn_table_find_opcode_field(insn *insns,
curr_opcode->boolean_constant = rule->special_constant;
break;
default:
- error("Something is going wrong\n");
+ ERROR("Something is going wrong\n");
}
return curr_opcode;
@@ -979,7 +979,7 @@ main(int argc, char **argv)
cache_table *cache_rules = NULL;
if (argc != 5)
- error("Usage: insn <filter> <hi-bit-nr> <decode-table> <insn-table>\n");
+ ERROR("Usage: insn <filter> <hi-bit-nr> <decode-table> <insn-table>\n");
filters = new_filter(argv[1], filters);
hi_bit_nr = a2i(argv[2]);
diff --git a/sim/ppc/lf.c b/sim/ppc/lf.c
index 9a9d6151c6e8..9deb2d2bb523 100644
--- a/sim/ppc/lf.c
+++ b/sim/ppc/lf.c
@@ -274,7 +274,7 @@ lf_print__c_code(lf *file,
chp++;
}
if (in_bit_field)
- error("bit field paren miss match some where\n");
+ ERROR("bit field paren miss match some where\n");
if (*chp == '\n') {
nr += lf_putchr(file, '\n');
chp++;
diff --git a/sim/ppc/misc.c b/sim/ppc/misc.c
index a281d62b0af1..9499101b6029 100644
--- a/sim/ppc/misc.c
+++ b/sim/ppc/misc.c
@@ -28,7 +28,7 @@
#include <string.h>
void
-error (const char *msg, ...)
+error (const void *line, const char *msg, ...)
{
va_list ap;
va_start(ap, msg);
@@ -42,7 +42,7 @@ zalloc(long size)
{
void *memory = malloc(size);
if (memory == NULL)
- error("zalloc failed\n");
+ ERROR("zalloc failed\n");
memset(memory, 0, size);
return memory;
}
@@ -186,7 +186,7 @@ name2i(const char *names,
if (curr->i >= 0)
return curr->i;
else
- error("%s contains no valid names\n", names);
+ ERROR("%s contains no valid names\n", names);
return 0;
}
@@ -199,6 +199,6 @@ i2name(const int i,
return map->name;
map++;
}
- error("map lookup failed for %d\n", i);
+ ERROR("map lookup failed for %d\n", i);
return NULL;
}
diff --git a/sim/ppc/misc.h b/sim/ppc/misc.h
index 0073467863ad..243d5c93605a 100644
--- a/sim/ppc/misc.h
+++ b/sim/ppc/misc.h
@@ -28,8 +28,11 @@
#include "ansidecl.h"
#include "filter_host.h"
-extern void error (const char *msg, ...)
- ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF (1, 2);
+extern void error (const void *line, const char *msg, ...)
+ ATTRIBUTE_NORETURN ATTRIBUTE_PRINTF (2, 3);
+
+#define ERROR(EXPRESSION, args...) \
+ error (NULL, EXPRESSION, ## args)
#define ASSERT(EXPRESSION) \
do { \
diff --git a/sim/ppc/table.c b/sim/ppc/table.c
index cb9a73aa8c49..0c5b6fcd925a 100644
--- a/sim/ppc/table.c
+++ b/sim/ppc/table.c
@@ -98,7 +98,7 @@ table_push (table *root,
/* free (dup_name); */
if (include->next == NULL)
{
- error ("Problem opening file `%s'\n", file_name);
+ ERROR ("Problem opening file `%s'\n", file_name);
perror (file_name);
exit (1);
}
--
2.43.0
next prev parent reply other threads:[~2024-01-01 23:22 UTC|newest]
Thread overview: 10+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-01-01 23:22 [PATCH/committed 1/8] sim: ppc: hoist igen compilation into top-level Mike Frysinger
2024-01-01 23:22 ` [PATCH/committed 2/8] sim: ppc: replace filter_filename with lbasename Mike Frysinger
2024-01-09 14:34 ` Tom Tromey
2024-01-09 17:41 ` Mike Frysinger
2024-01-01 23:22 ` [PATCH/committed 3/8] sim: ppc: unify igen filter_filename implementations Mike Frysinger
2024-01-01 23:22 ` [PATCH/committed 4/8] sim: igen: minor constify logic Mike Frysinger
2024-01-01 23:22 ` [PATCH/committed 5/8] sim: ppc: rename igen max_insn_bit_size Mike Frysinger
2024-01-01 23:22 ` [PATCH/committed 6/8] sim: igen: extend error to take arguments Mike Frysinger
2024-01-01 23:22 ` Mike Frysinger [this message]
2024-01-01 23:22 ` [PATCH/committed 8/8] sim: ppc: merge misc igen APIs Mike Frysinger
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20240101232219.3003-7-vapier@gentoo.org \
--to=vapier@gentoo.org \
--cc=gdb-patches@sourceware.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).