Remove gdbarch.sh

This patch runs gdbarch.py and removes gdbarch.sh.
This commit is contained in:
Tom Tromey
2021-12-15 14:38:30 -07:00
parent 7c8bb2ed1c
commit fb14eb0829
3 changed files with 66 additions and 1879 deletions

View File

@ -20,7 +20,7 @@
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <http://www.gnu.org/licenses/>. */
/* This file was created with the aid of ``gdbarch.sh''. */ /* This file was created with the aid of ``gdbarch.py''. */
@ -1178,7 +1178,7 @@ extern void set_gdbarch_syscalls_info (struct gdbarch *gdbarch, struct syscalls_
on the architecture's assembly. on the architecture's assembly.
For example, on x86 integer constants are written as: For example, on x86 integer constants are written as:
$10 ;; integer constant 10 $10 ;; integer constant 10
in this case, this prefix would be the character `$'. */ in this case, this prefix would be the character `$'. */
@ -1195,7 +1195,7 @@ extern void set_gdbarch_stap_integer_suffixes (struct gdbarch *gdbarch, const ch
the architecture's assembly. the architecture's assembly.
For example, on x86 the register name is written as: For example, on x86 the register name is written as:
%eax ;; register eax %eax ;; register eax
in this case, this prefix would be the character `%'. */ in this case, this prefix would be the character `%'. */
@ -1212,7 +1212,7 @@ extern void set_gdbarch_stap_register_suffixes (struct gdbarch *gdbarch, const c
indirection on the architecture's assembly. indirection on the architecture's assembly.
For example, on x86 the register indirection is written as: For example, on x86 the register indirection is written as:
(%eax) ;; indirecting eax (%eax) ;; indirecting eax
in this case, this prefix would be the charater `('. in this case, this prefix would be the charater `('.
@ -1226,7 +1226,7 @@ extern void set_gdbarch_stap_register_indirection_prefixes (struct gdbarch *gdba
indirection on the architecture's assembly. indirection on the architecture's assembly.
For example, on x86 the register indirection is written as: For example, on x86 the register indirection is written as:
(%eax) ;; indirecting eax (%eax) ;; indirecting eax
in this case, this prefix would be the charater `)'. in this case, this prefix would be the charater `)'.
@ -1254,10 +1254,10 @@ extern void set_gdbarch_stap_gdb_register_suffix (struct gdbarch *gdbarch, const
/* Check if S is a single operand. /* Check if S is a single operand.
Single operands can be: Single operands can be:
- Literal integers, e.g. `$10' on x86 - Literal integers, e.g. `$10' on x86
- Register access, e.g. `%eax' on x86 - Register access, e.g. `%eax' on x86
- Register indirection, e.g. `(%eax)' on x86 - Register indirection, e.g. `(%eax)' on x86
- Register displacement, e.g. `4(%eax)' on x86 - Register displacement, e.g. `4(%eax)' on x86
This function should check for these patterns on the string This function should check for these patterns on the string
and return 1 if some were found, or zero otherwise. Please try to match and return 1 if some were found, or zero otherwise. Please try to match
@ -1276,11 +1276,11 @@ extern void set_gdbarch_stap_is_single_operand (struct gdbarch *gdbarch, gdbarch
that the parser does not know how to parse. A good example of special that the parser does not know how to parse. A good example of special
case would be ARM's register displacement syntax: case would be ARM's register displacement syntax:
[R0, #4] ;; displacing R0 by 4 [R0, #4] ;; displacing R0 by 4
Since the parser assumes that a register displacement is of the form: Since the parser assumes that a register displacement is of the form:
<number> <indirection_prefix> <register_name> <indirection_suffix> <number> <indirection_prefix> <register_name> <indirection_suffix>
it means that it will not be able to recognize and parse this odd syntax. it means that it will not be able to recognize and parse this odd syntax.
Therefore, we should add a special case function that will handle this token. Therefore, we should add a special case function that will handle this token.
@ -1311,7 +1311,7 @@ extern void set_gdbarch_stap_parse_special_token (struct gdbarch *gdbarch, gdbar
To illustrate the example, consider the following probe argument To illustrate the example, consider the following probe argument
(i386): (i386):
4@%ax 4@%ax
This argument says that its value can be found at the %ax register, This argument says that its value can be found at the %ax register,
which is a 16-bit register. However, the argument's prefix says which is a 16-bit register. However, the argument's prefix says
@ -1403,13 +1403,13 @@ extern void set_gdbarch_guess_tracepoint_registers (struct gdbarch *gdbarch, gdb
/* Return the "auto" target charset. */ /* Return the "auto" target charset. */
typedef const char * (gdbarch_auto_charset_ftype) (void); typedef const char * (gdbarch_auto_charset_ftype) ();
extern const char * gdbarch_auto_charset (struct gdbarch *gdbarch); extern const char * gdbarch_auto_charset (struct gdbarch *gdbarch);
extern void set_gdbarch_auto_charset (struct gdbarch *gdbarch, gdbarch_auto_charset_ftype *auto_charset); extern void set_gdbarch_auto_charset (struct gdbarch *gdbarch, gdbarch_auto_charset_ftype *auto_charset);
/* Return the "auto" target wide charset. */ /* Return the "auto" target wide charset. */
typedef const char * (gdbarch_auto_wide_charset_ftype) (void); typedef const char * (gdbarch_auto_wide_charset_ftype) ();
extern const char * gdbarch_auto_wide_charset (struct gdbarch *gdbarch); extern const char * gdbarch_auto_wide_charset (struct gdbarch *gdbarch);
extern void set_gdbarch_auto_wide_charset (struct gdbarch *gdbarch, gdbarch_auto_wide_charset_ftype *auto_wide_charset); extern void set_gdbarch_auto_wide_charset (struct gdbarch *gdbarch, gdbarch_auto_wide_charset_ftype *auto_wide_charset);

View File

@ -20,7 +20,7 @@
You should have received a copy of the GNU General Public License You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. */ along with this program. If not, see <http://www.gnu.org/licenses/>. */
/* This file was created with the aid of ``gdbarch.sh''. */ /* This file was created with the aid of ``gdbarch.py''. */
/* Maintain the struct gdbarch object. */ /* Maintain the struct gdbarch object. */
@ -48,29 +48,6 @@ struct gdbarch
unsigned nr_data; unsigned nr_data;
void **data; void **data;
/* Multi-arch values.
When extending this structure you must:
Add the field below.
Declare set/get functions and define the corresponding
macro in gdbarch.h.
gdbarch_alloc(): If zero/NULL is not a suitable default,
initialize the new field.
verify_gdbarch(): Confirm that the target updated the field
correctly.
gdbarch_dump(): Add a fprintf_unfiltered call so that the new
field is dumped out
get_gdbarch(): Implement the set/get functions (probably using
the macro's as shortcuts).
*/
int short_bit; int short_bit;
int int_bit; int int_bit;
int long_bit; int long_bit;
@ -3876,7 +3853,7 @@ gdbarch_core_xfer_siginfo (struct gdbarch *gdbarch, gdb_byte *readbuf, ULONGEST
gdb_assert (gdbarch->core_xfer_siginfo != NULL); gdb_assert (gdbarch->core_xfer_siginfo != NULL);
if (gdbarch_debug >= 2) if (gdbarch_debug >= 2)
fprintf_unfiltered (gdb_stdlog, "gdbarch_core_xfer_siginfo called\n"); fprintf_unfiltered (gdb_stdlog, "gdbarch_core_xfer_siginfo called\n");
return gdbarch->core_xfer_siginfo (gdbarch, readbuf, offset, len); return gdbarch->core_xfer_siginfo (gdbarch, readbuf, offset, len);
} }
void void

File diff suppressed because it is too large Load Diff