diff options
author | jamesbowman <jamesb@excamera.com> | 2015-09-24 16:07:35 -0700 |
---|---|---|
committer | jamesbowman <jamesb@excamera.com> | 2015-09-24 16:08:58 -0700 |
commit | 623fb77545da1272c7602cd51a4c187b66c366c8 (patch) | |
tree | 951af84780653264c5d85ba91fba77c074593d4a /gdb/ft32-tdep.h | |
parent | 3074964fcfff45aef4584b84550eeef84f902fc4 (diff) | |
download | gdb-623fb77545da1272c7602cd51a4c187b66c366c8.zip gdb-623fb77545da1272c7602cd51a4c187b66c366c8.tar.gz gdb-623fb77545da1272c7602cd51a4c187b66c366c8.tar.bz2 |
[FT32] Implement pointer to address conversion method.
FT32 is a Harvard architecture with two address spaces -- RAM and flash.
The patch properly implements the pointer to address conversion method.
There are some other small fixes to handle address spaces.
gdb/
* ft32-tdep.c (ft32_register_type): Return gdbarch_tdep
(gdbarch)->pc_type instead of builtin_func_ptr.
(ft32_pointer_to_address): New function.
(ft32_address_class_type_flags): New function.
(ft32_address_class_type_flags_to_name): New function.
(ft32_address_class_name_to_type_flags): New function.
(ft32_gdbarch_init): Set tdep->pc_type. Call
set_gdbarch_pointer_to_address,
set_gdbarch_address_class_type_flags
set_gdbarch_address_class_name_to_type_flags,
and set_gdbarch_address_class_type_flags_to_name.
* ft32-tdep.h (struct gdbarch_tdep) <pc_type>: New field.
Diffstat (limited to 'gdb/ft32-tdep.h')
-rw-r--r-- | gdb/ft32-tdep.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gdb/ft32-tdep.h b/gdb/ft32-tdep.h index 5c52480..ba747b0 100644 --- a/gdb/ft32-tdep.h +++ b/gdb/ft32-tdep.h @@ -22,7 +22,8 @@ struct gdbarch_tdep { - /* gdbarch target dependent data here. Currently unused for FT32. */ + /* Type for a pointer to a function. Used for the type of PC. */ + struct type *pc_type; }; #endif /* FT32_TDEP_H */ |