Rebase to FSF GDB 8.0.50.20171213 (8.1pre).

This commit is contained in:
Sergio Durigan Junior 2017-12-18 12:28:39 -05:00
parent a8767b37e5
commit 4632e1fa80
42 changed files with 223 additions and 306 deletions

2
.gitignore vendored
View File

@ -1,3 +1,3 @@
/gdb-libstdc++-v3-python-7.1.1-20170526.tar.xz
/v1.6.1.tar.gz
/gdb-8.0.50.20171204.tar.xz
/gdb-8.0.50.20171213.tar.xz

View File

@ -510,22 +510,18 @@ Patch121: gdb-linux_perf-bundle.patch
#=fedora
Patch122: gdb-libexec-add-index.patch
# Fix gdb-add-index for 444 *.debug files.
#=push+jan
Patch123: gdb-add-index-chmod.patch
# New testcase for: Fix <tab>-completion crash (Gary Benson, RH BZ 1398387).
#=fedoratest
Patch124: gdb-rhbz1398387-tab-crash-test.patch
Patch123: gdb-rhbz1398387-tab-crash-test.patch
# [testsuite] Fix false selftest.exp FAIL from system readline-6.3+ (Patrick Palka).
#=fedoratest
Patch125: gdb-testsuite-readline63-sigint.patch
Patch124: gdb-testsuite-readline63-sigint.patch
# Python patches of: http://sourceware.org/gdb/wiki/ProjectArcher
#=push
Patch126: gdb-archer.patch
Patch125: gdb-archer.patch
# Revert upstream commit 469412dd9ccc4de5874fd3299b105833f36b34cd
Patch127: gdb-vla-intel-fix-print-char-array.patch
Patch126: gdb-vla-intel-fix-print-char-array.patch

View File

@ -124,4 +124,3 @@
%patch124 -p1
%patch125 -p1
%patch126 -p1
%patch127 -p1

View File

@ -1 +1 @@
1e97a22796cced8bba3359df46e8c2883653516f
2c66e1634c92040a8fcb9590cd80fe881def0b20

View File

@ -120,7 +120,6 @@ gdb-container-rh-pkg.patch
gdb-rhbz1325795-framefilters-test.patch
gdb-linux_perf-bundle.patch
gdb-libexec-add-index.patch
gdb-add-index-chmod.patch
gdb-rhbz1398387-tab-crash-test.patch
gdb-testsuite-readline63-sigint.patch
gdb-archer.patch

View File

@ -18,7 +18,7 @@ FileName: gdb-6.3-ppc64displaysymbol-20041124.patch
1 file changed, 8 insertions(+)
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index 2e596d1f09..20e5bda11e 100644
index 7ca86232a1..9ff0d9e962 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -602,6 +602,14 @@ build_address_symbolic (struct gdbarch *gdbarch,

View File

@ -27,18 +27,18 @@ Pushed upstream: https://sourceware.org/ml/gdb-cvs/2017-12/msg00007.html
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/gdb/gcore.in b/gdb/gcore.in
index 632f21bdfa..016bcb9a28 100644
index 44b2e98b27..5ff4b24bd3 100644
--- a/gdb/gcore.in
+++ b/gdb/gcore.in
@@ -85,7 +85,7 @@ for pid in $*
@@ -97,7 +97,7 @@ for pid in $*
do
# `</dev/null' to avoid touching interactive terminal if it is
# available but not accessible as GDB would get stopped on SIGTTIN.
- $binary_path/@GDB_TRANSFORM_NAME@ </dev/null --nx --batch \
+ $binary_path/@GDB_TRANSFORM_NAME@ </dev/null --nx --batch --readnever \
-ex "set pagination off" -ex "set height 0" -ex "set width 0" \
"${dump_all_cmds[@]}" \
-ex "attach $pid" -ex "gcore $name.$pid" -ex detach -ex quit
--
2.14.3

View File

@ -55,7 +55,7 @@ glibc-debuginfo-2.7-2.x86_64: /usr/lib/debug/lib64/libc.so.6.debug:
create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-errno2.exp
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index 20e5bda11e..38642641b9 100644
index 9ff0d9e962..ed35004021 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -1210,6 +1210,10 @@ print_command_1 (const char *exp, int voidprint)

View File

@ -12,10 +12,10 @@ FileName: gdb-6.5-bz203661-emit-relocs.patch
1 file changed, 6 insertions(+)
diff --git a/gdb/symfile.c b/gdb/symfile.c
index 8f45d45d85..37a31950a2 100644
index 5a1447d9d5..0b82f8c6a0 100644
--- a/gdb/symfile.c
+++ b/gdb/symfile.c
@@ -3634,6 +3634,12 @@ default_symfile_relocate (struct objfile *objfile, asection *sectp,
@@ -3629,6 +3629,12 @@ default_symfile_relocate (struct objfile *objfile, asection *sectp,
DWO file. */
bfd *abfd = sectp->owner;

View File

@ -138,10 +138,10 @@ index 87f09a4542..2a705ea41a 100644
set_gdbarch_write_pc (gdbarch, amd64_linux_write_pc);
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
index bcd37ef048..81fbe52795 100644
index 0eb3670af3..1a32d2f871 100644
--- a/gdb/amd64-tdep.c
+++ b/gdb/amd64-tdep.c
@@ -2555,6 +2555,7 @@ amd64_frame_unwind_stop_reason (struct frame_info *this_frame,
@@ -2595,6 +2595,7 @@ amd64_frame_unwind_stop_reason (struct frame_info *this_frame,
{
struct amd64_frame_cache *cache =
amd64_frame_cache (this_frame, this_cache);
@ -149,7 +149,7 @@ index bcd37ef048..81fbe52795 100644
if (!cache->base_p)
return UNWIND_UNAVAILABLE;
@@ -2563,6 +2564,10 @@ amd64_frame_unwind_stop_reason (struct frame_info *this_frame,
@@ -2603,6 +2604,10 @@ amd64_frame_unwind_stop_reason (struct frame_info *this_frame,
if (cache->base == 0)
return UNWIND_OUTERMOST;
@ -160,7 +160,7 @@ index bcd37ef048..81fbe52795 100644
return UNWIND_NO_REASON;
}
@@ -2697,6 +2702,7 @@ amd64_sigtramp_frame_this_id (struct frame_info *this_frame,
@@ -2737,6 +2742,7 @@ amd64_sigtramp_frame_this_id (struct frame_info *this_frame,
{
struct amd64_frame_cache *cache =
amd64_sigtramp_frame_cache (this_frame, this_cache);
@ -168,7 +168,7 @@ index bcd37ef048..81fbe52795 100644
if (!cache->base_p)
(*this_id) = frame_id_build_unavailable_stack (get_frame_pc (this_frame));
@@ -2705,6 +2711,11 @@ amd64_sigtramp_frame_this_id (struct frame_info *this_frame,
@@ -2745,6 +2751,11 @@ amd64_sigtramp_frame_this_id (struct frame_info *this_frame,
/* This marks the outermost frame. */
return;
}
@ -181,7 +181,7 @@ index bcd37ef048..81fbe52795 100644
(*this_id) = frame_id_build (cache->base + 16, get_frame_pc (this_frame));
}
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index 81048081ad..290b1c8368 100644
index 12d5a24bc6..7a1dffa66f 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -8401,6 +8401,9 @@ i386_gdbarch_init (struct gdbarch_info info, struct gdbarch_list *arches)

View File

@ -14,10 +14,10 @@ https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=218379
1 file changed, 7 insertions(+)
diff --git a/gdb/symtab.c b/gdb/symtab.c
index dd7434ed50..d731a5421b 100644
index 996d52199f..136da6a616 100644
--- a/gdb/symtab.c
+++ b/gdb/symtab.c
@@ -3141,6 +3141,13 @@ find_pc_sect_line (CORE_ADDR pc, struct obj_section *section, int notcurrent)
@@ -3140,6 +3140,13 @@ find_pc_sect_line (CORE_ADDR pc, struct obj_section *section, int notcurrent)
SYMBOL_LINKAGE_NAME (msymbol)); */
;
/* fall through */

View File

@ -83,7 +83,7 @@ index 99aa876dfc..3b9ed3ee71 100644
NR_ERRORS
};
diff --git a/gdb/exec.c b/gdb/exec.c
index 4fbe9dd635..a78ab99fc7 100644
index adff980f02..f8cc206c12 100644
--- a/gdb/exec.c
+++ b/gdb/exec.c
@@ -35,6 +35,7 @@

View File

@ -104,10 +104,10 @@ index 831f16459f..531e652e75 100644
{
return strcoll (*ap, *bp);
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 49b2658ade..e44844fbd7 100644
index b82b336260..5648a303ea 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -3373,6 +3373,16 @@ read_index_from_section (struct objfile *objfile,
@@ -3725,6 +3725,16 @@ read_index_from_section (struct objfile *objfile,
"set use-deprecated-index-sections on". */
if (version < 6 && !deprecated_ok)
{
@ -124,7 +124,7 @@ index 49b2658ade..e44844fbd7 100644
static int warning_printed = 0;
if (!warning_printed)
{
@@ -3384,6 +3394,10 @@ to use the section anyway."),
@@ -3736,6 +3746,10 @@ to use the section anyway."),
warning_printed = 1;
}
return 0;

View File

@ -1472,7 +1472,7 @@ index 8e706b6e27..9de441fe79 100644
# Check whether to support alternative target configurations
diff --git a/gdb/corelow.c b/gdb/corelow.c
index b6e9ddc652..547313c4b5 100644
index 398dd30a2d..fe1e0727a6 100644
--- a/gdb/corelow.c
+++ b/gdb/corelow.c
@@ -309,7 +309,7 @@ build_id_locate_exec (int from_tty)
@ -1518,7 +1518,7 @@ index 89936965a9..a1866f0c88 100644
}
diff --git a/gdb/symfile.h b/gdb/symfile.h
index 45bbe0a229..69eead20d9 100644
index 035733a8cf..6c4cd315ed 100644
--- a/gdb/symfile.h
+++ b/gdb/symfile.h
@@ -546,6 +546,8 @@ void map_symbol_filenames (symbol_filename_ftype *fun, void *data,

View File

@ -925,7 +925,7 @@ index 98f6eec820..f22b2b7df1 100644
if (debugfile == NULL)
debugfile = find_separate_debug_file_by_debuglink (objfile);
diff --git a/gdb/corelow.c b/gdb/corelow.c
index 68009054a0..b6e9ddc652 100644
index 4214896aaf..398dd30a2d 100644
--- a/gdb/corelow.c
+++ b/gdb/corelow.c
@@ -45,6 +45,10 @@
@ -994,7 +994,7 @@ index 68009054a0..b6e9ddc652 100644
/* This routine opens and sets up the core file bfd. */
static void
@@ -392,6 +444,14 @@ core_open (const char *arg, int from_tty)
@@ -391,6 +443,14 @@ core_open (const char *arg, int from_tty)
switch_to_thread (thread->ptid);
}
@ -1009,7 +1009,7 @@ index 68009054a0..b6e9ddc652 100644
post_create_inferior (&core_ops, from_tty);
/* Now go through the target stack looking for threads since there
@@ -1041,4 +1101,11 @@ _initialize_corelow (void)
@@ -1040,4 +1100,11 @@ _initialize_corelow (void)
init_core_ops ();
add_target_with_completer (&core_ops, filename_completer);
@ -1022,10 +1022,10 @@ index 68009054a0..b6e9ddc652 100644
+ &setlist, &showlist);
}
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index 005fed89c5..d181aeb1c0 100644
index da3ed28dfe..8e7ff6c4ef 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -19271,6 +19271,27 @@ information files.
@@ -19298,6 +19298,27 @@ information files.
@end table
@ -1054,10 +1054,10 @@ index 005fed89c5..d181aeb1c0 100644
@cindex debug link sections
A debug link is a special section of the executable file named
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index fdd1d9d688..ef624ada33 100644
index f32b115500..10c193d9f0 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -2787,7 +2787,7 @@ dwarf2_get_dwz_file (void)
@@ -2907,7 +2907,7 @@ dwarf2_get_dwz_file (void)
}
if (dwz_bfd == NULL)
@ -1067,10 +1067,10 @@ index fdd1d9d688..ef624ada33 100644
if (dwz_bfd == NULL)
error (_("could not find '.gnu_debugaltlink' file for %s"),
diff --git a/gdb/elfread.c b/gdb/elfread.c
index b806ca3b40..9784a44b5a 100644
index 7a41c26370..7c0411bec0 100644
--- a/gdb/elfread.c
+++ b/gdb/elfread.c
@@ -1248,8 +1248,9 @@ elf_symfile_read (struct objfile *objfile, symfile_add_flags symfile_flags)
@@ -1259,8 +1259,9 @@ elf_symfile_read (struct objfile *objfile, symfile_add_flags symfile_flags)
&& objfile->separate_debug_objfile == NULL
&& objfile->separate_debug_objfile_backlink == NULL)
{
@ -1081,7 +1081,7 @@ index b806ca3b40..9784a44b5a 100644
if (debugfile == NULL)
debugfile.reset (find_separate_debug_file_by_debuglink (objfile));
@@ -1261,6 +1262,10 @@ elf_symfile_read (struct objfile *objfile, symfile_add_flags symfile_flags)
@@ -1272,6 +1273,10 @@ elf_symfile_read (struct objfile *objfile, symfile_add_flags symfile_flags)
symbol_file_add_separate (abfd.get (), debugfile.get (),
symfile_flags, objfile);
}
@ -1198,7 +1198,7 @@ index 6e834fb5d7..08788092dc 100644
/* If this entry has no name, or its name matches the name
diff --git a/gdb/symfile.h b/gdb/symfile.h
index fa38abf496..45bbe0a229 100644
index 93fbe68440..035733a8cf 100644
--- a/gdb/symfile.h
+++ b/gdb/symfile.h
@@ -543,6 +543,10 @@ void expand_symtabs_matching

View File

@ -33,7 +33,7 @@ index c20a02e600..299585f350 100644
}
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c
index 6040c1f129..667e61e701 100644
index 8c4750aaa2..d67a99a52a 100644
--- a/gdb/linux-nat.c
+++ b/gdb/linux-nat.c
@@ -194,6 +194,11 @@ enum tribool have_ptrace_getregset = TRIBOOL_UNKNOWN;

View File

@ -53,10 +53,10 @@ index 4ffad038c9..d029a2f23d 100644
{
if (extlang->ops->check_quit_flag != NULL)
diff --git a/gdb/top.c b/gdb/top.c
index 8cd7c99346..326c2399b3 100644
index 3fb113c381..2b69d08331 100644
--- a/gdb/top.c
+++ b/gdb/top.c
@@ -1583,7 +1583,13 @@ quit_force (int *exit_arg, int from_tty)
@@ -1580,7 +1580,13 @@ quit_force (int *exit_arg, int from_tty)
qt.args = NULL;
qt.from_tty = from_tty;
@ -71,7 +71,7 @@ index 8cd7c99346..326c2399b3 100644
/* Get out of tfind mode, and kill or detach all inferiors. */
TRY
diff --git a/gdb/utils.c b/gdb/utils.c
index f72ddab992..26a923d8b3 100644
index a0c7e9b03a..97bb9bcb18 100644
--- a/gdb/utils.c
+++ b/gdb/utils.c
@@ -107,6 +107,13 @@ static std::chrono::steady_clock::duration prompt_for_continue_wait_time;

View File

@ -1,79 +0,0 @@
From FEDORA_PATCHES Mon Sep 17 00:00:00 2001
From: Fedora GDB patches <invalid@email.com>
Date: Fri, 27 Oct 2017 21:07:50 +0200
Subject: contrib/gdb-add-index.sh: chmod u+w
FileName: gdb-add-index-chmod.patch
;; Fix gdb-add-index for 444 *.debug files.
;;=push+jan
http://sourceware.org/ml/gdb-patches/2017-01/msg00110.html
--AhhlLboLdkugWU4S
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Hi,
in Fedora 24 it still worked, in Fedora 25 it does not - *-debuginfo.rpm
no longer have the .gdb_index accelerating section now.
It happens because:
objcopy: unable to copy file 'foo.debug'; reason: Permission denied
*.debug files in Fedora were always 444 but the time gdb-add-index is run is
still before the *.debug split and in Fedora 24 the files were -rwxr-xr-x
that time while in Fedora 25 they are apparently no longer w.
OK for check-in?
Jan
--AhhlLboLdkugWU4S
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline; filename=1
gdb/ChangeLog
2017-01-06 Jan Kratochvil <jan.kratochvil@redhat.com>
* contrib/gdb-add-index.sh: Use chmod u+w for $file.
---
gdb/contrib/gdb-add-index.sh | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
diff --git a/gdb/contrib/gdb-add-index.sh b/gdb/contrib/gdb-add-index.sh
index c34058d1d6..bbec184b5d 100755
--- a/gdb/contrib/gdb-add-index.sh
+++ b/gdb/contrib/gdb-add-index.sh
@@ -43,10 +43,11 @@ fi
dir="${file%/*}"
test "$dir" = "$file" && dir="."
index="${file}.gdb-index"
+mode="${file}.mode"
-rm -f $index
+rm -f $index $mode
# Ensure intermediate index file is removed when we exit.
-trap "rm -f $index" 0
+trap "rm -f $index $mode" 0
$GDB --batch -nx -iex 'set auto-load no' \
-ex "file $file" -ex "save gdb-index $dir" || {
@@ -63,8 +64,13 @@ $GDB --batch -nx -iex 'set auto-load no' \
status=0
if test -f "$index"; then
+ touch "$mode"
+ chmod --reference="$file" "$mode"
+ # objcopy: unable to copy file 'foo.debug'; reason: Permission denied
+ chmod u+w "$file"
$OBJCOPY --add-section .gdb_index="$index" \
--set-section-flags .gdb_index=readonly "$file" "$file"
+ chmod --reference="$mode" "$file"
status=$?
else
echo "$myname: No index was created for $file" 1>&2
--
2.14.3

View File

@ -13,10 +13,10 @@ FileName: gdb-archer-pie-addons-keep-disabled.patch
3 files changed, 52 insertions(+)
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index d4d095d87e..bc0134db36 100644
index b68718d250..bfe92f679f 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -15607,6 +15607,50 @@ initialize_breakpoint_ops (void)
@@ -15590,6 +15590,50 @@ initialize_breakpoint_ops (void)
static struct cmd_list_element *enablebreaklist = NULL;

View File

@ -12,7 +12,7 @@ FileName: gdb-archer-pie-addons.patch
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
index e26a09b456..d92ffc228b 100644
index 33de8faf2b..53d1592318 100644
--- a/gdb/gdbtypes.h
+++ b/gdb/gdbtypes.h
@@ -440,6 +440,7 @@ enum field_loc_kind
@ -31,7 +31,7 @@ index e26a09b456..d92ffc228b 100644
CORE_ADDR physaddr;
const char *physname;
@@ -1332,6 +1334,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
@@ -1339,6 +1341,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)
@ -39,7 +39,7 @@ index e26a09b456..d92ffc228b 100644
#define FIELD_STATIC_PHYSADDR(thisfld) ((thisfld).loc.physaddr)
#define FIELD_DWARF_BLOCK(thisfld) ((thisfld).loc.dwarf_block)
#define SET_FIELD_BITPOS(thisfld, bitpos) \
@@ -1343,6 +1346,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
@@ -1350,6 +1353,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))
@ -47,7 +47,7 @@ index e26a09b456..d92ffc228b 100644
#define SET_FIELD_PHYSADDR(thisfld, addr) \
(FIELD_LOC_KIND (thisfld) = FIELD_LOC_KIND_PHYSADDR, \
FIELD_STATIC_PHYSADDR (thisfld) = (addr))
@@ -1359,6 +1363,7 @@ extern void set_type_vptr_basetype (struct type *, struct type *);
@@ -1366,6 +1370,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))

View File

@ -77,10 +77,10 @@ index dadde8895a..19e436d725 100644
gdb/printer/bound_registers.py
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index a79c686f0b..d13d4dd945 100644
index 0e8ad7750d..6cfcdcc1f6 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -1240,6 +1240,16 @@ for remote debugging.
@@ -1245,6 +1245,16 @@ for remote debugging.
Run using @var{device} for your program's standard input and output.
@c FIXME: kingdon thinks there is more to -tty. Investigate.
@ -98,7 +98,7 @@ index a79c686f0b..d13d4dd945 100644
@item -tui
@cindex @code{--tui}
diff --git a/gdb/doc/python.texi b/gdb/doc/python.texi
index 01243c7c7d..eb7bf3ca05 100644
index d7a9620e6b..41052cc109 100644
--- a/gdb/doc/python.texi
+++ b/gdb/doc/python.texi
@@ -88,8 +88,6 @@ containing @code{end}. For example:
@ -496,7 +496,7 @@ index f099ae437f..468b0ebd92 100644
extern const struct language_defn *python_language;
diff --git a/gdb/python/python.c b/gdb/python/python.c
index 0f71a4335e..03f6c55d40 100644
index fe09a97d28..7c85e641aa 100644
--- a/gdb/python/python.c
+++ b/gdb/python/python.c
@@ -95,6 +95,8 @@ const struct extension_language_defn extension_language_python =
@ -631,7 +631,7 @@ index 0f71a4335e..03f6c55d40 100644
static PyObject *
gdbpy_get_current_progspace (PyObject *unused1, PyObject *unused2)
@@ -2035,6 +2146,8 @@ PyMethodDef python_GdbMethods[] =
@@ -2034,6 +2145,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

@ -300,7 +300,7 @@ index f6a52d5859..ab3be27142 100644
if (setpgid (0, 0) < 0)
trace_start_error_with_name ("setpgid");
diff --git a/gdb/linux-nat.c b/gdb/linux-nat.c
index 96cb21a2cf..6040c1f129 100644
index b8f3108937..8c4750aaa2 100644
--- a/gdb/linux-nat.c
+++ b/gdb/linux-nat.c
@@ -1127,7 +1127,29 @@ linux_nat_create_inferior (struct target_ops *ops,

View File

@ -21,10 +21,10 @@ FileName: gdb-bz541866-rwatch-before-run.patch
create mode 100644 gdb/testsuite/gdb.base/watchpoint-hw-before-run.exp
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index bc0134db36..269928a794 100644
index bfe92f679f..af0aad9cd2 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -8879,7 +8879,7 @@ init_breakpoint_sal (struct breakpoint *b, struct gdbarch *gdbarch,
@@ -8864,7 +8864,7 @@ init_breakpoint_sal (struct breakpoint *b, struct gdbarch *gdbarch,
int enabled, int internal, unsigned flags,
int display_canonical)
{
@ -33,7 +33,7 @@ index bc0134db36..269928a794 100644
if (type == bp_hardware_breakpoint)
{
@@ -14442,7 +14442,7 @@ enable_breakpoint_disp (struct breakpoint *bpt, enum bpdisp disposition,
@@ -14425,7 +14425,7 @@ enable_breakpoint_disp (struct breakpoint *bpt, enum bpdisp disposition,
if (bpt->type == bp_hardware_breakpoint)
{
@ -131,10 +131,10 @@ index 962abd6edf..404b6c8deb 100644
amd64-nat.o amd64-linux-nat.o x86-linux-nat.o linux-btrace.o \
x86-linux.o x86-linux-dregs.o amd64-linux-siginfo.o"
diff --git a/gdb/target.h b/gdb/target.h
index 638e2f06e6..999541d5d2 100644
index 7863a8d843..1e9aa9f8d2 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -1927,9 +1927,11 @@ extern struct thread_info *target_thread_handle_to_thread_info
@@ -1924,9 +1924,11 @@ extern struct thread_info *target_thread_handle_to_thread_info
one. OTHERTYPE is the number of watchpoints of other types than
this one used so far. */

View File

@ -56,10 +56,10 @@ gdb/
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/gdb/utils.c b/gdb/utils.c
index 98ef6ac457..5e99a4d501 100644
index 2f8f06fb5a..c306e0c384 100644
--- a/gdb/utils.c
+++ b/gdb/utils.c
@@ -776,13 +776,11 @@ malloc_failure (long size)
@@ -774,13 +774,11 @@ malloc_failure (long size)
{
if (size > 0)
{

View File

@ -12,10 +12,10 @@ FileName: gdb-container-rh-pkg.patch
1 file changed, 11 insertions(+), 1 deletion(-)
diff --git a/gdb/remote.c b/gdb/remote.c
index 303fcddd8a..6f824e532b 100644
index a33a70642b..e98d22cb20 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -13432,7 +13432,17 @@ remote_pid_to_exec_file (struct target_ops *self, int pid)
@@ -13431,7 +13431,17 @@ remote_pid_to_exec_file (struct target_ops *self, int pid)
char *annex = NULL;
if (packet_support (PACKET_qXfer_exec_file) != PACKET_ENABLE)

View File

@ -93,10 +93,10 @@ index e0e50c166e..3cdcbbd567 100644
touch $@
-$(TEXI2POD) $(MANCONF) -Dgdbinit < $(srcdir)/gdb.texinfo > gdbinit.pod
diff --git a/gdb/doc/gdb.texinfo b/gdb/doc/gdb.texinfo
index d181aeb1c0..a79c686f0b 100644
index 8e7ff6c4ef..0e8ad7750d 100644
--- a/gdb/doc/gdb.texinfo
+++ b/gdb/doc/gdb.texinfo
@@ -19606,6 +19606,14 @@ There are currently some limitation on indices. They only work when
@@ -19647,6 +19647,14 @@ There are currently some limitation on indices. They only work when
for DWARF debugging information, not stabs. And, they do not
currently work for programs using Ada.
@ -111,7 +111,7 @@ index d181aeb1c0..a79c686f0b 100644
@node Symbol Errors
@section Errors Reading Symbol Files
@@ -42524,6 +42532,7 @@ switch (die->tag)
@@ -42607,6 +42615,7 @@ switch (die->tag)
* gdbserver man:: Remote Server for the GNU Debugger man page
* gcore man:: Generate a core file of a running program
* gdbinit man:: gdbinit scripts
@ -119,7 +119,7 @@ index d181aeb1c0..a79c686f0b 100644
@end menu
@node gdb man
@@ -43193,6 +43202,54 @@ Richard M. Stallman and Roland H. Pesch, July 1991.
@@ -43283,6 +43292,54 @@ Richard M. Stallman and Roland H. Pesch, July 1991.
@end ifset
@c man end

View File

@ -14,10 +14,10 @@ FileName: gdb-glibc-strstr-workaround.patch
create mode 100644 gdb/testsuite/gdb.base/gnu-ifunc-strstr-workaround.exp
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index ef624ada33..72d15a94d8 100644
index 10c193d9f0..e2fc1310d8 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -20082,6 +20082,26 @@ new_symbol_full (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
@@ -21293,6 +21293,26 @@ new_symbol_full (struct die_info *die, struct type *type, struct dwarf2_cu *cu,
/* Cache this symbol's name and the name's demangled form (if any). */
SYMBOL_SET_LANGUAGE (sym, cu->language, &objfile->objfile_obstack);
linkagename = dwarf2_physname (name, die, cu);

View File

@ -45,10 +45,10 @@ gdb/
1 file changed, 8 insertions(+)
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index f14f5b563a..49b2658ade 100644
index d47497cec7..b82b336260 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -9424,6 +9424,14 @@ private:
@@ -10602,6 +10602,14 @@ private:
static void
process_die (struct die_info *die, struct dwarf2_cu *cu)
{

View File

@ -12,7 +12,7 @@ FileName: gdb-libexec-add-index.patch
1 file changed, 5 insertions(+)
diff --git a/gdb/contrib/gdb-add-index.sh b/gdb/contrib/gdb-add-index.sh
index 0cd4ce3c9d..c34058d1d6 100755
index 02b17f0fc0..bd8fc429a1 100755
--- a/gdb/contrib/gdb-add-index.sh
+++ b/gdb/contrib/gdb-add-index.sh
@@ -21,6 +21,11 @@

View File

@ -17,10 +17,10 @@ Bug in FSF GDB exploited by the ptrace-on-utrace interaction.
1 file changed, 2 insertions(+)
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index 269928a794..fb129bf38a 100644
index af0aad9cd2..2d8a8d1a50 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -12105,6 +12105,8 @@ update_global_location_list (enum ugll_insert_mode insert_mode)
@@ -12089,6 +12089,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

@ -20,7 +20,7 @@ FileName: gdb-python-gil.patch
create mode 100644 gdb/testsuite/gdb.python/py-gil-mthread.py
diff --git a/gdb/doc/python.texi b/gdb/doc/python.texi
index f411f60d7e..01243c7c7d 100644
index 28a7a1a9f5..d7a9620e6b 100644
--- a/gdb/doc/python.texi
+++ b/gdb/doc/python.texi
@@ -232,6 +232,14 @@ returned as a string. The default is @code{False}, in which case the
@ -52,7 +52,7 @@ index 8fc8cc5a5d..f099ae437f 100644
#endif
diff --git a/gdb/python/python.c b/gdb/python/python.c
index c29a46b448..0f71a4335e 100644
index 44ca121ff2..fe09a97d28 100644
--- a/gdb/python/python.c
+++ b/gdb/python/python.c
@@ -554,12 +554,16 @@ execute_gdb_command (PyObject *self, PyObject *args, PyObject *kw)

View File

@ -571,7 +571,7 @@ index 9e317c04e4..8606111c00 100644
return aarch64_linux_region_ok_for_watchpoint (addr, len);
}
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index c5636b92f3..8b18a011ac 100644
index 9e637ebab6..b05b840292 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -78,7 +78,7 @@ static struct type *desc_bounds_type (struct type *);
@ -791,7 +791,7 @@ index c5636b92f3..8b18a011ac 100644
gdb_byte *buf = (gdb_byte *) alloca (len);
CORE_ADDR addr;
@@ -6704,7 +6706,7 @@ value_tag_from_contents_and_address (struct type *type,
@@ -6703,7 +6705,7 @@ value_tag_from_contents_and_address (struct type *type,
const gdb_byte *valaddr,
CORE_ADDR address)
{
@ -800,7 +800,7 @@ index c5636b92f3..8b18a011ac 100644
struct type *tag_type;
if (find_struct_field ("_tag", type, 0, &tag_type, &tag_byte_offset,
@@ -7185,7 +7187,7 @@ ada_in_variant (LONGEST val, struct type *type, int field_num)
@@ -7196,7 +7198,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 *
@ -809,7 +809,7 @@ index c5636b92f3..8b18a011ac 100644
struct type *arg_type)
{
struct type *type;
@@ -7197,7 +7199,7 @@ ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
@@ -7208,7 +7210,7 @@ ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
if (TYPE_FIELD_BITSIZE (arg_type, fieldno) != 0)
{
@ -818,7 +818,7 @@ index c5636b92f3..8b18a011ac 100644
int bit_size = TYPE_FIELD_BITSIZE (arg_type, fieldno);
return ada_value_primitive_packed_val (arg1, value_contents (arg1),
@@ -7224,9 +7226,9 @@ ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
@@ -7235,9 +7237,9 @@ ada_value_primitive_field (struct value *arg1, int offset, int fieldno,
Returns 1 if found, 0 otherwise. */
static int
@ -830,7 +830,7 @@ index c5636b92f3..8b18a011ac 100644
int *index_p)
{
int i;
@@ -7244,8 +7246,8 @@ find_struct_field (const char *name, struct type *type, int offset,
@@ -7255,8 +7257,8 @@ find_struct_field (const char *name, struct type *type, int offset,
for (i = 0; i < TYPE_NFIELDS (type); i += 1)
{
@ -841,7 +841,7 @@ index c5636b92f3..8b18a011ac 100644
const char *t_field_name = TYPE_FIELD_NAME (type, i);
if (t_field_name == NULL)
@@ -7315,7 +7317,7 @@ num_visible_fields (struct type *type)
@@ -7326,7 +7328,7 @@ num_visible_fields (struct type *type)
Searches recursively through wrapper fields (e.g., '_parent'). */
static struct value *
@ -850,7 +850,7 @@ index c5636b92f3..8b18a011ac 100644
struct type *type)
{
int i;
@@ -7348,7 +7350,7 @@ ada_search_struct_field (const char *name, struct value *arg, int offset,
@@ -7359,7 +7361,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));
@ -859,7 +859,7 @@ index c5636b92f3..8b18a011ac 100644
for (j = 0; j < TYPE_NFIELDS (field_type); j += 1)
{
@@ -7366,8 +7368,8 @@ ada_search_struct_field (const char *name, struct value *arg, int offset,
@@ -7377,8 +7379,8 @@ ada_search_struct_field (const char *name, struct value *arg, int offset,
return NULL;
}
@ -870,7 +870,7 @@ index c5636b92f3..8b18a011ac 100644
/* Return field #INDEX in ARG, where the index is that returned by
@@ -7376,7 +7378,7 @@ static struct value *ada_index_struct_field_1 (int *, struct value *,
@@ -7387,7 +7389,7 @@ static struct value *ada_index_struct_field_1 (int *, struct value *,
* If found, return value, else return NULL. */
static struct value *
@ -879,7 +879,7 @@ index c5636b92f3..8b18a011ac 100644
struct type *type)
{
return ada_index_struct_field_1 (&index, arg, offset, type);
@@ -7388,7 +7390,7 @@ ada_index_struct_field (int index, struct value *arg, int offset,
@@ -7399,7 +7401,7 @@ ada_index_struct_field (int index, struct value *arg, int offset,
* *INDEX_P. */
static struct value *
@ -888,7 +888,7 @@ index c5636b92f3..8b18a011ac 100644
struct type *type)
{
int i;
@@ -7478,7 +7480,8 @@ ada_value_struct_elt (struct value *arg, const char *name, int no_err)
@@ -7489,7 +7491,8 @@ ada_value_struct_elt (struct value *arg, const char *name, int no_err)
v = ada_search_struct_field (name, arg, 0, t);
else
{
@ -898,7 +898,7 @@ index c5636b92f3..8b18a011ac 100644
struct type *field_type;
CORE_ADDR address;
@@ -7769,8 +7772,8 @@ ada_coerce_ref (struct value *val0)
@@ -7780,8 +7783,8 @@ ada_coerce_ref (struct value *val0)
/* Return OFF rounded upward if necessary to a multiple of
ALIGNMENT (a power of 2). */
@ -909,7 +909,7 @@ index c5636b92f3..8b18a011ac 100644
{
return (off + alignment - 1) & ~(alignment - 1);
}
@@ -8164,10 +8167,9 @@ ada_template_to_fixed_record_type_1 (struct type *type,
@@ -8175,10 +8178,9 @@ ada_template_to_fixed_record_type_1 (struct type *type,
struct value *mark = value_mark ();
struct value *dval;
struct type *rtype;
@ -922,7 +922,7 @@ index c5636b92f3..8b18a011ac 100644
int f;
/* Compute the number of fields in this record type that are going
@@ -8245,7 +8247,7 @@ ada_template_to_fixed_record_type_1 (struct type *type,
@@ -8256,7 +8258,7 @@ ada_template_to_fixed_record_type_1 (struct type *type,
that follow this one. */
if (ada_is_aligner_type (field_type))
{
@ -931,7 +931,7 @@ index c5636b92f3..8b18a011ac 100644
field_valaddr = cond_offset_host (field_valaddr, field_offset);
field_address = cond_offset_target (field_address, field_offset);
@@ -8381,11 +8383,11 @@ ada_template_to_fixed_record_type_1 (struct type *type,
@@ -8392,11 +8394,11 @@ ada_template_to_fixed_record_type_1 (struct type *type,
if (TYPE_LENGTH (type) <= 0)
{
if (TYPE_NAME (rtype))
@ -947,7 +947,7 @@ index c5636b92f3..8b18a011ac 100644
}
else
{
@@ -8852,7 +8854,8 @@ to_fixed_array_type (struct type *type0, struct value *dval,
@@ -8862,7 +8864,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. */
@ -1162,7 +1162,7 @@ index 91dc301af5..4aa4d7a79f 100644
struct value *val,
const struct value_print_options *options)
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
index 81fbe52795..6f998d2303 100644
index 1a32d2f871..a0bd5c2337 100644
--- a/gdb/amd64-tdep.c
+++ b/gdb/amd64-tdep.c
@@ -727,7 +727,7 @@ amd64_return_value (struct gdbarch *gdbarch, struct value *function,
@ -1275,7 +1275,7 @@ index cc7a67a402..b5732cb48e 100644
const struct arm_linux_hwbp_cap *cap = arm_linux_get_hwbp_cap ();
CORE_ADDR max_wp_length, aligned_addr;
diff --git a/gdb/ax-gdb.c b/gdb/ax-gdb.c
index 5027f6a464..c2ef7baa48 100644
index 5a2a0a00cf..97db828920 100644
--- a/gdb/ax-gdb.c
+++ b/gdb/ax-gdb.c
@@ -82,12 +82,12 @@ static void gen_traced_pop (struct agent_expr *, struct axs_value *);
@ -1401,10 +1401,10 @@ index 066c5ee21e..e407b5b665 100644
/* Append a goto op to EXPR. OP is the actual op (must be aop_goto or
aop_if_goto). We assume we don't know the target offset yet,
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c
index fb129bf38a..7f47af941c 100644
index 2d8a8d1a50..79cd7d5e2e 100644
--- a/gdb/breakpoint.c
+++ b/gdb/breakpoint.c
@@ -2068,9 +2068,9 @@ should_be_inserted (struct bp_location *bl)
@@ -2064,9 +2064,9 @@ should_be_inserted (struct bp_location *bl)
{
fprintf_unfiltered (gdb_stdlog,
"infrun: stepping past non-steppable watchpoint. "
@ -1416,7 +1416,7 @@ index fb129bf38a..7f47af941c 100644
}
return 0;
}
@@ -6866,7 +6866,7 @@ breakpoint_address_match (const address_space *aspace1, CORE_ADDR addr1,
@@ -6851,7 +6851,7 @@ breakpoint_address_match (const address_space *aspace1, CORE_ADDR addr1,
static int
breakpoint_address_match_range (const address_space *aspace1,
CORE_ADDR addr1,
@ -1425,7 +1425,7 @@ index fb129bf38a..7f47af941c 100644
CORE_ADDR addr2)
{
return ((gdbarch_has_global_breakpoints (target_gdbarch ())
@@ -10993,7 +10993,7 @@ can_use_hardware_watchpoint (struct value *v)
@@ -10978,7 +10978,7 @@ can_use_hardware_watchpoint (struct value *v)
&& TYPE_CODE (vtype) != TYPE_CODE_ARRAY))
{
CORE_ADDR vaddr = value_address (v);
@ -1684,10 +1684,10 @@ index 9e18b22ff1..48770b65a8 100644
struct value *val,
const struct value_print_options *options)
diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
index d2742bbd91..d40a52c4e0 100644
index d1d8dcc4bf..508815f91f 100644
--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -1818,7 +1818,7 @@ rw_pieced_value (struct value *v, struct value *from)
@@ -1817,7 +1817,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];
@ -1696,7 +1696,7 @@ index d2742bbd91..d40a52c4e0 100644
this_size_bits = p->size - bits_to_skip;
if (this_size_bits > max_offset - offset)
@@ -2065,7 +2065,7 @@ write_pieced_value (struct value *to, struct value *from)
@@ -2064,7 +2064,7 @@ write_pieced_value (struct value *to, struct value *from)
static int
check_pieced_synthetic_pointer (const struct value *value, LONGEST bit_offset,
@ -1705,7 +1705,7 @@ index d2742bbd91..d40a52c4e0 100644
{
struct piece_closure *c
= (struct piece_closure *) value_computed_closure (value);
@@ -2078,7 +2078,7 @@ check_pieced_synthetic_pointer (const struct value *value, LONGEST bit_offset,
@@ -2077,7 +2077,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];
@ -1714,10 +1714,10 @@ index d2742bbd91..d40a52c4e0 100644
if (bit_offset > 0)
{
@@ -2181,8 +2181,8 @@ indirect_pieced_value (struct value *value)
@@ -2179,8 +2179,8 @@ indirect_pieced_value (struct value *value)
= (struct piece_closure *) value_computed_closure (value);
struct type *type;
struct frame_info *frame;
struct dwarf2_locexpr_baton baton;
- int i, bit_length;
- LONGEST bit_offset;
+ int i;
@ -1725,7 +1725,7 @@ index d2742bbd91..d40a52c4e0 100644
struct dwarf_expr_piece *piece = NULL;
LONGEST byte_offset;
enum bfd_endian byte_order;
@@ -2199,7 +2199,7 @@ indirect_pieced_value (struct value *value)
@@ -2197,7 +2197,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];
@ -1734,7 +1734,7 @@ index d2742bbd91..d40a52c4e0 100644
if (bit_offset > 0)
{
@@ -2489,9 +2489,9 @@ if (frame != NULL) select_frame (frame);
@@ -2486,9 +2486,9 @@ if (frame != NULL) select_frame (frame);
case DWARF_VALUE_STACK:
{
struct value *value = ctx.fetch (0);
@ -1748,10 +1748,10 @@ index d2742bbd91..d40a52c4e0 100644
if (subobj_byte_offset + len > max)
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 72d15a94d8..f14f5b563a 100644
index e2fc1310d8..d47497cec7 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -2165,12 +2165,12 @@ dwarf2_complex_location_expr_complaint (void)
@@ -2268,12 +2268,12 @@ dwarf2_complex_location_expr_complaint (void)
}
static void
@ -1768,7 +1768,7 @@ index 72d15a94d8..f14f5b563a 100644
}
static void
@@ -13910,8 +13910,8 @@ dwarf2_add_field (struct field_info *fip, struct die_info *die,
@@ -15074,8 +15074,8 @@ dwarf2_add_field (struct field_info *fip, struct die_info *die,
object, and then subtract off the number of bits of
the field itself. The result is the bit offset of
the LSB of the field. */
@ -1862,7 +1862,7 @@ index 5633b4121d..fb00f37486 100644
struct value *,
const struct value_print_options *);
diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c
index b878d52b62..4ce78b1d52 100644
index aa46b0967f..27d63495af 100644
--- a/gdb/f-valprint.c
+++ b/gdb/f-valprint.c
@@ -36,7 +36,7 @@
@ -1988,10 +1988,10 @@ index 0ed7a14d03..4705805c6e 100644
int *optimizedp, int *unavailablep);
diff --git a/gdb/gdbarch.c b/gdb/gdbarch.c
index 007392cd6a..de8db19c44 100644
index 8177f0539c..966cc65988 100644
--- a/gdb/gdbarch.c
+++ b/gdb/gdbarch.c
@@ -1805,7 +1805,7 @@ set_gdbarch_wchar_signed (struct gdbarch *gdbarch,
@@ -1811,7 +1811,7 @@ set_gdbarch_wchar_signed (struct gdbarch *gdbarch,
}
const struct floatformat **
@ -2001,7 +2001,7 @@ index 007392cd6a..de8db19c44 100644
gdb_assert (gdbarch != NULL);
gdb_assert (gdbarch->floatformat_for_type != NULL);
diff --git a/gdb/gdbarch.h b/gdb/gdbarch.h
index d2e6b6f63e..cbf3385db7 100644
index 1a654b6250..876b0767cb 100644
--- a/gdb/gdbarch.h
+++ b/gdb/gdbarch.h
@@ -198,8 +198,8 @@ extern void set_gdbarch_wchar_signed (struct gdbarch *gdbarch, int wchar_signed)
@ -2016,7 +2016,7 @@ index d2e6b6f63e..cbf3385db7 100644
/* For most targets, a pointer on the target and its representation as an
diff --git a/gdb/gdbarch.sh b/gdb/gdbarch.sh
index 6459b12747..0b72aceea1 100755
index 1f165cf11b..31b2528251 100755
--- a/gdb/gdbarch.sh
+++ b/gdb/gdbarch.sh
@@ -388,7 +388,7 @@ v;int;wchar_signed;;;1;-1;1
@ -2089,7 +2089,7 @@ index a25e0a84e9..775f120845 100644
struct type *type;
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
index d92ffc228b..c7ecf30554 100644
index 53d1592318..8a929113b8 100644
--- a/gdb/gdbtypes.h
+++ b/gdb/gdbtypes.h
@@ -782,7 +782,7 @@ struct type
@ -2101,7 +2101,7 @@ index d92ffc228b..c7ecf30554 100644
/* * Core type, shared by a group of qualified types. */
@@ -1662,7 +1662,7 @@ extern unsigned int type_length_units (struct type *type);
@@ -1684,7 +1684,7 @@ extern unsigned int type_length_units (struct type *type);
/* * Helper function to construct objfile-owned types. */
@ -2110,7 +2110,7 @@ index d92ffc228b..c7ecf30554 100644
const char *);
extern struct type *init_integer_type (struct objfile *, int, int,
const char *);
@@ -1679,7 +1679,7 @@ extern struct type *init_pointer_type (struct objfile *, int, const char *,
@@ -1701,7 +1701,7 @@ extern struct type *init_pointer_type (struct objfile *, int, const char *,
struct type *);
/* Helper functions to construct architecture-owned types. */
@ -2254,7 +2254,7 @@ index 77d37387ad..896a71911e 100644
struct value *val,
const struct value_print_options *options)
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index 290b1c8368..d4f61eec76 100644
index 7a1dffa66f..2f47affdc6 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -8175,7 +8175,7 @@ i386_fast_tracepoint_valid_at (struct gdbarch *gdbarch, CORE_ADDR addr,
@ -2382,7 +2382,7 @@ index 0dd6f19fc7..3701fbb728 100644
fprintf_filtered (stream, "] OF ");
m2_print_type (TYPE_TARGET_TYPE (type), "", stream, show, level, flags);
diff --git a/gdb/m2-valprint.c b/gdb/m2-valprint.c
index 9660fe7c03..7127af26f2 100644
index 344a37678d..03e3925269 100644
--- a/gdb/m2-valprint.c
+++ b/gdb/m2-valprint.c
@@ -35,7 +35,7 @@ static int print_unpacked_pointer (struct type *type,
@ -2421,7 +2421,7 @@ index 9660fe7c03..7127af26f2 100644
struct ui_file *stream, int recurse,
struct value *val,
const struct value_print_options *options,
@@ -308,13 +308,13 @@ static const struct generic_val_print_decorations m2_decorations =
@@ -308,12 +308,12 @@ static const struct generic_val_print_decorations m2_decorations =
function; they are identical. */
void
@ -2431,13 +2431,12 @@ index 9660fe7c03..7127af26f2 100644
struct value *original_value,
const struct value_print_options *options)
{
struct gdbarch *gdbarch = get_type_arch (type);
- unsigned len;
+ ULONGEST len;
struct type *elttype;
CORE_ADDR addr;
const gdb_byte *valaddr = value_contents_for_printing (original_value);
@@ -340,7 +340,7 @@ m2_val_print (struct type *type, int embedded_offset,
@@ -339,7 +339,7 @@ m2_val_print (struct type *type, int embedded_offset,
elements up to it. */
if (options->stop_print_at_null)
{
@ -2446,7 +2445,7 @@ index 9660fe7c03..7127af26f2 100644
/* Look for a NULL char. */
for (temp_len = 0;
@@ -416,7 +416,7 @@ m2_val_print (struct type *type, int embedded_offset,
@@ -415,7 +415,7 @@ m2_val_print (struct type *type, int embedded_offset,
{
struct type *range = elttype;
LONGEST low_bound, high_bound;
@ -2752,7 +2751,7 @@ index 0e43a64b69..20be2da63b 100644
if (len == 128 && name)
{
diff --git a/gdb/printcmd.c b/gdb/printcmd.c
index 38642641b9..d573fc909e 100644
index ed35004021..f7c4623399 100644
--- a/gdb/printcmd.c
+++ b/gdb/printcmd.c
@@ -277,7 +277,7 @@ print_formatted (struct value *val, int size,
@ -2928,10 +2927,10 @@ index c5ef41b7a6..0d4f2cdccc 100644
void transfer_regset (const struct regset *regset,
struct regcache *out_regcache,
diff --git a/gdb/remote.c b/gdb/remote.c
index 0a62ae00e5..47d3a04dd9 100644
index 852fdef490..e8e40c7f9b 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -9964,7 +9964,7 @@ int remote_hw_breakpoint_limit = -1;
@@ -9963,7 +9963,7 @@ int remote_hw_breakpoint_limit = -1;
static int
remote_region_ok_for_hw_watchpoint (struct target_ops *self,
@ -2941,7 +2940,7 @@ index 0a62ae00e5..47d3a04dd9 100644
if (remote_hw_watchpoint_length_limit == 0)
return 0;
diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
index 1853f683e9..5d64976f61 100644
index 95dd9bd8a7..1283814364 100644
--- a/gdb/rust-lang.c
+++ b/gdb/rust-lang.c
@@ -472,7 +472,7 @@ rust_printchar (int c, struct type *type, struct ui_file *stream)
@ -3050,7 +3049,7 @@ index 96aa30f4fb..ea760e10e5 100644
fprintf_filtered (outfile, " %02x",
(unsigned) SYMBOL_VALUE_BYTES (symbol)[i]);
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index 9691074bfe..04cadc1d4b 100644
index aaf11d81b8..2b449cbf01 100644
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -760,14 +760,14 @@ debug_watchpoint_addr_within_range (struct target_ops *self, CORE_ADDR arg1, COR
@ -3080,7 +3079,7 @@ index 9691074bfe..04cadc1d4b 100644
target_debug_print_int (result);
fputs_unfiltered ("\n", gdb_stdlog);
diff --git a/gdb/target.c b/gdb/target.c
index 3bfc8b5aef..c9471f61fb 100644
index 767a2ad45a..0942645a2a 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -56,7 +56,7 @@ static int default_watchpoint_addr_within_range (struct target_ops *,
@ -3102,7 +3101,7 @@ index 3bfc8b5aef..c9471f61fb 100644
return (len <= gdbarch_ptr_bit (target_gdbarch ()) / TARGET_CHAR_BIT);
}
diff --git a/gdb/target.h b/gdb/target.h
index 999541d5d2..349e87de6f 100644
index 1e9aa9f8d2..b65e34a14a 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -550,7 +550,7 @@ struct target_ops
@ -3115,7 +3114,7 @@ index 999541d5d2..349e87de6f 100644
int (*to_can_accel_watchpoint_condition) (struct target_ops *,
diff --git a/gdb/tracepoint.c b/gdb/tracepoint.c
index 76d05dfc13..dd94ea8c8a 100644
index 550a72fe5e..e7f1cc0d11 100644
--- a/gdb/tracepoint.c
+++ b/gdb/tracepoint.c
@@ -852,10 +852,10 @@ collection_list::add_register (unsigned int regno)
@ -3225,7 +3224,7 @@ index 60caa7ad39..f67079cdcf 100644
struct gdbarch *gdbarch,
long frame_regno, long frame_offset,
diff --git a/gdb/valarith.c b/gdb/valarith.c
index 59af9fcde4..90024302bc 100644
index eddfdb367d..c5357f9981 100644
--- a/gdb/valarith.c
+++ b/gdb/valarith.c
@@ -184,7 +184,7 @@ value_subscript (struct value *array, LONGEST index)
@ -3244,9 +3243,9 @@ index 59af9fcde4..90024302bc 100644
- int inval1len, inval2len;
+ ssize_t inval1len, inval2len;
int count, idx;
char *ptr;
char inchar;
@@ -1422,7 +1422,7 @@ value_binop (struct value *arg1, struct value *arg2, enum exp_opcode op)
struct type *type1 = check_typedef (value_type (arg1));
@@ -1421,7 +1421,7 @@ value_binop (struct value *arg1, struct value *arg2, enum exp_opcode op)
int
value_logical_not (struct value *arg1)
{
@ -3255,7 +3254,7 @@ index 59af9fcde4..90024302bc 100644
const gdb_byte *p;
struct type *type1;
@@ -1450,11 +1450,11 @@ value_logical_not (struct value *arg1)
@@ -1449,11 +1449,11 @@ value_logical_not (struct value *arg1)
static int
value_strcmp (struct value *arg1, struct value *arg2)
{

View File

@ -72,7 +72,7 @@ Content-Disposition: attachment; filename=bitpos-ensure-size_t.patch
8 files changed, 29 insertions(+)
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
index 3100d72ad1..6fbf41bcdc 100644
index 21199bd988..220dc58ef4 100644
--- a/gdb/alpha-tdep.c
+++ b/gdb/alpha-tdep.c
@@ -415,6 +415,13 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@ -125,10 +125,10 @@ index 3cdc847fe3..8d5b395afd 100644
base_valaddr = buf.data ();
diff --git a/gdb/utils.c b/gdb/utils.c
index 5e99a4d501..f72ddab992 100644
index c306e0c384..a0c7e9b03a 100644
--- a/gdb/utils.c
+++ b/gdb/utils.c
@@ -2822,6 +2822,18 @@ string_to_core_addr (const char *my_string)
@@ -2836,6 +2836,18 @@ string_to_core_addr (const char *my_string)
return addr;
}

View File

@ -317,10 +317,10 @@ index 1dd383aecb..dbb98c165d 100644
{
int pflags = 0;
diff --git a/gdb/remote.c b/gdb/remote.c
index 47d3a04dd9..303fcddd8a 100644
index e8e40c7f9b..a33a70642b 100644
--- a/gdb/remote.c
+++ b/gdb/remote.c
@@ -9892,7 +9892,7 @@ remote_insert_watchpoint (struct target_ops *self, CORE_ADDR addr, int len,
@@ -9891,7 +9891,7 @@ remote_insert_watchpoint (struct target_ops *self, CORE_ADDR addr, int len,
p = strchr (rs->buf, '\0');
addr = remote_address_masked (addr);
p += hexnumstr (p, (ULONGEST) addr);
@ -329,7 +329,7 @@ index 47d3a04dd9..303fcddd8a 100644
putpkt (rs->buf);
getpkt (&rs->buf, &rs->buf_size, 0);
@@ -9912,7 +9912,7 @@ remote_insert_watchpoint (struct target_ops *self, CORE_ADDR addr, int len,
@@ -9911,7 +9911,7 @@ remote_insert_watchpoint (struct target_ops *self, CORE_ADDR addr, int len,
static int
remote_watchpoint_addr_within_range (struct target_ops *target, CORE_ADDR addr,
@ -338,7 +338,7 @@ index 47d3a04dd9..303fcddd8a 100644
{
CORE_ADDR diff = remote_address_masked (addr - start);
@@ -9941,7 +9941,7 @@ remote_remove_watchpoint (struct target_ops *self, CORE_ADDR addr, int len,
@@ -9940,7 +9940,7 @@ remote_remove_watchpoint (struct target_ops *self, CORE_ADDR addr, int len,
p = strchr (rs->buf, '\0');
addr = remote_address_masked (addr);
p += hexnumstr (p, (ULONGEST) addr);
@ -348,7 +348,7 @@ index 47d3a04dd9..303fcddd8a 100644
getpkt (&rs->buf, &rs->buf_size, 0);
diff --git a/gdb/target-delegates.c b/gdb/target-delegates.c
index 04cadc1d4b..052638b92b 100644
index 2b449cbf01..f725215fff 100644
--- a/gdb/target-delegates.c
+++ b/gdb/target-delegates.c
@@ -733,14 +733,14 @@ debug_stopped_data_address (struct target_ops *self, CORE_ADDR *arg1)
@ -411,7 +411,7 @@ index 04cadc1d4b..052638b92b 100644
target_debug_print_int (arg3);
fputs_unfiltered (", ", gdb_stdlog);
diff --git a/gdb/target.c b/gdb/target.c
index c9471f61fb..bcc67a9b4b 100644
index 0942645a2a..25a4c3194e 100644
--- a/gdb/target.c
+++ b/gdb/target.c
@@ -53,7 +53,7 @@ static void generic_tls_error (void) ATTRIBUTE_NORETURN;
@ -433,7 +433,7 @@ index c9471f61fb..bcc67a9b4b 100644
return addr >= start && addr < start + length;
}
diff --git a/gdb/target.h b/gdb/target.h
index 349e87de6f..97ce16caf4 100644
index b65e34a14a..c2118f9639 100644
--- a/gdb/target.h
+++ b/gdb/target.h
@@ -544,7 +544,7 @@ struct target_ops

View File

@ -183,7 +183,7 @@ Content-Disposition: attachment; filename=bitpos-tdep.patch
34 files changed, 151 insertions(+), 143 deletions(-)
diff --git a/gdb/alpha-tdep.c b/gdb/alpha-tdep.c
index 6fbf41bcdc..e9ea0b4ba1 100644
index 220dc58ef4..79d2a4da34 100644
--- a/gdb/alpha-tdep.c
+++ b/gdb/alpha-tdep.c
@@ -301,17 +301,17 @@ alpha_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@ -229,7 +229,7 @@ index 6fbf41bcdc..e9ea0b4ba1 100644
offset += tlen;
contents += tlen;
diff --git a/gdb/amd64-tdep.c b/gdb/amd64-tdep.c
index 6f998d2303..00c8dd90d0 100644
index a0bd5c2337..916c228277 100644
--- a/gdb/amd64-tdep.c
+++ b/gdb/amd64-tdep.c
@@ -880,8 +880,8 @@ amd64_push_arguments (struct regcache *regcache, int nargs,
@ -275,7 +275,7 @@ index 975c6848a4..a0eedb2a9b 100644
/* See if our value is returned through a register. If it is, then
diff --git a/gdb/arm-tdep.c b/gdb/arm-tdep.c
index 54c6392ba7..39dcdb73ff 100644
index ac92c88b59..8291136764 100644
--- a/gdb/arm-tdep.c
+++ b/gdb/arm-tdep.c
@@ -3477,7 +3477,7 @@ arm_vfp_cprc_reg_char (enum arm_vfp_cprc_base_type b)
@ -516,7 +516,7 @@ index c642040432..1b30a50639 100644
if (struct_return)
diff --git a/gdb/i386-tdep.c b/gdb/i386-tdep.c
index d4f61eec76..5f6e31c9b3 100644
index 2f47affdc6..38553089a8 100644
--- a/gdb/i386-tdep.c
+++ b/gdb/i386-tdep.c
@@ -2677,7 +2677,7 @@ i386_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@ -669,10 +669,10 @@ index 6be27a96c6..8f186c75a2 100644
if (m88k_in_register_p (type))
{
diff --git a/gdb/mep-tdep.c b/gdb/mep-tdep.c
index bf08ca14d2..224642fe42 100644
index 202cccb6e4..75398e442c 100644
--- a/gdb/mep-tdep.c
+++ b/gdb/mep-tdep.c
@@ -2256,7 +2256,7 @@ push_large_arguments (CORE_ADDR sp, int argc, struct value **argv,
@@ -2253,7 +2253,7 @@ push_large_arguments (CORE_ADDR sp, int argc, struct value **argv,
for (i = 0; i < argc; i++)
{
@ -682,7 +682,7 @@ index bf08ca14d2..224642fe42 100644
if (arg_len > MEP_GPR_SIZE)
{
diff --git a/gdb/mips-tdep.c b/gdb/mips-tdep.c
index 830535f73d..0aca8ce3e0 100644
index a09f644aaa..4f8fda4bbb 100644
--- a/gdb/mips-tdep.c
+++ b/gdb/mips-tdep.c
@@ -477,7 +477,7 @@ static void
@ -705,7 +705,7 @@ index 830535f73d..0aca8ce3e0 100644
if (mips_debug && out != NULL)
{
int i;
@@ -4534,13 +4534,13 @@ mips_eabi_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -4533,13 +4533,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));
@ -722,7 +722,7 @@ index 830535f73d..0aca8ce3e0 100644
/* The EABI passes structures that do not fit in a register by
reference. */
@@ -4810,7 +4810,7 @@ mips_eabi_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -4809,7 +4809,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,
@ -731,7 +731,7 @@ index 830535f73d..0aca8ce3e0 100644
{
int i;
@@ -4825,7 +4825,7 @@ mips_n32n64_fp_arg_chunk_p (struct gdbarch *gdbarch, struct type *arg_type,
@@ -4824,7 +4824,7 @@ mips_n32n64_fp_arg_chunk_p (struct gdbarch *gdbarch, struct type *arg_type,
for (i = 0; i < TYPE_NFIELDS (arg_type); i++)
{
@ -740,7 +740,7 @@ index 830535f73d..0aca8ce3e0 100644
struct type *field_type;
/* We're only looking at normal fields. */
@@ -4867,7 +4867,7 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -4866,7 +4866,7 @@ mips_n32n64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int argreg;
int float_argreg;
int argnum;
@ -749,7 +749,7 @@ index 830535f73d..0aca8ce3e0 100644
int stack_offset = 0;
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
@@ -5218,11 +5218,11 @@ mips_n32n64_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -5217,11 +5217,11 @@ mips_n32n64_return_value (struct gdbarch *gdbarch, struct value *function,
: MIPS_V0_REGNUM);
field < TYPE_NFIELDS (type); field++, regnum += 2)
{
@ -765,7 +765,7 @@ index 830535f73d..0aca8ce3e0 100644
if (TYPE_LENGTH (TYPE_FIELD_TYPE (type, field)) == 16)
{
/* A 16-byte long double field goes in two consecutive
@@ -5264,8 +5264,8 @@ mips_n32n64_return_value (struct gdbarch *gdbarch, struct value *function,
@@ -5263,8 +5263,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)
@ -776,7 +776,7 @@ index 830535f73d..0aca8ce3e0 100644
mips_xfer_register (gdbarch, regcache,
gdbarch_num_regs (gdbarch) + regnum,
xfer, BFD_ENDIAN_UNKNOWN, readbuf, writebuf,
@@ -5323,7 +5323,7 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5322,7 +5322,7 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int argreg;
int float_argreg;
int argnum;
@ -785,7 +785,7 @@ index 830535f73d..0aca8ce3e0 100644
int stack_offset = 0;
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
@@ -5387,13 +5387,13 @@ mips_o32_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5386,13 +5386,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));
@ -802,7 +802,7 @@ index 830535f73d..0aca8ce3e0 100644
val = value_contents (arg);
@@ -5847,8 +5847,8 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5846,8 +5846,8 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
int argreg;
int float_argreg;
int argnum;
@ -813,7 +813,7 @@ index 830535f73d..0aca8ce3e0 100644
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
CORE_ADDR func_addr = find_function_addr (function, NULL);
@@ -5908,13 +5908,13 @@ mips_o64_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@@ -5907,13 +5907,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));
@ -1160,7 +1160,7 @@ index 55aef132d9..ce1cf41d2f 100644
gdb_byte buf[16];
diff --git a/gdb/spu-tdep.c b/gdb/spu-tdep.c
index 34a536a260..4b39b1785e 100644
index fb9a5d8730..5c15ddc7c8 100644
--- a/gdb/spu-tdep.c
+++ b/gdb/spu-tdep.c
@@ -1430,7 +1430,7 @@ spu_push_dummy_call (struct gdbarch *gdbarch, struct value *function,
@ -1296,10 +1296,10 @@ index 153375a1bd..5ae186d7fb 100644
gdb_byte buf[xstormy16_pc_size];
diff --git a/gdb/xtensa-tdep.c b/gdb/xtensa-tdep.c
index 0b0ec2e416..9b538c6d7d 100644
index 4af6184200..ebad66a051 100644
--- a/gdb/xtensa-tdep.c
+++ b/gdb/xtensa-tdep.c
@@ -1632,8 +1632,7 @@ xtensa_store_return_value (struct type *type,
@@ -1628,8 +1628,7 @@ xtensa_store_return_value (struct type *type,
if (len > (callsize > 8 ? 8 : 16))
internal_error (__FILE__, __LINE__,
@ -1309,7 +1309,7 @@ index 0b0ec2e416..9b538c6d7d 100644
areg = arreg_number (gdbarch,
gdbarch_tdep (gdbarch)->a0_base + 2 + callsize, wb);
@@ -1707,18 +1706,18 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
@@ -1703,18 +1702,18 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
{
enum bfd_endian byte_order = gdbarch_byte_order (gdbarch);
int i;
@ -1331,7 +1331,7 @@ index 0b0ec2e416..9b538c6d7d 100644
int regno; /* regno if in register. */
} u;
};
@@ -1742,9 +1741,10 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
@@ -1738,9 +1737,10 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
{
struct value *arg = args[i];
struct type *arg_type = check_typedef (value_type (arg));
@ -1345,7 +1345,7 @@ index 0b0ec2e416..9b538c6d7d 100644
switch (TYPE_CODE (arg_type))
{
case TYPE_CODE_INT:
@@ -1814,8 +1814,8 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
@@ -1810,8 +1810,8 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
info->align = TYPE_LENGTH (builtin_type (gdbarch)->builtin_long);
break;
}
@ -1355,7 +1355,7 @@ index 0b0ec2e416..9b538c6d7d 100644
/* Align size and onstack_size. */
size = (size + info->align - 1) & ~(info->align - 1);
@@ -1860,7 +1860,7 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
@@ -1856,7 +1856,7 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
if (info->onstack)
{
@ -1364,7 +1364,7 @@ index 0b0ec2e416..9b538c6d7d 100644
CORE_ADDR offset = sp + info->u.offset;
/* Odd-sized structs are aligned to the lower side of a memory
@@ -1876,7 +1876,7 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
@@ -1872,7 +1872,7 @@ xtensa_push_dummy_call (struct gdbarch *gdbarch,
}
else
{

View File

@ -127,7 +127,7 @@ index dccdfe79c6..418693eaba 100644
break;
diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c
index 4ce78b1d52..10c574c7fa 100644
index 27d63495af..bd2e2a7d32 100644
--- a/gdb/f-valprint.c
+++ b/gdb/f-valprint.c
@@ -41,7 +41,7 @@ LONGEST f77_array_offset_tbl[MAX_FORTRAN_DIMS + 1][2];

View File

@ -26,10 +26,10 @@ And adjust its testcase.
2 files changed, 17 insertions(+), 3 deletions(-)
diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c
index 10c574c7fa..eee090dfdd 100644
index bd2e2a7d32..88ca97cbcc 100644
--- a/gdb/f-valprint.c
+++ b/gdb/f-valprint.c
@@ -314,8 +314,22 @@ f_val_print (struct type *type, LONGEST embedded_offset,
@@ -313,8 +313,22 @@ f_val_print (struct type *type, LONGEST embedded_offset,
original_value, &opts, 0, stream);
}
else

View File

@ -66,10 +66,10 @@ dbfd7140bf4c0500d1f5d192be781f83f78f7922
create mode 100644 gdb/testsuite/gdb.fortran/vla-stride.f90
diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
index fe2fea0d0e..54592f0bfc 100644
index 83a8c34229..1eb6182281 100644
--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -2604,11 +2604,14 @@ dwarf2_locexpr_baton_eval (const struct dwarf2_locexpr_baton *dlbaton,
@@ -2601,11 +2601,14 @@ dwarf2_locexpr_baton_eval (const struct dwarf2_locexpr_baton *dlbaton,
/* See dwarf2loc.h. */
int
@ -86,7 +86,7 @@ index fe2fea0d0e..54592f0bfc 100644
if (prop == NULL)
return 0;
@@ -2632,7 +2635,7 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
@@ -2629,7 +2632,7 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
*value = value_as_address (val);
}
@ -95,7 +95,7 @@ index fe2fea0d0e..54592f0bfc 100644
}
}
break;
@@ -2654,7 +2657,7 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
@@ -2651,7 +2654,7 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
if (!value_optimized_out (val))
{
*value = value_as_address (val);
@ -104,7 +104,7 @@ index fe2fea0d0e..54592f0bfc 100644
}
}
}
@@ -2662,8 +2665,8 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
@@ -2659,8 +2662,8 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
case PROP_CONST:
*value = prop->data.const_val;
@ -115,7 +115,7 @@ index fe2fea0d0e..54592f0bfc 100644
case PROP_ADDR_OFFSET:
{
struct dwarf2_property_baton *baton
@@ -2684,11 +2687,38 @@ dwarf2_evaluate_property (const struct dynamic_prop *prop,
@@ -2681,11 +2684,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);
@ -174,10 +174,10 @@ index db026d3e68..6d24a027a3 100644
property to C code.
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 78c663c49b..4f2d04329c 100644
index b4e60a4409..3f04c6f8d4 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -16310,7 +16310,7 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
@@ -17522,7 +17522,7 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
struct type *base_type, *orig_base_type;
struct type *range_type;
struct attribute *attr;
@ -186,7 +186,7 @@ index 78c663c49b..4f2d04329c 100644
int low_default_is_valid;
int high_bound_is_count = 0;
const char *name;
@@ -16330,7 +16330,9 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
@@ -17542,7 +17542,9 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
low.kind = PROP_CONST;
high.kind = PROP_CONST;
@ -196,7 +196,7 @@ index 78c663c49b..4f2d04329c 100644
/* Set LOW_DEFAULT_IS_VALID if current language and DWARF version allow
omitting DW_AT_lower_bound. */
@@ -16363,6 +16365,13 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
@@ -17575,6 +17577,13 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
break;
}
@ -210,7 +210,7 @@ index 78c663c49b..4f2d04329c 100644
attr = dwarf2_attr (die, DW_AT_lower_bound, cu);
if (attr)
attr_to_dynamic_prop (attr, die, cu, &low);
@@ -16439,7 +16448,7 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
@@ -17651,7 +17660,7 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
&& !TYPE_UNSIGNED (base_type) && (high.data.const_val & negative_mask))
high.data.const_val |= negative_mask;
@ -807,7 +807,7 @@ index 217191ac88..71c61cab69 100644
;
diff --git a/gdb/f-valprint.c b/gdb/f-valprint.c
index c9ece0d5c0..b878d52b62 100644
index d16dc0593d..aa46b0967f 100644
--- a/gdb/f-valprint.c
+++ b/gdb/f-valprint.c
@@ -119,8 +119,14 @@ f77_print_array_1 (int nss, int ndimensions, struct type *type,
@ -939,7 +939,7 @@ index 01ab6fa8c7..63ada5a46c 100644
return static_range_type;
}
diff --git a/gdb/gdbtypes.h b/gdb/gdbtypes.h
index 03709aa145..e26a09b456 100644
index 68ffaf832c..33de8faf2b 100644
--- a/gdb/gdbtypes.h
+++ b/gdb/gdbtypes.h
@@ -547,6 +547,10 @@ struct range_bounds
@ -961,7 +961,7 @@ index 03709aa145..e26a09b456 100644
} flds_bnds;
/* * Slot to point to additional language-specific fields of this
@@ -1223,6 +1226,15 @@ extern void allocate_gnat_aux_type (struct type *);
@@ -1230,6 +1233,15 @@ extern void allocate_gnat_aux_type (struct type *);
TYPE_RANGE_DATA(range_type)->high.kind
#define TYPE_LOW_BOUND_KIND(range_type) \
TYPE_RANGE_DATA(range_type)->low.kind
@ -977,7 +977,7 @@ index 03709aa145..e26a09b456 100644
/* Property accessors for the type data location. */
#define TYPE_DATA_LOCATION(thistype) \
@@ -1257,6 +1269,9 @@ extern void allocate_gnat_aux_type (struct type *);
@@ -1264,6 +1276,9 @@ extern void allocate_gnat_aux_type (struct type *);
TYPE_HIGH_BOUND_UNDEFINED(TYPE_INDEX_TYPE(arraytype))
#define TYPE_ARRAY_LOWER_BOUND_IS_UNDEFINED(arraytype) \
TYPE_LOW_BOUND_UNDEFINED(TYPE_INDEX_TYPE(arraytype))
@ -987,7 +987,7 @@ index 03709aa145..e26a09b456 100644
#define TYPE_ARRAY_UPPER_BOUND_VALUE(arraytype) \
(TYPE_HIGH_BOUND(TYPE_INDEX_TYPE((arraytype))))
@@ -1772,6 +1787,7 @@ extern struct type *create_array_type_with_stride
@@ -1794,6 +1809,7 @@ extern struct type *create_array_type_with_stride
(struct type *, struct type *, struct type *, unsigned int);
extern struct type *create_range_type (struct type *, struct type *,
@ -996,10 +996,10 @@ index 03709aa145..e26a09b456 100644
const struct dynamic_prop *);
diff --git a/gdb/parse.c b/gdb/parse.c
index 506efa38fb..9ba6314ab2 100644
index dff519ba63..922f0d5fe5 100644
--- a/gdb/parse.c
+++ b/gdb/parse.c
@@ -988,22 +988,20 @@ operator_length_standard (const struct expression *expr, int endpos,
@@ -986,22 +986,20 @@ operator_length_standard (const struct expression *expr, int endpos,
case OP_RANGE:
oplen = 3;
@ -1034,10 +1034,10 @@ index 506efa38fb..9ba6314ab2 100644
break;
diff --git a/gdb/rust-exp.y b/gdb/rust-exp.y
index e372a6ea1e..8bbecd2f2f 100644
index 731a0391a6..b82009a2a2 100644
--- a/gdb/rust-exp.y
+++ b/gdb/rust-exp.y
@@ -2452,23 +2452,17 @@ convert_ast_to_expression (struct parser_state *state,
@@ -2448,23 +2448,17 @@ convert_ast_to_expression (struct parser_state *state,
case OP_RANGE:
{
@ -1065,10 +1065,10 @@ index e372a6ea1e..8bbecd2f2f 100644
write_exp_elt_opcode (state, OP_RANGE);
write_exp_elt_longcst (state, kind);
diff --git a/gdb/rust-lang.c b/gdb/rust-lang.c
index f3562e0f32..1853f683e9 100644
index 535a72bda8..95dd9bd8a7 100644
--- a/gdb/rust-lang.c
+++ b/gdb/rust-lang.c
@@ -1368,9 +1368,9 @@ rust_range (struct expression *exp, int *pos, enum noside noside)
@@ -1366,9 +1366,9 @@ rust_range (struct expression *exp, int *pos, enum noside noside)
kind = (enum range_type) longest_to_int (exp->elts[*pos + 1].longconst);
*pos += 3;
@ -1080,7 +1080,7 @@ index f3562e0f32..1853f683e9 100644
high = evaluate_subexp (NULL_TYPE, exp, pos, noside);
if (noside == EVAL_SKIP)
@@ -1459,7 +1459,7 @@ rust_compute_range (struct type *type, struct value *range,
@@ -1457,7 +1457,7 @@ rust_compute_range (struct type *type, struct value *range,
*low = 0;
*high = 0;
@ -1089,7 +1089,7 @@ index f3562e0f32..1853f683e9 100644
if (TYPE_NFIELDS (type) == 0)
return;
@@ -1467,15 +1467,14 @@ rust_compute_range (struct type *type, struct value *range,
@@ -1465,15 +1465,14 @@ rust_compute_range (struct type *type, struct value *range,
i = 0;
if (strcmp (TYPE_FIELD_NAME (type, 0), "start") == 0)
{
@ -1107,7 +1107,7 @@ index f3562e0f32..1853f683e9 100644
*high = value_as_long (value_field (range, i));
}
}
@@ -1490,7 +1489,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
@@ -1488,7 +1487,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
struct type *rhstype;
LONGEST low, high_bound;
/* Initialized to appease the compiler. */
@ -1116,7 +1116,7 @@ index f3562e0f32..1853f683e9 100644
LONGEST high = 0;
int want_slice = 0;
@@ -1588,7 +1587,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
@@ -1586,7 +1585,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
error (_("Cannot subscript non-array type"));
if (want_slice
@ -1125,7 +1125,7 @@ index f3562e0f32..1853f683e9 100644
low = low_bound;
if (low < 0)
error (_("Index less than zero"));
@@ -1606,7 +1605,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
@@ -1604,7 +1603,7 @@ rust_subscript (struct expression *exp, int *pos, enum noside noside,
CORE_ADDR addr;
struct value *addrval, *tem;
@ -1751,7 +1751,7 @@ index 0006b3364a..b3ada0a41b 100644
+
end program vla
diff --git a/gdb/valarith.c b/gdb/valarith.c
index 89e44f3fb0..59af9fcde4 100644
index f3b44f9682..eddfdb367d 100644
--- a/gdb/valarith.c
+++ b/gdb/valarith.c
@@ -189,10 +189,16 @@ value_subscripted_rvalue (struct value *array, LONGEST index, int lowerbound)

View File

@ -59,7 +59,7 @@ git diff --stat -p gdb/master...gdb/users/bheckel/fortran-vla-strings
create mode 100644 gdb/testsuite/gdb.fortran/vla-strings.f90
diff --git a/gdb/NEWS b/gdb/NEWS
index ff9a819918..100470b90d 100644
index c6fe297159..c0830619fe 100644
--- a/gdb/NEWS
+++ b/gdb/NEWS
@@ -1,6 +1,8 @@
@ -105,10 +105,10 @@ index 653fed657a..96e6c597cf 100644
type_print (value_type (val), "", stream, -1);
fprintf_filtered (stream, ") ");
diff --git a/gdb/dwarf2read.c b/gdb/dwarf2read.c
index 4f2d04329c..fdd1d9d688 100644
index 3f04c6f8d4..f32b115500 100644
--- a/gdb/dwarf2read.c
+++ b/gdb/dwarf2read.c
@@ -1974,7 +1974,8 @@ static void read_signatured_type (struct signatured_type *);
@@ -2077,7 +2077,8 @@ static void read_signatured_type (struct signatured_type *);
static int attr_to_dynamic_prop (const struct attribute *attr,
struct die_info *die, struct dwarf2_cu *cu,
@ -118,7 +118,7 @@ index 4f2d04329c..fdd1d9d688 100644
/* memory allocation interface */
@@ -12562,7 +12563,7 @@ read_func_scope (struct die_info *die, struct dwarf2_cu *cu)
@@ -13735,7 +13736,7 @@ read_func_scope (struct die_info *die, struct dwarf2_cu *cu)
{
newobj->static_link
= XOBNEW (&objfile->objfile_obstack, struct dynamic_prop);
@ -127,7 +127,7 @@ index 4f2d04329c..fdd1d9d688 100644
}
cu->list_in_scope = &local_symbols;
@@ -15834,29 +15835,94 @@ read_tag_string_type (struct die_info *die, struct dwarf2_cu *cu)
@@ -17046,29 +17047,94 @@ read_tag_string_type (struct die_info *die, struct dwarf2_cu *cu)
struct gdbarch *gdbarch = get_objfile_arch (objfile);
struct type *type, *range_type, *index_type, *char_type;
struct attribute *attr;
@ -233,7 +233,7 @@ index 4f2d04329c..fdd1d9d688 100644
char_type = language_string_char_type (cu->language_defn, gdbarch);
type = create_string_type (NULL, char_type, range_type);
@@ -16205,7 +16271,8 @@ read_base_type (struct die_info *die, struct dwarf2_cu *cu)
@@ -17417,7 +17483,8 @@ read_base_type (struct die_info *die, struct dwarf2_cu *cu)
static int
attr_to_dynamic_prop (const struct attribute *attr, struct die_info *die,
@ -243,7 +243,7 @@ index 4f2d04329c..fdd1d9d688 100644
{
struct dwarf2_property_baton *baton;
struct obstack *obstack = &cu->objfile->objfile_obstack;
@@ -16215,14 +16282,33 @@ attr_to_dynamic_prop (const struct attribute *attr, struct die_info *die,
@@ -17427,14 +17494,33 @@ attr_to_dynamic_prop (const struct attribute *attr, struct die_info *die,
if (attr_form_is_block (attr))
{
@ -281,7 +281,7 @@ index 4f2d04329c..fdd1d9d688 100644
}
else if (attr_form_is_ref (attr))
{
@@ -16255,8 +16341,28 @@ attr_to_dynamic_prop (const struct attribute *attr, struct die_info *die,
@@ -17467,8 +17553,28 @@ attr_to_dynamic_prop (const struct attribute *attr, struct die_info *die,
baton = XOBNEW (obstack, struct dwarf2_property_baton);
baton->referenced_type = die_type (target_die, target_cu);
baton->locexpr.per_cu = cu->per_cu;
@ -312,7 +312,7 @@ index 4f2d04329c..fdd1d9d688 100644
prop->data.baton = baton;
prop->kind = PROP_LOCEXPR;
gdb_assert (prop->data.baton != NULL);
@@ -16367,24 +16473,24 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
@@ -17579,24 +17685,24 @@ read_subrange_type (struct die_info *die, struct dwarf2_cu *cu)
attr = dwarf2_attr (die, DW_AT_byte_stride, cu);
if (attr)
@ -341,7 +341,7 @@ index 4f2d04329c..fdd1d9d688 100644
{
/* If bounds are constant do the final calculation here. */
if (low.kind == PROP_CONST && high.kind == PROP_CONST)
@@ -23973,7 +24079,7 @@ set_die_type (struct die_info *die, struct type *type, struct dwarf2_cu *cu)
@@ -25183,7 +25289,7 @@ set_die_type (struct die_info *die, struct type *type, struct dwarf2_cu *cu)
attr = dwarf2_attr (die, DW_AT_allocated, cu);
if (attr_form_is_block (attr))
{
@ -350,7 +350,7 @@ index 4f2d04329c..fdd1d9d688 100644
add_dyn_prop (DYN_PROP_ALLOCATED, prop, type, objfile);
}
else if (attr != NULL)
@@ -23988,7 +24094,7 @@ set_die_type (struct die_info *die, struct type *type, struct dwarf2_cu *cu)
@@ -25198,7 +25304,7 @@ set_die_type (struct die_info *die, struct type *type, struct dwarf2_cu *cu)
attr = dwarf2_attr (die, DW_AT_associated, cu);
if (attr_form_is_block (attr))
{
@ -359,7 +359,7 @@ index 4f2d04329c..fdd1d9d688 100644
add_dyn_prop (DYN_PROP_ASSOCIATED, prop, type, objfile);
}
else if (attr != NULL)
@@ -24001,7 +24107,7 @@ set_die_type (struct die_info *die, struct type *type, struct dwarf2_cu *cu)
@@ -25211,7 +25317,7 @@ set_die_type (struct die_info *die, struct type *type, struct dwarf2_cu *cu)
/* Read DW_AT_data_location and set in type. */
attr = dwarf2_attr (die, DW_AT_data_location, cu);
@ -1315,10 +1315,10 @@ index bee6ebe156..f6eb0469a9 100644
mi_gdb_test "582-var-show-format pvla2_not_associated" \
"582\\^done,format=\"natural\"" \
diff --git a/gdb/typeprint.c b/gdb/typeprint.c
index 427af17ad7..ad150cbfd1 100644
index 9d9d6f5a49..7dd978013a 100644
--- a/gdb/typeprint.c
+++ b/gdb/typeprint.c
@@ -511,6 +511,25 @@ whatis_exp (const char *exp, int show)
@@ -513,6 +513,25 @@ whatis_exp (const char *exp, int show)
printf_filtered (" */\n");
}

View File

@ -40,7 +40,7 @@ Jan
create mode 100644 gdb/testsuite/gdb.fortran/dynamic-other-frame.f90
diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
index 54592f0bfc..d2742bbd91 100644
index 1eb6182281..d1d8dcc4bf 100644
--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -42,6 +42,7 @@
@ -51,7 +51,7 @@ index 54592f0bfc..d2742bbd91 100644
#include "common/underlying.h"
#include "common/byte-vector.h"
@@ -2350,6 +2351,20 @@ dwarf2_evaluate_loc_desc_full (struct type *type, struct frame_info *frame,
@@ -2348,6 +2349,20 @@ dwarf2_evaluate_loc_desc_full (struct type *type, struct frame_info *frame,
ctx.per_cu = per_cu;
ctx.obj_address = 0;

View File

@ -18,7 +18,7 @@
Name: %{?scl_prefix}gdb
# Freeze it when GDB gets branched
%global snapsrc 20171204
%global snapsrc 20171213
# See timestamp of source gnulib installed into gdb/gnulib/ .
%global snapgnulib 20161115
%global tarname gdb-%{version}
@ -26,7 +26,7 @@ Version: 8.0.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: 34%{?dist}
Release: 35%{?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
@ -1017,6 +1017,9 @@ then
fi
%changelog
* Sat Dec 16 2017 Sergio Durigan Junior <sergiodj@redhat.com> - 8.0.50.20171204-35.fc26
- Rebase to FSF GDB 8.0.50.20171213 (8.1pre).
* Sun Dec 10 2017 Sergio Durigan Junior <sergiodj@redhat.com> - 8.0.50.20171204-34.fc26
- chmod +x on the generate-*.sh script.s
- Remove references to gdb-8.0.1 from 'sources' and '.gitignore'.

View File

@ -1,3 +1,3 @@
SHA512 (gdb-libstdc++-v3-python-7.1.1-20170526.tar.xz) = 3d540b99581ffa4cf2810bec979c9a01a1f8ce782b7c8efb46b40dd2421d60cdb0e52b53c5477c3e86a57957a2a14489f5c29dc53868738a1ef79e79cf76d0a1
SHA512 (v1.6.1.tar.gz) = c7c9c8ba78021fff3fde12a216f5729c6031114e5a727f49b7ff1a31c53b5ddba24d1b3aee252d8278ecd1fafe78a44ed059c12b9eb29eca33093e0720673468
SHA512 (gdb-8.0.50.20171204.tar.xz) = 42d109eb711a0e076a083c4e18ade6946fcac2192096d72dfd10eb4b4fbc72f94a06d5e9b0b715d2d03ac33775325feedea0388ad31ca94285a61f440259d76d
SHA512 (gdb-8.0.50.20171213.tar.xz) = 814539c92866e273a3249ca149fce902888762094746f4f91ddac40478f24daeedbaae1fc1bfab5aa633f01e712627e2aa3b928afb17dea61aa9b087f75e436e