Tree:
5bc71c2a6b
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 }
117696 Commits (5bc71c2a6b8efb27089baa1fecded82be4f550a7)
| Author | SHA1 | Message | Date |
|---|---|---|---|
|
|
5bc71c2a6b |
x86-64: Add R_X86_64_CODE_6_GOTTPOFF
For add %reg1, name@gottpoff(%rip), %reg2 and add name@gottpoff(%rip), %reg1, %reg2 add #define R_X86_64_CODE_6_GOTTPOFF 50 if the instruction starts at 6 bytes before the relocation offset. They are similar to R_X86_64_GOTTPOFF. Linker can covert GOTTPOFF to add $name@tpoff, %reg1, %reg2 Rewrite fx_tcbit, fx_tcbit2 and fx_tcbit3 usage to generate R_X86_64_GOTPCRELX, R_X86_64_REX_GOTPCRELX, R_X86_64_CODE_4_GOTPCRELX, R_X86_64_CODE_4_GOTTPOFF, R_X86_64_CODE_4_GOTPC32_TLSDESC and R_X86_64_CODE_6_GOTTPOFF. NB: There is no need to check BFD_RELOC_X86_64_CODE_4_GOTTPOFF in md_assemble since there is only BFD_RELOC_X86_64_GOTTPOFF at this stage, which will be converted to BFD_RELOC_X86_64_CODE_4_GOTTPOFF or BFD_RELOC_X86_64_CODE_6_GOTTPOFF in i386_validate_fix. 5 relocations: #define R_X86_64_CODE_5_GOTPCRELX 46 #define R_X86_64_CODE_5_GOTTPOFF 47 #define R_X86_64_CODE_5_GOTPC32_TLSDESC 48 #define R_X86_64_CODE_6_GOTPCRELX 49 #define R_X86_64_CODE_6_GOTPC32_TLSDESC 51 are added for completeness and they are unused. bfd/ * elf64-x86-64.c (x86_64_elf_howto_table): Add R_X86_64_CODE_5_GOTPCRELX, R_X86_64_CODE_5_GOTTPOFF, R_X86_64_CODE_5_GOTPC32_TLSDESC, R_X86_64_CODE_6_GOTPCRELX, R_X86_64_CODE_6_GOTTPOFF and R_X86_64_CODE_6_GOTPC32_TLSDESC. (R_X86_64_standard): Updated. (x86_64_reloc_map): Add R_X86_64_CODE_5_GOTPCRELX, R_X86_64_CODE_5_GOTTPOFF, R_X86_64_CODE_5_GOTPC32_TLSDESC, R_X86_64_CODE_6_GOTPCRELX, R_X86_64_CODE_6_GOTTPOFF and R_X86_64_CODE_6_GOTPC32_TLSDESC. (elf_x86_64_check_tls_transition): Handle R_X86_64_CODE_6_GOTTPOFF. (elf_x86_64_tls_transition): Likewise. (elf_x86_64_scan_relocs): Handle R_X86_64_CODE_6_GOTTPOFF. Issue an error for R_X86_64_CODE_5_GOTPCRELX, R_X86_64_CODE_5_GOTTPOFF, R_X86_64_CODE_5_GOTPC32_TLSDESC, R_X86_64_CODE_6_GOTPCRELX and R_X86_64_CODE_6_GOTPC32_TLSDESC. (elf_x86_64_relocate_section): Handle R_X86_64_CODE_6_GOTTPOFF. * reloc.c (bfd_reloc_code_real): Add BFD_RELOC_X86_64_CODE_5_GOTPCRELX, BFD_RELOC_X86_64_CODE_5_GOTTPOFF, BFD_RELOC_X86_64_CODE_5_GOTPC32_TLSDESC, BFD_RELOC_X86_64_CODE_6_GOTPCRELX, BFD_RELOC_X86_64_CODE_6_GOTTPOFF and BFD_RELOC_X86_64_CODE_6_GOTPC32_TLSDESC. * bfd-in2.h: Regenerated. * libbfd.h: Likewise. elfcpp/ * x86_64.h (R_X86_64_CODE_5_GOTPCRELX): New. (R_X86_64_CODE_5_GOTTPOFF): Likewise. (R_X86_64_CODE_5_GOTPC32_TLSDESC): Likewise. (R_X86_64_CODE_6_GOTPCRELX): Likewise. (R_X86_64_CODE_6_GOTTPOFF): Likewise. (R_X86_64_CODE_6_GOTPC32_TLSDESC): Likewise. gas/ * config/tc-i386.c (tc_i386_fix_adjustable): Handle BFD_RELOC_X86_64_CODE_6_GOTTPOFF. (md_assemble): Don't check BFD_RELOC_X86_64_CODE_4_GOTTPOFF. Allow "add %reg1, foo@gottpoff(%rip), %reg2". (output_disp): Handle BFD_RELOC_X86_64_CODE_6_GOTTPOFF. Rewrite setting fx_tcbitX bits for BFD_RELOC_X86_64_GOTTPOFF, BFD_RELOC_X86_64_GOTPC32_TLSDESC and BFD_RELOC_32_PCREL. (md_apply_fix): Handle BFD_RELOC_X86_64_CODE_6_GOTTPOFF. (i386_validate_fix): Rewrite fx_tcbitX bit checking for BFD_RELOC_X86_64_GOTTPOFF, BFD_RELOC_X86_64_GOTPC32_TLSDESC and BFD_RELOC_32_PCREL. (tc_gen_reloc): Handle BFD_RELOC_X86_64_CODE_6_GOTTPOFF. * testsuite/gas/i386/x86-64-gottpoff.d: Updated. * testsuite/gas/i386/x86-64-gottpoff.s: Add tests for "add %reg1, foo@gottpoff(%rip), %reg2" and "add foo@gottpoff(%rip), %reg, %reg2". gold/ * x86_64.cc (Target_x86_64::optimize_tls_reloc): Handle R_X86_64_CODE_6_GOTTPOFF. (Target_x86_64::Scan::get_reference_flags): Likewise. (Target_x86_64::Scan::local): Likewise. (Target_x86_64::Scan::global): Likewise. (Target_x86_64::Relocate::relocate): Likewise. (Target_x86_64::Relocate::relocate_tls): Likewise. (Target_x86_64::Relocate::tls_ie_to_le): Handle. R_X86_64_CODE_6_GOTTPOFF. * testsuite/x86_64_ie_to_le.s: Add tests for "add %reg1, foo@gottpoff(%rip), %reg2" and "add foo@gottpoff(%rip), %reg, %reg2". * testsuite/x86_64_ie_to_le.sh: Updated. include/ * elf/x86-64.h (elf_x86_64_reloc_type): Add R_X86_64_CODE_5_GOTPCRELX, R_X86_64_CODE_5_GOTTPOFF, R_X86_64_CODE_5_GOTPC32_TLSDESC, R_X86_64_CODE_6_GOTPCRELX, R_X86_64_CODE_6_GOTTPOFF and R_X86_64_CODE_6_GOTPC32_TLSDESC. ld/ * testsuite/ld-x86-64/tlsbindesc.s: Add R_X86_64_CODE_6_GOTTPOFF tests. * testsuite/ld-x86-64/tlsbindesc.d: Updated. * testsuite/ld-x86-64/tlsbindesc.rd: Likewise. |
3 years ago |
|
|
3f8f9745c7 |
PR 31283 windmc: Parse input correctly on big endian hosts
On big endian hosts (eg. s390x) the windmc tool fails to parse even
trivial files:
$ cat test.mc
;
$ ./binutils/windmc ./test.mc
In test.mc at line 1: parser: syntax error.
In test.mc at line 1: fatal: syntax error.
The tool starts by reading the input as Windows CP1252 and then
converting it internally into an array of UTF-16LE, which it then
processes as an array of unsigned short (typedef unichar).
There are lots of ways this is wrong, but in the specific case of big
endian machines the little endian pairs of bytes are byte-swapped.
For example, the ';' character in the input above is first converted
to UTF16-LE byte sequence { 0x3b, 0x00 }, which is then cast to
unsigned short. On a big endian machine the first unichar appears to
be 0x3b00. The lexer is unable to recognize this as the comment
character ((unichar)';') and so parsing fails.
The simple fix is to convert the input to UTF-16BE on big endian
machines (and do the reverse conversion when writing the output).
Fixes: https://sourceware.org/bugzilla/show_bug.cgi?id=31283
Signed-off-by: Richard W.M. Jones <rjones@redhat.com>
|
3 years ago |
|
|
16688387ed |
Automatic date update in version.in
|
3 years ago |
|
|
276d9db22d |
Raise exception if ambiguous name is used in gdb.parameter
Currently gdb.parameter doesn't raise an exception if an
ambiguous name is used, it instead returns the value of the
last partly matching parameter:
```
(gdb) show print sym
Ambiguous show print command "sym": symbol, symbol-filename, symbol-loading.
(gdb) show print symbol-loading
Printing of symbol loading messages is "full".
(gdb) py print(gdb.parameter("print sym"))
full
```
It's because lookup_cmd_composition_1 tries to detect
ambigous names by checking the return value of find_cmd
for CMD_LIST_AMBIGUOUS, which never happens, since only
lookup_cmd_1 returns CMD_LIST_AMBIGUOUS.
Instead the nfound argument contains the number of found
matches.
By using it instead, and by setting *CMD to the special value
CMD_LIST_AMBIGUOUS in this case, gdbpy_parameter can now show
the appropriate error message:
```
(gdb) py print(gdb.parameter("print sym"))
Traceback (most recent call last):
File "<string>", line 1, in <module>
RuntimeError: Parameter `print sym' is ambiguous.
Error while executing Python code.
(gdb) py print(gdb.parameter("print symbol"))
True
(gdb) py print(gdb.parameter("print symbol-"))
Traceback (most recent call last):
File "<string>", line 1, in <module>
RuntimeError: Parameter `print symbol-' is ambiguous.
Error while executing Python code.
(gdb) py print(gdb.parameter("print symbol-load"))
full
```
Since the document command also uses lookup_cmd_composition, it needed
to check for CMD_LIST_AMBIGUOUS as well, so it now also shows an
"Ambiguous command" error message in this case.
Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=14639
Approved-By: Tom Tromey <tom@tromey.com>
|
3 years ago |
|
|
ad7b7cb1f4 |
Fix raw-frame-arguments in combination with frame-filters
Currently, if frame-filters are active, raw-values is used instead of
raw-frame-arguments to decide if a pretty-printer should be invoked for
frame arguments in a backtrace.
In this example, "super struct" is the output of the pretty-printer:
(gdb) disable frame-filter global BasicFrameFilter
(gdb) bt
#0 foo (x=42, ss=super struct = {...}) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
If no frame-filter is active, then the raw-values print option does not
affect the backtrace output:
(gdb) set print raw-values on
(gdb) bt
#0 foo (x=42, ss=super struct = {...}) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
(gdb) set print raw-values off
Instead, the raw-frame-arguments option disables the pretty-printer in the
backtrace:
(gdb) bt -raw-frame-arguments on
#0 foo (x=42, ss=...) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
But if a frame-filter is active, the same rules don't apply.
The option raw-frame-arguments is ignored, but raw-values decides if the
pretty-printer is used:
(gdb) enable frame-filter global BasicFrameFilter
(gdb) bt
#0 foo (x=42, ss=super struct = {...}) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
(gdb) set print raw-values on
(gdb) bt
#0 foo (x=42, ss=...) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
(gdb) set print raw-values off
(gdb) bt -raw-frame-arguments on
#0 foo (x=42, ss=super struct = {...}) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
So this adds the PRINT_RAW_FRAME_ARGUMENTS flag to frame_filter_flag, which
is then used in the frame-filter to override the raw flag in enumerate_args.
Then the output is the same if a frame-filter is active, the pretty-printer
for backtraces is only disabled with the raw-frame-arguments option:
(gdb) enable frame-filter global BasicFrameFilter
(gdb) bt
#0 foo (x=42, ss=super struct = {...}) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
(gdb) set print raw-values on
(gdb) bt
#0 foo (x=42, ss=super struct = {...}) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
(gdb) set print raw-values off
(gdb) bt -raw-frame-arguments on
#0 foo (x=42, ss=...) at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:47
#1 0x004016aa in main () at C:/src/repos/gdb-testsuite/gdb/testsuite/gdb.python/py-frame-args.c:57
Co-Authored-By: Andrew Burgess <aburgess@redhat.com>
Approved-By: Tom Tromey <tom@tromey.com>
|
3 years ago |
|
|
6fb99666f4 |
Remove use of scoped_restore_tmpl from scoped_restore_warning_hook
The warning_hook_handler function pointer takes va_list as
an argument, which on some platforms (mingw64) includes some
attributes. Attributes get ignored in template arguments.
This led to the compiler warning:
error: ignoring attributes on template argument 'warning_hook_handler' {aka 'void (*)(const char*, char*)'} [-Werror=ignored-attributes]
387 | scoped_restore_tmpl<warning_hook_handler> m_save;
| ^
By manually implementing the save/restore behaviour, rather
than using the helper template, this warning is fixed.
Approved-By: Tom Tromey <tom@tromey.com>
|
3 years ago |
|
|
c33ea119b1 |
asan: NULL dereference in _bfd_mips_final_write_processing
Fuzzed object files can easily have unexpected section names. We don't want to segfault on objcopy of any file accepted by the mips object_p functions. For objcopy, an assertion that "sec" is non-NULL followed by deferencing "sec" is wrong. So too is asserting that the section name string starts with a particular prefix, and then blithely accessing past the assumed prefix. * elfxx-mips.c (_bfd_mips_final_write_processing): Replace assertions with conditionals. Don't bother testing for name non-NULL. |
3 years ago |
|
|
3ef23ee926 |
memory leak in objdump disassemble_section
* objdump.c (disassemble_section): Free rel_ppstart on error path. |
3 years ago |
|
|
f8c50ae270 |
gas: x86: ginsn: handle sub-QWORD ALU with imm and MOV ops correctly
PR gas/31326
SCFI must handle non QWORD ALU with imm and MOV ops correctly
As per the x86 ISA manual:
- 32-bit operands generate a 32-bit result, zero-extended to a 64-bit
result in the destination general-purpose register.
- 8-bit and 16-bit operands generate an 8-bit or 16-bit result. The
upper 56 bits or 48 bits (respectively) of the destination
general-purpose register are not modified by the operation.
Unlike previously thought, sub-QWORD ALU/imm and MOV ops do have
implications on SCFI. SCFI/ginsn machinery does not track operation size
in the ginsn representation. But given that these sub-QWORD ops update
only a portion of a 64-bit destination register, for SCFI purposes, this
needs to be deemed as an untraceable update (when the destination is
REG_SP / REG_FP). Although in most cases, sub-QWORD ops are not expected
for stack management, but the SCFI machinery must behave correctly, when
such ops are indeed present.
As mentioned earlier, ginsn representation does not carry operation size
information. To resolve the issue raised in PR gas/31326, an option is
to force the generation of GINSN_TYPE_OTHER for all cases when there is
a 8/16/32 bit op. But this may dilute the utility of ginsn for other
use-cases, when they pop up in future.
The current approach is less disruptive than above in that it generates
GINSN_TYPE_OTHER for all cases only when:
- there is a 8/16/32 bit op, and
- the 64-bit op is otherwise traceable.
In other words this means:
- For add/sub ops where dest is reg and src is reg/mem: these always
make dest reg untraceable; So, the current handling is unchanged. We
simply skip detecting 8/16/32-bit ops.
- An x86 pop instruction is translated to a load ginsn followed by a stack
increment add op. A load op always makes dest reg untraceable.
Hence, if the pop instruction is sub-QWORD, we continue to (skip
detecting 8/16/32-bit op, and) generate the load instruction as usual.
This means that if input asm does have save and restore of unequal sized
registers, gas/SCFI will not detect nor warn.
- For ALU imm or MOV reg,reg, however, a GINSN_TYPE_OTHER is generated
when a 8/16/32-bit op is seen.
gas/
PR gas/31326
* config/tc-i386.c (x86_ginsn_addsub_reg_mem): Add a code
comment.
(x86_ginsn_addsub_mem_reg): Likewise.
(x86_ginsn_alu_imm): Detect sub-QWORD opsize and exit early.
(x86_ginsn_move): Likewise.
(x86_ginsn_new): Add comment for 8-bit add/sub opcodes (in
opcode_space SPACE_BASE) about skipped handling.
gas/testsuite/:
PR gas/31326
* gas/scfi/x86_64/ginsn-add-1.l: Update.
* gas/scfi/x86_64/ginsn-add-1.s: Add some sub-QWORD add ops.
* gas/scfi/x86_64/ginsn-dw2-regnum-1.l: Update.
* gas/scfi/x86_64/ginsn-dw2-regnum-1.s: Use mov ops instead of
add to invoke and test the ginsn_dw2_regnum code path.
|
3 years ago |
|
|
b5f29db531 |
Automatic date update in version.in
|
3 years ago |
|
|
6fdf95ae53 |
gdb: remove core_bfd macro
The core_bfd macro hides a use of current_program_space. Remove it, so that we have the opportunity to get the program space from the context, if possible. I guess that the macro was introduced at some point to replace a global variable of the same name without changing all the uses. Change-Id: I971a65b29b5e5a5941f3cb7ea234547daa787268 Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
0afc614c99 |
x86: Warn .insn instruction with length > 15 bytes
Change .insn instruction with length > 15 bytes from error to warning. PR gas/31323 * config/tc-i386.c (output_insn): Issue a warning when .insn instruction length exceeds the limit of 15 bytes. * testsuite/gas/i386/oversized64.s: Add a test for .insn * testsuite/gas/i386/oversized64.l: Updated. |
3 years ago |
|
|
be908bd6e7 |
gdb: LoongArch: Implement the get_syscall_number gdbarch method
In the current code, the feature 'catch syscall' is not supported on LoongArch, implement the "get_syscall_number" gdbarch method to get the system call number from the register a7. Without this patch: (gdb) catch syscall The feature 'catch syscall' is not supported on this architecture yet. Signed-off-by: Tiezhu Yang <yangtiezhu@loongson.cn> |
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 |
|
|
60c95acdac |
Link x86-64 mark-plt-1.so with --no-as-needed
Fixes FAIL: Build mark-plt-1.so where gcc is built with default --as-needed. * testsuite/ld-x86-64/x86-64.exp (Build mark-plt-1.so): Pass --no-as-needed. |
3 years ago |
|
|
df8db2b1fb |
Automatic date update in version.in
|
3 years ago |
|
|
6cedf3bcbf |
gdb: rename target_so_ops to solib_ops
I don't like the name `target_so_ops`, because: - The name `target` is so overloaded, and in this case it's not even related to target_ops or anything else called "target". - We do have an implementation that actually fetches solibs from the target (solib_target_so_op in solib-target.c), so it's confusing for the "base class" to be called target_something as well. Rename to solib_ops. Change-Id: I46a983d44e81400470e22deb09aaf26ad8a3587f Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
7b323785ef |
gdb: rename struct shobj -> struct solib
`struct so_list` was recently renamed to `struct shobj` (in
|
3 years ago |
|
|
68d3bf7d24 |
Remove remnants of partial DIEs from DWARF reader
When rewriting the DWARF scanner, I forgot to remove dwarf2_cu::load_all_dies and dwarf2_cu::partial_dies. This patch corrects the oversight and fixes up a couple other spots that mention partial DIEs, which no longer exist. Approved-By: Tom de Vries <tdevries@suse.de> |
3 years ago |
|
|
4b858d4dbb |
Avoid an allocation in attr_to_dynamic_prop
I noticed that attr_to_dynamic_prop allocates a dwarf_block, when no allocation is required. This patch stack-allocates the object instead. Reviewed-By: Tom de Vries <tdevries@suse.de> |
3 years ago |
|
|
9c0aa4c531 |
Fix disabling of year 2038 support on 32-bit hosts by default
Commit |
3 years ago |
|
|
a8b1650962 |
Handling of arrays with optimized-out bounds
In Ada, sometimes the compiler must emit array bounds by referencing
an artificial variable that's created for this purpose. However, with
optimization enabled, these variables can be optimized away.
Currently this can result in displays like:
(gdb) print mumble
$1 = (warning: unable to get bounds of array, assuming null array
)
This patch changes this to report that the array is optimized-out,
instead, which is closer to the truth, and more generally useful. For
example, Python pretty-printers can now recognize this situation.
In order to accomplish this, I introduced a new PROP_OPTIMIZED_OUT
enumerator and changed one place to use it. Reusing the "unknown"
state wouldn't work properly, because in C it is normal for array
bounds to be unknown.
|
3 years ago |
|
|
bae2a57f4c |
[gdb/tdep] Fix use-after-free in arm_exidx_fill_cache
On arm-linux the linaro CI occasionally reports:
...
(gdb) up 10
#4 0x0001b864 in pthread_join ()
(gdb) FAIL: gdb.threads/staticthreads.exp: up 10
...
while this is expected:
...
(gdb) up 10
#3 0x00010568 in main (argc=1, argv=0xfffeede4) at staticthreads.c:76
76 pthread_join (thread, NULL);
(gdb) PASS: gdb.threads/staticthreads.exp: up 10
...
Thiago investigated the problem, and using valgrind found an invalid read in
arm_exidx_fill_cache.
The problem happens as follows:
- an objfile and corresponding per_bfd are allocated
- some memory is allocated in arm_exidx_new_objfile using
objfile->objfile_obstack, for the "exception table entry cache".
- a symbol reread is triggered, and the objfile, including the
objfile_obstack, is destroyed
- a new objfile is allocated, using the same per_bfd
- again arm_exidx_new_objfile is called, but since the same per_bfd is used,
it doesn't allocate any new memory for the "exception table entry cache".
- the "exception table entry cache" is accessed by arm_exidx_fill_cache,
and we have a use-after-free.
This is a regression since commit
|
3 years ago |
|
|
d1abc68953 |
Automatic date update in version.in
|
3 years ago |
|
|
b36a26343a |
Use reference result of emplace_back
Starting with C++17, emplace_back returns a reference to the new object. This patch changes code that uses emplace_back followed by a call to back() to simply use this reference instead. Approved-By: Simon Marchi <simon.marchi@efficios.com> |
3 years ago |
|
|
029e52bac7 |
LoongArch: gas: Fix the types of symbols referred with %le_*_r in the symtab
When a symbol is referred with %le_{hi20,lo12,add}_r, it's definitely a
TLS symbol and we should set its type to TLS in the symtab. Otherwise
when building Perl with gcc-14 -flto, we get:
/usr/bin/ld: PL_current_context: TLS definition in
./miniperl.ltrans0.ltrans.o section .tbss mismatches non-TLS reference
in ./miniperl.ltrans1.ltrans.o
A minimal reproducer:
$ cat t1.s
.section .tbss
.globl x
x: .word 0
$ cat t2.s
f:
lu12i.w $a0, %le_hi20_r(x)
add.d $a0, $a0, $tp, %le_add_r(x)
li.w $a1, 1
st.w $a1, $a0, %le_lo12_r(x)
$ gas/as-new t1.s -o t1.o
$ gas/as-new t2.s -o t2.o
$ ld/ld-new t1.o t2.o
ld/ld-new: x: TLS definition in t1.o section .tbss mismatches
non-TLS reference in t2.o
Unfortunately this was undetected before Binutils-2.42 release because
GCC < 14 does not use %le_*_r, and without LTO it's very rare to have a
TLS LE definition and its reference in two different translation units.
So this fix should be backported to Binutils-2.42 branch too.
Signed-off-by: Xi Ruoyao <xry111@xry111.site>
|
3 years ago |
|
|
9fdd490b6b |
Automatic date update in version.in
|
3 years ago |
|
|
44c91f530f |
Automatic date update in version.in
|
3 years ago |
|
|
e58beedf2c |
gdb: attach to a process when the executable has been deleted
Bug PR gdb/28313 describes attaching to a process when the executable has been deleted. The bug is for S390 and describes how a user sees a message 'PC not saved'. On x86-64 (GNU/Linux) I don't see a 'PC not saved' message, but instead I see this: (gdb) attach 901877 Attaching to process 901877 No executable file now. warning: Could not load vsyscall page because no executable was specified 0x00007fa9d9c121e7 in ?? () (gdb) bt #0 0x00007fa9d9c121e7 in ?? () #1 0x00007fa9d9c1211e in ?? () #2 0x0000000000000007 in ?? () #3 0x000000002dc8b18d in ?? () #4 0x0000000000000000 in ?? () (gdb) Notice that the addresses in the backtrace don't seem right, quickly heading to 0x7 and finally ending at 0x0. What's going on, in both the s390 case and the x86-64 case is that the architecture's prologue scanner is going wrong and causing the stack unwinding to fail. The prologue scanner goes wrong because GDB has no unwind information. And GDB has no unwind information because, of course, the executable has been deleted. Notice in the example session above we get this line in the output: No executable file now. which indicates that GDB failed to find an executable to debug. For GNU/Linux when GDB tries to find an executable for a given pid we end up calling linux_proc_pid_to_exec_file in gdb/nat/linux-procfs.c. Within this function we call `readlink` on /proc/PID/exe to find the path of the actual executable. If the `readlink` call fails then we already fallback on using /proc/PID/exe as the path to the executable to debug. However, when the executable has been deleted the `readlink` call doesn't fail, but the path that is returned points to a non-existent file. I propose that we add an `access` call to linux_proc_pid_to_exec_file to check that the target file exists and can be read. If the target can't be read then we should fall back to /proc/PID/exe (assuming that /proc/PID/exe can be read). Now on x86-64 the output looks like this: (gdb) attach 901877 Attaching to process 901877 Reading symbols from /proc/901877/exe... Reading symbols from /lib64/libc.so.6... (No debugging symbols found in /lib64/libc.so.6) Reading symbols from /lib64/ld-linux-x86-64.so.2... (No debugging symbols found in /lib64/ld-linux-x86-64.so.2) 0x00007fa9d9c121e7 in nanosleep () from /lib64/libc.so.6 (gdb) bt #0 0x00007fa9d9c121e7 in nanosleep () from /lib64/libc.so.6 #1 0x00007fa9d9c1211e in sleep () from /lib64/libc.so.6 #2 0x000000000040117e in spin_forever () at attach-test.c:17 #3 0x0000000000401198 in main () at attach-test.c:24 (gdb) which is much better. I've also tagged the bug PR gdb/29782 which concerns the test gdb.server/connect-with-no-symbol-file.exp. After making this change, when running gdb.server/connect-with-no-symbol-file.exp GDB would now pick up the /proc/PID/exe file as the executable in some cases. As GDB is not restarted for the multiple iterations of this test GDB (or rather BFD) would given a warning/error like: (gdb) PASS: gdb.server/connect-with-no-symbol-file.exp: sysroot=target:: action=permission: setup: disconnect set sysroot target: BFD: reopening /proc/3283001/exe: No such file or directory (gdb) FAIL: gdb.server/connect-with-no-symbol-file.exp: sysroot=target:: action=permission: setup: adjust sysroot What's happening is that an executable found for an earlier iteration of the test is still registered for the inferior when we are setting up for a second iteration of the test. When the sysroot changes, if there's an executable registered GDB tries to reopen it, but in this case the file has disappeared (the previous inferior has exited by this point). I did think about maybe, when the executable is /proc/PID/exe, we should auto-delete the file from the inferior. But in the end I thought this was a bad idea. Not only would this require a lot of special code in GDB just to support this edge case: we'd need to track if the exe file name came from /proc and should be auto-deleted, or we'd need target specific code to check if a path should be auto-deleted..... ... in addition, we'd still want to warn the user when we auto-deleted the file from the inferior, otherwise they might be surprised to find their inferior suddenly has no executable attached, so we wouldn't actually reduce the number of warnings the user sees. So in the end I figured that the best solution is to just update the test to avoid the warning. This is easily done by manually removing the executable from the inferior once each iteration of the test has completed. Now, in bug PR gdb/29782 GDB is clearly managing to pick up an executable from the NFS cache somehow. I guess what's happening is that when the original file is deleted /proc/PID/exe is actually pointing to a file in the NFS cache which is only deleted at some later point, and so when GDB starts up we do manage to associate a file with the inferior, this results in the same message being emitted from BFD as I was seeing. The fix included in this commit should also fix that bug. One final note: On x86-64 GNU/Linux, the gdb.server/connect-with-no-symbol-file.exp test will produce 2 core files. This is due to a bug in gdbserver that is nothing to do with this test. These core files are created before and after this commit. I am working on a fix for the gdbserver issue, but will post that separately. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=28313 Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=29782 Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
46bd909328 |
x86: Disallow instructions with length > 15 bytes
It is a hard error when an instruction length exceeds the limit of 15 bytes: [hjl@gnu-cfl-3 tmp]$ cat x.s .text xacquire lock addq $0x11223344, %fs:(,%eax) [hjl@gnu-cfl-3 tmp]$ gcc -c x.s x.s: Assembler messages: x.s:2: Warning: instruction length of 16 bytes exceeds the limit of 15 [hjl@gnu-cfl-3 tmp]$ objdump -dw x.o x.o: file format elf64-x86-64 Disassembly of section .text: 0000000000000000 <.text>: 0: 64 67 f2 f0 48 81 04 05 00 00 00 00 44 33 22 xacquire lock (bad) f: 11 .byte 0x11 [hjl@gnu-cfl-3 tmp]$ and [hjl@gnu-cfl-3 tmp]$ cat z.s addq $0xe0, %fs:0, %rdx [hjl@gnu-cfl-3 tmp]$ as -o z.o z.s z.s: Assembler messages: z.s:1: Warning: instruction length of 16 bytes exceeds the limit of 15 [hjl@gnu-cfl-3 tmp]$ objdump -dw z.o z.o: file format elf64-x86-64 Disassembly of section .text: 0000000000000000 <.text>: 0: 64 62 f4 ec 18 81 04 25 00 00 00 00 e0 00 00 (bad) ... [hjl@gnu-cfl-3 pr31323]$ Instructions with length > 15 bytes are always invalid. It is quite easy to generate invalid instructions with AVX now. We should issue an error when instruction length exceeds the limit of 15 bytes. PR gas/31323 * config/tc-i386.c (output_insn): Issue an error when instruction length exceeds the limit of 15 bytes. * testsuite/gas/i386/oversized16.l: Updated. * testsuite/gas/i386/oversized64.l: Likewise. * testsuite/gas/i386/x86-64-apx-inval.l: New file. * testsuite/gas/i386/x86-64-apx-inval.s: Likewise. |
3 years ago |
|
|
6a67441983 |
gdb, testsuite, fortran: Fix sizeof intrinsic for Fortran pointers
For Fortran pointers gfortran/ifx emits DW_TAG_pointer_types like <2><17d>: Abbrev Number: 22 (DW_TAG_variable) <180> DW_AT_name : (indirect string, offset: 0x1f1): fptr <184> DW_AT_type : <0x214> ... <1><219>: Abbrev Number: 27 (DW_TAG_array_type) <21a> DW_AT_type : <0x10e> <216> DW_AT_associated : ... The 'pointer property' in Fortran is implicitly modeled by adding a DW_AT_associated to the type of the variable (see also the DW_AT_associated description in DWARF 5). A Fortran pointer is more than an address and thus different from a C pointer. It is a self contained type having additional fields such as, e.g., the rank of its underlying array. This motivates the intended DWARF modeling of Fortran pointers via the DW_AT_associated attribute. This patch adds support for the sizeof intrinsic by simply dereferencing pointer types when encountered during a sizeof evaluation. The patch also adds a test for the sizeof intrinsic which was not tested before. Tested-by: Thiago Jung Bauermann <thiago.bauermann@linaro.org> Approved-By: Tom Tromey <tom@tromey.com> |
4 years ago |
|
|
f18fc7e56f |
gdb, types: Resolve pointer types dynamically
This commit allows pointers to be dynamic types (on the outmost
level). Similar to references, a pointer is considered a dynamic type
if its target type is a dynamic type and it is on the outmost level.
Also this commit removes the redundant code inside function
"value_check_printable" for handling of DW_AT_associated type.
The pointer resolution follows the one of references.
This change generally makes the GDB output more verbose. We are able to
print more details about a pointer's target like the dimension of an array.
In Fortran, if we have a pointer to a dynamic type
type buffer
real, dimension(:), pointer :: ptr
end type buffer
type(buffer), pointer :: buffer_ptr
allocate (buffer_ptr)
allocate (buffer_ptr%ptr (5))
which then gets allocated, we now resolve the dynamic type before
printing the pointer's type:
Before:
(gdb) ptype buffer_ptr
type = PTR TO -> ( Type buffer
real(kind=4) :: alpha(:)
End Type buffer )
After:
(gdb) ptype buffer_ptr
type = PTR TO -> ( Type buffer
real(kind=4) :: alpha(5)
End Type buffer )
Similarly in C++ we can dynamically resolve e.g. pointers to arrays:
int len = 3;
int arr[len];
int (*ptr)[len];
int ptr = &arr;
Once the pointer is assigned one gets:
Before:
(gdb) p ptr
$1 = (int (*)[variable length]) 0x123456
(gdb) ptype ptr
type = int (*)[variable length]
After:
(gdb) p ptr
$1 = (int (*)[3]) 0x123456
(gdb) ptype ptr
type = int (*)[3]
For more examples see the modified/added test cases.
Tested-by: Thiago Jung Bauermann <thiago.bauermann@linaro.org>
Approved-By: Tom Tromey <tom@tromey.com>
|
4 years ago |
|
|
2e07108364 |
gdb/testsuite: Fix indentation issues in gdb.dwarf2/dynarr-ptr.exp
Improve indentation in the test file by replacing 10 spaces at second level with 4 spaces. This helps to update the test using the right indentation in future. Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
4e3be89fda |
x86: move Q-suffix-to-REX.W translation logic
By pulling it ahead of the SHORT_MNEM_SUFFIX case label we can drop a part of another conditional there. While moving, also drop a pointless check: With QWORD_MNEM_SUFFIX, register operands of XCHG necessarily have both been 64-bit ones. |
3 years ago |
|
|
1e7dd4a034 |
x86: actually implement .noopt
For quite some time we've had support for -O command line options. With
that ignoring at least .noopt isn't really a good idea.
Re-purpose the optimize-3 test for testing this directive's effect as
well.
As to the doc addition - this uses the same text as is there for the
{nooptimize} pseudo-prefix, despite me not being convinced of the "size"
part being fully accurate there (and hence also here).
|
3 years ago |
|
|
e4d85860c2 |
MAINTAINERS: Update my e-mail address.
|
3 years ago |
|
|
f3f71328ae |
Automatic date update in version.in
|
3 years ago |
|
|
09812f0835 |
gas: x86: ginsn: adjust ginsns for certain lea ops
A review comment on the SCFI V4 series was to handle ginsn creation for certain lea opcodes more precisely. Specifically, we should preferably handle the following two cases of lea opcodes similarly: - #1 lea with "index register and scale factor of 1, but no base register", - #2 lea with "no index register, but base register present". Currently, a ginsn of type GINSN_TYPE_OTHER is generated for the case of #1 above. For #2, however, the lea insn is translated to either a GINSN_TYPE_ADD or GINSN_TYPE_MOV depending on whether the immediate for displacement is non-zero or not respectively. Change the handling in x86_ginsn_lea so that both of the above lea manifestations are handled similarly. While at it, remove the code paths creating GINSN_TYPE_OTHER altogether from the function. It makes sense to piggy back on the x86_ginsn_unhandled code path to create GINSN_TYPE_OTHER if the destination register is interesting. This was also suggested in one of the previous review rounds; the other functions already follow that model, so this keeps functions symmetrical looking. gas/ * gas/config/tc-i386.c (x86_ginsn_lea): Handle select lea ops with no base register similar to the case of no index register. Remove creation of GINSN_TYPE_OTHER from the function. gas/testsuite/ * gas/scfi/x86_64/ginsn-lea-1.l: New test. * gas/scfi/x86_64/ginsn-lea-1.s: Likewise. * gas/scfi/x86_64/scfi-x86-64.exp: Add new test. |
3 years ago |
|
|
b3c670a6ba |
gprofng: Remove unused macros
gprofng/ChangeLog 2024-02-01 Vladimir Mezentsev <vladimir.mezentsev@oracle.com> * common/gp-experiment.h: Remove SP_REMOTE_PROTOCOL_VERSION. * common/hwctable.c: Remove DBG_LT* macros. * libcollector/envmgmt.c: Likewise. * libcollector/hwprofile.c: Likewise. * libcollector/iolib.c: Likewise. * libcollector/jprofile.c: Likewise. * libcollector/memmgr.c: Likewise. * libcollector/profile.c: Likewise. * libcollector/tsd.c: Likewise. * libcollector/unwind.c: Likewise. |
3 years ago |
|
|
49ba125f96 |
Fix "objstack" typo
I noticed some comments that mentions "objstack". The type is actually "obstack". This patch fixes the typos. |
3 years ago |
|
|
f214edceb8 |
Rename SEARCH_ALL
The constant SEARCH_ALL conflicts with a define in a Windows header. This patch renames the constant to SEARCH_ALL_DOMAINS to avoid the conflict. Bug: https://sourceware.org/bugzilla/show_bug.cgi?id=31307 |
3 years ago |
|
|
05d1b4b4ad |
gdb/testsuite: fix some duplicate test names in gdb.trace/
This commit fixes some of the easier duplicate test names in the gdb.trace/ directory. All of these duplicates are resolved by either given tests a name, or by extended the existing name to make it more descriptive. There should be no change in what is tested after this commit. |
3 years ago |
|
|
025f70c861 |
gdb/testsuite: fix duplicate test names in gdb.base/cond-eval-mode.exp
Fix some duplicate test names in gdb.base/cond-eval-mode.exp when running with native-gdbserver or native-extended-gdbserver board files. I've just added some 'with_test_prefix' blocks to make the test names unique, there should be no change in what is tested after this commit. |
3 years ago |
|
|
49346fa794 |
Fix AIX build break.
A recent commit broke AIX build. The thread_local type defined functions were being considered a weak symbol and hence while creating the binary these symbols were not visible. This patch is a fix for the same. |
3 years ago |
|
|
3d4b08fb89 |
Automatic date update in version.in
|
3 years ago |
|
|
9c175474a8 |
gdb: remove some unnecessary frame_info_ptr resets
This code was probably needed before we had reinflatable frame_info_ptrs, it's not necessary anymore. Change-Id: I5474c6081ee1e39624c9266b05dbe01351a130b5 Approved-By: Tom Tromey <tom@tromey.com> |
3 years ago |
|
|
249e54204b |
Mention support for AMD/znver5 in GAS
|
3 years ago |
|
|
24f5deb64d |
PR31124: Addendum: Remove PROVIDE of __flmap_init_label, __flmap.
Supply these symbols as computed by the linker scripts, even when there are weak definitions. PR 31124 * scripttempl/avr.sc (__flmap, __flmap_init_label): Remove PROVIDE. |
3 years ago |
|
|
aef6ac7800 |
Automatic date update in version.in
|
3 years ago |