Tree:
34d5ac9244
FSF
add-fakeroots-dir
arc-20081103-branch
arc-insight_6_8-branch
binutils-2_10-branch
binutils-2_11-branch
binutils-2_12-branch
binutils-2_13-branch
binutils-2_14-branch
binutils-2_15-branch
binutils-2_16-branch
binutils-2_17-branch
binutils-2_18-branch
binutils-2_19-branch
binutils-2_20-branch
binutils-2_21-branch
binutils-2_22-branch
binutils-2_23-branch
binutils-2_24-branch
binutils-2_25-branch
binutils-2_26-branch
binutils-2_27-branch
binutils-2_28-branch
binutils-2_29-branch
binutils-2_30-branch
binutils-2_31-branch
binutils-2_32-branch
binutils-2_33-branch
binutils-2_34-branch
binutils-2_35-branch
binutils-2_36-branch
binutils-2_37-branch
binutils-2_38-branch
binutils-2_39-branch
binutils-2_41-branch
binutils-2_41-release-point
binutils-2_42-branch
binutils-arc-20080908-branch
binutils-arc-20081103-branch
binutils-csl-2_17-branch
binutils-csl-arm-2005q1-branch
binutils-csl-gxxpro-3_4-branch
cagney-unwind-20030108-branch
cagney_bfdfile-20040213-branch
cagney_bigcore-20040122-branch
cagney_convert-20030606-branch
cagney_fileio-20030521-branch
cagney_frameaddr-20030403-branch
cagney_framebase-20030326-branch
cagney_lazyid-20030317-branch
cagney_offbyone-20030303-branch
cagney_regbuf-20020515-branch
cagney_sysregs-20020825-branch
cagney_tramp-20040309-branch
cagney_writestrings-20030508-branch
cagney_x86i386-20030821-branch
carlton_dictionary-branch
cgen-1_1-branch
cr-0x5f1
csl-arm-20050325-branch
cygnus
cygwin-64bit-branch
cygwin-64bit-premerge-branch
dberlin-typesystem-branch
dje-cgen-play1-branch
drow-cplus-branch
drow-reverse-20070409-branch
drow_intercu-20040221-branch
ezannoni_pie-20030916-branch
ezannoni_pie-20040323-branch
gdb-10-branch
gdb-11-branch
gdb-12-branch
gdb-13-branch
gdb-14-branch
gdb-4_18-branch
gdb-7.10-branch
gdb-7.11-branch
gdb-7.12-branch
gdb-7.7-branch
gdb-7.8-branch
gdb-7.9-branch
gdb-8.0-branch
gdb-8.1-branch
gdb-8.2-branch
gdb-8.3-branch
gdb-9-branch
gdb-csl-20060226-branch
gdb-csl-arm-20051020-branch
gdb-csl-available-20060303-branch
gdb-csl-gxxpro-6_3-branch
gdb-csl-symbian-20060226-branch
gdb-premipsmulti-2000-06-06-branch
gdb_5_0-2000-04-10-branch
gdb_5_1-2001-07-29-branch
gdb_5_1_0_1-2002-01-03-branch
gdb_5_2-branch
gdb_5_3-branch
gdb_6_0-branch
gdb_6_1-branch
gdb_6_2-branch
gdb_6_3-branch
gdb_6_4-branch
gdb_6_5-branch
gdb_6_6-branch
gdb_6_7-branch
gdb_6_8-branch
gdb_7_0-branch
gdb_7_1-branch
gdb_7_2-branch
gdb_7_3-branch
gdb_7_4-branch
gdb_7_5-branch
gdb_7_6-branch
gdb_s390-2001-09-26-branch
insight_6_8-branch
interps-20030202-branch
jimb-dwarf-compression-021023-branch
jimb-macro-020506-branch
jimb-ppc64-linux-20030509-branch
jimb-ppc64-linux-20030528-branch
jimb-ppc64-linux-20030613-branch
jimb-rda-nptl-branch
jimb-separate-debug-021125-branch
jimb-separate-debug-021223-branch
jimb_gnu_v3_branch
kettenis-i386newframe-20030308-branch
kettenis_i386newframe-20030406-branch
kettenis_i386newframe-20030419-branch
kettenis_sparc-20030918-branch
kseitz_interps-20020528-branch
master
msnyder-checkpoint-072509-branch
msnyder-fork-checkpoint-branch
msnyder-reverse-20060331-branch
msnyder-reverse-20060502-branch
msnyder-reverse-20080609-branch
msnyder-tracepoint-checkpoint-branch
multiprocess-20081120-branch
newlib-1_17_0-arc
newlib-autotools-branch
newlib-csl-20060320-branch
nickrob-async-20060513-branch
offbyone-20030313-branch
readline_4_3-import-branch
readline_5_1-import-branch
reverse-20080717-branch
reverse-20080930-branch
reverse-20081226-branch
sid-20020905-branch
tcltk840-20020924-branch
users/ARM/efi-aarch64-support-binutils
users/ARM/embedded-binutils-2_26-branch
users/ARM/embedded-gdb-7.10-branch
users/ARM/gcs-binutils-gdb-master
users/ARM/morello-binutils-gdb-master
users/ARM/sve
users/aburgess/bp-inferior-calls
users/aburgess/try-core-file-pid0
users/aburgess/try-mips-disasm-styling
users/ahajkova/try-frob
users/ahayward/variable_sve
users/ahayward/variable_sve2
added-to-binutils
arc-20081103-branchpoint
arc-insight_6_8-branchpoint
arc-sim-20090309
binu_ss_19990502
binu_ss_19990602
binu_ss_19990721
binutils-2_10
binutils-2_10-branchpoint
binutils-2_10_1
binutils-2_11
binutils-2_11_1
binutils-2_11_2
binutils-2_12
binutils-2_12-branchpoint
binutils-2_12_1
binutils-2_13
binutils-2_13-branchpoint
binutils-2_13_1
binutils-2_13_2
binutils-2_13_2_1
binutils-2_14
binutils-2_14-branchpoint
binutils-2_15
binutils-2_15-branchpoint
binutils-2_16
binutils-2_16-branchpoint
binutils-2_16_1
binutils-2_17
binutils-2_17-branchpoint
binutils-2_18
binutils-2_18-branchpoint
binutils-2_19
binutils-2_19-branchpoint
binutils-2_19_1
binutils-2_20
binutils-2_20-branchpoint
binutils-2_20_1
binutils-2_21
binutils-2_21-branchpoint
binutils-2_21_1
binutils-2_22
binutils-2_22-branchpoint
binutils-2_23
binutils-2_23-branchpoint
binutils-2_23_1
binutils-2_23_2
binutils-2_24
binutils-2_24-branchpoint
binutils-2_25
binutils-2_25_1
binutils-2_26
binutils-2_26_1
binutils-2_27
binutils-2_28
binutils-2_29
binutils-2_29_1
binutils-2_29_1.1
binutils-2_30
binutils-2_31
binutils-2_31_1
binutils-2_32
binutils-2_33
binutils-2_33_1
binutils-2_34
binutils-2_35
binutils-2_35_1
binutils-2_35_2
binutils-2_36
binutils-2_36_1
binutils-2_37
binutils-2_38
binutils-2_39
binutils-2_40
binutils-2_41
binutils-2_41-release
binutils-2_42
binutils-arc-20080908-branchpoint
binutils-arc-20081103-branchpoint
binutils-csl-2_17-branchpoint
binutils-csl-arm-2005q1-branchpoint
binutils-csl-arm-2005q1a
binutils-csl-arm-2005q1b
binutils-csl-arm-2006q1-6
binutils-csl-arm-2006q3-19
binutils-csl-arm-2006q3-21
binutils-csl-arm-2006q3-26
binutils-csl-arm-2006q3-27
binutils-csl-coldfire-4_1-10
binutils-csl-coldfire-4_1-11
binutils-csl-coldfire-4_1-28
binutils-csl-coldfire-4_1-30
binutils-csl-coldfire-4_1-32
binutils-csl-gxxpro-3_4-branchpoint
binutils-csl-innovasic-fido-3_4_4-33
binutils-csl-morpho-4_1-4
binutils-csl-palmsource-arm-prelinker-1_0-1
binutils-csl-renesas-4_1-6
binutils-csl-renesas-4_1-7
binutils-csl-renesas-4_1-8
binutils-csl-renesas-4_1-9
binutils-csl-sourcerygxx-3_4_4-17
binutils-csl-sourcerygxx-3_4_4-19
binutils-csl-sourcerygxx-3_4_4-21
binutils-csl-sourcerygxx-3_4_4-25
binutils-csl-sourcerygxx-3_4_4-32
binutils-csl-sourcerygxx-4_1-12
binutils-csl-sourcerygxx-4_1-13
binutils-csl-sourcerygxx-4_1-14
binutils-csl-sourcerygxx-4_1-15
binutils-csl-sourcerygxx-4_1-17
binutils-csl-sourcerygxx-4_1-18
binutils-csl-sourcerygxx-4_1-19
binutils-csl-sourcerygxx-4_1-20
binutils-csl-sourcerygxx-4_1-21
binutils-csl-sourcerygxx-4_1-22
binutils-csl-sourcerygxx-4_1-23
binutils-csl-sourcerygxx-4_1-24
binutils-csl-sourcerygxx-4_1-25
binutils-csl-sourcerygxx-4_1-26
binutils-csl-sourcerygxx-4_1-27
binutils-csl-sourcerygxx-4_1-28
binutils-csl-sourcerygxx-4_1-29
binutils-csl-sourcerygxx-4_1-30
binutils-csl-sourcerygxx-4_1-32
binutils-csl-sourcerygxx-4_1-4
binutils-csl-sourcerygxx-4_1-5
binutils-csl-sourcerygxx-4_1-6
binutils-csl-sourcerygxx-4_1-7
binutils-csl-sourcerygxx-4_1-8
binutils-csl-sourcerygxx-4_1-9
binutils-csl-wrs-linux-3_4_4-20
binutils-csl-wrs-linux-3_4_4-21
binutils-csl-wrs-linux-3_4_4-22
binutils-csl-wrs-linux-3_4_4-23
binutils-csl-wrs-linux-3_4_4-24
binutils_latest_snapshot
cagney-unwind-20030108-branchpoint
cagney_bfdfile-20040213-branchpoint
cagney_bigcore-20040122-branchpoint
cagney_convert-20030606-branchpoint
cagney_fileio-20030521-branchpoint
cagney_frameaddr-20030403-branchpoint
cagney_frameaddr-20030409-mergepoint
cagney_framebase-20030326-branchpoint
cagney_framebase-20030330-mergepoint
cagney_lazyid-20030317-branchpoint
cagney_offbyone-20030303-branchpoint
cagney_regbuf-20020515-branchpoint
cagney_sysregs-20020825-branchpoint
cagney_tramp-20040309-branchpoint
cagney_tramp-20040321-mergepoint
cagney_writestrings-20030508-branchpoint
cagney_x86i386-20030821-branchpoint
carlton-dictionary-20031111-merge
carlton_dictionary-20020920-branchpoint
carlton_dictionary-20020927-merge
carlton_dictionary-20021011-merge
carlton_dictionary-20021025-merge
carlton_dictionary-20021115-merge
carlton_dictionary-20021223-merge
carlton_dictionary-20030207-merge
carlton_dictionary-20030305-merge
carlton_dictionary-20030416-merge
carlton_dictionary-20030430-merge
carlton_dictionary-20030523-merge
carlton_dictionary-20030627-merge
carlton_dictionary-20030805-merge
carlton_dictionary-20030917-merge
carlton_dictionary-20031215-merge
carlton_dictionary-20040126-merge
cgen-1_1-branchpoint
cgen-snapshot-20071001
cgen-snapshot-20071101
cgen-snapshot-20071201
cgen-snapshot-20080101
cgen-snapshot-20080201
cgen-snapshot-20080301
cgen-snapshot-20080401
cgen-snapshot-20080501
cgen-snapshot-20080601
cgen-snapshot-20080701
cgen-snapshot-20080801
cgen-snapshot-20080901
cgen-snapshot-20081001
cgen-snapshot-20081101
cgen-snapshot-20081201
cgen-snapshot-20090101
cgen-snapshot-20090201
cgen-snapshot-20090301
cgen-snapshot-20090401
cgen-snapshot-20090501
cgen-snapshot-20090601
cgen-snapshot-20090701
cgen-snapshot-20090801
cgen-snapshot-20090901
cgen-snapshot-20091001
cgen-snapshot-20091101
cgen-snapshot-20091201
cgen-snapshot-20100101
cgen-snapshot-20100201
cgen-snapshot-20100301
cgen-snapshot-20100401
cgen-snapshot-20100501
cgen-snapshot-20100601
cgen-snapshot-20100701
cgen-snapshot-20100801
cgen-snapshot-20100901
cgen-snapshot-20101001
cgen-snapshot-20101101
cgen-snapshot-20101201
cgen-snapshot-20110101
cgen-snapshot-20110201
cgen-snapshot-20110301
cgen-snapshot-20110401
cgen-snapshot-20110501
cgen-snapshot-20110601
cgen-snapshot-20110701
cgen-snapshot-20110801
cgen-snapshot-20110901
cgen-snapshot-20111001
cgen-snapshot-20111101
cgen-snapshot-20111201
cgen-snapshot-20120101
cgen-snapshot-20120201
cgen-snapshot-20120301
cgen-snapshot-20120401
cgen-snapshot-20120501
cgen-snapshot-20120601
cgen-snapshot-20120701
cgen-snapshot-20120801
cgen-snapshot-20120901
cgen-snapshot-20121001
cgen-snapshot-20121101
cgen-snapshot-20121201
cgen-snapshot-20130101
cgen-snapshot-20130201
cgen-snapshot-20130301
cgen-snapshot-20130401
cgen-snapshot-20130501
cgen-snapshot-20130601
cgen-snapshot-20130701
cgen-snapshot-20130801
cgen-snapshot-20130901
cgen-snapshot-20131001
csl-arm-2003-q4
csl-arm-2004-q1
csl-arm-2004-q1a
csl-arm-2004-q3
csl-arm-2004-q3d
csl-arm-20050325-branchpoint
cygnus_cvs_20020108_pre
cygwin-1_1_1
cygwin-1_7_1-release
cygwin-1_7_10-release
cygwin-1_7_11-release
cygwin-1_7_12-release
cygwin-1_7_14-release
cygwin-1_7_14_2-release
cygwin-1_7_15-release
cygwin-1_7_16-release
cygwin-1_7_17-release
cygwin-1_7_18-release
cygwin-1_7_19-release
cygwin-1_7_2-release
cygwin-1_7_20-release
cygwin-1_7_21-release
cygwin-1_7_22-release
cygwin-1_7_23-release
cygwin-1_7_24-release
cygwin-1_7_25-release
cygwin-1_7_3-release
cygwin-1_7_4-release
cygwin-1_7_5-release
cygwin-1_7_7-release
cygwin-1_7_8-release
cygwin-1_7_9-release
cygwin-64bit-postmerge
cygwin-64bit-premerge
dberlin-typesystem-branchpoint
dje-cgen-play1-branchpoint
drow-cplus-branchpoint
drow-cplus-merge-20021020
drow-cplus-merge-20021025
drow-cplus-merge-20031214
drow-cplus-merge-20031220
drow-cplus-merge-20031224
drow-cplus-merge-20040113
drow-cplus-merge-20040208
drow-reverse-20070409-branchpoint
drow_intercu-20040221-branchpoint
drow_intercu-merge-20040327
drow_intercu-merge-20040402
drow_intercu-merge-20040915
drow_intercu-merge-20040921
egcs_20000222
ezannoni_pie-20030916-branchpoint
ezannoni_pie-20040323-branchpoint
gdb-10-branchpoint
gdb-10.1-release
gdb-10.2-release
gdb-11-branchpoint
gdb-11.1-release
gdb-11.2-release
gdb-12-branchpoint
gdb-12.1-release
gdb-13-branchpoint
gdb-13.1-release
gdb-13.2-release
gdb-14-branchpoint
gdb-14.1-release
gdb-14.2-release
gdb-1999-05-10
gdb-1999-05-19
gdb-1999-05-25
gdb-1999-06-01
gdb-1999-06-07
gdb-1999-06-14
gdb-1999-06-21
gdb-1999-06-28
gdb-1999-07-05
gdb-1999-07-07
gdb-1999-07-07-post-reformat-snapshot
gdb-1999-07-12
gdb-1999-07-19
gdb-1999-07-26
gdb-1999-08-02
gdb-1999-08-09
gdb-1999-08-16
gdb-1999-08-23
gdb-1999-08-30
gdb-1999-09-08
gdb-1999-09-13
gdb-1999-09-21
gdb-1999-09-28
gdb-1999-10-04
gdb-1999-10-11
gdb-1999-10-18
gdb-1999-10-25
gdb-1999-11-01
gdb-1999-11-08
gdb-1999-11-16
gdb-1999-12-06
gdb-1999-12-07
gdb-1999-12-13
gdb-1999-12-21
gdb-19990422
gdb-19990504
gdb-2000-01-05
gdb-2000-01-10
gdb-2000-01-17
gdb-2000-01-24
gdb-2000-01-26
gdb-2000-01-31
gdb-2000-02-01
gdb-2000-02-02
gdb-2000-02-04
gdb-4_18
gdb-4_18-branchpoint
gdb-4_18-release
gdb-7.10-branchpoint
gdb-7.10-release
gdb-7.10.1-release
gdb-7.11-branchpoint
gdb-7.11-release
gdb-7.11.1-release
gdb-7.12-branchpoint
gdb-7.12-release
gdb-7.12.1-release
gdb-7.7-branchpoint
gdb-7.7-release
gdb-7.7.1-release
gdb-7.8-branchpoint
gdb-7.8-release
gdb-7.8.1-release
gdb-7.8.2-release
gdb-7.9-branchpoint
gdb-7.9.0-release
gdb-7.9.1-release
gdb-8.0-branchpoint
gdb-8.0-release
gdb-8.0.1-release
gdb-8.1-branchpoint
gdb-8.1-release
gdb-8.1.1-release
gdb-8.2-branchpoint
gdb-8.2-release
gdb-8.2.1-release
gdb-8.3-branchpoint
gdb-8.3-release
gdb-8.3.1-release
gdb-9-branchpoint
gdb-9.1-release
gdb-9.2-release
gdb-csl-20060226-branch-local-2
gdb-csl-20060226-branch-merge-to-csl-local-1
gdb-csl-20060226-branch-merge-to-csl-symbian-1
gdb-csl-20060226-branchpoint
gdb-csl-arm-20050325-2005-q1a
gdb-csl-arm-20050325-2005-q1b
gdb-csl-arm-20051020-branchpoint
gdb-csl-arm-2006q1-6
gdb-csl-available-20060303-branchpoint
gdb-csl-coldfire-4_1-10
gdb-csl-coldfire-4_1-11
gdb-csl-gxxpro-6_3-branchpoint
gdb-csl-morpho-4_1-4
gdb-csl-sourcerygxx-3_4_4-17
gdb-csl-sourcerygxx-3_4_4-19
gdb-csl-sourcerygxx-3_4_4-21
gdb-csl-sourcerygxx-3_4_4-25
gdb-csl-sourcerygxx-4_1-12
gdb-csl-sourcerygxx-4_1-13
gdb-csl-sourcerygxx-4_1-14
gdb-csl-sourcerygxx-4_1-17
gdb-csl-sourcerygxx-4_1-4
gdb-csl-sourcerygxx-4_1-5
gdb-csl-sourcerygxx-4_1-6
gdb-csl-sourcerygxx-4_1-7
gdb-csl-sourcerygxx-4_1-8
gdb-csl-sourcerygxx-4_1-9
gdb-csl-symbian-20060226-branchpoint
gdb-csl-symbian-6_4_50_20060226-10
gdb-csl-symbian-6_4_50_20060226-11
gdb-csl-symbian-6_4_50_20060226-12
gdb-csl-symbian-6_4_50_20060226-8
gdb-csl-symbian-6_4_50_20060226-9
gdb-post-i18n-errorwarning-20050211
gdb-post-params-removal-2000-05-28
gdb-post-params-removal-2000-06-04
gdb-post-protoization-2000-07-29
gdb-post-ptid_t-2001-05-03
gdb-post-reformat-19990707
gdb-pre-i18n-errorwarning-20050211
gdb-pre-params-removal-2000-05-28
gdb-pre-params-removal-2000-06-04
gdb-pre-protoization-2000-07-29
gdb-pre-ptid_t-2001-05-03
gdb-pre-reformat-19990707
gdb-premipsmulti-2000-06-06-branchpoint
gdb_4_18_2-2000-05-18-release
gdb_4_95_0-2000-04-27-snapshot
gdb_4_95_1-2000-05-11-snapshot
gdb_5_0-2000-04-10-branchpoint
gdb_5_0-2000-05-19-release
gdb_5_1-2001-07-29-branchpoint
gdb_5_1-2001-11-21-release
gdb_5_1_0_1-2002-01-03-branchpoint
gdb_5_1_0_1-2002-01-03-release
gdb_5_1_1-2002-01-24-release
gdb_5_2-2002-03-03-branchpoint
gdb_5_2-2002-04-29-release
gdb_5_2-branchpoint
gdb_5_2_1-2002-07-23-release
gdb_5_3-2002-09-04-branchpoint
gdb_5_3-2002-12-12-release
gdb_5_3-branchpoint
gdb_6_0-2003-06-23-branchpoint
gdb_6_0-2003-10-04-release
gdb_6_0-branchpoint
gdb_6_1-2004-03-01-gmt-branchpoint
gdb_6_1-2004-04-05-release
gdb_6_1-branchpoint
gdb_6_1_1-20040616-release
gdb_6_2-2004-07-10-gmt-branchpoint
gdb_6_2-20040730-release
gdb_6_2-branchpoint
gdb_6_3-20041019-branchpoint
gdb_6_3-20041109-release
gdb_6_3-branchpoint
gdb_6_4-2005-11-01-branchpoint
gdb_6_4-20051202-release
gdb_6_4-branchpoint
gdb_6_5-2006-05-14-branchpoint
gdb_6_5-20060621-release
gdb_6_5-branchpoint
gdb_6_6-2006-11-15-branchpoint
gdb_6_6-2006-12-18-release
gdb_6_6-branchpoint
gdb_6_7-2007-09-07-branchpoint
gdb_6_7-2007-10-10-release
gdb_6_7-branchpoint
gdb_6_7_1-2007-10-29-release
gdb_6_8-2008-02-26-branchpoint
gdb_6_8-2008-03-27-release
gdb_6_8-branchpoint
gdb_7_0-2009-09-16-branchpoint
gdb_7_0-2009-10-06-release
gdb_7_0-branchpoint
gdb_7_0_1-2009-12-22-release
gdb_7_1-2010-02-18-branchpoint
gdb_7_1-2010-03-18-release
gdb_7_1-branchpoint
gdb_7_2-2010-07-07-branchpoint
gdb_7_2-2010-09-02-release
gdb_7_2-branchpoint
gdb_7_3-2011-04-01-branchpoint
gdb_7_3-2011-07-26-release
gdb_7_3-branchpoint
gdb_7_3_1-2011-09-04-release
gdb_7_4-2011-12-13-branchpoint
gdb_7_4-2012-01-24-release
gdb_7_4-branchpoint
gdb_7_4_1-2012-04-26-release
gdb_7_5-2012-07-18-branchpoint
gdb_7_5-2012-08-17-release
gdb_7_5-branchpoint
gdb_7_5_1-2012-11-29-release
gdb_7_6-2013-03-12-branchpoint
gdb_7_6-2013-04-26-release
gdb_7_6-branchpoint
gdb_7_6_1-2013-08-30-release
gdb_7_6_2-2013-12-08-release
gdb_s390-2001-09-26-branchpoint
gettext_0_10_35
gprof-post-ansify-2004-05-26
gprof-pre-ansify-2004-05-26
hjl/gpoff-backup
hjl/linux/release/2.24.51.0.1
hjl/linux/release/2.24.51.0.2
hjl/linux/release/2.24.51.0.3
hjl/linux/release/2.24.51.0.4
hjl/linux/release/2.25.51.0.1
insight-2000-02-04
insight-precleanup-2001-01-01
insight_6_5-20061003-release
insight_6_6-20070208-release
insight_6_8-branchpoint
interps-20030202-branchpoint
interps-20030203-mergepoint
jimb-dwarf-compression-021023-branchpoint
jimb-gdb_6_2-e500-branchpoint
jimb-macro-020506-branchpoint
jimb-ppc64-linux-20030509-branchpoint
jimb-ppc64-linux-20030528-branchpoint
jimb-ppc64-linux-20030613-branchpoint
jimb-rda-nptl-branchpoint
jimb_gnu_v3_branchpoint
kettenis-i386newframe-20030308-branchpoint
kettenis-i386newframe-20030316-mergepoint
kettenis_i386newframe-20030406-branchpoint
kettenis_i386newframe-20030419-branchpoint
kettenis_i386newframe-20030504-mergepoint
kettenis_i386newframe-20030517-mergepoint
kettenis_sparc-20030918-branchpoint
kseitz_interps-20020528-branchpoint
kseitz_interps-20020829-merge
kseitz_interps-20020930-merge
kseitz_interps-20021103-merge
kseitz_interps-20021105-merge
mingw-runtime-2_4
msnyder-checkpoint-072509-branchpoint
msnyder-fork-checkpoint-branchpoint
msnyder-reverse-20060331-branchpoint
msnyder-reverse-20060502-branchpoint
msnyder-reverse-20080609-branchpoint
msnyder-tracepoint-checkpoint-branchpoint
multiprocess-20081120-branchpoint
newlib-1_10_0
newlib-1_11_0
newlib-1_12_0
newlib-1_13_0
newlib-1_14_0
newlib-1_15_0
newlib-1_16_0
newlib-1_17_0
newlib-1_18_0
newlib-1_19_0
newlib-1_20_0
newlib-1_9_0
newlib-2_0_0
newlib-csl-20060320-branchpoint
newlib-csl-arm-2005-q1a
newlib-csl-arm-2005-q1b
newlib-csl-arm-2006q1-6
newlib-csl-arm-2006q3-19
newlib-csl-arm-2006q3-21
newlib-csl-arm-2006q3-26
newlib-csl-arm-2006q3-27
newlib-csl-coldfire-4_1-28
newlib-csl-coldfire-4_1-30
newlib-csl-coldfire-4_1-32
newlib-csl-innovasic-fido-3_4_4-33
newlib-csl-sourcerygxx-3_4_4-25
newlib-csl-sourcerygxx-4_1-12
newlib-csl-sourcerygxx-4_1-13
newlib-csl-sourcerygxx-4_1-14
newlib-csl-sourcerygxx-4_1-17
newlib-csl-sourcerygxx-4_1-18
newlib-csl-sourcerygxx-4_1-19
newlib-csl-sourcerygxx-4_1-21
newlib-csl-sourcerygxx-4_1-23
newlib-csl-sourcerygxx-4_1-24
newlib-csl-sourcerygxx-4_1-26
newlib-csl-sourcerygxx-4_1-27
newlib-csl-sourcerygxx-4_1-28
newlib-csl-sourcerygxx-4_1-30
newlib-csl-sourcerygxx-4_1-32
newlib-csl-sourcerygxx-4_1-4
newlib-csl-sourcerygxx-4_1-5
newlib-csl-sourcerygxx-4_1-6
newlib-csl-sourcerygxx-4_1-7
newlib-csl-sourcerygxx-4_1-8
newlib-csl-sourcerygxx-4_1-9
nickrob-async-20060513-branchpoint
nickrob-async-20060828-mergepoint
offbyone-20030313-branchpoint
pre-gettext-0-10-35
readline-pre-41-import
readline-pre-43-import
readline-pre-51-import
readline_4_0
readline_4_1
readline_4_3
readline_4_3-import-branchpoint
readline_5_1
readline_5_1-import-branchpoint
repo-unification-2000-02-06
reverse-20080717-branchpoint
reverse-20080930-branchpoint
reverse-20081226-branchpoint
sid-20020905-branchpoint
sid-snapshot-20071001
sid-snapshot-20071101
sid-snapshot-20071201
sid-snapshot-20080101
sid-snapshot-20080201
sid-snapshot-20080301
sid-snapshot-20080401
sid-snapshot-20080403
sid-snapshot-20080501
sid-snapshot-20080601
sid-snapshot-20080701
sid-snapshot-20080801
sid-snapshot-20080901
sid-snapshot-20081001
sid-snapshot-20081101
sid-snapshot-20081201
sid-snapshot-20090101
sid-snapshot-20090201
sid-snapshot-20090301
sid-snapshot-20090401
sid-snapshot-20090501
sid-snapshot-20090601
sid-snapshot-20090701
sid-snapshot-20090801
sid-snapshot-20090901
sid-snapshot-20091001
sid-snapshot-20091101
sid-snapshot-20091201
sid-snapshot-20100101
sid-snapshot-20100201
sid-snapshot-20100301
sid-snapshot-20100401
sid-snapshot-20100501
sid-snapshot-20100601
sid-snapshot-20100701
sid-snapshot-20100801
sid-snapshot-20100901
sid-snapshot-20101001
sid-snapshot-20101101
sid-snapshot-20101201
sid-snapshot-20110101
sid-snapshot-20110201
sid-snapshot-20110301
sid-snapshot-20110401
sid-snapshot-20110501
sid-snapshot-20110601
sid-snapshot-20110701
sid-snapshot-20110801
sid-snapshot-20110901
sid-snapshot-20111001
sid-snapshot-20111101
sid-snapshot-20111201
sid-snapshot-20120101
sid-snapshot-20120201
sid-snapshot-20120301
sid-snapshot-20120401
sid-snapshot-20120501
sid-snapshot-20120601
sid-snapshot-20120701
sid-snapshot-20120801
sid-snapshot-20120901
sid-snapshot-20121001
sid-snapshot-20121101
sid-snapshot-20121201
sid-snapshot-20130101
sid-snapshot-20130201
sid-snapshot-20130301
sid-snapshot-20130401
sid-snapshot-20130501
sid-snapshot-20130601
sid-snapshot-20130701
sid-snapshot-20130801
sid-snapshot-20130901
sid-snapshot-20131001
tcltk840-20020924-branchpoint
users/ARM/embedded-binutils-2_26-branch-2016q1
users/ARM/embedded-binutils-2_26-branch-2016q2
users/ARM/embedded-binutils-2_26-branch-2016q3
users/ARM/embedded-binutils-2_28-branch-2017q1
users/ARM/embedded-binutils-2_28-branch-2017q2
users/ARM/embedded-binutils-2_30-branch-2018q2
users/ARM/embedded-binutils-master-2016q4
users/ARM/embedded-binutils-master-2017q4
users/ARM/embedded-binutils-master-2018q4
users/ARM/embedded-gdb-2_26-branch-2016q1
users/ARM/embedded-gdb-7.10-branch-2016q1
users/ARM/embedded-gdb-7.10-branch-2016q2
users/ARM/embedded-gdb-7.10-branch-2016q3
users/ARM/embedded-gdb-7.12-branch-2016q4
users/ARM/embedded-gdb-7.12-branch-2017q1
users/ARM/embedded-gdb-7.12-branch-2017q2
users/ARM/embedded-gdb-8.1-branch-2018q2
users/ARM/embedded-gdb-master-2017q4
users/ARM/embedded-gdb-master-2018q4
users/ARM/users/ARM/embedded-gdb-2_26-branch-2016q1
users/gbenson/thread_db-test/2017-11-22
users/gbenson/thread_db-test/2018-05-23
users/hjl/linux/release/2.25.51.0.2
users/hjl/linux/release/2.25.51.0.3
users/hjl/linux/release/2.25.51.0.4
users/hjl/linux/release/2.26.51.0.1
users/hjl/linux/release/2.26.51.0.2
users/hjl/linux/release/2.28.51.0.1
users/hjl/linux/release/2.29.51.0.1
w32api-2_2
x86_64versiong3
${ noResults }
465 Commits (34d5ac9244ccfe566232469ec3bef1329f0bc42e)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
96c1bcb38b |
gdb, gdbserver: Add missing install-dvi Makefile target
For some reason install-dvi is missing although other targets of the same family are present. This looks like an oversight. This enables calling 'make install-dvi' from the top-level build directory. Fix what looks like another oversight: include 'pdf' in 'all-doc' in gdb/doc/Makefile.in. Approved-By: Luis Machado <luis.machado@arm.com> Tested-By: Luis Machado <luis.machado@arm.com> |
2 years ago |
|
|
18d2988e5d |
gdb, gdbserver, gdbsupport: remove includes of early headers
Now that defs.h, server.h and common-defs.h are included via the `-include` option, it is no longer necessary for source files to include them. Remove all the inclusions of these files I could find. Update the generation scripts where relevant. Change-Id: Ia026cff269c1b7ae7386dd3619bc9bb6a5332837 Approved-By: Pedro Alves <pedro@palves.net> |
2 years ago |
|
|
ab7daea3ad |
gdb, gdbserver, gdbsupport: include early header files with `-include`
The motivation for this change is for analysis tools and IDEs to be better at analyzing header files on their own. There are some definitions and includes we want to occur at the very beginning of all translation units. The way we currently do that is by requiring all source files (.c and .cc files) to include one of defs.h (for gdb), server.h (for gdbserver) of common-defs.h (for gdbsupport and shared source files). These special header files define and include everything that needs to be included at the very beginning. Other header files are written in a way that assume that these special "prologue" header files have already been included. My problem with that is that my editor (clangd-based) provides a very bad experience when editing header files. Since clangd doesn't know that one of defs.h/server.h/common-defs.h was included already, a lot of things are flagged as errors. For instance, CORE_ADDR is not known. It's possible to edit the files in this state, but a lot of the power of the editor is unavailable. My proposal to help with this is to include those things we always want to be there using the compilers' `-include` option. Tom Tromey said that the current approach might exist because not all compilers used to have an option like this. But I believe that it's safe to assume they do today. With this change, clangd picks up the -include option from the compile command, and is able to analyze the header file correctly, as it sees all that stuff included or defined by that -include option. That works because when editing a header file, clangd tries to get the compilation flags from a source file that includes said header file. This change is a bit self-serving, because it addresses one of my frustrations when editing header files, but it might help others too. I'd be curious to know if others encounter the same kinds of problems when editing header files. Also, even if the change is not necessary by any means, I think the solution of using -include for stuff we always want to be there is more elegant than the current solution. Even with this -include flag, many header files currently don't include what they use, but rather depend on files included before them. This will still cause errors when editing them, but it should be easily fixable by adding the appropriate include. There's no rush to do so, as long as the code still compiles, it's just a convenience thing. The changes are: - Add the appropriate `-include` option to the various Makefiles. - There is one particularity for gdbserver's Makefile: we do not want to include server.h when building `gdbreplay.o`, as `gdbreplay.cc` doesn't include it. So we can't simply put the `-include` in `INTERNAL_CFLAGS`. Add the `-include server.h` option to the `COMPILE` and `IPAGENT_COMPILE` variables, and added a special rule to compile `gdbreplay.o` with `-include gdbsupport/common-defs.h`. - Remove the `-include` option from the `check-headers` rule in gdb/Makefile.in, since it is already included in `INTERNAL_CFLAGS`. Change-Id: If3e345d00a9fc42336322f1d8286687d22134340 Approved-By: Pedro Alves <pedro@palves.net> |
2 years ago |
|
|
1d43b17eac |
{gdb,gdbserver}/Makefile.in: remove unnecessary intermediary variables
Remove `INTERNAL_CFLAGS_BASE` and `INTERNAL_WARN_CFLAGS`, inline their contents in `INTERNAL_CFLAGS`. Not functional changes expected. Change-Id: I6a09794835ca2cfd4a88a3e9f2e627c8f5bd569f Approved-By: Pedro Alves <pedro@palves.net> |
2 years ago |
|
|
2f3dfa7f90 |
gdb, gdbserver, gdbsupport: reformat some Makefile variables, one entry per line
Reformat some variables definitions. I think it makes them easier to read, and it also makes diffs clearer. Change-Id: I82f63ba0e6d0fe268eb1f1ad5ab22c3cd016ab02 Approved-By: Pedro Alves <pedro@palves.net> |
2 years ago |
|
|
56f703d39d |
Revert "gdbserver: convert have_ptrace_getregset to a tribool"
This reverts commit
|
2 years ago |
|
|
59b198a616 |
Revert "gdbserver/x86: move no-xml code earlier in x86_linux_read_description"
This reverts commit
|
2 years ago |
|
|
f06daade43 |
Revert "gdb/gdbserver: share I386_LINUX_XSAVE_XCR0_OFFSET definition"
This reverts commit
|
2 years ago |
|
|
49a7660fb5 |
Revert "gdb/gdbserver: share some code relating to target description creation"
This reverts commit
|
2 years ago |
|
|
cba2791ca6 |
Revert "gdbserver: update target description creation for x86/linux"
This reverts commit
|
2 years ago |
|
|
69324a74e3 |
Revert "gdb/gdbserver: share x86/linux tdesc caching"
This reverts commit
|
2 years ago |
|
|
57d8b51d90 |
Revert "gdbserver/Makefile.in: add missing `-x c++`"
This reverts commit
|
2 years ago |
|
|
c7c9820071 |
gdbserver/Makefile.in: add missing `-x c++`
When building with Clang, I get:
CXX nat/x86-linux-tdesc-ipa.o
clang++: error: treating 'c' input as 'c++' when in C++ mode, this behavior is deprecated [-Werror,-Wdeprecated]
Fix that by adding the missing `-x c++` in the rule building
`gdb/nat/*.c` files for the in-process agent.
Change-Id: Ie53e4b9a8b57bef9669397fdfaf21617107c7180
Approved-By: Tom Tromey <tom@tromey.com>
|
2 years ago |
|
|
198ff6ff81 |
gdb/gdbserver: share x86/linux tdesc caching
This commit builds on the previous series of commits to share the target description caching code between GDB and gdbserver for x86/Linux targets. The objective of this commit is to move the four functions (2 each of) i386_linux_read_description and amd64_linux_read_description into gdb/nat/x86-linux-tdesc.c and combine them so we have just a single copy of each. Then both GDB and gdbserver will link against these shared functions. It is worth reading the description of the previous commit to see why this merging is not as simple as it seems: on the gdbserver side we actually have two users of these functions, gdbserver itself, and the in process agent (IPA). However, the previous commit streamlined the gdbserver code, and so now it is simple to move the two functions along with all their support functions from the gdbserver directory into the gdb/nat/ directory, and then GDB is fine to call these functions. One small curiosity with this patch is the function x86_linux_post_init_tdesc. On the gdbserver side the two functions amd64_linux_read_description and i386_linux_read_description have some functionality that is not present on the GDB side, that is some additional configuration that is performed as each target description is created to setup the expedited registers. To support this I've added the function x86_linux_post_init_tdesc. This function is called from the two *_linux_read_description functions, but is implemented separately for GDB and gdbserver. This does mean adding back some non-shared code when this whole series has been about sharing code, but now the only non-shared bit is the single line that is actually different between GDB and gdbserver, all the rest, which is identical, is now shared. I did need to add a new rule to the gdbserver Makefile, this is to allow the nat/x86-linux-tdesc.c file to be compiled for the IPA. Approved-By: John Baldwin <jhb@FreeBSD.org> |
3 years ago |
|
|
61bb321605 |
gdbserver: update target description creation for x86/linux
This commit is part of a series which aims to share more of the target
description creation between GDB and gdbserver for x86/Linux.
After some refactoring, the previous commit actually started to share
some code, we added the shared x86_linux_tdesc_for_tid function into
nat/x86-linux-tdesc.c. However, this function still relies on
amd64_linux_read_description and i386_linux_read_description which are
implemented separately for both gdbserver and GDB. Given that at
their core, all these functions to is:
1. take an xcr0 value as input,
2. mask out some feature bits,
3. look for a cached pre-generated target description and return it
if found,
4. if no cached target description is found then call either
amd64_create_target_description or
i386_create_target_description to create a new target
description, which is then added to the cache. Return the newly
created target description.
The inner functions amd64_create_target_description and
i386_create_target_description are already shared between GDB and
gdbserver (in the gdb/arch/ directory), so the only thing that
the *_read_description functions really do is add the caching layer,
and it feels like this really could be shared.
However, we have a small problem.
On the GDB side we create target descriptions using a different set of
cpu features than on the gdbserver side! This means that for the
exact same target, we might get a different target description when
using native GDB vs using gdbserver. This surely feels like a
mistake, I would expect to get the same target description on each.
The table below shows the number of possible different target
descriptions that we can create on the GDB side vs on the gdbserver
side for each target type:
| GDB | gdbserver
------|-----|----------
i386 | 64 | 7
amd64 | 32 | 7
x32 | 16 | 7
So in theory, all I want to do is move the GDB version
of *_read_description into the nat/ directory and have gdbserver use
that, then both GDB and gdbserver would be able to create any of the
possible target descriptions.
Unfortunately it's a little more complex than that due to the in
process agent (IPA).
When the IPA is in use, gdbserver sends a target description index to
the IPA, and the IPA uses this to find the correct target description
to use.
** START OF AN ASIDE **
Back in the day I suspect this approach made perfect sense. However
since this commit:
commit
|
3 years ago |
|
|
cd9b374ffe |
gdb/gdbserver: share some code relating to target description creation
This commit is part of a series to share more of the x86 target
description creation code between GDB and gdbserver.
Unlike previous commits which were mostly refactoring, this commit is
the first that makes a real change, though that change should mostly
be for gdbserver; I've largely adopted the "GDB" way of doing things
for gdbserver, and this fixes a real gdbserver bug.
On a x86-64 Linux target, running the test:
gdb.server/connect-with-no-symbol-file.exp
results in two core files being created. Both of these core files are
from the inferior process, created after gdbserver has detached.
In this test a gdbserver process is started and then, after gdbserver
has started, but before GDB attaches, we either delete the inferior
executable, or change its permissions so it can't be read. Only after
doing this do we attempt to connect with GDB.
As GDB connects to gdbserver, gdbserver attempts to figure out the
target description so that it can send the description to GDB, this
involves a call to x86_linux_read_description.
In x86_linux_read_description one of the first things we do is try to
figure out if the process is 32-bit or 64-bit. To do this we look up
the executable via the thread-id, and then attempt to read the
architecture size from the executable. This isn't going to work if
the executable has been deleted, or is no longer readable.
And so, as we can't read the executable, we default to an i386 target
and use an i386 target description.
A consequence of using an i386 target description is that addresses
are assumed to be 32-bits. Here's an example session that shows the
problems this causes. This is run on an x86-64 machine, and the test
binary (xx.x) is a standard 64-bit x86-64 binary:
shell_1$ gdbserver --once localhost :54321 /tmp/xx.x
shell_2$ gdb -q
(gdb) set sysroot
(gdb) shell chmod 000 /tmp/xx.x
(gdb) target remote :54321
Remote debugging using :54321
warning: /tmp/xx.x: Permission denied.
0xf7fd3110 in ?? ()
(gdb) show architecture
The target architecture is set to "auto" (currently "i386").
(gdb) p/x $pc
$1 = 0xf7fd3110
(gdb) info proc mappings
process 2412639
Mapped address spaces:
Start Addr End Addr Size Offset Perms objfile
0x400000 0x401000 0x1000 0x0 r--p /tmp/xx.x
0x401000 0x402000 0x1000 0x1000 r-xp /tmp/xx.x
0x402000 0x403000 0x1000 0x2000 r--p /tmp/xx.x
0x403000 0x405000 0x2000 0x2000 rw-p /tmp/xx.x
0xf7fcb000 0xf7fcf000 0x4000 0x0 r--p [vvar]
0xf7fcf000 0xf7fd1000 0x2000 0x0 r-xp [vdso]
0xf7fd1000 0xf7fd3000 0x2000 0x0 r--p /usr/lib64/ld-2.30.so
0xf7fd3000 0xf7ff3000 0x20000 0x2000 r-xp /usr/lib64/ld-2.30.so
0xf7ff3000 0xf7ffb000 0x8000 0x22000 r--p /usr/lib64/ld-2.30.so
0xf7ffc000 0xf7ffe000 0x2000 0x2a000 rw-p /usr/lib64/ld-2.30.so
0xf7ffe000 0xf7fff000 0x1000 0x0 rw-p
0xfffda000 0xfffff000 0x25000 0x0 rw-p [stack]
0xff600000 0xff601000 0x1000 0x0 r-xp [vsyscall]
(gdb) info inferiors
Num Description Connection Executable
* 1 process 2412639 1 (remote :54321)
(gdb) shell cat /proc/2412639/maps
00400000-00401000 r--p 00000000 fd:03 45907133 /tmp/xx.x
00401000-00402000 r-xp 00001000 fd:03 45907133 /tmp/xx.x
00402000-00403000 r--p 00002000 fd:03 45907133 /tmp/xx.x
00403000-00405000 rw-p 00002000 fd:03 45907133 /tmp/xx.x
7ffff7fcb000-7ffff7fcf000 r--p 00000000 00:00 0 [vvar]
7ffff7fcf000-7ffff7fd1000 r-xp 00000000 00:00 0 [vdso]
7ffff7fd1000-7ffff7fd3000 r--p 00000000 fd:00 143904 /usr/lib64/ld-2.30.so
7ffff7fd3000-7ffff7ff3000 r-xp 00002000 fd:00 143904 /usr/lib64/ld-2.30.so
7ffff7ff3000-7ffff7ffb000 r--p 00022000 fd:00 143904 /usr/lib64/ld-2.30.so
7ffff7ffc000-7ffff7ffe000 rw-p 0002a000 fd:00 143904 /usr/lib64/ld-2.30.so
7ffff7ffe000-7ffff7fff000 rw-p 00000000 00:00 0
7ffffffda000-7ffffffff000 rw-p 00000000 00:00 0 [stack]
ffffffffff600000-ffffffffff601000 r-xp 00000000 00:00 0 [vsyscall]
(gdb)
Notice the difference between the mappings reported via GDB and those
reported directly from the kernel via /proc/PID/maps, the addresses of
every mapping is clamped to 32-bits for GDB, while the kernel reports
real 64-bit addresses.
Notice also that the $pc value is a 32-bit value. It appears to be
within one of the mappings reported by GDB, but is outside any of the
mappings reported from the kernel.
And this is where the problem arises. When gdbserver detaches from
the inferior we pass the inferior the address from which it should
resume. Due to the 32/64 bit confusion we tell the inferior to resume
from the 32-bit $pc value, which is not within any valid mapping, and
so, as soon as the inferior resumes, it segfaults.
If we look at how GDB (not gdbserver) figures out its target
description then we see an interesting difference. GDB doesn't try to
read the executable. Instead GDB uses ptrace to query the thread's
state, and uses this to figure out the if the thread is 32 or 64 bit.
If we update gdbserver to do it the "GDB" way then the above problem
is resolved, gdbserver now sees the process as 64-bit, and when we
detach from the inferior we give it the correct 64-bit address, and
the inferior no longer segfaults.
Now, I could just update the gdbserver code, but better, I think, to
share one copy of the code between GDB and gdbserver in gdb/nat/.
That is what this commit does.
The cores of x86_linux_read_description from gdbserver and
x86_linux_nat_target::read_description from GDB are moved into a new
file gdb/nat/x86-linux-tdesc.c and combined into a single function
x86_linux_tdesc_for_tid which is called from each location.
This new function does things the GDB way, the only changes are to
allow for the sharing; we now have a callback function to call the
first time that the xcr0 state is read, this allows for GDB and
gdbserver to perform their own initialisation as needed, and
additionally, the new function takes a pointer for where to cache the
xcr0 value, this isn't needed for this commit, but will be useful in a
later commit where gdbserver will want to read this cached xcr0
value.
Another thing to note about this commit is how the functions
i386_linux_read_description and amd64_linux_read_description are
handled. For now I've left these function as implemented separately
in GDB and gdbserver. I've moved the declarations of these functions
into gdb/nat/x86-linux-tdesc.h, but the implementations are left as
separate.
A later commit in this series will make these functions shared too,
but doing this is not trivial, so I've left that for a separate
commit. Merging the declarations as I've done here ensures that
everyone implements the function to the same API, and once these
functions are shared (in a later commit) we'll want a shared
declaration anyway.
Approved-By: John Baldwin <jhb@FreeBSD.org>
|
3 years ago |
|
|
7816b81e9b |
gdb/gdbserver: share I386_LINUX_XSAVE_XCR0_OFFSET definition
Share the definition of I386_LINUX_XSAVE_XCR0_OFFSET between GDB and gdbserver. This commit is part of a series that aims to share more of the x86 target description creation code between GDB and gdbserver. The I386_LINUX_XSAVE_XCR0_OFFSET #define is used as part of the target description creation, and I noticed that this constant is defined separately for GDB and gdbserver. This commit moves the definition into gdb/nat/x86-linux.h, which allows the #define to be shared. There should be no user visible changes after this commit. Approved-By: John Baldwin <jhb@FreeBSD.org> |
3 years ago |
|
|
0a7bb97ad2 |
gdbserver/x86: move no-xml code earlier in x86_linux_read_description
This commit is part of a series that aims to share more of the x86 target description reading/generation code between GDB and gdbserver. There are a huge number of similarities between the code in gdbserver's x86_linux_read_description function and GDB's x86_linux_nat_target::read_description function, and it is this similarity that I plan, in a later commit, to share between GDB and gdbserver. However, one thing that is different in x86_linux_read_description is the code inside the '!use_xml' block. This is the code that handles the case where gdbserver is not allowed to send an XML target description back to GDB. In this case gdbserver uses some predefined, fixed, target descriptions. First, it's worth noting that I suspect this code is not tested any more. I couldn't find anything in the testsuite that tries to disable XML target description support. And the idea of having a single "fixed" target description really doesn't work well when we think about all the various x86 extensions that exist. Part of me would like to rip out the no-xml support in gdbserver (at least for x86), and if a GDB connects that doesn't support XML target descriptions, gdbserver can just give an error and drop the connection. GDB has supported XML target descriptions for 16 years now, I think it would be reasonable for our shipped gdbserver to drop support for the old way of doing things. Anyway.... this commit doesn't do that. What I did notice was that, over time, the '!use_xml' block appears to have "drifted" within the x86_linux_read_description function; it's now not the first check we do. Instead we make some ptrace calls and return a target description generated based on the result of these ptrace calls. Surely it only makes sense to generate variable target descriptions if we can send these back to GDB? So in this commit I propose to move the '!use_xml' block earlier in the x86_linux_read_description function. The benefit of this is that this leaves the later half of x86_linux_read_description much more similar to the GDB function x86_linux_nat_target::read_description and sets us up for potentially sharing code between GDB and gdbserver in a later commit. Approved-By: John Baldwin <jhb@FreeBSD.org> |
3 years ago |
|
|
5920765d75 |
gdbserver: convert have_ptrace_getregset to a tribool
Convert the have_ptrace_getregset global within gdbserver to a tribool. This brings the flag into alignment with the corresponding flag in GDB. The gdbserver have_ptrace_getregset variable is already used as a tribool, it just doesn't have the tribool type. In a future commit I plan to share more code between GDB and gdbserver, and having this variable be the same type in both code bases will make the sharing much easier. There should be no user visible changes after this commit. Approved-By: John Baldwin <jhb@FreeBSD.org> |
3 years ago |
|
|
4bb20a6244 |
gdbserver: Clear X86_XSTATE_MPX bits in xcr0 on x32
Since MPX isn't available for x32, we should clear X86_XSTATE_MPX bits on x32. PR server/31511 * linux-x86-low.cc (x86_linux_read_description): Clear X86_XSTATE_MPX bits in xcr0 on x32. Reviewed-by: Felix Willgerodt <felix.willgerodt@intel.com> |
2 years ago |
|
|
da48217f31 |
gdbserver/linux: probe for libiconv in configure
Make gdbserver's build system locate libiconv when building for Linux.
Commit
|
2 years ago |
|
|
bbb12eb9c8 |
gdb/arm: Remove tpidruro register from non-FreeBSD target descriptions
Commit
|
2 years ago |
|
|
4a4fd10d17 |
gdb: Modify the output of "info breakpoints" and "delete breakpoints"
The output of "info breakpoints" includes breakpoint, watchpoint, tracepoint, and catchpoint if they are created, so it should show all the four types are deleted in the output of "info breakpoints" to report empty list after "delete breakpoints". It should also change the output of "delete breakpoints" to make it clear that watchpoints, tracepoints, and catchpoints are also being deleted. This is suggested by Guinevere Larsen, thank you. $ make check-gdb TESTS="gdb.base/access-mem-running.exp" $ gdb/gdb gdb/testsuite/outputs/gdb.base/access-mem-running/access-mem-running [...] (gdb) break main Breakpoint 1 at 0x12000073c: file /home/loongson/gdb.git/gdb/testsuite/gdb.base/access-mem-running.c, line 32. (gdb) watch global_counter Hardware watchpoint 2: global_counter (gdb) trace maybe_stop_here Tracepoint 3 at 0x12000071c: file /home/loongson/gdb.git/gdb/testsuite/gdb.base/access-mem-running.c, line 27. (gdb) catch fork Catchpoint 4 (fork) (gdb) info breakpoints Num Type Disp Enb Address What 1 breakpoint keep y 0x000000012000073c in main at /home/loongson/gdb.git/gdb/testsuite/gdb.base/access-mem-running.c:32 2 hw watchpoint keep y global_counter 3 tracepoint keep y 0x000000012000071c in maybe_stop_here at /home/loongson/gdb.git/gdb/testsuite/gdb.base/access-mem-running.c:27 not installed on target 4 catchpoint keep y fork Without this patch: (gdb) delete breakpoints Delete all breakpoints? (y or n) y (gdb) info breakpoints No breakpoints or watchpoints. (gdb) info breakpoints 3 No breakpoint or watchpoint matching '3'. With this patch: (gdb) delete breakpoints Delete all breakpoints, watchpoints, tracepoints, and catchpoints? (y or n) y (gdb) info breakpoints No breakpoints, watchpoints, tracepoints, or catchpoints. (gdb) info breakpoints 3 No breakpoint, watchpoint, tracepoint, or catchpoint matching '3'. Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> Approved-by: Kevin Buettner <kevinb@redhat.com> Reviewed-By: Eli Zaretskii <eliz@gnu.org> |
3 years ago |
|
|
aca8a74923 |
gdb: remove some GCC version checks
Since we now require C++17, and therefore gcc >= 9, it's no longer useful to have gcc version checks for older gcc version. Change-Id: I3a87baa03c475f2b847b422b16b69c5ff7215b54 Reviewed-by: Kevin Buettner <kevinb@redhat.com> Approved-By: Pedro Alves <pedro@palves.net> |
3 years ago |
|
|
38065394e9 |
Fix crash in aarch64-linux gdbserver
Since commit
|
3 years ago |
|
|
e4d74c01e7 |
gdb: LoongArch: Add LBT extension support
Loongson Binary Translation (LBT) is used to accelerate binary translation, which contains 4 scratch registers (scr0 to scr3), x86/ARM eflags (eflags) and x87 fpu stack pointer (ftop). This patch support gdb to fetch/store these registers. Signed-off-by: Feiyang Chen <chenfeiyang@loongson.cn> # Framework Signed-off-by: Binbin Zhou <zhoubinbin@loongson.cn> # Detail Optimizes Signed-off-by: Hui Li <lihui@loongson.cn> # Error Fixes Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> |
3 years ago |
|
|
1e9569f383 |
gdb: LoongArch: Add vector extensions support
Add LoongArch's vector extensions support, which including 128bit LSX (i.e., Loongson SIMD eXtension) and 256bit LASX (i.e., Loongson Advanced SIMD eXtension). This patch support gdb to fetch/store vector registers. Signed-off-by: Hui Li <lihui@loongson.cn> Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> |
3 years ago |
|
|
a197d5f7eb |
Really fix Windows gdbserver segment registers
My earlier attempt to mask the segment registers in gdbserver for Windows introduced some bugs. That patch is here: https://sourceware.org/pipermail/gdb-patches/2023-December/205306.html The problem turned out to be that these fields in the Windows 'CONTEXT' type are just 16 bits, so while masking the values on read is fine, writing the truncated values back then causes zeros to be written to some subsequent field. This patch cleans this up by arranging never to write too much data to a field. I also noticed that two register numbers here were never updated for the 64-bit port. This patch fixes this as well, and renames the "FCS" register to follow gdb. Finally, this patch applies the same treatment to windows-nat.c. Reviewed-by: John Baldwin <jhb@FreeBSD.org> |
3 years ago |
|
|
1d506c26d9 |
Update copyright year range in header of all files managed by GDB
This commit is the result of the following actions:
- Running gdb/copyright.py to update all of the copyright headers to
include 2024,
- Manually updating a few files the copyright.py script told me to
update, these files had copyright headers embedded within the
file,
- Regenerating gdbsupport/Makefile.in to refresh it's copyright
date,
- Using grep to find other files that still mentioned 2023. If
these files were updated last year from 2022 to 2023 then I've
updated them this year to 2024.
I'm sure I've probably missed some dates. Feel free to fix them up as
you spot them.
|
3 years ago |
|
|
761ed61e7b |
gdbsupport: tighten up libiberty code a bit with dnl
No functional change here, just touch up generated output slightly. Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
908ff469f5 |
gdb: libiberty: switch to AC_CHECK_DECLS_ONCE
Only check these decls once in case other m4 macros also look for them. Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
3f258212a8 |
gdb: move libiberty.m4 to gdbsupport
This is used by gdb, gdbsupport, and gdbserver. We want to use it in the sim tree too. Move it to gdbsupport which is meant as the common sharing space for these projects. Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
862180a2d1 |
Fix two bugs in gdbserver thread name handling
Simon pointed out that my earlier patch to gdbserver's thread name
code:
commit
|
3 years ago |
|
|
51e6b8cfd6 |
gdb: change regcache interface to use array_view
Change most of regcache (and base classes) to use array_view when
possible, instead of raw pointers. By propagating the use of array_view
further, it enables having some runtime checks to make sure the what we
read from or write to regcaches has the expected length (such as the one
in the `copy(array_view, array_view)` function. It also integrates well
when connecting with other APIs already using gdb::array_view.
Add some overloads of the methods using raw pointers to avoid having to
change all call sites at once (which is both a lot of work and risky).
I tried to do this change in small increments, but since many of these
functions use each other, it ended up simpler to do it in one shot than
having a lot of intermediary / transient changes.
This change extends into gdbserver as well, because there is some part
of the regcache interface that is shared.
Changing the reg_buffer_common interface to use array_view caused some
build failures in nat/aarch64-scalable-linux-ptrace.c. That file
currently "takes advantage" of the fact that
reg_buffer_common::{raw_supply,raw_collect} operates on `void *`, which
IMO is dangerous. It uses raw_supply/raw_collect directly on
uint64_t's, which I guess is fine because it is expected that native
code will have the same endianness as the debugged process. To
accomodate that, add some overloads of raw_collect and raw_supply that
work on uint64_t.
This file also uses raw_collect and raw_supply on `char` pointers.
Change it to use `gdb_byte` pointers instead. Add overloads of
raw_collect and raw_supply that work on `gdb_byte *` and make an
array_view on the fly using the register's size. Those call sites could
be converted to use array_view with not much work, in which case these
overloads could be removed, but I didn't want to do it in this patch, to
avoid starting to dig in arch-specific code.
During development, I inadvertently changed reg_buffer::raw_compare's
behavior to not accept an offset equal to the register size. This
behavior (effectively comparing 0 bytes, returning true) change was
caught by the AArch64 SME core tests. Add a selftest to make sure that
this raw_compare behavior is preserved in the future.
Change-Id: I9005f04114543ddff738949e12d85a31855304c2
Reviewed-By: John Baldwin <jhb@FreeBSD.org>
|
3 years ago |
|
|
e4e20d4511 |
gdb: use reg_buffer_common throughout gdbsupport/common-regcache.h
Right now, gdbsupport/common-regcache.h contains two abstractons for a regcache. An opaque type `regcache` (gdb and gdbserver both have their own regcache that is the concrete version of this) and an abstract base class `reg_buffer_common`, that is the base of regcaches on both sides. These abstractions allow code to be written for both gdb and gdbserver, for instance in the gdb/arch sub-directory. However, having two different abstractions is impractical. If some common code has a regcache, and wants to use an operation defined on reg_buffer_common, it can't. It would be better to have just one. Change all instances of `regcache *` in gdbsupport/common-regcache.h to be `reg_buffer_common *`, then fix fallouts. Implementations in gdb and gdbserver now need to down-cast (using gdb::checked_static_cast) from reg_buffer_common to their concrete regcache type. Some of them could be avoided by changing free functions (like regcache_register_size) to be virtual methods on reg_buffer_common. I tried it, it seems to work, but I did not include it in this series to avoid adding unnecessary changes. Change-Id: Ia5503adb6b5509a0f4604bd2a68b4642cc5283fd Reviewed-by: John Baldwin <jhb@FreeBSD.org> |
3 years ago |
|
|
fa659800b0 |
gdbserver/win32: fix crash on detach
this patch fixes a crash in gdbserver whenever a process is detached. the crash is caused by `detach` calling `remove_process` before `win32_clear_inferiors` error message: Detaching from process 184 ../../gdbserver/inferiors.cc:160: A problem internal to GDBserver has been detec ted. remove_process: Assertion `find_thread_process (process) == NULL' failed. This application has requested the Runtime to terminate it in an unusual way. Please contact the application's support team for more information. Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
8fd5a6058f |
gdbserver: allow for general 'monitor set debug COMPONENT VALUE' use
Building on the last commit, which added a general --debug=COMPONENT option to the gdbserver command line, this commit updates the monitor command to allow for general: (gdb) monitor set debug COMPONENT off|on style commands. Just like with the previous commit, the COMPONENT can be any one of all, threads, remote, event-loop, and correspond to the same set of global debug flags. While on the command line it is possible to do: --debug=remote,event-loop,threads the components have to be entered one at a time with the monitor command. I guess there's no reason why we couldn't allow component grouping within the monitor command, but (to me) what I have here seemed more in the spirit of GDB's existing 'set debug ...' commands. If people want it then we can always add component grouping later. Notice in the above that I use 'off' and 'on' instead of '0' and '1', which is what the 'monitor set debug' command used to use. The 0/1 can still be used, but I now advertise off/on in all the docs and help text, again, this feels more inline with GDB's existing boolean settings. I have removed the two existing monitor commands: monitor set remote-debug 0|1 monitor set event-loop-debug 0|1 These are replaced by: monitor set debug remote off|on monitor set debug event-loop off|on respectively. Approved-By: Tom Tromey <tom@tromey.com> Reviewed-By: Eli Zaretskii <eliz@gnu.org> |
3 years ago |
|
|
3bf9e166ca |
gdbserver: allow the --debug command line option to take a value
Currently, gdbserver has the following command line options related to debugging output: --debug --remote-debug --event-loop-debug This doesn't scale well. If I want an extra debug component I need to add another command line flag. This commit changes --debug to take a list of components. The currently supported components are: all, threads, remote, and event-loop. The 'threads' component represents the debug we currently get from the --debug option. And if --debug is used without a component list then the threads component is assumed as the default. Currently the threads component actually includes a lot of output that is not really threads related. In the future I'd like to split this up into some new, separate components. But that is not part of this commit, or even this series. The special component 'all' does what you'd expect: enables debug output from all supported components. The component list is parsed left to write, and you can prefix a component with '-' to disable that component, so I can write: target> gdbserver --debug=all,-event-loop to get debug for all components except the event-loop component. I've removed the existing --remote-debug and --event-loop-debug command line options, these are equivalent to --debug=remote and --debug=event-loop respectively, or --debug=remote,event-loop to enable both components. In this commit I've only update the command line options, in the next commit I'll update the monitor commands to support a similar interface. Reviewed-By: Eli Zaretskii <eliz@gnu.org> Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
74bbf9359a |
Update fall-through comment in gdbserver
I noticed that gdbserver/win32-low.cc has a fall-through comment that should have been converted to use the annotation instead. This patch makes the change. |
3 years ago |
|
|
c6f7f9c80c |
Bail out of "attach" if a thread cannot be traced
On Linux, threads are treated much like separate processes by the kernel. In particular, it's possible to ptrace just a single thread. If gdb tries to attach to a multi-threaded inferior, where a non-main thread is already being traced (e.g., by strace), then gdb will get into an infinite loop attempting to attach. This patch fixes this problem by having the attach fail if ptrace fails to attach to any thread of the inferior. |
3 years ago |
|
|
69f6730df3 |
Remove gdb_static_assert
C++17 makes the second parameter to static_assert optional, so we can remove gdb_static_assert now. |
3 years ago |
|
|
d57f38ec74 |
Switch to -Wimplicit-fallthrough=5
This changes the various gdb-related directories to use -Wimplicit-fallthrough=5, meaning that only the fallthrough attribute can be used in switches -- special 'fallthrough' comments will no longer be usable. Approved-By: Pedro Alves <pedro@palves.net> |
3 years ago |
|
|
d182e39881 |
Use C++17 [[fallthrough]] attribute
This changes gdb to use the C++17 [[fallthrough]] attribute rather than special comments. This was mostly done by script, but I neglected a few spellings and so also fixed it up by hand. I suspect this fixes the bug mentioned below, by switching to a standard approach that, presumably, clang supports. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=23159 Approved-By: John Baldwin <jhb@FreeBSD.org> Approved-By: Luis Machado <luis.machado@arm.com> Approved-By: Pedro Alves <pedro@palves.net> |
3 years ago |
|
|
602971b386 |
Introduce throw_winerror_with_name
This introduces throw_winerror_with_name, a Windows analog of perror_with_name, and changes various places in gdb to call it. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30770 |
3 years ago |
|
|
27365c5189 |
gdbserver: cleanup monitor_show_help
After this commit:
commit
|
3 years ago |
|
|
6b09f1342c |
gdb: Replace gdb::optional with std::optional
Since GDB now requires C++17, we don't need the internally maintained gdb::optional implementation. This patch does the following replacing: - gdb::optional -> std::optional - gdb::in_place -> std::in_place - #include "gdbsupport/gdb_optional.h" -> #include <optional> This change has mostly been done automatically. One exception is gdbsupport/thread-pool.* which did not use the gdb:: prefix as it already lives in the gdb namespace. Change-Id: I19a92fa03e89637bab136c72e34fd351524f65e9 Approved-By: Tom Tromey <tom@tromey.com> Approved-By: Pedro Alves <pedro@palves.net> |
3 years ago |
|
|
9e11e7460d |
Finalized intl-update patches (deux)
Doing this on behalf of Arsen as obvious. * gdb: Regenerate. * gdbserver: Regenerate. * gprofng: Regenerate. |
3 years ago |
|
|
07b3255c3b |
Filter invalid encodings from Linux thread names
On Linux, a thread can only be 16 bytes (including the trailing \0). A user sent in a test case where this causes a truncated UTF-8 sequence, causing gdbserver to create invalid XML. I went back and forth about different ways to solve this, and in the end decided to fix it in gdbserver, with the reason being that it seems important to generate correct XML for the <thread> response. I am not totally sure whether the call to setlocale could have unplanned consequences. This is needed, though, for nl_langinfo to return the correct result. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=30618 |
3 years ago |
|
|
e8a625d126 |
Report thread exit event for leader if reporting thread exit events
If GDB sets the GDB_THREAD_OPTION_EXIT option on a thread, then if the
thread disappears from the thread list, GDB expects to shortly see a
thread exit event for it. See e.g., here, in
remote_target::update_thread_list():
/* Do not remove the thread if we've requested to be
notified of its exit. For example, the thread may be
displaced stepping, infrun will need to handle the
exit event, and displaced stepping info is recorded
in the thread object. If we deleted the thread now,
we'd lose that info. */
if ((tp->thread_options () & GDB_THREAD_OPTION_EXIT) != 0)
continue;
There's one scenario that is deleting a thread from the
remote/gdbserver thread list without ever reporting a corresponding
thread exit event though -- check_zombie_leaders. This can lead to
GDB getting confused. For example, with a following patch that
enables GDB_THREAD_OPTION_EXIT whenever schedlock is enabled, we'd see
this regression:
$ make check RUNTESTFLAGS="--target_board=native-extended-gdbserver" TESTS="gdb.threads/no-unwaited-for-left.exp"
...
Running src/gdb/testsuite/gdb.threads/no-unwaited-for-left.exp ...
FAIL: gdb.threads/no-unwaited-for-left.exp: continue stops when the main thread exits (timeout)
... some more cascading FAILs ...
gdb.log shows:
(gdb) continue
Continuing.
FAIL: gdb.threads/no-unwaited-for-left.exp: continue stops when the main thread exits (timeout)
A passing run would have resulted in:
(gdb) continue
Continuing.
No unwaited-for children left.
(gdb) PASS: gdb.threads/no-unwaited-for-left.exp: continue stops when the main thread exits
note how the leader thread is not listed in the remote-reported XML
thread list below:
(gdb) set debug remote 1
(gdb) set debug infrun 1
(gdb) info threads
Id Target Id Frame
* 1 Thread 1163850.1163850 "no-unwaited-for" main () at /home/pedro/rocm/gdb/build/gdb/testsuite/../../../src/gdb/testsuite/gdb.threads/no-unwaited-for-left.c:65
3 Thread 1163850.1164130 "no-unwaited-for" [remote] Sending packet: $Hgp11c24a.11c362#39
(gdb) c
Continuing.
[infrun] clear_proceed_status_thread: 1163850.1163850.0
...
[infrun] resume_1: step=1, signal=GDB_SIGNAL_0, trap_expected=1, current thread [1163850.1163850.0] at 0x55555555534f
[remote] Sending packet: $QPassSignals:#f3
[remote] Packet received: OK
[remote] Sending packet: $QThreadOptions;3:p11c24a.11c24a#f3
[remote] Packet received: OK
...
[infrun] target_set_thread_options: [options for Thread 1163850.1163850 are now 0x3]
...
[infrun] do_target_resume: resume_ptid=1163850.1163850.0, step=0, sig=GDB_SIGNAL_0
[remote] Sending packet: $vCont;c:p11c24a.11c24a#98
[infrun] prepare_to_wait: prepare_to_wait
[infrun] reset: reason=handling event
[infrun] maybe_set_commit_resumed_all_targets: enabling commit-resumed for target extended-remote
[infrun] maybe_call_commit_resumed_all_targets: calling commit_resumed for target extended-remote
[infrun] fetch_inferior_event: exit
[infrun] fetch_inferior_event: enter
[infrun] scoped_disable_commit_resumed: reason=handling event
[infrun] random_pending_event_thread: None found.
[remote] wait: enter
[remote] Packet received: N
[remote] wait: exit
[infrun] print_target_wait_results: target_wait (-1.0.0 [process -1], status) =
[infrun] print_target_wait_results: -1.0.0 [process -1],
[infrun] print_target_wait_results: status->kind = NO_RESUMED
[infrun] handle_inferior_event: status->kind = NO_RESUMED
[remote] Sending packet: $Hgp0.0#ad
[remote] Packet received: OK
[remote] Sending packet: $qXfer:threads:read::0,1000#92
[remote] Packet received: l<threads>\n<thread id="p11c24a.11c362" core="0" name="no-unwaited-for" handle="0097d8f7ff7f0000"/>\n</threads>\n
[infrun] handle_no_resumed: TARGET_WAITKIND_NO_RESUMED (ignoring: found resumed)
...
... however, infrun decided there was a resumed thread still, so
ignored the TARGET_WAITKIND_NO_RESUMED event. Debugging GDB, we see
that the "found resumed" thread that GDB finds, is the leader thread.
Even though that thread is not on the remote-reported thread list, it
is still on the GDB thread list, due to the special case in remote.c
mentioned above.
This commit addresses the issue by fixing GDBserver to report a thread
exit event for the zombie leader too, i.e., making GDBserver respect
the "if thread has GDB_THREAD_OPTION_EXIT set, report a thread exit"
invariant. To do that, it takes a bit more code than one would
imagine off hand, due to the fact that we currently always report LWP
exit pending events as TARGET_WAITKIND_EXITED, and then decide whether
to convert it to TARGET_WAITKIND_THREAD_EXITED just before reporting
the event to GDBserver core. For the zombie leader scenario
described, we need to record early on that we want to report a
THREAD_EXITED event, and then make sure that decision isn't lost along
the way to reporting the event to GDBserver core.
Reviewed-By: Andrew Burgess <aburgess@redhat.com>
Change-Id: I1e68fccdbc9534434dee07163d3fd19744c8403b
|
4 years ago |
|
|
ef980d654b |
gdbserver: Queue no-resumed event after thread exit
Normally, if the last resumed thread on the target exits, the server sends a no-resumed event to GDB. If however, GDB enables the GDB_THREAD_OPTION_EXIT option on a thread, and, that thread exits, the server sends a thread exit event for that thread instead. In all-stop RSP mode, since events can only be forwarded to GDB one at a time, and the whole target stops whenever an event is reported, GDB resumes the target again after getting a THREAD_EXITED event, and then the server finally reports back a no-resumed event if/when appropriate. For non-stop RSP though, events are asynchronous, and if the server sends a thread-exit event for the last resumed thread, the no-resumed event is never sent. This patch makes sure that in non-stop mode, the server queues a no-resumed event after the thread-exit event if it was the last resumed thread that exited. Without this, we'd see failures in step-over-thread-exit testcases added later in the series, like so: continue Continuing. - No unwaited-for children left. - (gdb) PASS: gdb.threads/step-over-thread-exit.exp: displaced-stepping=off: non-stop=on: target-non-stop=on: schedlock=off: ns_stop_all=1: continue stops when thread exits + FAIL: gdb.threads/step-over-thread-exit.exp: displaced-stepping=off: non-stop=on: target-non-stop=on: schedlock=off: ns_stop_all=1: continue stops when thread exits (timeout) (and other similar ones) Reviewed-By: Andrew Burgess <aburgess@redhat.com> Change-Id: I927d78b30f88236dbd5634b051a716f72420e7c7 |
4 years ago |