aboutsummaryrefslogtreecommitdiff
path: root/gdb/gdbarch.h
diff options
context:
space:
mode:
authorMarkus Deuling <deuling@de.ibm.com>2008-01-18 17:07:40 +0000
committerMarkus Deuling <deuling@de.ibm.com>2008-01-18 17:07:40 +0000
commit32c9a7957208ebe4d7a833cecbf552f3f852e733 (patch)
treee9504294b71969645a7458f45621802f01b00d6d /gdb/gdbarch.h
parent1e5e79d0ce60af39979b37292669ec6dae3a9975 (diff)
downloadgdb-32c9a7957208ebe4d7a833cecbf552f3f852e733.zip
gdb-32c9a7957208ebe4d7a833cecbf552f3f852e733.tar.gz
gdb-32c9a7957208ebe4d7a833cecbf552f3f852e733.tar.bz2
* gdbarch.sh (function_list): Add new property bits_big_endian to
gdbarch structure. * gdbarch.{c,h}: Regenerate. * value.c (struct value): Replace BITS_BIG_ENDIAN by gdbarch_bits_big_endian (comment). (unpack_field_as_long, modify_field): Likewise. * value.h: Likewise (comment). * valops.c (value_slice): Likewise. * valarith.c (value_subscript, value_bit_index): Likewise. * gdbtypes.h (field): Likewise (comment). * eval.c (evaluate_subexp_standard): Likewise. * dwarf2read.c (dwarf2_add_field): Likewise. * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val) (move_bits, ada_value_assign, value_assign_to_component): Likewise. * defs.h (BITS_BIG_ENDIAN): Remove. * gdbint.texinfo (Target Conditionals): Replace the description of BITS_BIG_ENDIAN with a description of gdbarch_bits_big_endian.
Diffstat (limited to 'gdb/gdbarch.h')
-rw-r--r--gdb/gdbarch.h6
1 files changed, 6 insertions, 0 deletions
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
index ebb8c60..c068dde 100644
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -71,6 +71,12 @@ extern const struct target_desc * gdbarch_target_desc (struct gdbarch *gdbarch);
/* The following are initialized by the target dependent code. */
+/* The bit byte-order has to do just with numbering of bits in debugging symbols
+ and such. Conceptually, it's quite separate from byte/word byte order. */
+
+extern int gdbarch_bits_big_endian (struct gdbarch *gdbarch);
+extern void set_gdbarch_bits_big_endian (struct gdbarch *gdbarch, int bits_big_endian);
+
/* Number of bits in a char or unsigned char for the target machine.
Just like CHAR_BIT in <limits.h> but describes the target machine.
v:TARGET_CHAR_BIT:int:char_bit::::8 * sizeof (char):8::0: