public inbox for archer-commits@sourceware.org
help / color / mirror / Atom feed
From: muller@sourceware.org
To: archer-commits@sourceware.org
Subject: [SCM]  master: Merge remote-tracking branch 'gdb/master'
Date: Fri, 25 Feb 2011 10:51:00 -0000	[thread overview]
Message-ID: <20110225105142.21277.qmail@sourceware.org> (raw)

The branch, master has been updated
       via  1900c52efc5aaf6cfa6add566739e19f8ea751c0 (commit)
       via  a57264517ef09fb62650b948e01aa713d48c3910 (commit)
       via  8bd2ba073a541ead833dd6592f9ec48392e506a9 (commit)
       via  a22de9cabf43402474aff50ce67ae3a1c2e0302d (commit)
       via  1f60f2400bfb83a9137c2f44257a52e47b7a905d (commit)
       via  2aedcc54cddbb33428affc714fb8a51d4416edf6 (commit)
       via  a08216b23ef31e26a30d3f9e3d4070efda1ced41 (commit)
       via  4ef85c9f86bef0f0b5f50cb9e9a56aba6f168c21 (commit)
      from  164e31cf9dd1a90500f6199c06e31f788e1c3b79 (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email.

- Log -----------------------------------------------------------------
commit 1900c52efc5aaf6cfa6add566739e19f8ea751c0
Merge: 164e31c a572645
Author: Pierre Muller <muller@ics.u-strasbg.fr>
Date:   Fri Feb 25 11:47:03 2011 +0100

    Merge remote-tracking branch 'gdb/master'

commit a57264517ef09fb62650b948e01aa713d48c3910
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Feb 25 08:35:35 2011 +0000

    gdb/
    	* dwarf2loc.c (disassemble_dwarf_expression) <DW_OP_breg[0-9]+>: Use
    	L and plongest.
    	(disassemble_dwarf_expression) <DW_OP_bregx>: Drop variable offset,
    	use L and plongest.
    	(disassemble_dwarf_expression) <DW_OP_fbreg>: Use L and plongest.

commit 8bd2ba073a541ead833dd6592f9ec48392e506a9
Author: Jan Kratochvil <jan.kratochvil@redhat.com>
Date:   Fri Feb 25 08:28:06 2011 +0000

    gdb/testsuite/
    	* gdb.dwarf2/dw2-ranges.S: Rename to ...
    	* gdb.dwarf2/dw2-ranges.c: ... here, convert it to C.
    	* gdb.dwarf2/dw2-ranges.exp: Skip the testcase on !$gcc_compiled.
    	Rename srcfile, srcfile2 and srcfile3, new asmfile, asmfile2 and
    	asmfile3.  Comment the STABS (#3) file compilation.  Compile
    	everything through assembler.  Provide KFAIL for symtab/12497.
    	* gdb.dwarf2/dw2-ranges2.S: Rename to ...
    	* gdb.dwarf2/dw2-ranges2.c: ... here, convert it to C.
    	* gdb.dwarf2/dw2-ranges3.S: Rename to ...
    	* gdb.dwarf2/dw2-ranges3.c: ... here, convert it to C.

commit a22de9cabf43402474aff50ce67ae3a1c2e0302d
Author: Alan Modra <amodra@bigpond.net.au>
Date:   Fri Feb 25 07:48:51 2011 +0000

    	PR 12519
    	* internal.h (ELF_SECTION_IN_SEGMENT_1): Don't match zero size
    	sections at start or end of PT_DYNAMIC.

commit 1f60f2400bfb83a9137c2f44257a52e47b7a905d
Author: gdbadmin <gdbadmin@sourceware.org>
Date:   Fri Feb 25 00:00:33 2011 +0000

    *** empty log message ***

commit 2aedcc54cddbb33428affc714fb8a51d4416edf6
Author: Alan Modra <amodra@bigpond.net.au>
Date:   Thu Feb 24 23:00:05 2011 +0000

    daily update

commit a08216b23ef31e26a30d3f9e3d4070efda1ced41
Author: Michael Snyder <msnyder@specifix.com>
Date:   Thu Feb 24 18:37:13 2011 +0000

    2011-02-24  Michael Snyder  <msnyder@vmware.com>
    
    	* gdb.base/break.exp: Remove debugging 'printf' accidentally
    	left behind in previous check-in.

commit 4ef85c9f86bef0f0b5f50cb9e9a56aba6f168c21
Author: Michael Snyder <msnyder@specifix.com>
Date:   Thu Feb 24 18:09:50 2011 +0000

    2011-02-24  Michael Snyder  <msnyder@vmware.com>
    
    	* Makefile.in (clean): Make clean should remove generated files
    	observer.h and observer.inc.

-----------------------------------------------------------------------

Summary of changes:
 bfd/version.h                                      |    2 +-
 gdb/ChangeLog                                      |   13 ++++++
 gdb/Makefile.in                                    |    2 +-
 gdb/dwarf2loc.c                                    |   24 ++++------
 gdb/testsuite/ChangeLog                            |   18 ++++++++
 gdb/testsuite/gdb.base/break.exp                   |    2 -
 gdb/testsuite/gdb.dwarf2/dw2-ranges.S              |   46 --------------------
 .../gdb.dwarf2/{dw2-ranges3.S => dw2-ranges.c}     |   24 +++++------
 gdb/testsuite/gdb.dwarf2/dw2-ranges.exp            |   46 +++++++++++++++++---
 .../gdb.dwarf2/{dw2-ranges2.S => dw2-ranges2.c}    |   33 ++++----------
 gdb/testsuite/gdb.dwarf2/dw2-ranges3.c             |   21 +++++++++
 gdb/version.in                                     |    2 +-
 include/elf/ChangeLog                              |    6 +++
 include/elf/internal.h                             |   20 +++++++-
 14 files changed, 148 insertions(+), 111 deletions(-)
 delete mode 100644 gdb/testsuite/gdb.dwarf2/dw2-ranges.S
 rename gdb/testsuite/gdb.dwarf2/{dw2-ranges3.S => dw2-ranges.c} (70%)
 rename gdb/testsuite/gdb.dwarf2/{dw2-ranges2.S => dw2-ranges2.c} (59%)
 create mode 100644 gdb/testsuite/gdb.dwarf2/dw2-ranges3.c

First 500 lines of diff:
diff --git a/bfd/version.h b/bfd/version.h
index 716679a..951f0ff 100644
--- a/bfd/version.h
+++ b/bfd/version.h
@@ -1,4 +1,4 @@
-#define BFD_VERSION_DATE 20110224
+#define BFD_VERSION_DATE 20110225
 #define BFD_VERSION @bfd_version@
 #define BFD_VERSION_STRING  @bfd_version_package@ @bfd_version_string@
 #define REPORT_BUGS_TO @report_bugs_to@
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 0b03569..93a2c33 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,16 @@
+2011-02-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* dwarf2loc.c (disassemble_dwarf_expression) <DW_OP_breg[0-9]+>: Use
+	L and plongest.
+	(disassemble_dwarf_expression) <DW_OP_bregx>: Drop variable offset,
+	use L and plongest.
+	(disassemble_dwarf_expression) <DW_OP_fbreg>: Use L and plongest.
+
+2011-02-24  Michael Snyder  <msnyder@vmware.com>
+
+	* Makefile.in (clean): Make clean should remove generated files
+	observer.h and observer.inc.
+
 2011-02-24  Joel Brobecker  <brobecker@adacore.com>
 
 	Revert the following patch (not approved yet):
diff --git a/gdb/Makefile.in b/gdb/Makefile.in
index fae43b2..8c13e53 100644
--- a/gdb/Makefile.in
+++ b/gdb/Makefile.in
@@ -1237,7 +1237,7 @@ tags: TAGS
 clean mostlyclean: $(CONFIG_CLEAN)
 	@$(MAKE) $(FLAGS_TO_PASS) DO=clean "DODIRS=$(CLEANDIRS)" subdir_do
 	rm -f *.o *.a $(ADD_FILES) *~ init.c-tmp init.l-tmp version.c-tmp
-	rm -f init.c version.c
+	rm -f init.c version.c observer.h observer.inc
 	rm -f gdb$(EXEEXT) core make.log
 	rm -f gdb[0-9]$(EXEEXT)
 	rm -f test-cp-name-parser$(EXEEXT)
diff --git a/gdb/dwarf2loc.c b/gdb/dwarf2loc.c
index a439f72..cac9b55 100644
--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -2430,27 +2430,23 @@ disassemble_dwarf_expression (struct ui_file *stream,
 	case DW_OP_breg29:
 	case DW_OP_breg30:
 	case DW_OP_breg31:
-	  data = read_sleb128 (data, end, &ul);
-	  fprintf_filtered (stream, " %s [$%s]", pulongest (ul),
+	  data = read_sleb128 (data, end, &l);
+	  fprintf_filtered (stream, " %s [$%s]", plongest (l),
 			    gdbarch_register_name (arch, op - DW_OP_breg0));
 	  break;
 
 	case DW_OP_bregx:
-	  {
-	    ULONGEST offset;
-
-	    data = read_uleb128 (data, end, &ul);
-	    data = read_sleb128 (data, end, &offset);
-	    fprintf_filtered (stream, " register %s [$%s] offset %s",
-			      pulongest (ul),
-			      gdbarch_register_name (arch, (int) ul),
-			      pulongest (offset));
-	  }
+	  data = read_uleb128 (data, end, &ul);
+	  data = read_sleb128 (data, end, &l);
+	  fprintf_filtered (stream, " register %s [$%s] offset %s",
+			    pulongest (ul),
+			    gdbarch_register_name (arch, (int) ul),
+			    plongest (l));
 	  break;
 
 	case DW_OP_fbreg:
-	  data = read_sleb128 (data, end, &ul);
-	  fprintf_filtered (stream, " %s", pulongest (ul));
+	  data = read_sleb128 (data, end, &l);
+	  fprintf_filtered (stream, " %s", plongest (l));
 	  break;
 
 	case DW_OP_xderef_size:
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog
index 1855f7a..deedcd9 100644
--- a/gdb/testsuite/ChangeLog
+++ b/gdb/testsuite/ChangeLog
@@ -1,3 +1,21 @@
+2011-02-25  Jan Kratochvil  <jan.kratochvil@redhat.com>
+
+	* gdb.dwarf2/dw2-ranges.S: Rename to ...
+	* gdb.dwarf2/dw2-ranges.c: ... here, convert it to C.
+	* gdb.dwarf2/dw2-ranges.exp: Skip the testcase on !$gcc_compiled.
+	Rename srcfile, srcfile2 and srcfile3, new asmfile, asmfile2 and
+	asmfile3.  Comment the STABS (#3) file compilation.  Compile
+	everything through assembler.  Provide KFAIL for symtab/12497.
+	* gdb.dwarf2/dw2-ranges2.S: Rename to ...
+	* gdb.dwarf2/dw2-ranges2.c: ... here, convert it to C.
+	* gdb.dwarf2/dw2-ranges3.S: Rename to ...
+	* gdb.dwarf2/dw2-ranges3.c: ... here, convert it to C.
+
+2011-02-24  Michael Snyder  <msnyder@vmware.com>
+
+	* gdb.base/break.exp: Remove debugging 'printf' accidentally
+	left behind in previous check-in.
+
 2011-02-23  Michael Snyder  <msnyder@vmware.com>
 
 	* gdb.base/break.exp: Add tests for "info break" with arguments.
diff --git a/gdb/testsuite/gdb.base/break.exp b/gdb/testsuite/gdb.base/break.exp
index c02b437..6e14a47 100644
--- a/gdb/testsuite/gdb.base/break.exp
+++ b/gdb/testsuite/gdb.base/break.exp
@@ -236,8 +236,6 @@ gdb_test_multiple "info break 3-5" "info break 3-5" {
     }
 }
 
-gdb_test "print !$see1 && !$see2 && $see3 && $see4 && $see5 && !$see6" "" ""
-
 # FIXME: The rest of this test doesn't work with anything that can't
 # handle arguments.
 # Huh? There doesn't *appear* to be anything that passes arguments
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ranges.S b/gdb/testsuite/gdb.dwarf2/dw2-ranges.S
deleted file mode 100644
index f87e289..0000000
--- a/gdb/testsuite/gdb.dwarf2/dw2-ranges.S
+++ /dev/null
@@ -1,46 +0,0 @@
-/*
-   Copyright 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
-   
-   This program is free software; you can redistribute it and/or modify
-   it under the terms of the GNU General Public License as published by
-   the Free Software Foundation; either version 3 of the License, or
-   (at your option) any later version.
-   
-   This program is distributed in the hope that it will be useful,
-   but WITHOUT ANY WARRANTY; without even the implied warranty of
-   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-   GNU General Public License for more details.
-   
-   You should have received a copy of the GNU General Public License
-   along with this program.  If not, see <http://www.gnu.org/licenses/>.
- */
-
-/* Despite the sections below will be adjacent the assembler has to produce
-   DW_AT_ranges as the linker could place both sections at arbitrary locations.
-   */
-
-	/* Such directive is required by GAS for builds without `-g'.  */
-	.file	1 "dw2-ranges.S"
-
-	/* Without this directive GAS will not emit DWARF2 unless we provide an
-	   instruction to assemble.  We want to avoid any instructions to
-	   remain architecture independent.  */
-	.loc_mark_labels	1
-
-	.text
-
-	.globl	main
-	.func	main
-main:	.int	0
-	.endfunc
-	.size	main, . - main
-
-	/* `.fini' section is here to make sure `dw2-ranges.S'
-	   vs. `dw2-ranges2.S' overlap their DW_AT_ranges with each other.  */
-	.section	.fini, "ax", @progbits
-
-	.globl	func
-	.func	func
-func:	.int	0
-	.endfunc
-	.size	func, . - func
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ranges3.S b/gdb/testsuite/gdb.dwarf2/dw2-ranges.c
similarity index 70%
rename from gdb/testsuite/gdb.dwarf2/dw2-ranges3.S
rename to gdb/testsuite/gdb.dwarf2/dw2-ranges.c
index e1539ce..3572645 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-ranges3.S
+++ b/gdb/testsuite/gdb.dwarf2/dw2-ranges.c
@@ -19,18 +19,16 @@
    DW_AT_ranges as the linker could place both sections at arbitrary locations.
    */
 
-	/* Such directive is required by GAS for builds without `-g'.  */
-	.file	1 "dw2-ranges3.S"
+/* `.fini' section is here to make sure `dw2-ranges.c'
+   vs. `dw2-ranges2.c' overlap their DW_AT_ranges with each other.  */
 
-	/* Without this directive GAS will not emit DWARF2 unless we provide an
-	   instruction to assemble.  We want to avoid any instructions to
-	   remain architecture independent.  */
-	.loc_mark_labels	1
+void __attribute__ ((section (".fini")))
+func (void)
+{
+}
 
-	.text
-
-	.globl	main3
-	.func	main3
-main3:	.int	0
-	.endfunc
-	.size	main3, . - main3
+int
+main (void)
+{
+  return 0;
+}
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ranges.exp b/gdb/testsuite/gdb.dwarf2/dw2-ranges.exp
index d3b8fe5..39fb21e 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-ranges.exp
+++ b/gdb/testsuite/gdb.dwarf2/dw2-ranges.exp
@@ -23,24 +23,47 @@ if {![dwarf2_support]} {
     return 0  
 }
 
+# The .c files use __attribute__.
+if [get_compiler_info unused] {
+    return -1;
+}
+if !$gcc_compiled {
+    verbose "Skipping DW_AT_ranges test."
+    return 0  
+}
+
 set testfile "dw2-ranges"
-set srcfile ${testfile}.S
-set srcfile2 ${testfile}2.S
-set srcfile3 ${testfile}3.S
+set srcfile ${testfile}.c
+set srcfile2 ${testfile}2.c
+set srcfile3 ${testfile}3.c
+set asmfile ${objdir}/${subdir}/${testfile}.s
+set asmfile2 ${objdir}/${subdir}/${testfile}2.s
+set asmfile3 ${objdir}/${subdir}/${testfile}3.s
 set objfile ${objdir}/${subdir}/${testfile}.o
 set objfile2 ${objdir}/${subdir}/${testfile}2.o
 set objfile3 ${objdir}/${subdir}/${testfile}3.o
 set binfile ${objdir}/${subdir}/${testfile}
 
-if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${objfile}" object {additional_flags=-gdwarf-2}] != "" } {
+# Generate .s without debug info but provide debug info by the assembler.
+# This way we get DW_TAG_compile_unit DIE and only that DIE.
+
+if {[gdb_compile "${srcdir}/${subdir}/${srcfile}" "${asmfile}" assembly {}] != ""
+    || [gdb_compile "${asmfile}" "${objfile}" object {additional_flags=-gdwarf-2}] != "" } {
     return -1
 }
-if {[gdb_compile "${srcdir}/${subdir}/${srcfile2}" "${objfile2}" object {additional_flags=-gdwarf-2}] != "" } {
+if {[gdb_compile "${srcdir}/${subdir}/${srcfile2}" "${asmfile2}" assembly {}] != ""
+    || [gdb_compile "${asmfile2}" "${objfile2}" object {additional_flags=-gdwarf-2}] != "" } {
     return -1
 }
-if {[gdb_compile "${srcdir}/${subdir}/${srcfile3}" "${objfile3}" object {additional_flags=-gstabs}] != "" } {
+
+# STABS compilation is intentional as it tests the STABS lookup where is no
+# partial_symtab->psymtabs_addrmap supported for that CU (Compilation Unit) in
+# a file containing psymtabs_addrmap-supporting DWARF CUs.
+if {[gdb_compile "${srcdir}/${subdir}/${srcfile3}" "${asmfile3}" assembly {}] != ""
+    || [gdb_compile "${asmfile3}" "${objfile3}" object {additional_flags=-gstabs}] != "" } {
     return -1
 }
+
 if {[gdb_compile "${objfile} ${objfile2} ${objfile3}" "${binfile}" executable {}] != "" } {
     return -1
 }
@@ -62,4 +85,13 @@ gdb_test "info line main" "Line \[0-9\]* of .* starts at address .* and ends at
 gdb_test "info line func" "Line \[0-9\]* of .* starts at address .* and ends at .*"
 gdb_test "info line main2" "Line \[0-9\]* of .* starts at address .* and ends at .*"
 gdb_test "info line func2" "Line \[0-9\]* of .* starts at address .* and ends at .*"
-gdb_test "info line main3" "Line \[0-9\]* of .* starts at address .* and ends at .*"
+
+set test "info line main3"
+gdb_test_multiple $test $test {
+    -re "Line \[0-9\]* of .* starts at address .* and ends at .*\r\n$gdb_prompt $" {
+	pass $test
+    }
+    -re "Line \[0-9\]* of .* is at address .* but contains no code\\.\r\n$gdb_prompt $" {
+	kfail symtab/12497 $test
+    }
+}
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ranges2.S b/gdb/testsuite/gdb.dwarf2/dw2-ranges2.c
similarity index 59%
rename from gdb/testsuite/gdb.dwarf2/dw2-ranges2.S
rename to gdb/testsuite/gdb.dwarf2/dw2-ranges2.c
index e41e5b3..538dbe5 100644
--- a/gdb/testsuite/gdb.dwarf2/dw2-ranges2.S
+++ b/gdb/testsuite/gdb.dwarf2/dw2-ranges2.c
@@ -19,28 +19,15 @@
    DW_AT_ranges as the linker could place both sections at arbitrary locations.
    */
 
-	/* Such directive is required by GAS for builds without `-g'.  */
-	.file	1 "dw2-ranges2.S"
+/* `.fini' section is here to make sure `dw2-ranges.c'
+   vs. `dw2-ranges2.c' overlap their DW_AT_ranges with each other.  */
 
-	/* Without this directive GAS will not emit DWARF2 unless we provide an
-	   instruction to assemble.  We want to avoid any instructions to
-	   remain architecture independent.  */
-	.loc_mark_labels	1
+void __attribute__ ((section (".fini")))
+func2 (void)
+{
+}
 
-	.text
-
-	.globl	main2
-	.func	main2
-main2:	.int	0
-	.endfunc
-	.size	main2, . - main2
-
-	/* `.fini' section is here to make sure `dw2-ranges.S'
-	   vs. `dw2-ranges2.S' overlap their DW_AT_ranges with each other.  */
-	.section	.fini, "ax", @progbits
-
-	.globl	func2
-	.func	func2
-func2:	.int	0
-	.endfunc
-	.size	func2, . - func2
+void
+main2 (void)
+{
+}
diff --git a/gdb/testsuite/gdb.dwarf2/dw2-ranges3.c b/gdb/testsuite/gdb.dwarf2/dw2-ranges3.c
new file mode 100644
index 0000000..b42a98d
--- /dev/null
+++ b/gdb/testsuite/gdb.dwarf2/dw2-ranges3.c
@@ -0,0 +1,21 @@
+/*
+   Copyright 2007, 2008, 2009, 2010, 2011 Free Software Foundation, Inc.
+   
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 3 of the License, or
+   (at your option) any later version.
+   
+   This program is distributed in the hope that it will be useful,
+   but WITHOUT ANY WARRANTY; without even the implied warranty of
+   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+   GNU General Public License for more details.
+   
+   You should have received a copy of the GNU General Public License
+   along with this program.  If not, see <http://www.gnu.org/licenses/>.
+ */
+
+void
+main3 (void)
+{
+}
diff --git a/gdb/version.in b/gdb/version.in
index 616fdbd..c37a846 100644
--- a/gdb/version.in
+++ b/gdb/version.in
@@ -1 +1 @@
-7.2.50.20110224-cvs
+7.2.50.20110225-cvs
diff --git a/include/elf/ChangeLog b/include/elf/ChangeLog
index d178b64..399344d 100644
--- a/include/elf/ChangeLog
+++ b/include/elf/ChangeLog
@@ -1,3 +1,9 @@
+2011-02-25  Alan Modra  <amodra@gmail.com>
+
+	PR 12519
+	* internal.h (ELF_SECTION_IN_SEGMENT_1): Don't match zero size
+	sections at start or end of PT_DYNAMIC.
+
 2011-01-10  Nathan Sidwell  <nathan@codesourcery.com>
 	    Glauber de Oliveira Costa  <glommer@gmail.com>
 
diff --git a/include/elf/internal.h b/include/elf/internal.h
index 6998ae0..c6e5721 100644
--- a/include/elf/internal.h
+++ b/include/elf/internal.h
@@ -1,6 +1,6 @@
 /* ELF support for BFD.
    Copyright 1991, 1992, 1993, 1994, 1995, 1997, 1998, 2000, 2001, 2002,
-   2003, 2006, 2007, 2008, 2010 Free Software Foundation, Inc.
+   2003, 2006, 2007, 2008, 2010, 2011 Free Software Foundation, Inc.
 
    Written by Fred Fish @ Cygnus Support, from information published
    in "UNIX System V Release 4, Programmers Guide: ANSI C and
@@ -302,7 +302,9 @@ struct elf_segment_map
 /* Decide if the section SEC_HDR is in SEGMENT.  If CHECK_VMA, then
    VMAs are checked for alloc sections.  If STRICT, then a zero size
    section won't match at the end of a segment, unless the segment
-   is also zero size.  */
+   is also zero size.  Regardless of STRICT and CHECK_VMA, zero size
+   sections won't match at the start or end of PT_DYNAMIC, unless
+   PT_DYNAMIC is itself zero sized.  */
 #define ELF_SECTION_IN_SEGMENT_1(sec_hdr, segment, check_vma, strict)	\
   ((/* Only PT_LOAD, PT_GNU_RELRO and PT_TLS segments can contain	\
        SHF_TLS sections.  */						\
@@ -334,7 +336,19 @@ struct elf_segment_map
 		   <= (segment)->p_memsz - 1))				\
 	   && (((sec_hdr)->sh_addr - (segment)->p_vaddr			\
 		+ ELF_SECTION_SIZE(sec_hdr, segment))			\
-	       <= (segment)->p_memsz))))
+	       <= (segment)->p_memsz)))					\
+   /* No zero size sections at start or end of PT_DYNAMIC.  */		\
+   && ((segment)->p_type != PT_DYNAMIC					\
+       || (sec_hdr)->sh_size != 0					\
+       || (segment)->p_memsz == 0					\
+       || (((sec_hdr)->sh_type == SHT_NOBITS				\
+	    || ((bfd_vma) (sec_hdr)->sh_offset > (segment)->p_offset	\
+	        && ((sec_hdr)->sh_offset - (segment)->p_offset		\
+		    < (segment)->p_filesz)))				\
+	   && (((sec_hdr)->sh_flags & SHF_ALLOC) == 0			\
+	       || ((sec_hdr)->sh_addr > (segment)->p_vaddr		\
+		   && ((sec_hdr)->sh_addr - (segment)->p_vaddr		\
+		       < (segment)->p_memsz))))))
 
 #define ELF_SECTION_IN_SEGMENT(sec_hdr, segment)			\
   (ELF_SECTION_IN_SEGMENT_1 (sec_hdr, segment, 1, 0))


hooks/post-receive
--
Repository for Project Archer.


             reply	other threads:[~2011-02-25 10:51 UTC|newest]

Thread overview: 45+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-02-25 10:51 muller [this message]
  -- strict thread matches above, loose matches on Subject: below --
2011-09-02 18:41 kseitz
2011-08-08 14:41 gary
2011-05-12  8:04 jkratoch
2011-05-11 20:42 jkratoch
2011-05-11 17:20 jkratoch
2011-05-09 15:58 jkratoch
2011-05-05 15:23 jkratoch
2011-05-04 20:47 muller
2011-05-01 15:49 jkratoch
2011-04-30 14:57 jkratoch
2011-04-25 19:24 jkratoch
2011-04-24 16:32 jkratoch
2011-04-16 21:05 jkratoch
2011-04-16 17:04 jkratoch
2011-04-11 13:53 jkratoch
2011-04-11 12:13 muller
2011-04-08  6:48 muller
2011-04-07 22:52 muller
2011-04-07 22:32 muller
2011-03-30 13:34 muller
2011-03-28 16:11 jkratoch
2011-03-20 12:45 jkratoch
2011-03-19  8:35 jkratoch
2011-03-17 15:12 jkratoch
2011-03-16  9:39 pmuldoon
2011-03-16  7:11 jkratoch
2011-03-15 20:19 jkratoch
2011-03-14 16:49 pmuldoon
2011-03-13 19:23 pmuldoon
2011-03-09 22:49 jkratoch
2011-03-09 10:57 muller
2011-03-08  8:16 jkratoch
2011-03-07  8:47 pmuldoon
2011-03-05  7:15 jkratoch
2011-02-24 10:06 muller
2011-02-24  1:29 jkratoch
2011-02-22 22:54 jkratoch
2011-02-21 21:35 muller
2011-02-21 10:54 pmuldoon
2011-02-19 20:17 jkratoch
2011-02-17 22:03 jkratoch
2011-02-16 22:30 jkratoch
2011-02-13 17:49 jkratoch
2011-02-06 19:15 jkratoch

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20110225105142.21277.qmail@sourceware.org \
    --to=muller@sourceware.org \
    --cc=archer-commits@sourceware.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).