[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v4 08/26] gdbstub: move fromhex/tohex routines to internals
From: |
Alex Bennée |
Subject: |
[PATCH v4 08/26] gdbstub: move fromhex/tohex routines to internals |
Date: |
Thu, 2 Mar 2023 19:08:28 +0000 |
These will be needed from multiple places in the code. They are
declared as inline so move to the header and fix up to modern coding
style.
The only other place that messes with hex stuff at the moment is the
URI handling in utils but that would be more code churn so leave for
now.
Reviewed-by: Richard Henderson <richard.henderson@linaro.org>
Signed-off-by: Alex Bennée <alex.bennee@linaro.org>
---
gdbstub/internals.h | 27 +++++++++++++++++++++++++++
gdbstub/gdbstub.c | 20 --------------------
2 files changed, 27 insertions(+), 20 deletions(-)
diff --git a/gdbstub/internals.h b/gdbstub/internals.h
index 32daaf73a3..b4620f99c4 100644
--- a/gdbstub/internals.h
+++ b/gdbstub/internals.h
@@ -57,6 +57,33 @@ typedef struct GDBState {
int supported_sstep_flags;
} GDBState;
+
+/*
+ * Inline utility function, convert from int to hex and back
+ */
+
+static inline int fromhex(int v)
+{
+ if (v >= '0' && v <= '9') {
+ return v - '0';
+ } else if (v >= 'A' && v <= 'F') {
+ return v - 'A' + 10;
+ } else if (v >= 'a' && v <= 'f') {
+ return v - 'a' + 10;
+ } else {
+ return 0;
+ }
+}
+
+static inline int tohex(int v)
+{
+ if (v < 10) {
+ return v + '0';
+ } else {
+ return v - 10 + 'a';
+ }
+}
+
/*
* Break/Watch point support - there is an implementation for softmmu
* and user mode.
diff --git a/gdbstub/gdbstub.c b/gdbstub/gdbstub.c
index abb1777e73..ba46ed73b3 100644
--- a/gdbstub/gdbstub.c
+++ b/gdbstub/gdbstub.c
@@ -546,26 +546,6 @@ static void put_buffer(const uint8_t *buf, int len)
#endif
}
-static inline int fromhex(int v)
-{
- if (v >= '0' && v <= '9')
- return v - '0';
- else if (v >= 'A' && v <= 'F')
- return v - 'A' + 10;
- else if (v >= 'a' && v <= 'f')
- return v - 'a' + 10;
- else
- return 0;
-}
-
-static inline int tohex(int v)
-{
- if (v < 10)
- return v + '0';
- else
- return v - 10 + 'a';
-}
-
/* writes 2*len+1 bytes in buf */
static void memtohex(GString *buf, const uint8_t *mem, int len)
{
--
2.39.2
- [PATCH v4 00/26] gdbstub/next: re-organise and split build, Alex Bennée, 2023/03/02
- [PATCH v4 01/26] gdbstub/internals.h: clean up include guard, Alex Bennée, 2023/03/02
- [PATCH v4 02/26] gdbstub: fix-up copyright and license files, Alex Bennée, 2023/03/02
- [PATCH v4 03/26] gdbstub: Make syscall_complete/[gs]et_reg target-agnostic typedefs, Alex Bennée, 2023/03/02
- [PATCH v4 07/26] includes: move tb_flush into its own header, Alex Bennée, 2023/03/02
- [PATCH v4 05/26] gdbstub: define separate user/system structures, Alex Bennée, 2023/03/02
- [PATCH v4 06/26] gdbstub: move GDBState to shared internals header, Alex Bennée, 2023/03/02
- [PATCH v4 08/26] gdbstub: move fromhex/tohex routines to internals,
Alex Bennée <=
- [PATCH v4 04/26] gdbstub: clean-up indent on gdb_exit, Alex Bennée, 2023/03/02
- [PATCH v4 12/26] gdbstub: rationalise signal mapping in softmmu, Alex Bennée, 2023/03/02
- [PATCH v4 10/26] gdbstub: move chunk of softmmu functionality to own file, Alex Bennée, 2023/03/02
- [PATCH v4 09/26] gdbstub: make various helpers visible to the rest of the module, Alex Bennée, 2023/03/02
- [PATCH v4 11/26] gdbstub: move chunks of user code into own files, Alex Bennée, 2023/03/02
- [PATCH v4 26/26] gdbstub: move update guest debug to accel ops, Alex Bennée, 2023/03/02
- [PATCH v4 23/26] testing: probe gdb for supported architectures ahead of time, Alex Bennée, 2023/03/02
- [PATCH v4 24/26] include: split target_long definition from cpu-defs, Alex Bennée, 2023/03/02
- [PATCH v4 13/26] gdbstub: abstract target specific details from gdb_put_packet_binary, Alex Bennée, 2023/03/02