Rebase to FSF GDB 8.2.50.20181130 (8.3pre).

This commit is contained in:
Sergio Durigan Junior 2018-12-03 13:40:10 -05:00
parent f11faa1e6a
commit 9c7d730fb9
25 changed files with 213 additions and 229 deletions

View File

@ -1 +1 @@
dd9168931facd539a585b88d7b7c6c04c8c065c2
f746c08f26dd71fdd809bad8cb92a6cbb8336ec4

View File

@ -16,7 +16,7 @@ Subject: gdb-6.3-gstack-20050411.patch
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -1739,7 +1739,7 @@ info install-info clean-info dvi pdf install-pdf html install-html: force
@@ -1743,7 +1743,7 @@ info install-info clean-info dvi pdf install-pdf html install-html: force
install: all
@$(MAKE) $(FLAGS_TO_PASS) install-only
@ -25,7 +25,7 @@ diff --git a/gdb/Makefile.in b/gdb/Makefile.in
transformed_name=`t='$(program_transform_name)'; \
echo gdb | sed -e "$$t"` ; \
if test "x$$transformed_name" = x; then \
@@ -1788,7 +1788,25 @@ install-guile:
@@ -1792,7 +1792,25 @@ install-guile:
install-python:
$(SHELL) $(srcdir)/../mkinstalldirs $(DESTDIR)$(GDB_DATADIR)/python/gdb
@ -52,7 +52,7 @@ diff --git a/gdb/Makefile.in b/gdb/Makefile.in
transformed_name=`t='$(program_transform_name)'; \
echo gdb | sed -e $$t` ; \
if test "x$$transformed_name" = x; then \
@@ -1811,6 +1829,18 @@ uninstall: force $(CONFIG_UNINSTALL)
@@ -1815,6 +1833,18 @@ uninstall: force $(CONFIG_UNINSTALL)
fi
@$(MAKE) DO=uninstall "DODIRS=$(SUBDIRS)" $(FLAGS_TO_PASS) subdir_do

View File

@ -127,7 +127,7 @@ diff --git a/gdb/amd64-linux-tdep.c b/gdb/amd64-linux-tdep.c
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
--- a/gdb/amd64-tdep.c
+++ b/gdb/amd64-tdep.c
@@ -2600,6 +2600,7 @@ amd64_frame_unwind_stop_reason (struct frame_info *this_frame,
@@ -2601,6 +2601,7 @@ amd64_frame_unwind_stop_reason (struct frame_info *this_frame,
{
struct amd64_frame_cache *cache =
amd64_frame_cache (this_frame, this_cache);
@ -135,7 +135,7 @@ diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
if (!cache->base_p)
return UNWIND_UNAVAILABLE;
@@ -2608,6 +2609,10 @@ amd64_frame_unwind_stop_reason (struct frame_info *this_frame,
@@ -2609,6 +2610,10 @@ amd64_frame_unwind_stop_reason (struct frame_info *this_frame,
if (cache->base == 0)
return UNWIND_OUTERMOST;
@ -146,7 +146,7 @@ diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
return UNWIND_NO_REASON;
}
@@ -2742,6 +2747,7 @@ amd64_sigtramp_frame_this_id (struct frame_info *this_frame,
@@ -2743,6 +2748,7 @@ amd64_sigtramp_frame_this_id (struct frame_info *this_frame,
{
struct amd64_frame_cache *cache =
amd64_sigtramp_frame_cache (this_frame, this_cache);
@ -154,7 +154,7 @@ diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
if (!cache->base_p)
(*this_id) = frame_id_build_unavailable_stack (get_frame_pc (this_frame));
@@ -2750,6 +2756,11 @@ amd64_sigtramp_frame_this_id (struct frame_info *this_frame,
@@ -2751,6 +2757,11 @@ amd64_sigtramp_frame_this_id (struct frame_info *this_frame,
/* This marks the outermost frame. */
return;
}
@ -169,7 +169,7 @@ diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -8406,6 +8406,9 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
@@ -8407,6 +8407,9 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)
tdep->xsave_xcr0_offset = -1;

View File

@ -947,7 +947,7 @@ diff --git a/gdb/corelow.c b/gdb/corelow.c
/* Issue a message saying we have no core to debug, if FROM_TTY. */
static void
@@ -463,6 +515,14 @@ core_target_open (const char *arg, int from_tty)
@@ -457,6 +509,14 @@ core_target_open (const char *arg, int from_tty)
switch_to_thread (thread);
}
@ -962,7 +962,7 @@ diff --git a/gdb/corelow.c b/gdb/corelow.c
post_create_inferior (target, from_tty);
/* Now go through the target stack looking for threads since there
@@ -1071,4 +1131,11 @@ void
@@ -1065,4 +1125,11 @@ void
_initialize_corelow (void)
{
add_target (core_target_info, core_target_open, filename_completer);
@ -977,7 +977,7 @@ diff --git a/gdb/corelow.c b/gdb/corelow.c
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -19937,6 +19937,27 @@ information files.
@@ -19965,6 +19965,27 @@ information files.
@end table

View File

@ -9,7 +9,7 @@ Subject: gdb-6.6-scheduler_locking-step-is-default.patch
diff --git a/gdb/infrun.c b/gdb/infrun.c
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -2195,7 +2195,7 @@ static const char *const scheduler_enums[] = {
@@ -2177,7 +2177,7 @@ static const char *const scheduler_enums[] = {
schedlock_replay,
NULL
};

View File

@ -9,7 +9,7 @@ Subject: gdb-6.8-bz436037-reg-no-longer-active.patch
diff --git a/gdb/valops.c b/gdb/valops.c
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -1097,6 +1097,8 @@ value_assign (struct value *toval, struct value *fromval)
@@ -1092,6 +1092,8 @@ value_assign (struct value *toval, struct value *fromval)
struct gdbarch *gdbarch;
int value_reg;
@ -18,7 +18,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
/* Figure out which frame this is in currently.
We use VALUE_FRAME_ID for obtaining the value's frame id instead of
@@ -1106,8 +1108,14 @@ value_assign (struct value *toval, struct value *fromval)
@@ -1101,8 +1103,14 @@ value_assign (struct value *toval, struct value *fromval)
frame. */
frame = frame_find_by_id (VALUE_FRAME_ID (toval));

View File

@ -8,7 +8,7 @@ Subject: gdb-archer-pie-addons-keep-disabled.patch
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -15506,6 +15506,50 @@ static struct cmd_list_element *enablebreaklist = NULL;
@@ -15500,6 +15500,50 @@ static struct cmd_list_element *enablebreaklist = NULL;
cmd_list_element *commands_cmd_element = nullptr;

View File

@ -8,7 +8,7 @@ Subject: gdb-archer-pie-addons.patch
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
--- a/gdb/gdbtypes.h
+++ b/gdb/gdbtypes.h
@@ -506,6 +506,7 @@ enum field_loc_kind
@@ -507,6 +507,7 @@ enum field_loc_kind
{
FIELD_LOC_KIND_BITPOS, /**< bitpos */
FIELD_LOC_KIND_ENUMVAL, /**< enumval */
@ -16,7 +16,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
FIELD_LOC_KIND_PHYSADDR, /**< physaddr */
FIELD_LOC_KIND_PHYSNAME, /**< physname */
FIELD_LOC_KIND_DWARF_BLOCK /**< dwarf_block */
@@ -557,6 +558,7 @@ union field_location
@@ -558,6 +559,7 @@ union field_location
field. Otherwise, physname is the mangled label of the
static field. */
@ -24,7 +24,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
CORE_ADDR physaddr;
const char *physname;
@@ -1439,6 +1441,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
@@ -1436,6 +1438,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
#define FIELD_ENUMVAL_LVAL(thisfld) ((thisfld).loc.enumval)
#define FIELD_ENUMVAL(thisfld) (FIELD_ENUMVAL_LVAL (thisfld) + 0)
#define FIELD_STATIC_PHYSNAME(thisfld) ((thisfld).loc.physname)
@ -32,7 +32,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
#define FIELD_STATIC_PHYSADDR(thisfld) ((thisfld).loc.physaddr)
#define FIELD_DWARF_BLOCK(thisfld) ((thisfld).loc.dwarf_block)
#define SET_FIELD_BITPOS(thisfld, bitpos) \
@@ -1450,6 +1453,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
@@ -1447,6 +1450,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
#define SET_FIELD_PHYSNAME(thisfld, name) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSNAME, \
FIELD_STATIC_PHYSNAME (thisfld) = (name))
@ -40,7 +40,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
#define SET_FIELD_PHYSADDR(thisfld, addr) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSADDR, \
FIELD_STATIC_PHYSADDR (thisfld) = (addr))
@@ -1466,6 +1470,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
@@ -1463,6 +1467,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
#define TYPE_FIELD_BITPOS(thistype, n) FIELD_BITPOS (TYPE_FIELD (thistype, n))
#define TYPE_FIELD_ENUMVAL(thistype, n) FIELD_ENUMVAL (TYPE_FIELD (thistype, n))
#define TYPE_FIELD_STATIC_PHYSNAME(thistype, n) FIELD_STATIC_PHYSNAME (TYPE_FIELD (thistype, n))
@ -51,7 +51,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
diff --git a/gdb/value.c b/gdb/value.c
--- a/gdb/value.c
+++ b/gdb/value.c
@@ -2828,7 +2828,8 @@ value_static_field (struct type *type, int fieldno)
@@ -2827,7 +2827,8 @@ value_static_field (struct type *type, int fieldno)
{
case FIELD_LOC_KIND_PHYSADDR:
retval = value_at_lazy (TYPE_FIELD_TYPE (type, fieldno),

View File

@ -17,7 +17,7 @@ tromey/python
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -2099,6 +2099,12 @@ stamp-h: $(srcdir)/config.in config.status
@@ -2103,6 +2103,12 @@ stamp-h: $(srcdir)/config.in config.status
CONFIG_LINKS= \
$(SHELL) config.status
@ -417,7 +417,7 @@ diff --git a/gdb/python/python.c b/gdb/python/python.c
/* Set the quit flag. */
static void
@@ -1311,6 +1336,92 @@ gdbpy_print_stack (void)
@@ -1312,6 +1337,92 @@ gdbpy_print_stack (void)
@ -510,7 +510,7 @@ diff --git a/gdb/python/python.c b/gdb/python/python.c
/* Return a sequence holding all the Progspaces. */
static PyObject *
@@ -1965,6 +2076,8 @@ PyMethodDef python_GdbMethods[] =
@@ -1966,6 +2077,8 @@ PyMethodDef python_GdbMethods[] =
Evaluate command, a string, as a gdb CLI command. Optionally returns\n\
a Python String containing the output of the command if to_string is\n\
set to True." },

View File

@ -30,7 +30,7 @@ debugging problem of GOMP outside of the scope of this Bug.
diff --git a/gdb/infrun.c b/gdb/infrun.c
--- a/gdb/infrun.c
+++ b/gdb/infrun.c
@@ -6693,6 +6693,16 @@ process_event_stop_test (struct execution_control_state *ecs)
@@ -6637,6 +6637,16 @@ process_event_stop_test (struct execution_control_state *ecs)
if (ecs->event_thread->control.step_over_calls == STEP_OVER_ALL)
{
@ -47,7 +47,7 @@ diff --git a/gdb/infrun.c b/gdb/infrun.c
/* We're doing a "next".
Normal (forward) execution: set a breakpoint at the
@@ -6726,6 +6736,7 @@ process_event_stop_test (struct execution_control_state *ecs)
@@ -6670,6 +6680,7 @@ process_event_stop_test (struct execution_control_state *ecs)
keep_going (ecs);
return;

View File

@ -10,7 +10,7 @@ Subject: gdb-bz541866-rwatch-before-run.patch
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -8785,7 +8785,7 @@ init_breakpoint_sal (struct breakpoint *b, struct gdbarch *gdbarch,
@@ -8779,7 +8779,7 @@ init_breakpoint_sal (struct breakpoint *b, struct gdbarch *gdbarch,
int enabled, int internal, unsigned flags,
int display_canonical)
{
@ -19,7 +19,7 @@ diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
if (type == bp_hardware_breakpoint)
{
@@ -14336,7 +14336,7 @@ enable_breakpoint_disp (struct breakpoint *bpt, enum bpdisp disposition,
@@ -14330,7 +14330,7 @@ enable_breakpoint_disp (struct breakpoint *bpt, enum bpdisp disposition,
if (bpt->type == bp_hardware_breakpoint)
{

View File

@ -9,7 +9,7 @@ Subject: gdb-container-rh-pkg.patch
diff --git a/gdb/remote.c b/gdb/remote.c
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -13999,7 +13999,17 @@ remote_target::pid_to_exec_file (int pid)
@@ -13968,7 +13968,17 @@ remote_target::pid_to_exec_file (int pid)
char *annex = NULL;
if (packet_support (PACKET_qXfer_exec_file) != PACKET_ENABLE)

View File

@ -153,7 +153,7 @@ diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c
if (resume_many)
iterate_over_lwps (ptid, linux_nat_resume_callback, lp);
@@ -3761,6 +3803,10 @@ linux_nat_target::mourn_inferior ()
@@ -3756,6 +3798,10 @@ linux_nat_target::mourn_inferior ()
/* Let the arch-specific native code know this process is gone. */
linux_target->low_forget_process (pid);

View File

@ -14,7 +14,7 @@ Bug in FSF GDB exploited by the ptrace-on-utrace interaction.
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -11994,6 +11994,8 @@ update_global_location_list (enum ugll_insert_mode insert_mode)
@@ -11988,6 +11988,8 @@ update_global_location_list (enum ugll_insert_mode insert_mode)
traps we can no longer explain. */
old_loc->events_till_retirement = 3 * (thread_count () + 1);

View File

@ -75,8 +75,8 @@ diff --git a/gdb/python/python.c b/gdb/python/python.c
+
std::string to_string_res;
TRY
@@ -601,6 +614,13 @@ execute_gdb_command (PyObject *self, PyObject *args, PyObject *kw)
scoped_restore preventer = prevent_dont_repeat ();
@@ -603,6 +616,13 @@ execute_gdb_command (PyObject *self, PyObject *args, PyObject *kw)
counted_command_line lines = read_command_lines_1 (reader, 1, nullptr);
@ -90,7 +90,7 @@ diff --git a/gdb/python/python.c b/gdb/python/python.c
{
scoped_restore save_async = make_scoped_restore (&current_ui->async,
0);
@@ -620,12 +640,24 @@ execute_gdb_command (PyObject *self, PyObject *args, PyObject *kw)
@@ -621,12 +641,24 @@ execute_gdb_command (PyObject *self, PyObject *args, PyObject *kw)
execute_control_commands (lines.get (), from_tty);
}

View File

@ -519,17 +519,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
static struct type *decode_constrained_packed_array_type (struct type *);
@@ -190,7 +190,8 @@ static int ada_is_unconstrained_packed_array_type (struct type *);
static struct value *value_subscript_packed (struct value *, int,
struct value **);
-static void move_bits (gdb_byte *, int, const gdb_byte *, int, int, int);
+static void move_bits (gdb_byte *, int, const gdb_byte *, LONGEST, LONGEST,
+ int);
static struct value *coerce_unspec_val_to_type (struct value *,
struct type *);
@@ -216,14 +217,14 @@ static struct value *value_val_atr (struct type *, struct value *);
@@ -214,14 +214,14 @@ static struct value *value_val_atr (struct type *, struct value *);
static struct symbol *standard_lookup (const char *, const struct block *,
domain_enum);
@ -548,7 +538,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
static int ada_resolve_function (struct block_symbol *, int,
struct value **, int, const char *,
@@ -234,7 +235,7 @@ static int ada_is_direct_array_type (struct type *);
@@ -232,7 +232,7 @@ static int ada_is_direct_array_type (struct type *);
static void ada_language_arch_info (struct gdbarch *,
struct language_arch_info *);
@ -557,7 +547,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
struct type *);
static struct value *assign_aggregate (struct value *, struct value *,
@@ -703,7 +704,7 @@ coerce_unspec_val_to_type (struct value *val, struct type *type)
@@ -701,7 +701,7 @@ coerce_unspec_val_to_type (struct value *val, struct type *type)
}
static const gdb_byte *
@ -566,7 +556,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
{
if (valaddr == NULL)
return NULL;
@@ -712,7 +713,7 @@ cond_offset_host (const gdb_byte *valaddr, long offset)
@@ -710,7 +710,7 @@ cond_offset_host (const gdb_byte *valaddr, long offset)
}
static CORE_ADDR
@ -575,7 +565,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
{
if (address == 0)
return 0;
@@ -1754,7 +1755,7 @@ desc_bounds (struct value *arr)
@@ -1752,7 +1752,7 @@ desc_bounds (struct value *arr)
/* If TYPE is the type of an array-descriptor (fat pointer), the bit
position of the field containing the address of the bounds data. */
@ -584,7 +574,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
fat_pntr_bounds_bitpos (struct type *type)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 1);
@@ -1820,7 +1821,7 @@ desc_data (struct value *arr)
@@ -1818,7 +1818,7 @@ desc_data (struct value *arr)
/* If TYPE is the type of an array-descriptor (fat pointer), the bit
position of the field containing the address of the data. */
@ -593,7 +583,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
fat_pntr_data_bitpos (struct type *type)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 0);
@@ -1855,7 +1856,7 @@ desc_one_bound (struct value *bounds, int i, int which)
@@ -1853,7 +1853,7 @@ desc_one_bound (struct value *bounds, int i, int which)
of the Ith lower bound stored in it, if WHICH is 0, and the Ith upper
bound, if WHICH is 1. The first bound is I=1. */
@ -602,7 +592,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
desc_bound_bitpos (struct type *type, int i, int which)
{
return TYPE_FIELD_BITPOS (desc_base_type (type), 2 * i + which - 2);
@@ -2045,7 +2046,7 @@ ada_type_of_array (struct value *arr, int bounds)
@@ -2043,7 +2043,7 @@ ada_type_of_array (struct value *arr, int bounds)
zero, and does not need to be recomputed. */
if (lo < hi)
{
@ -611,7 +601,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
(hi - lo + 1) * TYPE_FIELD_BITSIZE (elt_type, 0);
TYPE_LENGTH (array_type) = (array_bitsize + 7) / 8;
@@ -2205,7 +2206,7 @@ decode_packed_array_bitsize (struct type *type)
@@ -2203,7 +2203,7 @@ decode_packed_array_bitsize (struct type *type)
the length is arbitrary. */
static struct type *
@ -620,7 +610,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
{
struct type *new_elt_type;
struct type *new_type;
@@ -2259,7 +2260,7 @@ decode_constrained_packed_array_type (struct type *type)
@@ -2257,7 +2257,7 @@ decode_constrained_packed_array_type (struct type *type)
char *name;
const char *tail;
struct type *shadow_type;
@ -629,7 +619,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
if (!raw_name)
raw_name = ada_type_name (desc_base_type (type));
@@ -2330,7 +2331,8 @@ decode_constrained_packed_array (struct value *arr)
@@ -2328,7 +2328,8 @@ decode_constrained_packed_array (struct value *arr)
array with no wrapper. In order to interpret the value through
the (left-justified) packed array type we just built, we must
first left-justify it. */
@ -639,7 +629,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
ULONGEST mod;
mod = ada_modulus (value_type (arr)) - 1;
@@ -2558,7 +2560,7 @@ ada_unpack_from_contents (const gdb_byte *src, int bit_offset, int bit_size,
@@ -2556,7 +2557,7 @@ ada_unpack_from_contents (const gdb_byte *src, int bit_offset, int bit_size,
struct value *
ada_value_primitive_packed_val (struct value *obj, const gdb_byte *valaddr,
@ -648,7 +638,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
struct type *type)
{
struct value *v;
@@ -2628,7 +2630,7 @@ ada_value_primitive_packed_val (struct value *obj, const gdb_byte *valaddr,
@@ -2626,7 +2627,7 @@ ada_value_primitive_packed_val (struct value *obj, const gdb_byte *valaddr,
if (obj != NULL)
{
@ -657,16 +647,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
set_value_component_location (v, obj);
set_value_bitpos (v, bit_offset + value_bitpos (obj));
@@ -2674,7 +2676,7 @@ ada_value_primitive_packed_val (struct value *obj, const gdb_byte *valaddr,
not overlap. */
static void
move_bits (gdb_byte *target, int targ_offset, const gdb_byte *source,
- int src_offset, int n, int bits_big_endian_p)
+ LONGEST src_offset, LONGEST n, int bits_big_endian_p)
{
unsigned int accum, mask;
int accum_bits, chunk_size;
@@ -2764,7 +2766,7 @@ ada_value_assign (struct value *toval, struct value *fromval)
@@ -2696,7 +2697,7 @@ ada_value_assign (struct value *toval, struct value *fromval)
{
int len = (value_bitpos (toval)
+ bits + HOST_CHAR_BIT - 1) / HOST_CHAR_BIT;
@ -675,7 +656,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
gdb_byte *buffer = (gdb_byte *) alloca (len);
struct value *val;
CORE_ADDR to_addr = value_address (toval);
@@ -2815,7 +2817,7 @@ value_assign_to_component (struct value *container, struct value *component,
@@ -2747,7 +2748,7 @@ value_assign_to_component (struct value *container, struct value *component,
(LONGEST) (value_address (component) - value_address (container));
int bit_offset_in_container =
value_bitpos (component) - value_bitpos (container);
@ -684,7 +665,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
val = value_cast (value_type (component), val);
@@ -4513,7 +4515,7 @@ ensure_lval (struct value *val)
@@ -4445,7 +4446,7 @@ ensure_lval (struct value *val)
if (VALUE_LVAL (val) == not_lval
|| VALUE_LVAL (val) == lval_internalvar)
{
@ -693,7 +674,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
const CORE_ADDR addr =
value_as_long (value_allocate_space_in_inferior (len));
@@ -4597,7 +4599,7 @@ static CORE_ADDR
@@ -4529,7 +4530,7 @@ static CORE_ADDR
value_pointer (struct value *value, struct type *type)
{
struct gdbarch *gdbarch = get_type_arch (type);
@ -702,7 +683,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
gdb_byte *buf = (gdb_byte *) alloca (len);
CORE_ADDR addr;
@@ -6705,7 +6707,7 @@ value_tag_from_contents_and_address (struct type *type,
@@ -6637,7 +6638,7 @@ value_tag_from_contents_and_address (struct type *type,
const gdb_byte *valaddr,
CORE_ADDR address)
{
@ -711,7 +692,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
struct type *tag_type;
if (find_struct_field ("_tag", type, 0, &tag_type, &tag_byte_offset,
@@ -7198,7 +7200,7 @@ ada_in_variant (LONGEST val, struct type *type, int field_num)
@@ -7130,7 +7131,7 @@ ada_in_variant (LONGEST val, struct type *type, int field_num)
only in that it can handle packed values of arbitrary type. */
static struct value *
@ -720,7 +701,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
struct type *arg_type)
{
struct type *type;
@@ -7210,7 +7212,7 @@ ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
@@ -7142,7 +7143,7 @@ ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
if (TYPE_FIELD_BITSIZE (arg_type, fieldno) != 0)
{
@ -729,7 +710,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
int bit_size = TYPE_FIELD_BITSIZE (arg_type, fieldno);
return ada_value_primitive_packed_val (arg1, value_contents (arg1),
@@ -7287,9 +7289,9 @@ ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
@@ -7219,9 +7220,9 @@ ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
Returns 1 if found, 0 otherwise. */
static int
@ -741,7 +722,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
int *index_p)
{
int i;
@@ -7308,8 +7310,8 @@ find_struct_field (const char *name, struct type *type, int offset,
@@ -7240,8 +7241,8 @@ find_struct_field (const char *name, struct type *type, int offset,
for (i = 0; i < TYPE_NFIELDS (type); i += 1)
{
@ -752,7 +733,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
const char *t_field_name = TYPE_FIELD_NAME (type, i);
if (t_field_name == NULL)
@@ -7411,7 +7413,7 @@ num_visible_fields (struct type *type)
@@ -7343,7 +7344,7 @@ num_visible_fields (struct type *type)
long explanation in find_struct_field's function documentation. */
static struct value *
@ -761,7 +742,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
struct type *type)
{
int i;
@@ -7459,7 +7461,7 @@ ada_search_struct_field (const char *name, struct value *arg, int offset,
@@ -7391,7 +7392,7 @@ ada_search_struct_field (const char *name, struct value *arg, int offset,
int j;
struct type *field_type = ada_check_typedef (TYPE_FIELD_TYPE (type,
i));
@ -770,7 +751,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
for (j = 0; j < TYPE_NFIELDS (field_type); j += 1)
{
@@ -7491,8 +7493,8 @@ ada_search_struct_field (const char *name, struct value *arg, int offset,
@@ -7423,8 +7424,8 @@ ada_search_struct_field (const char *name, struct value *arg, int offset,
return NULL;
}
@ -781,7 +762,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
/* Return field #INDEX in ARG, where the index is that returned by
@@ -7501,7 +7503,7 @@ static struct value *ada_index_struct_field_1 (int *, struct value *,
@@ -7433,7 +7434,7 @@ static struct value *ada_index_struct_field_1 (int *, struct value *,
* If found, return value, else return NULL. */
static struct value *
@ -790,7 +771,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
struct type *type)
{
return ada_index_struct_field_1 (&index, arg, offset, type);
@@ -7513,7 +7515,7 @@ ada_index_struct_field (int index, struct value *arg, int offset,
@@ -7445,7 +7446,7 @@ ada_index_struct_field (int index, struct value *arg, int offset,
* *INDEX_P. */
static struct value *
@ -799,7 +780,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
struct type *type)
{
int i;
@@ -7604,7 +7606,8 @@ ada_value_struct_elt (struct value *arg, const char *name, int no_err)
@@ -7536,7 +7537,8 @@ ada_value_struct_elt (struct value *arg, const char *name, int no_err)
v = ada_search_struct_field (name, arg, 0, t);
else
{
@ -809,7 +790,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
struct type *field_type;
CORE_ADDR address;
@@ -7953,8 +7956,8 @@ ada_coerce_ref (struct value *val0)
@@ -7885,8 +7887,8 @@ ada_coerce_ref (struct value *val0)
/* Return OFF rounded upward if necessary to a multiple of
ALIGNMENT (a power of 2). */
@ -820,7 +801,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
{
return (off + alignment - 1) & ~(alignment - 1);
}
@@ -8344,10 +8347,9 @@ ada_template_to_fixed_record_type_1 (struct type *type,
@@ -8276,10 +8278,9 @@ ada_template_to_fixed_record_type_1 (struct type *type,
struct value *mark = value_mark ();
struct value *dval;
struct type *rtype;
@ -833,7 +814,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
int f;
/* Compute the number of fields in this record type that are going
@@ -8424,7 +8426,7 @@ ada_template_to_fixed_record_type_1 (struct type *type,
@@ -8356,7 +8357,7 @@ ada_template_to_fixed_record_type_1 (struct type *type,
that follow this one. */
if (ada_is_aligner_type (field_type))
{
@ -842,7 +823,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
field_valaddr = cond_offset_host (field_valaddr, field_offset);
field_address = cond_offset_target (field_address, field_offset);
@@ -8560,11 +8562,11 @@ ada_template_to_fixed_record_type_1 (struct type *type,
@@ -8492,11 +8493,11 @@ ada_template_to_fixed_record_type_1 (struct type *type,
if (TYPE_LENGTH (type) <= 0)
{
if (TYPE_NAME (rtype))
@ -858,7 +839,7 @@ diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
}
else
{
@@ -9028,7 +9030,8 @@ to_fixed_array_type (struct type *type0, struct value *dval,
@@ -8960,7 +8961,8 @@ to_fixed_array_type (struct type *type0, struct value *dval,
type was a regular (non-packed) array type. As a result, the
bitsize of the array elements needs to be set again, and the array
length needs to be recomputed based on that bitsize. */
@ -1299,7 +1280,7 @@ diff --git a/gdb/ax.h b/gdb/ax.h
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -2057,9 +2057,9 @@ should_be_inserted (struct bp_location *bl)
@@ -2055,9 +2055,9 @@ should_be_inserted (struct bp_location *bl)
{
fprintf_unfiltered (gdb_stdlog,
"infrun: stepping past non-steppable watchpoint. "
@ -1311,7 +1292,7 @@ diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
}
return 0;
}
@@ -6801,7 +6801,7 @@ breakpoint_address_match (const address_space *aspace1, CORE_ADDR addr1,
@@ -6795,7 +6795,7 @@ breakpoint_address_match (const address_space *aspace1, CORE_ADDR addr1,
static int
breakpoint_address_match_range (const address_space *aspace1,
CORE_ADDR addr1,
@ -1320,7 +1301,7 @@ diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
CORE_ADDR addr2)
{
return ((gdbarch_has_global_breakpoints (target_gdbarch ())
@@ -10883,7 +10883,7 @@ can_use_hardware_watchpoint (const std::vector<value_ref_ptr> &vals)
@@ -10877,7 +10877,7 @@ can_use_hardware_watchpoint (const std::vector<value_ref_ptr> &vals)
&& TYPE_CODE (vtype) != TYPE_CODE_ARRAY))
{
CORE_ADDR vaddr = value_address (v);
@ -1571,7 +1552,7 @@ diff --git a/gdb/d-valprint.c b/gdb/d-valprint.c
diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -1855,7 +1855,7 @@ rw_pieced_value (struct value *v, struct value *from)
@@ -1625,7 +1625,7 @@ rw_pieced_value (struct value *v, struct value *from)
for (; i < c->pieces.size () && offset < max_offset; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
@ -1580,7 +1561,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
this_size_bits = p->size - bits_to_skip;
if (this_size_bits > max_offset - offset)
@@ -2102,7 +2102,7 @@ write_pieced_value (struct value *to, struct value *from)
@@ -1872,7 +1872,7 @@ write_pieced_value (struct value *to, struct value *from)
static int
check_pieced_synthetic_pointer (const struct value *value, LONGEST bit_offset,
@ -1589,7 +1570,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
{
struct piece_closure *c
= (struct piece_closure *) value_computed_closure (value);
@@ -2115,7 +2115,7 @@ check_pieced_synthetic_pointer (const struct value *value, LONGEST bit_offset,
@@ -1885,7 +1885,7 @@ check_pieced_synthetic_pointer (const struct value *value, LONGEST bit_offset,
for (i = 0; i < c->pieces.size () && bit_length > 0; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
@ -1598,7 +1579,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
if (bit_offset > 0)
{
@@ -2219,8 +2219,8 @@ indirect_pieced_value (struct value *value)
@@ -1989,8 +1989,8 @@ indirect_pieced_value (struct value *value)
= (struct piece_closure *) value_computed_closure (value);
struct type *type;
struct frame_info *frame;
@ -1609,7 +1590,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
struct dwarf_expr_piece *piece = NULL;
LONGEST byte_offset;
enum bfd_endian byte_order;
@@ -2237,7 +2237,7 @@ indirect_pieced_value (struct value *value)
@@ -2007,7 +2007,7 @@ indirect_pieced_value (struct value *value)
for (i = 0; i < c->pieces.size () && bit_length > 0; i++)
{
struct dwarf_expr_piece *p = &c->pieces[i];
@ -1618,7 +1599,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
if (bit_offset > 0)
{
@@ -2526,9 +2526,9 @@ if (frame != NULL) select_frame (frame);
@@ -2296,9 +2296,9 @@ if (frame != NULL) select_frame (frame);
case DWARF_VALUE_STACK:
{
struct value *value = ctx.fetch (0);
@ -1698,7 +1679,7 @@ diff --git a/gdb/eval.c b/gdb/eval.c
int unsigned_operation;
/* Determine type length and signedness after promotion for
@@ -1549,7 +1550,7 @@ evaluate_subexp_standard (struct type *expect_type,
@@ -1553,7 +1554,7 @@ evaluate_subexp_standard (struct type *expect_type,
struct value **argvec;
int code;
int ix;
@ -1707,7 +1688,7 @@ diff --git a/gdb/eval.c b/gdb/eval.c
struct type **arg_types;
pc = (*pos)++;
@@ -1734,7 +1735,7 @@ evaluate_subexp_standard (struct type *expect_type,
@@ -1738,7 +1739,7 @@ evaluate_subexp_standard (struct type *expect_type,
struct type *range_type = TYPE_INDEX_TYPE (type);
struct type *element_type = TYPE_TARGET_TYPE (type);
struct value *array = allocate_value (expect_type);
@ -1877,7 +1858,7 @@ diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -195,8 +195,8 @@ extern void set_gdbarch_wchar_signed (struct gdbarch *gdbarch, int wchar_signed)
@@ -218,8 +218,8 @@ extern void set_gdbarch_wchar_signed (struct gdbarch *gdbarch, int wchar_signed)
NAME, if non-NULL, is the type name, which may be used to distinguish
different target formats of the same length. */
@ -1941,7 +1922,7 @@ diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
return is_unique_ancestor_worker (base, value_type (val), &offset,
value_contents_for_printing (val),
@@ -4651,7 +4651,7 @@ recursive_dump_type (struct type *type, int spaces)
@@ -4649,7 +4649,7 @@ recursive_dump_type (struct type *type, int spaces)
break;
}
puts_filtered ("\n");
@ -1950,7 +1931,7 @@ diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
if (TYPE_OBJFILE_OWNED (type))
{
printfi_filtered (spaces, "objfile ");
@@ -5096,7 +5096,7 @@ copy_type (const struct type *type)
@@ -5094,7 +5094,7 @@ copy_type (const struct type *type)
struct type *
arch_type (struct gdbarch *gdbarch,
@ -1962,7 +1943,7 @@ diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
--- a/gdb/gdbtypes.h
+++ b/gdb/gdbtypes.h
@@ -863,7 +863,7 @@ struct type
@@ -864,7 +864,7 @@ struct type
type_length_units function should be used in order to get the length
expressed in target addressable memory units. */
@ -1971,7 +1952,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
/* * Core type, shared by a group of qualified types. */
@@ -1790,7 +1790,7 @@ extern unsigned int type_length_units (struct type *type);
@@ -1787,7 +1787,7 @@ extern unsigned int type_length_units (struct type *type);
/* * Helper function to construct objfile-owned types. */
@ -1980,7 +1961,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
const char *);
extern struct type *init_integer_type (struct objfile *, int, int,
const char *);
@@ -1807,7 +1807,7 @@ extern struct type *init_pointer_type (struct objfile *, int, const char *,
@@ -1804,7 +1804,7 @@ extern struct type *init_pointer_type (struct objfile *, int, const char *,
struct type *);
/* Helper functions to construct architecture-owned types. */
@ -2122,7 +2103,7 @@ diff --git a/gdb/go-valprint.c b/gdb/go-valprint.c
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -8155,7 +8155,7 @@ i386_fast_tracepoint_valid_at (struct gdbarch *gdbarch, CORE_ADDR addr,
@@ -8156,7 +8156,7 @@ i386_fast_tracepoint_valid_at (struct gdbarch *gdbarch, CORE_ADDR addr,
const struct floatformat **
i386_floatformat_for_type (struct gdbarch *gdbarch,
@ -2622,7 +2603,7 @@ diff --git a/gdb/printcmd.c b/gdb/printcmd.c
diff --git a/gdb/procfs.c b/gdb/procfs.c
--- a/gdb/procfs.c
+++ b/gdb/procfs.c
@@ -3368,7 +3368,7 @@ procfs_target::remove_watchpoint (CORE_ADDR addr, int len,
@@ -3369,7 +3369,7 @@ procfs_target::remove_watchpoint (CORE_ADDR addr, int len,
}
int
@ -2758,7 +2739,7 @@ diff --git a/gdb/remote.c b/gdb/remote.c
int insert_watchpoint (CORE_ADDR, int, enum target_hw_bp_type,
struct expression *) override;
@@ -10445,7 +10445,7 @@ int remote_hw_watchpoint_length_limit = -1;
@@ -10415,7 +10415,7 @@ int remote_hw_watchpoint_length_limit = -1;
int remote_hw_breakpoint_limit = -1;
int
@ -2885,7 +2866,7 @@ diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -38,7 +38,7 @@ struct dummy_target : public target_ops
int have_steppable_watchpoint () override;
bool have_steppable_watchpoint () override;
bool stopped_data_address (CORE_ADDR *arg0) override;
bool watchpoint_addr_within_range (CORE_ADDR arg0, CORE_ADDR arg1, int arg2) override;
- int region_ok_for_hw_watchpoint (CORE_ADDR arg0, int arg1) override;
@ -2894,7 +2875,7 @@ diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
int masked_watch_num_registers (CORE_ADDR arg0, CORE_ADDR arg1) override;
int can_do_single_step () override;
@@ -205,7 +205,7 @@ struct debug_target : public target_ops
int have_steppable_watchpoint () override;
bool have_steppable_watchpoint () override;
bool stopped_data_address (CORE_ADDR *arg0) override;
bool watchpoint_addr_within_range (CORE_ADDR arg0, CORE_ADDR arg1, int arg2) override;
- int region_ok_for_hw_watchpoint (CORE_ADDR arg0, int arg1) override;
@ -2946,7 +2927,7 @@ diff --git a/gdb/target.c b/gdb/target.c
static void default_rcmd (struct target_ops *, const char *, struct ui_file *);
@@ -3190,7 +3190,7 @@ target_fileio_read_stralloc (struct inferior *inf, const char *filename)
@@ -3188,7 +3188,7 @@ target_fileio_read_stralloc (struct inferior *inf, const char *filename)
static int
default_region_ok_for_hw_watchpoint (struct target_ops *self,
@ -3111,7 +3092,7 @@ diff --git a/gdb/valarith.c b/gdb/valarith.c
{
struct type *array_type = check_typedef (value_type (array));
struct type *elt_type = check_typedef (TYPE_TARGET_TYPE (array_type));
@@ -657,7 +657,7 @@ value_concat (struct value *arg1, struct value *arg2)
@@ -656,7 +656,7 @@ value_concat (struct value *arg1, struct value *arg2)
struct value *inval1;
struct value *inval2;
struct value *outval = NULL;
@ -3120,7 +3101,7 @@ diff --git a/gdb/valarith.c b/gdb/valarith.c
int count, idx;
char inchar;
struct type *type1 = check_typedef (value_type (arg1));
@@ -1417,7 +1417,7 @@ value_binop (struct value *arg1, struct value *arg2, enum exp_opcode op)
@@ -1416,7 +1416,7 @@ value_binop (struct value *arg1, struct value *arg2, enum exp_opcode op)
int
value_logical_not (struct value *arg1)
{
@ -3129,7 +3110,7 @@ diff --git a/gdb/valarith.c b/gdb/valarith.c
const gdb_byte *p;
struct type *type1;
@@ -1445,11 +1445,11 @@ value_logical_not (struct value *arg1)
@@ -1444,11 +1444,11 @@ value_logical_not (struct value *arg1)
static int
value_strcmp (struct value *arg1, struct value *arg2)
{
@ -3147,8 +3128,8 @@ diff --git a/gdb/valarith.c b/gdb/valarith.c
diff --git a/gdb/valops.c b/gdb/valops.c
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -81,7 +81,7 @@ oload_classification classify_oload_match (struct badness_vector *,
int, int);
@@ -81,7 +81,7 @@ static enum oload_classification classify_oload_match
(const badness_vector &, int, int);
static struct value *value_struct_elt_for_reference (struct type *,
- int, struct type *,
@ -3156,7 +3137,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
const char *,
struct type *,
int, enum noside);
@@ -176,7 +176,7 @@ find_function_in_inferior (const char *name, struct objfile **objf_p)
@@ -171,7 +171,7 @@ find_function_in_inferior (const char *name, struct objfile **objf_p)
space. */
struct value *
@ -3165,7 +3146,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
{
struct objfile *objf;
struct value *val = find_function_in_inferior ("malloc", &objf);
@@ -391,12 +391,12 @@ value_cast (struct type *type, struct value *arg2)
@@ -386,12 +386,12 @@ value_cast (struct type *type, struct value *arg2)
if (code1 == TYPE_CODE_ARRAY)
{
struct type *element_type = TYPE_TARGET_TYPE (type);
@ -3180,7 +3161,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
LONGEST low_bound, high_bound, new_length;
if (get_discrete_bounds (range_type, &low_bound, &high_bound) < 0)
@@ -1048,7 +1048,7 @@ value_assign (struct value *toval, struct value *fromval)
@@ -1043,7 +1043,7 @@ value_assign (struct value *toval, struct value *fromval)
{
const gdb_byte *dest_buffer;
CORE_ADDR changed_addr;
@ -3189,7 +3170,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
gdb_byte buffer[sizeof (LONGEST)];
if (value_bitsize (toval))
@@ -3392,7 +3392,7 @@ get_baseclass_offset (struct type *vt, struct type *cls,
@@ -3354,7 +3354,7 @@ get_baseclass_offset (struct type *vt, struct type *cls,
the form "DOMAIN::NAME". */
static struct value *
@ -3198,7 +3179,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
struct type *curtype, const char *name,
struct type *intype,
int want_address,
@@ -3426,7 +3426,7 @@ value_struct_elt_for_reference (struct type *domain, int offset,
@@ -3388,7 +3388,7 @@ value_struct_elt_for_reference (struct type *domain, int offset,
if (want_address)
return value_from_longest
(lookup_memberptr_type (TYPE_FIELD_TYPE (t, i), domain),
@ -3207,7 +3188,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
else if (noside != EVAL_NORMAL)
return allocate_value (TYPE_FIELD_TYPE (t, i));
else
@@ -3617,7 +3617,7 @@ value_struct_elt_for_reference (struct type *domain, int offset,
@@ -3579,7 +3579,7 @@ value_struct_elt_for_reference (struct type *domain, int offset,
for (i = TYPE_N_BASECLASSES (t) - 1; i >= 0; i--)
{
struct value *v;
@ -3216,7 +3197,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
if (BASETYPE_VIA_VIRTUAL (t, i))
base_offset = 0;
@@ -3766,7 +3766,7 @@ value_rtti_indirect_type (struct value *v, int *full,
@@ -3728,7 +3728,7 @@ value_rtti_indirect_type (struct value *v, int *full,
struct value *
value_full_object (struct value *argp,
struct type *rtype,

View File

@ -62,7 +62,7 @@ Content-Disposition: attachment; filename=bitpos-ensure-size_t.patch
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
--- a/gdb/alpha-tdep.c
+++ b/gdb/alpha-tdep.c
@@ -413,6 +413,13 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -414,6 +414,13 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
accumulate_size = 0;
else
accumulate_size -= sizeof(arg_reg_buffer);
@ -132,7 +132,7 @@ diff --git a/gdb/utils.c b/gdb/utils.c
diff --git a/gdb/valops.c b/gdb/valops.c
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -2080,6 +2080,7 @@ search_struct_method (const char *name, struct value **arg1p,
@@ -2075,6 +2075,7 @@ search_struct_method (const char *name, struct value **arg1p,
{
CORE_ADDR address;
@ -160,7 +160,7 @@ diff --git a/gdb/value.c b/gdb/value.c
if (!val->contents)
{
check_type_length_before_alloc (val->enclosing_type);
@@ -2875,6 +2878,7 @@ set_value_enclosing_type (struct value *val, struct type *new_encl_type)
@@ -2874,6 +2877,7 @@ set_value_enclosing_type (struct value *val, struct type *new_encl_type)
if (TYPE_LENGTH (new_encl_type) > TYPE_LENGTH (value_enclosing_type (val)))
{
check_type_length_before_alloc (new_encl_type);
@ -171,7 +171,7 @@ diff --git a/gdb/value.c b/gdb/value.c
diff --git a/gdb/vax-tdep.c b/gdb/vax-tdep.c
--- a/gdb/vax-tdep.c
+++ b/gdb/vax-tdep.c
@@ -218,6 +218,7 @@ vax_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -219,6 +219,7 @@ vax_return_value (struct gdbarch *gdbarch, struct value *function,
ULONGEST addr;
regcache_raw_read_unsigned (regcache, VAX_R0_REGNUM, &addr);

View File

@ -363,7 +363,7 @@ diff --git a/gdb/procfs.c b/gdb/procfs.c
{
struct {
procfs_ctl_t cmd;
@@ -3232,7 +3232,7 @@ procfs_target::pid_to_exec_file (int pid)
@@ -3233,7 +3233,7 @@ procfs_target::pid_to_exec_file (int pid)
/* Insert a watchpoint. */
static int
@ -384,7 +384,7 @@ diff --git a/gdb/remote.c b/gdb/remote.c
int can_use_hw_breakpoint (enum bptype, int, int) override;
@@ -10374,7 +10374,7 @@ remote_target::insert_watchpoint (CORE_ADDR addr, int len,
@@ -10344,7 +10344,7 @@ remote_target::insert_watchpoint (CORE_ADDR addr, int len,
p = strchr (rs->buf, '\0');
addr = remote_address_masked (addr);
p += hexnumstr (p, (ULONGEST) addr);
@ -393,7 +393,7 @@ diff --git a/gdb/remote.c b/gdb/remote.c
putpkt (rs->buf);
getpkt (&rs->buf, &rs->buf_size, 0);
@@ -10394,7 +10394,7 @@ remote_target::insert_watchpoint (CORE_ADDR addr, int len,
@@ -10364,7 +10364,7 @@ remote_target::insert_watchpoint (CORE_ADDR addr, int len,
bool
remote_target::watchpoint_addr_within_range (CORE_ADDR addr,
@ -402,7 +402,7 @@ diff --git a/gdb/remote.c b/gdb/remote.c
{
CORE_ADDR diff = remote_address_masked (addr - start);
@@ -10423,7 +10423,7 @@ remote_target::remove_watchpoint (CORE_ADDR addr, int len,
@@ -10393,7 +10393,7 @@ remote_target::remove_watchpoint (CORE_ADDR addr, int len,
p = strchr (rs->buf, '\0');
addr = remote_address_masked (addr);
p += hexnumstr (p, (ULONGEST) addr);
@ -428,7 +428,7 @@ diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -37,9 +37,9 @@ struct dummy_target : public target_ops
bool stopped_by_watchpoint () override;
int have_steppable_watchpoint () override;
bool have_steppable_watchpoint () override;
bool stopped_data_address (CORE_ADDR *arg0) override;
- bool watchpoint_addr_within_range (CORE_ADDR arg0, CORE_ADDR arg1, int arg2) override;
+ bool watchpoint_addr_within_range (CORE_ADDR arg0, CORE_ADDR arg1, LONGEST arg2) override;
@ -440,7 +440,7 @@ diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
bool supports_terminal_ours () override;
@@ -204,9 +204,9 @@ struct debug_target : public target_ops
bool stopped_by_watchpoint () override;
int have_steppable_watchpoint () override;
bool have_steppable_watchpoint () override;
bool stopped_data_address (CORE_ADDR *arg0) override;
- bool watchpoint_addr_within_range (CORE_ADDR arg0, CORE_ADDR arg1, int arg2) override;
+ bool watchpoint_addr_within_range (CORE_ADDR arg0, CORE_ADDR arg1, LONGEST arg2) override;
@ -526,7 +526,7 @@ diff --git a/gdb/target.c b/gdb/target.c
static int default_region_ok_for_hw_watchpoint (struct target_ops *,
CORE_ADDR, LONGEST);
@@ -3198,7 +3198,7 @@ default_region_ok_for_hw_watchpoint (struct target_ops *self,
@@ -3196,7 +3196,7 @@ default_region_ok_for_hw_watchpoint (struct target_ops *self,
static int
default_watchpoint_addr_within_range (struct target_ops *target,
CORE_ADDR addr,

View File

@ -147,12 +147,12 @@ Content-Disposition: attachment; filename=bitpos-tdep.patch
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
--- a/gdb/alpha-tdep.c
+++ b/gdb/alpha-tdep.c
@@ -299,17 +299,17 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -300,17 +300,17 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
{
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int i;
- int accumulate_size = struct_return ? 8 : 0;
+ ssize_t accumulate_size = struct_return ? 8 : 0;
- int accumulate_size = (return_method == return_method_struct) ? 8 : 0;
+ ssize_t accumulate_size = (return_method == return_method_struct) ? 8 : 0;
struct alpha_arg
{
const gdb_byte *contents;
@ -169,7 +169,7 @@ diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
CORE_ADDR func_addr = find_function_addr (function, NULL);
/* The ABI places the address of the called function in T12. */
@@ -429,8 +429,8 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -430,8 +430,8 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (i = nargs; m_arg--, --i >= 0;)
{
const gdb_byte *contents = m_arg->contents;
@ -180,7 +180,7 @@ diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
/* Copy the bytes destined for registers into arg_reg_buffer. */
if (offset < sizeof(arg_reg_buffer))
@@ -442,7 +442,7 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -443,7 +443,7 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
}
else
{
@ -192,7 +192,7 @@ diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
--- a/gdb/amd64-tdep.c
+++ b/gdb/amd64-tdep.c
@@ -883,8 +883,8 @@ amd64_push_arguments (struct regcache *regcache, int nargs,
@@ -883,8 +883,8 @@ amd64_push_arguments (struct regcache *regcache, int nargs, struct value **args,
};
struct value **stack_args = XALLOCAVEC (struct value *, nargs);
int num_stack_args = 0;
@ -203,7 +203,7 @@ diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
int integer_reg = 0;
int sse_reg = 0;
int i;
@@ -896,7 +896,7 @@ amd64_push_arguments (struct regcache *regcache, int nargs,
@@ -896,7 +896,7 @@ if (return_method == return_method_struct)
for (i = 0; i < nargs; i++)
{
struct type *type = value_type (args[i]);
@ -212,7 +212,7 @@ diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
enum amd64_reg_class theclass[2];
int needed_integer_regs = 0;
int needed_sse_regs = 0;
@@ -960,7 +960,7 @@ amd64_push_arguments (struct regcache *regcache, int nargs,
@@ -960,7 +960,7 @@ if (return_method == return_method_struct)
gdb_assert (regnum != -1);
memset (buf, 0, sizeof buf);
@ -297,7 +297,7 @@ diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
if (c <= 0 || c > 4)
return 0;
*base_type = b;
@@ -3730,7 +3732,7 @@ arm_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -3731,7 +3733,7 @@ arm_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (argnum = 0; argnum < nargs; argnum++)
{
@ -325,7 +325,7 @@ diff --git a/gdb/avr-tdep.c b/gdb/avr-tdep.c
{
struct stack_item *si;
si = XNEW (struct stack_item);
@@ -1286,12 +1286,12 @@ avr_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -1287,12 +1287,12 @@ avr_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (i = 0; i < nargs; i++)
{
@ -381,7 +381,7 @@ diff --git a/gdb/cris-tdep.c b/gdb/cris-tdep.c
{
struct stack_item *si = XNEW (struct stack_item);
si->data = (gdb_byte *) xmalloc (len);
@@ -833,13 +833,13 @@ cris_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -832,13 +832,13 @@ cris_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (argnum = 0; argnum < nargs; argnum++)
{
@ -402,8 +402,8 @@ diff --git a/gdb/cris-tdep.c b/gdb/cris-tdep.c
diff --git a/gdb/h8300-tdep.c b/gdb/h8300-tdep.c
--- a/gdb/h8300-tdep.c
+++ b/gdb/h8300-tdep.c
@@ -637,7 +637,7 @@ h8300_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int struct_return, CORE_ADDR struct_addr)
@@ -638,7 +638,7 @@ h8300_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
CORE_ADDR struct_addr)
{
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
- int stack_alloc = 0, stack_offset = 0;
@ -411,7 +411,7 @@ diff --git a/gdb/h8300-tdep.c b/gdb/h8300-tdep.c
int wordsize = BINWORD (gdbarch);
int reg = E_ARG0_REGNUM;
int argument;
@@ -663,11 +663,11 @@ h8300_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -664,11 +664,11 @@ h8300_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (argument = 0; argument < nargs; argument++)
{
struct type *type = value_type (args[argument]);
@ -425,7 +425,7 @@ diff --git a/gdb/h8300-tdep.c b/gdb/h8300-tdep.c
/* Use std::vector here to get zero initialization. */
std::vector<gdb_byte> padded (padded_len);
@@ -696,7 +696,7 @@ h8300_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -697,7 +697,7 @@ h8300_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
/* Heavens to Betsy --- it's really going in registers!
Note that on the h8/300s, there are gaps between the
registers in the register file. */
@ -437,7 +437,7 @@ diff --git a/gdb/h8300-tdep.c b/gdb/h8300-tdep.c
diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c
--- a/gdb/hppa-tdep.c
+++ b/gdb/hppa-tdep.c
@@ -984,7 +984,7 @@ hppa64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -986,7 +986,7 @@ hppa64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
{
struct value *arg = args[i];
struct type *type = value_type (arg);
@ -446,7 +446,7 @@ diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c
const bfd_byte *valbuf;
bfd_byte fptrbuf[8];
int regnum;
@@ -1177,7 +1177,7 @@ hppa64_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -1179,7 +1179,7 @@ hppa64_return_value (struct gdbarch *gdbarch, struct value *function,
struct type *type, struct regcache *regcache,
gdb_byte *readbuf, const gdb_byte *writebuf)
{
@ -458,7 +458,7 @@ diff --git a/gdb/hppa-tdep.c b/gdb/hppa-tdep.c
diff --git a/gdb/i386-darwin-tdep.c b/gdb/i386-darwin-tdep.c
--- a/gdb/i386-darwin-tdep.c
+++ b/gdb/i386-darwin-tdep.c
@@ -166,7 +166,7 @@ i386_darwin_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -167,7 +167,7 @@ i386_darwin_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (write_pass = 0; write_pass < 2; write_pass++)
{
@ -466,11 +466,11 @@ diff --git a/gdb/i386-darwin-tdep.c b/gdb/i386-darwin-tdep.c
+ LONGEST args_space = 0;
int num_m128 = 0;
if (struct_return)
if (return_method == return_method_struct)
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -2678,7 +2678,7 @@ i386_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -2679,7 +2679,7 @@ i386_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
gdb_byte buf[4];
int i;
int write_pass;
@ -479,16 +479,16 @@ diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
/* BND registers can be in arbitrary values at the moment of the
inferior call. This can cause boundary violations that are not
@@ -2693,7 +2693,7 @@ i386_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -2694,7 +2694,7 @@ i386_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (write_pass = 0; write_pass < 2; write_pass++)
{
- int args_space_used = 0;
+ LONGEST args_space_used = 0;
if (struct_return)
if (return_method == return_method_struct)
{
@@ -2710,7 +2710,7 @@ i386_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -2711,7 +2711,7 @@ i386_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (i = 0; i < nargs; i++)
{
@ -497,7 +497,7 @@ diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
if (write_pass)
{
@@ -2917,7 +2917,7 @@ i386_reg_struct_return_p (struct gdbarch *gdbarch, struct type *type)
@@ -2918,7 +2918,7 @@ i386_reg_struct_return_p (struct gdbarch *gdbarch, struct type *type)
{
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
enum type_code code = TYPE_CODE (type);
@ -506,7 +506,7 @@ diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
gdb_assert (code == TYPE_CODE_STRUCT
|| code == TYPE_CODE_UNION
@@ -3703,7 +3703,7 @@ static int
@@ -3704,7 +3704,7 @@ static int
i386_convert_register_p (struct gdbarch *gdbarch,
int regnum, struct type *type)
{
@ -515,7 +515,7 @@ diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
/* Values may be spread across multiple registers. Most debugging
formats aren't expressive enough to specify the locations, so
@@ -3736,7 +3736,7 @@ i386_register_to_value (struct frame_info *frame, int regnum,
@@ -3737,7 +3737,7 @@ i386_register_to_value (struct frame_info *frame, int regnum,
int *optimizedp, int *unavailablep)
{
struct gdbarch *gdbarch = get_frame_arch (frame);
@ -524,7 +524,7 @@ diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
if (i386_fp_regnum_p (gdbarch, regnum))
return i387_register_to_value (frame, regnum, type, to,
@@ -3772,7 +3772,7 @@ static void
@@ -3773,7 +3773,7 @@ static void
i386_value_to_register (struct frame_info *frame, int regnum,
struct type *type, const gdb_byte *from)
{
@ -536,7 +536,7 @@ diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
diff --git a/gdb/iq2000-tdep.c b/gdb/iq2000-tdep.c
--- a/gdb/iq2000-tdep.c
+++ b/gdb/iq2000-tdep.c
@@ -651,8 +651,9 @@ iq2000_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -652,8 +652,9 @@ iq2000_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
const bfd_byte *val;
bfd_byte buf[4];
struct type *type;
@ -551,7 +551,7 @@ diff --git a/gdb/iq2000-tdep.c b/gdb/iq2000-tdep.c
diff --git a/gdb/m32r-tdep.c b/gdb/m32r-tdep.c
--- a/gdb/m32r-tdep.c
+++ b/gdb/m32r-tdep.c
@@ -671,7 +671,7 @@ m32r_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -672,7 +672,7 @@ m32r_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
CORE_ADDR regval;
gdb_byte *val;
gdb_byte valbuf[M32R_ARG_REGISTER_SIZE];
@ -572,7 +572,7 @@ diff --git a/gdb/m68k-tdep.c b/gdb/m68k-tdep.c
gdb_assert (code == TYPE_CODE_STRUCT || code == TYPE_CODE_UNION
|| code == TYPE_CODE_COMPLEX);
@@ -504,9 +504,9 @@ m68k_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -505,9 +505,9 @@ m68k_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (i = nargs - 1; i >= 0; i--)
{
struct type *value_type = value_enclosing_type (args[i]);
@ -620,7 +620,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
if (mips_debug && out != NULL)
{
int i;
@@ -4562,13 +4562,13 @@ mips_eabi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -4563,13 +4563,13 @@ mips_eabi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
gdb_byte ref_valbuf[MAX_MIPS_ABI_REGSIZE];
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
@ -637,7 +637,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
/* The EABI passes structures that do not fit in a register by
reference. */
@@ -4838,7 +4838,7 @@ mips_eabi_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -4839,7 +4839,7 @@ mips_eabi_return_value (struct gdbarch *gdbarch, struct value *function,
static int
mips_n32n64_fp_arg_chunk_p (struct gdbarch *gdbarch, struct type *arg_type,
@ -646,7 +646,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
{
int i;
@@ -4853,7 +4853,7 @@ mips_n32n64_fp_arg_chunk_p (struct gdbarch *gdbarch, struct type *arg_type,
@@ -4854,7 +4854,7 @@ mips_n32n64_fp_arg_chunk_p (struct gdbarch *gdbarch, struct type *arg_type,
for (i = 0; i < TYPE_NFIELDS (arg_type); i++)
{
@ -655,7 +655,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
struct type *field_type;
/* We're only looking at normal fields. */
@@ -4895,7 +4895,8 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -4897,7 +4897,8 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int argreg;
int float_argreg;
int argnum;
@ -665,7 +665,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
int stack_offset = 0;
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
@@ -4924,9 +4925,9 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -4926,9 +4927,9 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
if (mips_debug)
fprintf_unfiltered (gdb_stdlog,
@ -677,7 +677,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
/* Initialize the integer and float register pointers. */
argreg = MIPS_A0_REGNUM;
@@ -5247,11 +5248,11 @@ mips_n32n64_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -5249,11 +5250,11 @@ mips_n32n64_return_value (struct gdbarch *gdbarch, struct value *function,
: MIPS_V0_REGNUM);
field < TYPE_NFIELDS (type); field++, regnum += 2)
{
@ -693,7 +693,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
if (TYPE_LENGTH (TYPE_FIELD_TYPE (type, field)) == 16)
{
/* A 16-byte long double field goes in two consecutive
@@ -5293,8 +5294,8 @@ mips_n32n64_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -5295,8 +5296,8 @@ mips_n32n64_return_value (struct gdbarch *gdbarch, struct value *function,
if (offset + xfer > TYPE_LENGTH (type))
xfer = TYPE_LENGTH (type) - offset;
if (mips_debug)
@ -704,7 +704,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
mips_xfer_register (gdbarch, regcache,
gdbarch_num_regs (gdbarch) + regnum,
xfer, BFD_ENDIAN_UNKNOWN, readbuf, writebuf,
@@ -5352,7 +5353,8 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5355,7 +5356,8 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int argreg;
int float_argreg;
int argnum;
@ -714,7 +714,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
int stack_offset = 0;
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
@@ -5389,9 +5391,9 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5392,9 +5394,9 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
if (mips_debug)
fprintf_unfiltered (gdb_stdlog,
@ -726,7 +726,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
/* Initialize the integer and float register pointers. */
argreg = MIPS_A0_REGNUM;
@@ -5417,13 +5419,13 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5420,13 +5422,13 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
const gdb_byte *val;
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
@ -743,7 +743,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
val = value_contents (arg);
@@ -5877,8 +5879,8 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5880,8 +5882,8 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int argreg;
int float_argreg;
int argnum;
@ -754,7 +754,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
@@ -5911,9 +5913,9 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5914,9 +5916,9 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
if (mips_debug)
fprintf_unfiltered (gdb_stdlog,
@ -766,7 +766,7 @@ diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
/* Initialize the integer and float register pointers. */
argreg = MIPS_A0_REGNUM;
@@ -5939,13 +5941,13 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5942,13 +5944,13 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
const gdb_byte *val;
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
@ -798,7 +798,7 @@ diff --git a/gdb/mn10300-tdep.c b/gdb/mn10300-tdep.c
diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
--- a/gdb/ppc-sysv-tdep.c
+++ b/gdb/ppc-sysv-tdep.c
@@ -68,7 +68,7 @@ ppc_sysv_abi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -69,7 +69,7 @@ ppc_sysv_abi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int opencl_abi = ppc_sysv_use_opencl_abi (value_type (function));
ULONGEST saved_sp;
@ -807,7 +807,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
int write_pass;
gdb_assert (tdep->wordsize == 4);
@@ -99,9 +99,9 @@ ppc_sysv_abi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -100,9 +100,9 @@ ppc_sysv_abi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
/* Next available vector register for vector arguments. */
int vreg = 2;
/* Arguments start above the "LR save word" and "Back chain". */
@ -819,7 +819,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
/* If the function is returning a `struct', then the first word
(which will be passed in r3) is used for struct return
@@ -120,7 +120,7 @@ ppc_sysv_abi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -121,7 +121,7 @@ ppc_sysv_abi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
{
struct value *arg = args[argno];
struct type *type = check_typedef (value_type (arg));
@ -828,7 +828,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
const bfd_byte *val = value_contents (arg);
if (TYPE_CODE (type) == TYPE_CODE_FLT && len <= 8
@@ -1246,11 +1246,11 @@ struct ppc64_sysv_argpos
@@ -1247,11 +1247,11 @@ struct ppc64_sysv_argpos
static void
ppc64_sysv_abi_push_val (struct gdbarch *gdbarch,
@ -842,7 +842,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
/* Enforce alignment of stack location, if requested. */
if (align > tdep->wordsize)
@@ -1287,7 +1287,7 @@ ppc64_sysv_abi_push_val (struct gdbarch *gdbarch,
@@ -1288,7 +1288,7 @@ ppc64_sysv_abi_push_val (struct gdbarch *gdbarch,
{
if (argpos->regcache && argpos->greg <= 10)
argpos->regcache->cooked_write_part
@ -851,7 +851,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
argpos->greg++;
}
}
@@ -1346,7 +1346,7 @@ ppc64_sysv_abi_push_freg (struct gdbarch *gdbarch,
@@ -1347,7 +1347,7 @@ ppc64_sysv_abi_push_freg (struct gdbarch *gdbarch,
if (argpos->regcache && argpos->freg <= 13)
{
int regnum = tdep->ppc_fp0_regnum + argpos->freg;
@ -860,7 +860,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG)
offset = 8 - TYPE_LENGTH (type);
@@ -1795,7 +1795,7 @@ ppc64_sysv_abi_return_value_base (struct gdbarch *gdbarch, struct type *valtype,
@@ -1797,7 +1797,7 @@ ppc64_sysv_abi_return_value_base (struct gdbarch *gdbarch, struct type *valtype,
&& TYPE_CODE (valtype) == TYPE_CODE_DECFLOAT)
{
int regnum = tdep->ppc_fp0_regnum + 1 + index;
@ -869,7 +869,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG)
offset = 8 - TYPE_LENGTH (valtype);
@@ -1871,7 +1871,7 @@ ppc64_sysv_abi_return_value_base (struct gdbarch *gdbarch, struct type *valtype,
@@ -1873,7 +1873,7 @@ ppc64_sysv_abi_return_value_base (struct gdbarch *gdbarch, struct type *valtype,
&& TYPE_CODE (valtype) == TYPE_CODE_ARRAY && TYPE_VECTOR (valtype))
{
int regnum = tdep->ppc_gp0_regnum + 3 + index;
@ -878,7 +878,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
if (gdbarch_byte_order (gdbarch) == BFD_ENDIAN_BIG)
offset = 8 - TYPE_LENGTH (valtype);
@@ -1979,7 +1979,8 @@ ppc64_sysv_abi_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -1981,7 +1981,8 @@ ppc64_sysv_abi_return_value (struct gdbarch *gdbarch, struct value *function,
&& TYPE_LENGTH (TYPE_TARGET_TYPE (valtype)) == 1)
{
int regnum = tdep->ppc_gp0_regnum + 3;
@ -891,7 +891,7 @@ diff --git a/gdb/ppc-sysv-tdep.c b/gdb/ppc-sysv-tdep.c
diff --git a/gdb/rl78-tdep.c b/gdb/rl78-tdep.c
--- a/gdb/rl78-tdep.c
+++ b/gdb/rl78-tdep.c
@@ -1346,8 +1346,8 @@ rl78_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -1347,8 +1347,8 @@ rl78_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
for (i = nargs - 1; i >= 0; i--)
{
struct type *value_type = value_enclosing_type (args[i]);
@ -905,7 +905,7 @@ diff --git a/gdb/rl78-tdep.c b/gdb/rl78-tdep.c
diff --git a/gdb/rs6000-aix-tdep.c b/gdb/rs6000-aix-tdep.c
--- a/gdb/rs6000-aix-tdep.c
+++ b/gdb/rs6000-aix-tdep.c
@@ -290,9 +290,9 @@ rs6000_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -291,9 +291,9 @@ rs6000_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
struct gdbarch_tdep *tdep = gdbarch_tdep (gdbarch);
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int ii;
@ -917,7 +917,7 @@ diff --git a/gdb/rs6000-aix-tdep.c b/gdb/rs6000-aix-tdep.c
gdb_byte tmp_buffer[50];
int f_argno = 0; /* current floating point argno */
int wordsize = gdbarch_tdep (gdbarch)->wordsize;
@@ -420,7 +420,7 @@ ran_out_of_registers_for_arguments:
@@ -421,7 +421,7 @@ ran_out_of_registers_for_arguments:
if ((argno < nargs) || argbytes)
{
@ -929,7 +929,7 @@ diff --git a/gdb/rs6000-aix-tdep.c b/gdb/rs6000-aix-tdep.c
diff --git a/gdb/score-tdep.c b/gdb/score-tdep.c
--- a/gdb/score-tdep.c
+++ b/gdb/score-tdep.c
@@ -516,7 +516,7 @@ score_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -517,7 +517,7 @@ score_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int argnum;
int argreg;
@ -969,7 +969,7 @@ diff --git a/gdb/sh-tdep.c b/gdb/sh-tdep.c
int pass_on_stack = 0;
int treat_as_flt;
int last_reg_arg = INT_MAX;
@@ -1215,7 +1216,8 @@ sh_push_dummy_call_nofpu (struct gdbarch *gdbarch,
@@ -1216,7 +1217,8 @@ sh_push_dummy_call_nofpu (struct gdbarch *gdbarch,
struct type *type;
CORE_ADDR regval;
const gdb_byte *val;
@ -1018,7 +1018,7 @@ diff --git a/gdb/sparc64-tdep.c b/gdb/sparc64-tdep.c
sparc64_extract_floating_fields (regcache, subtype, valbuf, subpos);
}
@@ -1387,7 +1387,7 @@ sparc64_store_arguments (struct regcache *regcache, int nargs,
@@ -1388,7 +1388,7 @@ sparc64_store_arguments (struct regcache *regcache, int nargs,
for (i = 0; i < nargs; i++)
{
struct type *type = value_type (args[i]);
@ -1027,7 +1027,7 @@ diff --git a/gdb/sparc64-tdep.c b/gdb/sparc64-tdep.c
if (sparc64_structure_or_union_p (type)
|| (sparc64_complex_floating_p (type) && len == 32))
@@ -1487,7 +1487,7 @@ sparc64_store_arguments (struct regcache *regcache, int nargs,
@@ -1488,7 +1488,7 @@ sparc64_store_arguments (struct regcache *regcache, int nargs,
{
const gdb_byte *valbuf = value_contents (args[i]);
struct type *type = value_type (args[i]);
@ -1039,7 +1039,7 @@ diff --git a/gdb/sparc64-tdep.c b/gdb/sparc64-tdep.c
diff --git a/gdb/spu-tdep.c b/gdb/spu-tdep.c
--- a/gdb/spu-tdep.c
+++ b/gdb/spu-tdep.c
@@ -1431,7 +1431,7 @@ spu_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -1432,7 +1432,7 @@ spu_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
struct value *arg = args[i];
struct type *type = check_typedef (value_type (arg));
const gdb_byte *contents = value_contents (arg);
@ -1048,7 +1048,7 @@ diff --git a/gdb/spu-tdep.c b/gdb/spu-tdep.c
/* If the argument doesn't wholly fit into registers, it and
all subsequent arguments go to the stack. */
@@ -1463,7 +1463,7 @@ spu_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -1464,7 +1464,7 @@ spu_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
{
struct value *arg = args[i];
struct type *type = check_typedef (value_type (arg));
@ -1060,7 +1060,7 @@ diff --git a/gdb/spu-tdep.c b/gdb/spu-tdep.c
diff --git a/gdb/tic6x-tdep.c b/gdb/tic6x-tdep.c
--- a/gdb/tic6x-tdep.c
+++ b/gdb/tic6x-tdep.c
@@ -880,7 +880,7 @@ tic6x_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -881,7 +881,7 @@ tic6x_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int argreg = 0;
int argnum;
int stack_offset = 4;
@ -1069,7 +1069,7 @@ diff --git a/gdb/tic6x-tdep.c b/gdb/tic6x-tdep.c
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
struct type *func_type = value_type (function);
/* The first arg passed on stack. Mostly the first 10 args are passed by
@@ -913,7 +913,7 @@ tic6x_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -914,7 +914,7 @@ tic6x_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
/* Now make space on the stack for the args. */
for (argnum = 0; argnum < nargs; argnum++)
{
@ -1078,7 +1078,7 @@ diff --git a/gdb/tic6x-tdep.c b/gdb/tic6x-tdep.c
if (argnum >= 10 - argreg)
references_offset += len;
stack_offset += len;
@@ -932,7 +932,7 @@ tic6x_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -933,7 +933,7 @@ tic6x_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
const gdb_byte *val;
struct value *arg = args[argnum];
struct type *arg_type = check_typedef (value_type (arg));
@ -1087,7 +1087,7 @@ diff --git a/gdb/tic6x-tdep.c b/gdb/tic6x-tdep.c
enum type_code typecode = TYPE_CODE (arg_type);
val = value_contents (arg);
@@ -1087,7 +1087,8 @@ tic6x_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -1088,7 +1088,8 @@ tic6x_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
}
else
internal_error (__FILE__, __LINE__,
@ -1155,7 +1155,7 @@ diff --git a/gdb/vax-tdep.c b/gdb/vax-tdep.c
diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c
--- a/gdb/xstormy16-tdep.c
+++ b/gdb/xstormy16-tdep.c
@@ -232,8 +232,10 @@ xstormy16_push_dummy_call (struct gdbarch *gdbarch,
@@ -233,8 +233,10 @@ xstormy16_push_dummy_call (struct gdbarch *gdbarch,
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR stack_dest = sp;
int argreg = E_1ST_ARG_REGNUM;
@ -1167,7 +1167,7 @@ diff --git a/gdb/xstormy16-tdep.c b/gdb/xstormy16-tdep.c
+ const gdb_byte *val;
gdb_byte buf[xstormy16_pc_size];
/* If struct_return is true, then the struct return address will
/* If returning a struct using target ABI method, then the struct return
diff --git a/gdb/xtensa-tdep.c b/gdb/xtensa-tdep.c
--- a/gdb/xtensa-tdep.c
+++ b/gdb/xtensa-tdep.c

View File

@ -49,7 +49,7 @@ diff --git a/gdb/common/array-view.h b/gdb/common/array-view.h
{ return m_array[index]; }
constexpr size_type size () const noexcept { return m_size; }
@@ -185,7 +185,7 @@ operator== (const gdb::array_view<T> &lhs, const gdb::array_view<T> &rhs)
@@ -196,7 +196,7 @@ operator== (const gdb::array_view<T> &lhs, const gdb::array_view<T> &rhs)
if (lhs.size () != rhs.size ())
return false;

View File

@ -37,7 +37,7 @@ dbfd7140bf4c0500d1f5d192be781f83f78f7922
diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -2659,11 +2659,14 @@ dwarf2_locexpr_baton_eval (const struct dwarf2_locexpr_baton *dlbaton,
@@ -2429,11 +2429,14 @@ dwarf2_locexpr_baton_eval (const struct dwarf2_locexpr_baton *dlbaton,
/* See dwarf2loc.h. */
int
@ -54,7 +54,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
if (prop == NULL)
return 0;
@@ -2687,7 +2690,7 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
@@ -2457,7 +2460,7 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
*value = value_as_address (val);
}
@ -63,7 +63,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
}
}
break;
@@ -2709,7 +2712,7 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
@@ -2479,7 +2482,7 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
if (!value_optimized_out (val))
{
*value = value_as_address (val);
@ -72,7 +72,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
}
}
}
@@ -2717,8 +2720,8 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
@@ -2487,8 +2490,8 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
case PROP_CONST:
*value = prop->data.const_val;
@ -83,7 +83,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
case PROP_ADDR_OFFSET:
{
struct dwarf2_property_baton *baton
@@ -2739,11 +2742,38 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
@@ -2509,11 +2512,38 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
val = value_at (baton->offset_info.type,
pinfo->addr + baton->offset_info.offset);
*value = value_as_address (val);
@ -533,7 +533,7 @@ diff --git a/gdb/eval.c b/gdb/eval.c
}
@@ -1238,19 +1533,6 @@ evaluate_funcall (type *expect_type, expression *exp, int *pos,
@@ -1242,19 +1537,6 @@ evaluate_funcall (type *expect_type, expression *exp, int *pos,
return eval_call (exp, noside, nargs, argvec, var_func_name, expect_type);
}
@ -553,7 +553,7 @@ diff --git a/gdb/eval.c b/gdb/eval.c
struct value *
evaluate_subexp_standard (struct type *expect_type,
struct expression *exp, int *pos,
@@ -1945,33 +2227,8 @@ evaluate_subexp_standard (struct type *expect_type,
@@ -1949,33 +2231,8 @@ evaluate_subexp_standard (struct type *expect_type,
switch (code)
{
case TYPE_CODE_ARRAY:
@ -588,7 +588,7 @@ diff --git a/gdb/eval.c b/gdb/eval.c
case TYPE_CODE_PTR:
case TYPE_CODE_FUNC:
@@ -2368,49 +2625,6 @@ evaluate_subexp_standard (struct type *expect_type,
@@ -2372,49 +2629,6 @@ evaluate_subexp_standard (struct type *expect_type,
}
return (arg1);
@ -638,7 +638,7 @@ diff --git a/gdb/eval.c b/gdb/eval.c
case BINOP_LOGICAL_AND:
arg1 = evaluate_subexp (NULL_TYPE, exp, pos, noside);
if (noside == EVAL_SKIP)
@@ -3330,6 +3544,9 @@ calc_f77_array_dims (struct type *array_type)
@@ -3334,6 +3548,9 @@ calc_f77_array_dims (struct type *array_type)
int ndimen = 1;
struct type *tmp_type;
@ -977,7 +977,7 @@ diff --git a/gdb/gdbtypes.c b/gdb/gdbtypes.c
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
--- a/gdb/gdbtypes.h
+++ b/gdb/gdbtypes.h
@@ -613,6 +613,10 @@ struct range_bounds
@@ -614,6 +614,10 @@ struct range_bounds
struct dynamic_prop high;
@ -988,7 +988,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
/* True if HIGH range bound contains the number of elements in the
subrange. This affects how the final hight bound is computed. */
@@ -777,7 +781,6 @@ struct main_type
@@ -778,7 +782,6 @@ struct main_type
/* * Union member used for range types. */
struct range_bounds *bounds;
@ -996,7 +996,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
} flds_bnds;
/* * Slot to point to additional language-specific fields of this
@@ -1330,6 +1333,15 @@ extern bool set_type_align (struct type *, ULONGEST);
@@ -1327,6 +1330,15 @@ extern bool set_type_align (struct type *, ULONGEST);
TYPE_RANGE_DATA(range_type)->high.kind
#define TYPE_LOW_BOUND_KIND(range_type) \
TYPE_RANGE_DATA(range_type)->low.kind
@ -1012,7 +1012,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
/* Property accessors for the type data location. */
#define TYPE_DATA_LOCATION(thistype) \
@@ -1364,6 +1376,9 @@ extern bool set_type_align (struct type *, ULONGEST);
@@ -1361,6 +1373,9 @@ extern bool set_type_align (struct type *, ULONGEST);
TYPE_HIGH_BOUND_UNDEFINED(TYPE_INDEX_TYPE(arraytype))
#define TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED(arraytype) \
TYPE_LOW_BOUND_UNDEFINED(TYPE_INDEX_TYPE(arraytype))
@ -1022,7 +1022,7 @@ diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
#define TYPE_ARRAY_UPPER_BOUND_VALUE(arraytype) \
(TYPE_HIGH_BOUND(TYPE_INDEX_TYPE((arraytype))))
@@ -1899,6 +1914,7 @@ extern struct type *create_array_type_with_stride
@@ -1896,6 +1911,7 @@ extern struct type *create_array_type_with_stride
struct dynamic_prop *, unsigned int);
extern struct type *create_range_type (struct type *, struct type *,
@ -1112,7 +1112,7 @@ diff --git a/gdb/rust-exp.y b/gdb/rust-exp.y
diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
--- a/gdb/rust-lang.c
+++ b/gdb/rust-lang.c
@@ -1179,13 +1179,11 @@ rust_range (struct expression *exp, int *pos, enum noside noside)
@@ -1193,13 +1193,11 @@ rust_range (struct expression *exp, int *pos, enum noside noside)
kind = (enum range_type) longest_to_int (exp->elts[*pos + 1].longconst);
*pos += 3;
@ -1129,7 +1129,7 @@ diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
if (noside == EVAL_SKIP)
return value_from_longest (builtin_type (exp->gdbarch)->builtin_int, 1);
@@ -1274,7 +1272,7 @@ rust_compute_range (struct type *type, struct value *range,
@@ -1288,7 +1286,7 @@ rust_compute_range (struct type *type, struct value *range,
*low = 0;
*high = 0;
@ -1138,7 +1138,7 @@ diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
if (TYPE_NFIELDS (type) == 0)
return;
@@ -1282,15 +1280,14 @@ rust_compute_range (struct type *type, struct value *range,
@@ -1296,15 +1294,14 @@ rust_compute_range (struct type *type, struct value *range,
i = 0;
if (strcmp (TYPE_FIELD_NAME (type, 0), "start") == 0)
{
@ -1156,7 +1156,7 @@ diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
*high = value_as_long (value_field (range, i));
if (rust_inclusive_range_type_p (type))
@@ -1308,7 +1305,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
@@ -1322,7 +1319,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
struct type *rhstype;
LONGEST low, high_bound;
/* Initialized to appease the compiler. */
@ -1165,7 +1165,7 @@ diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
LONGEST high = 0;
int want_slice = 0;
@@ -1406,7 +1403,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
@@ -1420,7 +1417,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
error (_("Cannot subscript non-array type"));
if (want_slice
@ -1174,7 +1174,7 @@ diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
low = low_bound;
if (low < 0)
error (_("Index less than zero"));
@@ -1424,7 +1421,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
@@ -1438,7 +1435,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
CORE_ADDR addr;
struct value *addrval, *tem;
@ -1818,7 +1818,7 @@ diff --git a/gdb/valarith.c b/gdb/valarith.c
diff --git a/gdb/valops.c b/gdb/valops.c
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -3861,56 +3861,195 @@ value_of_this_silent (const struct language_defn *lang)
@@ -3823,56 +3823,195 @@ value_of_this_silent (const struct language_defn *lang)
struct value *
value_slice (struct value *array, int lowbound, int length)

View File

@ -33,7 +33,7 @@ git diff --stat -p gdb/master...gdb/users/bheckel/fortran-vla-strings
diff --git a/gdb/NEWS b/gdb/NEWS
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -265,6 +265,8 @@ SH-5/SH64 running OpenBSD SH-5/SH64 support in sh*-*-openbsd*
@@ -276,6 +276,8 @@ SH-5/SH64 running OpenBSD SH-5/SH64 support in sh*-*-openbsd*
*** Changes in GDB 8.1
@ -1306,7 +1306,7 @@ diff --git a/gdb/typeprint.c b/gdb/typeprint.c
diff --git a/gdb/valops.c b/gdb/valops.c
--- a/gdb/valops.c
+++ b/gdb/valops.c
@@ -1558,6 +1558,19 @@ value_ind (struct value *arg1)
@@ -1553,6 +1553,19 @@ value_ind (struct value *arg1)
if (TYPE_CODE (base_type) == TYPE_CODE_PTR)
{
struct type *enc_type;
@ -1326,7 +1326,7 @@ diff --git a/gdb/valops.c b/gdb/valops.c
/* We may be pointing to something embedded in a larger object.
Get the real type of the enclosing object. */
@@ -1573,8 +1586,7 @@ value_ind (struct value *arg1)
@@ -1568,8 +1581,7 @@ value_ind (struct value *arg1)
else
/* Retrieve the enclosing object pointed to. */
arg2 = value_at_lazy (enc_type,

View File

@ -38,7 +38,7 @@ diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
#include "common/underlying.h"
#include "common/byte-vector.h"
@@ -2388,6 +2389,20 @@ dwarf2_evaluate_loc_desc_full (struct type *type, struct frame_info *frame,
@@ -2158,6 +2159,20 @@ dwarf2_evaluate_loc_desc_full (struct type *type, struct frame_info *frame,
ctx.per_cu = per_cu;
ctx.obj_address = 0;

View File

@ -113,7 +113,7 @@ diff --git a/gdb/amd64-nat.c b/gdb/amd64-nat.c
+
+ int k = I386_EAX_REGNUM;
+
+ if (regnum == -1 || regnum == k)
+ if (regnum == -1 || regnum == i)
+ {
+ void *ptr = regs + amd64_native_gregset_reg_offset (gdbarch, k);
+

View File

@ -22,7 +22,7 @@
Name: %{?scl_prefix}gdb
# Freeze it when GDB gets branched
%global snapsrc 20181114
%global snapsrc 20181130
# See timestamp of source gnulib installed into gdb/gnulib/ .
%global snapgnulib 20161115
%global tarname gdb-%{version}
@ -30,7 +30,7 @@ Version: 8.2.50.%{snapsrc}
# The release always contains a leading reserved number, start it at 1.
# `upstream' is not a part of `name' to stay fully rpm dependencies compatible for the testing.
Release: 9%{?dist}
Release: 10%{?dist}
License: GPLv3+ and GPLv3+ with exceptions and GPLv2+ and GPLv2+ with exceptions and GPL+ and LGPLv2+ and LGPLv3+ and BSD and Public Domain and GFDL
Group: Development/Debuggers
@ -1032,6 +1032,9 @@ fi
%endif
%changelog
* Fri Nov 30 2018 Sergio Durigan Junior <sergiodj@redhat.com> - 8.2.50.20181130-10.fc30
- Rebase to FSF GDB 8.2.50.20181130 (8.3pre).
* Tue Nov 20 2018 Sergio Durigan Junior <sergiodj@redhat.com> - 8.2.50.20181114-9.fc30
- Declare _python_bytecompile_extra.
- Fix typo on gdb-x86_64-i386-syscall-restart.patch.