This is the mail archive of the binutils@sourceware.org mailing list for the binutils project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[patch 7/7] [gold] Add test cases for dwp.


This patch adds some testcases for the dwp utility. I've included assembly
source pre-generated from the included source files, so that these tests can
be run without a GCC that supports -gsplit-dwarf.

gold/
	* testsuite/Makefile.am (TEST_OBJCOPY): New macro.
	* testsuite/Makefile.in: Regenerate.
	* testsuite/dwp_test.h: New source file.
	* testsuite/dwp_test_1.cc: New source file.
	* testsuite/dwp_test_1.s: New source file.
	* testsuite/dwp_test_1.sh: New source file.
	* testsuite/dwp_test_1b.cc: New source file.
	* testsuite/dwp_test_1b.s: New source file.
	* testsuite/dwp_test_2.cc: New source file.
	* testsuite/dwp_test_2.s: New source file.
	* testsuite/dwp_test_2.sh: New source file.
	* testsuite/dwp_test_main.cc: New source file.
	* testsuite/dwp_test_main.s: New source file.
---
 gold/testsuite/Makefile.am      |   45 +
 gold/testsuite/Makefile.in      |   49 +-
 gold/testsuite/dwp_test.h       |   87 ++
 gold/testsuite/dwp_test_1.cc    |  210 ++++
 gold/testsuite/dwp_test_1.s     | 2660 +++++++++++++++++++++++++++++++++++++++
 gold/testsuite/dwp_test_1.sh    |   63 +
 gold/testsuite/dwp_test_1b.cc   |   35 +
 gold/testsuite/dwp_test_1b.s    |  549 ++++++++
 gold/testsuite/dwp_test_2.cc    |  144 +++
 gold/testsuite/dwp_test_2.s     | 1714 +++++++++++++++++++++++++
 gold/testsuite/dwp_test_2.sh    |   63 +
 gold/testsuite/dwp_test_main.cc |   59 +
 gold/testsuite/dwp_test_main.s  | 1399 ++++++++++++++++++++
 13 files changed, 7075 insertions(+), 2 deletions(-)
 create mode 100644 gold/testsuite/dwp_test.h
 create mode 100644 gold/testsuite/dwp_test_1.cc
 create mode 100644 gold/testsuite/dwp_test_1.s
 create mode 100755 gold/testsuite/dwp_test_1.sh
 create mode 100644 gold/testsuite/dwp_test_1b.cc
 create mode 100644 gold/testsuite/dwp_test_1b.s
 create mode 100644 gold/testsuite/dwp_test_2.cc
 create mode 100644 gold/testsuite/dwp_test_2.s
 create mode 100755 gold/testsuite/dwp_test_2.sh
 create mode 100644 gold/testsuite/dwp_test_main.cc
 create mode 100644 gold/testsuite/dwp_test_main.s

diff --git a/gold/testsuite/Makefile.am b/gold/testsuite/Makefile.am
index 4840f08..8bb16b6 100644
--- a/gold/testsuite/Makefile.am
+++ b/gold/testsuite/Makefile.am
@@ -21,6 +21,7 @@ AM_CPPFLAGS = \
 
 TEST_READELF = $(top_builddir)/../binutils/readelf
 TEST_OBJDUMP = $(top_builddir)/../binutils/objdump
+TEST_OBJCOPY = $(top_builddir)/../binutils/objcopy
 TEST_CXXFILT = $(top_builddir)/../binutils/cxxfilt
 TEST_STRIP = $(top_builddir)/../binutils/strip-new
 TEST_AR = $(top_builddir)/../binutils/ar
@@ -2730,3 +2731,47 @@ endif DEFAULT_TARGET_ARM
 
 endif NATIVE_OR_CROSS_LINKER
 
+# Tests for the dwp tool.
+# We don't want to rely yet on GCC support for -gsplit-dwarf,
+# so we use (for now) test cases in x86 assembly language,
+# compiled from the dwp_test_*.cc sources.
+
+if DEFAULT_TARGET_X86_64
+
+dwp_test_main.o: dwp_test_main.s
+	$(TEST_AS) -o $@ $<
+dwp_test_1.o: dwp_test_1.s
+	$(TEST_AS) -o $@ $<
+dwp_test_1b.o: dwp_test_1b.s
+	$(TEST_AS) -o $@ $<
+dwp_test_2.o: dwp_test_2.s
+	$(TEST_AS) -o $@ $<
+
+dwp_test_main.dwo: dwp_test_main.o
+	$(TEST_OBJCOPY) --extract-dwo $< $@
+dwp_test_1.dwo: dwp_test_1.o
+	$(TEST_OBJCOPY) --extract-dwo $< $@
+dwp_test_1b.dwo: dwp_test_1b.o
+	$(TEST_OBJCOPY) --extract-dwo $< $@
+dwp_test_2.dwo: dwp_test_2.o
+	$(TEST_OBJCOPY) --extract-dwo $< $@
+
+check_SCRIPTS += dwp_test_1.sh
+check_DATA += dwp_test_1.stdout
+dwp_test_1.stdout: dwp_test_1.dwp
+	$(TEST_READELF) -wi $< > $@
+dwp_test_1.dwp: ../dwp dwp_test_main.dwo dwp_test_1.dwo dwp_test_1b.dwo dwp_test_2.dwo
+	../dwp -o $@ dwp_test_main.dwo dwp_test_1.dwo dwp_test_1b.dwo dwp_test_2.dwo
+
+check_SCRIPTS += dwp_test_2.sh
+check_DATA += dwp_test_2.stdout
+dwp_test_2.stdout: dwp_test_2.dwp
+	$(TEST_READELF) -wi $< > $@
+dwp_test_2.dwp: ../dwp dwp_test_2a.dwp dwp_test_2b.dwp
+	../dwp -o $@ dwp_test_2a.dwp dwp_test_2b.dwp
+dwp_test_2a.dwp: ../dwp dwp_test_main.dwo dwp_test_1.dwo
+	../dwp -o $@ dwp_test_main.dwo dwp_test_1.dwo
+dwp_test_2b.dwp: ../dwp dwp_test_1b.dwo dwp_test_2.dwo
+	../dwp -o $@ dwp_test_1b.dwo dwp_test_2.dwo
+
+endif DEFAULT_TARGET_X86_64
diff --git a/gold/testsuite/dwp_test.h b/gold/testsuite/dwp_test.h
new file mode 100644
index 0000000..37256d3
--- /dev/null
+++ b/gold/testsuite/dwp_test.h
@@ -0,0 +1,87 @@
+// dwp_test.h -- a test case for dwp, header file  -*- C++ -*-
+
+// Copyright 2012 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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, write to the Free Software
+// Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// Adapted from two_file_test.h.
+
+class C1
+{
+ public:
+  bool testcase1();
+  bool t1a();
+  int t1_2();
+  bool testcase2();
+  bool testcase3();
+  bool testcase4();
+  int member1;
+};
+
+class C2
+{
+ public:
+  bool testcase1();
+  bool testcase2();
+  bool testcase3();
+  bool testcase4();
+  int member1;
+};
+
+class C3
+{
+ public:
+  bool testcase1();
+  bool testcase2();
+  bool testcase3();
+  bool (*f4())();
+  int member1;
+};
+
+extern C3 c3;
+
+extern int v2;
+extern int v3;
+extern char v4[];
+extern char v5[];
+
+extern int f10();
+extern int f11a();
+extern int f11b(int (*)());
+extern bool t12();
+
+extern bool t13();
+inline void f13i() { }
+extern void (*f13())();
+
+#define TEST_STRING_CONSTANT "test string constant"
+extern const char* f14();
+
+#define TEST_WIDE_STRING_CONSTANT L"test wide string constant"
+extern const wchar_t* f15();
+
+extern bool t16();
+extern bool t16a();
+
+extern bool t17();
+extern const char* t17data[];
+#define T17_COUNT 5
+
+extern bool t18();
+extern const char* f18(int);
diff --git a/gold/testsuite/dwp_test_1.cc b/gold/testsuite/dwp_test_1.cc
new file mode 100644
index 0000000..71fbc5b
--- /dev/null
+++ b/gold/testsuite/dwp_test_1.cc
@@ -0,0 +1,210 @@
+// dwp_test_1.cc -- a test case for dwp
+
+// Copyright 2012 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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, write to the Free Software
+// Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// Adapted from two_file_test_1.cc.
+
+#include "dwp_test.h"
+
+// 1  Code in file 1 calls code in file 2.
+
+bool
+C1::testcase1()
+{
+  return t1_2() == 123;
+}
+
+// 2  Code in file 1 refers to global data in file 2.
+
+bool
+C1::testcase2()
+{
+  return v2 == 456;
+}
+
+// 3  Code in file 1 referes to common symbol in file 2.
+
+bool
+C1::testcase3()
+{
+  return v3 == 789;
+}
+
+// 4  Code in file 1 refers to offset within global data in file 2.
+
+bool
+C1::testcase4()
+{
+  return v4[5] == ',';
+}
+
+// 5  Code in file 1 refers to offset within common symbol in file 2.
+
+bool
+C2::testcase1()
+{
+  return v5[7] == 'w';
+}
+
+// 6  Data in file 1 refers to global data in file 2.
+
+int* p6 = &v2;
+
+bool
+C2::testcase2()
+{
+  return *p6 == 456;
+}
+
+// 7  Data in file 1 refers to common symbol in file 2.
+
+int* p7 = &v3;
+
+bool
+C2::testcase3()
+{
+  return *p7 == 789;
+}
+
+// 8  Data in file 1 refers to offset within global data in file 2.
+
+char* p8 = &v4[6];
+
+bool
+C2::testcase4()
+{
+  return *p8 == ' ';
+}
+
+// 9  Data in file 1 refers to offset within common symbol in file 2.
+
+char* p9 = &v5[8];
+
+bool
+C3::testcase1()
+{
+  return *p9 == 'o';
+}
+
+// 10 Data in file 1 refers to function in file 2.
+
+int (*pfn)() = &f10;
+
+bool
+C3::testcase2()
+{
+  return (*pfn)() == 135;
+}
+
+// 11 Pass function pointer from file 1 to file 2.
+
+int
+f11a()
+{
+  return 246;
+}
+
+bool
+C3::testcase3()
+{
+  return f11b(&f11a) == 246;
+}
+
+// 12 Compare address of function for equality in both files.
+
+bool
+t12()
+{
+  return &t12 == c3.f4();
+}
+
+// 13 Compare address of inline function for equality in both files.
+
+bool
+t13()
+{
+  return &f13i == f13();
+}
+
+// 14 Compare string constants in file 1 and file 2.
+
+bool
+t14()
+{
+  const char* s1 = TEST_STRING_CONSTANT;
+  const char* s2 = f14();
+  while (*s1 != '\0')
+    if (*s1++ != *s2++)
+      return false;
+  return *s2 == '\0';
+}
+
+// 15 Compare wide string constants in file 1 and file 2.
+
+bool
+t15()
+{
+  const wchar_t* s1 = TEST_WIDE_STRING_CONSTANT;
+  const wchar_t* s2 = f15();
+  while (*s1 != '\0')
+    if (*s1++ != *s2++)
+      return false;
+  return *s2 == '\0';
+}
+
+// 16 Call a function directly after its address has been taken.
+
+bool
+t16()
+{
+  return f10() == 135;
+}
+
+// 17 File 1 checks array of string constants defined in file 2.
+
+bool
+t17()
+{
+  char c = 'a';
+  for (int i = 0; i < T17_COUNT; ++i)
+    {
+      if (t17data[i][0] != c || t17data[i][1] != '\0')
+	return false;
+      ++c;
+    }
+  return true;
+}
+
+// 18 File 1 checks string constants referenced in code in file 2.
+
+bool
+t18()
+{
+  char c = 'a';
+  for (int i = 0; i < T17_COUNT; ++i)
+    {
+      const char* s = f18(i);
+      if (s[0] != c || s[1] != '\0')
+        return false;
+      ++c;
+    }
+  return true;
+}
diff --git a/gold/testsuite/dwp_test_1.s b/gold/testsuite/dwp_test_1.s
new file mode 100644
index 0000000..d3a898d
--- /dev/null
+++ b/gold/testsuite/dwp_test_1.s
@@ -0,0 +1,2660 @@
+	.file	"dwp_test_1.cc"
+	.text
+.Ltext0:
+	.section	.text._Z4f13iv,"axG",@progbits,_Z4f13iv,comdat
+	.weak	_Z4f13iv
+	.type	_Z4f13iv, @function
+_Z4f13iv:
+.LFB0:
+	.file 1 "dwp_test.h"
+	.loc 1 70 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 1 70 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE0:
+	.size	_Z4f13iv, .-_Z4f13iv
+	.text
+	.align 2
+	.globl	_ZN2C19testcase1Ev
+	.type	_ZN2C19testcase1Ev, @function
+_ZN2C19testcase1Ev:
+.LFB1:
+	.file 2 "dwp_test_1.cc"
+	.loc 2 31 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$16, %rsp
+	movq	%rdi, -8(%rbp)
+	.loc 2 32 0
+	movq	-8(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C14t1_2Ev
+	cmpl	$123, %eax
+	sete	%al
+	.loc 2 33 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE1:
+	.size	_ZN2C19testcase1Ev, .-_ZN2C19testcase1Ev
+	.align 2
+	.globl	_ZN2C19testcase2Ev
+	.type	_ZN2C19testcase2Ev, @function
+_ZN2C19testcase2Ev:
+.LFB2:
+	.loc 2 39 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 40 0
+	movl	v2(%rip), %eax
+	cmpl	$456, %eax
+	sete	%al
+	.loc 2 41 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE2:
+	.size	_ZN2C19testcase2Ev, .-_ZN2C19testcase2Ev
+	.align 2
+	.globl	_ZN2C19testcase3Ev
+	.type	_ZN2C19testcase3Ev, @function
+_ZN2C19testcase3Ev:
+.LFB3:
+	.loc 2 47 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 48 0
+	movl	v3(%rip), %eax
+	cmpl	$789, %eax
+	sete	%al
+	.loc 2 49 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE3:
+	.size	_ZN2C19testcase3Ev, .-_ZN2C19testcase3Ev
+	.align 2
+	.globl	_ZN2C19testcase4Ev
+	.type	_ZN2C19testcase4Ev, @function
+_ZN2C19testcase4Ev:
+.LFB4:
+	.loc 2 55 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 56 0
+	movzbl	v4+5(%rip), %eax
+	cmpb	$44, %al
+	sete	%al
+	.loc 2 57 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE4:
+	.size	_ZN2C19testcase4Ev, .-_ZN2C19testcase4Ev
+	.align 2
+	.globl	_ZN2C29testcase1Ev
+	.type	_ZN2C29testcase1Ev, @function
+_ZN2C29testcase1Ev:
+.LFB5:
+	.loc 2 63 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 64 0
+	movzbl	v5+7(%rip), %eax
+	cmpb	$119, %al
+	sete	%al
+	.loc 2 65 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE5:
+	.size	_ZN2C29testcase1Ev, .-_ZN2C29testcase1Ev
+	.globl	p6
+	.data
+	.align 8
+	.type	p6, @object
+	.size	p6, 8
+p6:
+	.quad	v2
+	.text
+	.align 2
+	.globl	_ZN2C29testcase2Ev
+	.type	_ZN2C29testcase2Ev, @function
+_ZN2C29testcase2Ev:
+.LFB6:
+	.loc 2 73 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 74 0
+	movq	p6(%rip), %rax
+	movl	(%rax), %eax
+	cmpl	$456, %eax
+	sete	%al
+	.loc 2 75 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE6:
+	.size	_ZN2C29testcase2Ev, .-_ZN2C29testcase2Ev
+	.globl	p7
+	.data
+	.align 8
+	.type	p7, @object
+	.size	p7, 8
+p7:
+	.quad	v3
+	.text
+	.align 2
+	.globl	_ZN2C29testcase3Ev
+	.type	_ZN2C29testcase3Ev, @function
+_ZN2C29testcase3Ev:
+.LFB7:
+	.loc 2 83 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 84 0
+	movq	p7(%rip), %rax
+	movl	(%rax), %eax
+	cmpl	$789, %eax
+	sete	%al
+	.loc 2 85 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE7:
+	.size	_ZN2C29testcase3Ev, .-_ZN2C29testcase3Ev
+	.globl	p8
+	.data
+	.align 8
+	.type	p8, @object
+	.size	p8, 8
+p8:
+	.quad	v4+6
+	.text
+	.align 2
+	.globl	_ZN2C29testcase4Ev
+	.type	_ZN2C29testcase4Ev, @function
+_ZN2C29testcase4Ev:
+.LFB8:
+	.loc 2 93 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 94 0
+	movq	p8(%rip), %rax
+	movzbl	(%rax), %eax
+	cmpb	$32, %al
+	sete	%al
+	.loc 2 95 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE8:
+	.size	_ZN2C29testcase4Ev, .-_ZN2C29testcase4Ev
+	.globl	p9
+	.data
+	.align 8
+	.type	p9, @object
+	.size	p9, 8
+p9:
+	.quad	v5+8
+	.text
+	.align 2
+	.globl	_ZN2C39testcase1Ev
+	.type	_ZN2C39testcase1Ev, @function
+_ZN2C39testcase1Ev:
+.LFB9:
+	.loc 2 103 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 104 0
+	movq	p9(%rip), %rax
+	movzbl	(%rax), %eax
+	cmpb	$111, %al
+	sete	%al
+	.loc 2 105 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE9:
+	.size	_ZN2C39testcase1Ev, .-_ZN2C39testcase1Ev
+	.globl	pfn
+	.data
+	.align 8
+	.type	pfn, @object
+	.size	pfn, 8
+pfn:
+	.quad	_Z3f10v
+	.text
+	.align 2
+	.globl	_ZN2C39testcase2Ev
+	.type	_ZN2C39testcase2Ev, @function
+_ZN2C39testcase2Ev:
+.LFB10:
+	.loc 2 113 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$16, %rsp
+	movq	%rdi, -8(%rbp)
+	.loc 2 114 0
+	movq	pfn(%rip), %rax
+	call	*%rax
+	cmpl	$135, %eax
+	sete	%al
+	.loc 2 115 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE10:
+	.size	_ZN2C39testcase2Ev, .-_ZN2C39testcase2Ev
+	.globl	_Z4f11av
+	.type	_Z4f11av, @function
+_Z4f11av:
+.LFB11:
+	.loc 2 121 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 2 122 0
+	movl	$246, %eax
+	.loc 2 123 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE11:
+	.size	_Z4f11av, .-_Z4f11av
+	.align 2
+	.globl	_ZN2C39testcase3Ev
+	.type	_ZN2C39testcase3Ev, @function
+_ZN2C39testcase3Ev:
+.LFB12:
+	.loc 2 127 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$16, %rsp
+	movq	%rdi, -8(%rbp)
+	.loc 2 128 0
+	movl	$_Z4f11av, %edi
+	call	_Z4f11bPFivE
+	cmpl	$246, %eax
+	sete	%al
+	.loc 2 129 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE12:
+	.size	_ZN2C39testcase3Ev, .-_ZN2C39testcase3Ev
+	.globl	_Z3t12v
+	.type	_Z3t12v, @function
+_Z3t12v:
+.LFB13:
+	.loc 2 135 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 2 136 0
+	movl	$c3, %edi
+	call	_ZN2C32f4Ev
+	cmpq	$_Z3t12v, %rax
+	sete	%al
+	.loc 2 137 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE13:
+	.size	_Z3t12v, .-_Z3t12v
+	.globl	_Z3t13v
+	.type	_Z3t13v, @function
+_Z3t13v:
+.LFB14:
+	.loc 2 143 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 2 144 0
+	call	_Z3f13v
+	cmpq	$_Z4f13iv, %rax
+	sete	%al
+	.loc 2 145 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE14:
+	.size	_Z3t13v, .-_Z3t13v
+	.section	.rodata
+.LC0:
+	.string	"test string constant"
+	.text
+	.globl	_Z3t14v
+	.type	_Z3t14v, @function
+_Z3t14v:
+.LFB15:
+	.loc 2 151 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$16, %rsp
+.LBB2:
+	.loc 2 152 0
+	movq	$.LC0, -8(%rbp)
+	.loc 2 153 0
+	call	_Z3f14v
+	movq	%rax, -16(%rbp)
+	.loc 2 154 0
+	jmp	.L31
+.L33:
+	.loc 2 155 0
+	movq	-8(%rbp), %rax
+	movzbl	(%rax), %edx
+	movq	-16(%rbp), %rax
+	movzbl	(%rax), %eax
+	cmpb	%al, %dl
+	setne	%al
+	addq	$1, -8(%rbp)
+	addq	$1, -16(%rbp)
+	testb	%al, %al
+	je	.L31
+	.loc 2 156 0
+	movl	$0, %eax
+	jmp	.L32
+.L31:
+	.loc 2 154 0 discriminator 1
+	movq	-8(%rbp), %rax
+	movzbl	(%rax), %eax
+	testb	%al, %al
+	setne	%al
+	testb	%al, %al
+	jne	.L33
+	.loc 2 157 0
+	movq	-16(%rbp), %rax
+	movzbl	(%rax), %eax
+	testb	%al, %al
+	sete	%al
+.L32:
+.LBE2:
+	.loc 2 158 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE15:
+	.size	_Z3t14v, .-_Z3t14v
+	.section	.rodata
+	.align 8
+.LC1:
+	.string	"t"
+	.string	""
+	.string	""
+	.string	"e"
+	.string	""
+	.string	""
+	.string	"s"
+	.string	""
+	.string	""
+	.string	"t"
+	.string	""
+	.string	""
+	.string	" "
+	.string	""
+	.string	""
+	.string	"w"
+	.string	""
+	.string	""
+	.string	"i"
+	.string	""
+	.string	""
+	.string	"d"
+	.string	""
+	.string	""
+	.string	"e"
+	.string	""
+	.string	""
+	.string	" "
+	.string	""
+	.string	""
+	.string	"s"
+	.string	""
+	.string	""
+	.string	"t"
+	.string	""
+	.string	""
+	.string	"r"
+	.string	""
+	.string	""
+	.string	"i"
+	.string	""
+	.string	""
+	.string	"n"
+	.string	""
+	.string	""
+	.string	"g"
+	.string	""
+	.string	""
+	.string	" "
+	.string	""
+	.string	""
+	.string	"c"
+	.string	""
+	.string	""
+	.string	"o"
+	.string	""
+	.string	""
+	.string	"n"
+	.string	""
+	.string	""
+	.string	"s"
+	.string	""
+	.string	""
+	.string	"t"
+	.string	""
+	.string	""
+	.string	"a"
+	.string	""
+	.string	""
+	.string	"n"
+	.string	""
+	.string	""
+	.string	"t"
+	.string	""
+	.string	""
+	.string	""
+	.string	""
+	.string	""
+	.string	""
+	.text
+	.globl	_Z3t15v
+	.type	_Z3t15v, @function
+_Z3t15v:
+.LFB16:
+	.loc 2 164 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$16, %rsp
+.LBB3:
+	.loc 2 165 0
+	movq	$.LC1, -8(%rbp)
+	.loc 2 166 0
+	call	_Z3f15v
+	movq	%rax, -16(%rbp)
+	.loc 2 167 0
+	jmp	.L35
+.L37:
+	.loc 2 168 0
+	movq	-8(%rbp), %rax
+	movl	(%rax), %edx
+	movq	-16(%rbp), %rax
+	movl	(%rax), %eax
+	cmpl	%eax, %edx
+	setne	%al
+	addq	$4, -8(%rbp)
+	addq	$4, -16(%rbp)
+	testb	%al, %al
+	je	.L35
+	.loc 2 169 0
+	movl	$0, %eax
+	jmp	.L36
+.L35:
+	.loc 2 167 0 discriminator 1
+	movq	-8(%rbp), %rax
+	movl	(%rax), %eax
+	testl	%eax, %eax
+	setne	%al
+	testb	%al, %al
+	jne	.L37
+	.loc 2 170 0
+	movq	-16(%rbp), %rax
+	movl	(%rax), %eax
+	testl	%eax, %eax
+	sete	%al
+.L36:
+.LBE3:
+	.loc 2 171 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE16:
+	.size	_Z3t15v, .-_Z3t15v
+	.globl	_Z3t16v
+	.type	_Z3t16v, @function
+_Z3t16v:
+.LFB17:
+	.loc 2 177 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 2 178 0
+	call	_Z3f10v
+	cmpl	$135, %eax
+	sete	%al
+	.loc 2 179 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE17:
+	.size	_Z3t16v, .-_Z3t16v
+	.globl	_Z3t17v
+	.type	_Z3t17v, @function
+_Z3t17v:
+.LFB18:
+	.loc 2 185 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+.LBB4:
+	.loc 2 186 0
+	movb	$97, -1(%rbp)
+.LBB5:
+	.loc 2 187 0
+	movl	$0, -8(%rbp)
+	jmp	.L41
+.L45:
+	.loc 2 189 0
+	movl	-8(%rbp), %eax
+	cltq
+	movq	t17data(,%rax,8), %rax
+	movzbl	(%rax), %eax
+	cmpb	-1(%rbp), %al
+	jne	.L42
+	.loc 2 189 0 is_stmt 0 discriminator 1
+	movl	-8(%rbp), %eax
+	cltq
+	movq	t17data(,%rax,8), %rax
+	addq	$1, %rax
+	movzbl	(%rax), %eax
+	testb	%al, %al
+	je	.L43
+.L42:
+	.loc 2 190 0 is_stmt 1
+	movl	$0, %eax
+	jmp	.L44
+.L43:
+	.loc 2 191 0
+	addb	$1, -1(%rbp)
+	.loc 2 187 0
+	addl	$1, -8(%rbp)
+.L41:
+	.loc 2 187 0 is_stmt 0 discriminator 1
+	cmpl	$4, -8(%rbp)
+	setle	%al
+	testb	%al, %al
+	jne	.L45
+.LBE5:
+	.loc 2 193 0 is_stmt 1
+	movl	$1, %eax
+.L44:
+.LBE4:
+	.loc 2 194 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE18:
+	.size	_Z3t17v, .-_Z3t17v
+	.globl	_Z3t18v
+	.type	_Z3t18v, @function
+_Z3t18v:
+.LFB19:
+	.loc 2 200 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$16, %rsp
+.LBB6:
+	.loc 2 201 0
+	movb	$97, -1(%rbp)
+.LBB7:
+	.loc 2 202 0
+	movl	$0, -8(%rbp)
+	jmp	.L47
+.L51:
+.LBB8:
+	.loc 2 204 0
+	movl	-8(%rbp), %eax
+	movl	%eax, %edi
+	call	_Z3f18i
+	movq	%rax, -16(%rbp)
+	.loc 2 205 0
+	movq	-16(%rbp), %rax
+	movzbl	(%rax), %eax
+	cmpb	-1(%rbp), %al
+	jne	.L48
+	.loc 2 205 0 is_stmt 0 discriminator 1
+	movq	-16(%rbp), %rax
+	addq	$1, %rax
+	movzbl	(%rax), %eax
+	testb	%al, %al
+	je	.L49
+.L48:
+	.loc 2 206 0 is_stmt 1
+	movl	$0, %eax
+	jmp	.L50
+.L49:
+	.loc 2 207 0
+	addb	$1, -1(%rbp)
+.LBE8:
+	.loc 2 202 0
+	addl	$1, -8(%rbp)
+.L47:
+	.loc 2 202 0 is_stmt 0 discriminator 1
+	cmpl	$4, -8(%rbp)
+	setle	%al
+	testb	%al, %al
+	jne	.L51
+.LBE7:
+	.loc 2 209 0 is_stmt 1
+	movl	$1, %eax
+.L50:
+.LBE6:
+	.loc 2 210 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE19:
+	.size	_Z3t18v, .-_Z3t18v
+.Letext0:
+	.section	.debug_types.dwo,"G",@progbits,wt.bb2916f0c1bd34b5,comdat
+	.long	0xc1
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0x8a
+	.byte	0xda
+	.byte	0x59
+	.byte	0x6e
+	.byte	0x4d
+	.byte	0x5c
+	.byte	0xa
+	.byte	0x88
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C3"
+	.byte	0x4
+	.byte	0x1
+	.byte	0x2f
+	.long	0xa4
+	.uleb128 0x3
+	.uleb128 0x6
+	.byte	0x1
+	.byte	0x36
+	.long	0xa4
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.uleb128 0
+	.byte	0x1
+	.byte	0x32
+	.uleb128 0x2
+	.long	0xab
+	.byte	0x1
+	.long	0x4c
+	.long	0x52
+	.uleb128 0x5
+	.long	0xb3
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x1
+	.byte	0x1
+	.byte	0x33
+	.uleb128 0x3
+	.long	0xab
+	.byte	0x1
+	.long	0x64
+	.long	0x6a
+	.uleb128 0x5
+	.long	0xb3
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x4
+	.byte	0x1
+	.byte	0x34
+	.uleb128 0x5
+	.long	0xab
+	.byte	0x1
+	.long	0x7c
+	.long	0x82
+	.uleb128 0x5
+	.long	0xb3
+	.byte	0
+	.uleb128 0x6
+	.string	"f4"
+	.byte	0x1
+	.byte	0x35
+	.string	"_ZN2C32f4Ev"
+	.long	0xb9
+	.byte	0x1
+	.long	0x9d
+	.uleb128 0x5
+	.long	0xb3
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.uleb128 0x8
+	.byte	0x8
+	.long	0xbf
+	.uleb128 0x9
+	.long	0xab
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.bb2916f0c1bd34b5,comdat
+	.long	0x6e
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_1.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_types.dwo,"G",@progbits,wt.66526f88bcc798ab,comdat
+	.long	0xa9
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0x66
+	.byte	0x52
+	.byte	0x6f
+	.byte	0x88
+	.byte	0xbc
+	.byte	0xc7
+	.byte	0x98
+	.byte	0xab
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0x4b
+	.byte	0xf9
+	.byte	0xce
+	.byte	0xbf
+	.byte	0xd8
+	.byte	0xf0
+	.byte	0x4a
+	.byte	0xae
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C2"
+	.byte	0x4
+	.byte	0x1
+	.byte	0x25
+	.long	0x97
+	.uleb128 0x3
+	.uleb128 0x6
+	.byte	0x1
+	.byte	0x2c
+	.long	0x97
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.uleb128 0
+	.byte	0x1
+	.byte	0x28
+	.uleb128 0x7
+	.long	0x9e
+	.byte	0x1
+	.long	0x4c
+	.long	0x52
+	.uleb128 0x5
+	.long	0xa6
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x1
+	.byte	0x1
+	.byte	0x29
+	.uleb128 0x8
+	.long	0x9e
+	.byte	0x1
+	.long	0x64
+	.long	0x6a
+	.uleb128 0x5
+	.long	0xa6
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x4
+	.byte	0x1
+	.byte	0x2a
+	.uleb128 0x9
+	.long	0x9e
+	.byte	0x1
+	.long	0x7c
+	.long	0x82
+	.uleb128 0x5
+	.long	0xa6
+	.byte	0
+	.uleb128 0xa
+	.uleb128 0xa
+	.byte	0x1
+	.byte	0x2b
+	.uleb128 0xb
+	.long	0x9e
+	.byte	0x1
+	.long	0x90
+	.uleb128 0x5
+	.long	0xa6
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.66526f88bcc798ab,comdat
+	.long	0x6e
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0x66
+	.byte	0x52
+	.byte	0x6f
+	.byte	0x88
+	.byte	0xbc
+	.byte	0xc7
+	.byte	0x98
+	.byte	0xab
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_1.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_types.dwo,"G",@progbits,wt.c419a9b7a4a2fab5,comdat
+	.long	0xf9
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0xe3
+	.byte	0xad
+	.byte	0x5
+	.byte	0x3b
+	.byte	0x75
+	.byte	0xeb
+	.byte	0xfb
+	.byte	0xc7
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C1"
+	.byte	0x4
+	.byte	0x1
+	.byte	0x19
+	.long	0xe7
+	.uleb128 0x3
+	.uleb128 0x6
+	.byte	0x1
+	.byte	0x22
+	.long	0xe7
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.uleb128 0
+	.byte	0x1
+	.byte	0x1c
+	.uleb128 0xc
+	.long	0xee
+	.byte	0x1
+	.long	0x4c
+	.long	0x52
+	.uleb128 0x5
+	.long	0xf6
+	.byte	0
+	.uleb128 0xb
+	.string	"t1a"
+	.byte	0x1
+	.byte	0x1d
+	.string	"_ZN2C13t1aEv"
+	.long	0xee
+	.byte	0x1
+	.long	0x73
+	.long	0x79
+	.uleb128 0x5
+	.long	0xf6
+	.byte	0
+	.uleb128 0xb
+	.string	"t1_2"
+	.byte	0x1
+	.byte	0x1e
+	.string	"_ZN2C14t1_2Ev"
+	.long	0xe7
+	.byte	0x1
+	.long	0x9c
+	.long	0xa2
+	.uleb128 0x5
+	.long	0xf6
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x1
+	.byte	0x1
+	.byte	0x1f
+	.uleb128 0xd
+	.long	0xee
+	.byte	0x1
+	.long	0xb4
+	.long	0xba
+	.uleb128 0x5
+	.long	0xf6
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x4
+	.byte	0x1
+	.byte	0x20
+	.uleb128 0xe
+	.long	0xee
+	.byte	0x1
+	.long	0xcc
+	.long	0xd2
+	.uleb128 0x5
+	.long	0xf6
+	.byte	0
+	.uleb128 0xa
+	.uleb128 0xa
+	.byte	0x1
+	.byte	0x21
+	.uleb128 0xf
+	.long	0xee
+	.byte	0x1
+	.long	0xe0
+	.uleb128 0x5
+	.long	0xf6
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.c419a9b7a4a2fab5,comdat
+	.long	0x6e
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_1.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_info.dwo,"e",@progbits
+.Ldebug_info0:
+	.long	0x5af
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.uleb128 0xc
+	.string	"GNU C++ 4.7.x-google 20120720 (prerelease)"
+	.byte	0x4
+	.string	"dwp_test_1.cc"
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.byte	0x27
+	.byte	0x37
+	.byte	0xdc
+	.byte	0x2f
+	.byte	0x9
+	.byte	0xc6
+	.byte	0xf9
+	.byte	0x52
+	.uleb128 0xd
+	.string	"C1"
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.long	0xc6
+	.uleb128 0xe
+	.uleb128 0
+	.byte	0x1
+	.byte	0x1c
+	.uleb128 0xc
+	.long	0xcd
+	.byte	0x1
+	.uleb128 0xe
+	.uleb128 0x1
+	.byte	0x1
+	.byte	0x1f
+	.uleb128 0xd
+	.long	0xcd
+	.byte	0x1
+	.uleb128 0xe
+	.uleb128 0x4
+	.byte	0x1
+	.byte	0x20
+	.uleb128 0xe
+	.long	0xcd
+	.byte	0x1
+	.uleb128 0xe
+	.uleb128 0xa
+	.byte	0x1
+	.byte	0x21
+	.uleb128 0xf
+	.long	0xcd
+	.byte	0x1
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0xf
+	.byte	0x8
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.uleb128 0xd
+	.string	"C2"
+	.byte	0x66
+	.byte	0x52
+	.byte	0x6f
+	.byte	0x88
+	.byte	0xbc
+	.byte	0xc7
+	.byte	0x98
+	.byte	0xab
+	.long	0x118
+	.uleb128 0xe
+	.uleb128 0
+	.byte	0x1
+	.byte	0x28
+	.uleb128 0x7
+	.long	0xcd
+	.byte	0x1
+	.uleb128 0xe
+	.uleb128 0x1
+	.byte	0x1
+	.byte	0x29
+	.uleb128 0x8
+	.long	0xcd
+	.byte	0x1
+	.uleb128 0xe
+	.uleb128 0x4
+	.byte	0x1
+	.byte	0x2a
+	.uleb128 0x9
+	.long	0xcd
+	.byte	0x1
+	.uleb128 0xe
+	.uleb128 0xa
+	.byte	0x1
+	.byte	0x2b
+	.uleb128 0xb
+	.long	0xcd
+	.byte	0x1
+	.byte	0
+	.uleb128 0xf
+	.byte	0x8
+	.byte	0x66
+	.byte	0x52
+	.byte	0x6f
+	.byte	0x88
+	.byte	0xbc
+	.byte	0xc7
+	.byte	0x98
+	.byte	0xab
+	.uleb128 0xd
+	.string	"C3"
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0x151
+	.uleb128 0xe
+	.uleb128 0
+	.byte	0x1
+	.byte	0x32
+	.uleb128 0x2
+	.long	0xcd
+	.byte	0x1
+	.uleb128 0xe
+	.uleb128 0x1
+	.byte	0x1
+	.byte	0x33
+	.uleb128 0x3
+	.long	0xcd
+	.byte	0x1
+	.uleb128 0xe
+	.uleb128 0x4
+	.byte	0x1
+	.byte	0x34
+	.uleb128 0x5
+	.long	0xcd
+	.byte	0x1
+	.byte	0
+	.uleb128 0xf
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.uleb128 0x10
+	.string	"f13i"
+	.byte	0x1
+	.byte	0x46
+	.string	"_Z4f13iv"
+	.uleb128 0
+	.quad	.LFE0-.LFB0
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x11
+	.long	0x9d
+	.byte	0x2
+	.byte	0x1e
+	.uleb128 0x1
+	.quad	.LFE1-.LFB1
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x191
+	.long	0x19b
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x19b
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x13
+	.long	0xd5
+	.uleb128 0x14
+	.long	0xa7
+	.byte	0x2
+	.byte	0x26
+	.uleb128 0x2
+	.quad	.LFE2-.LFB2
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x1ba
+	.long	0x1c4
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x19b
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x14
+	.long	0xb1
+	.byte	0x2
+	.byte	0x2e
+	.uleb128 0x3
+	.quad	.LFE3-.LFB3
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x1de
+	.long	0x1e8
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x19b
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x14
+	.long	0xbb
+	.byte	0x2
+	.byte	0x36
+	.uleb128 0x4
+	.quad	.LFE4-.LFB4
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x202
+	.long	0x20c
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x19b
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x14
+	.long	0xef
+	.byte	0x2
+	.byte	0x3e
+	.uleb128 0x5
+	.quad	.LFE5-.LFB5
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x226
+	.long	0x230
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x230
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x13
+	.long	0x118
+	.uleb128 0x14
+	.long	0xf9
+	.byte	0x2
+	.byte	0x48
+	.uleb128 0x6
+	.quad	.LFE6-.LFB6
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x24f
+	.long	0x259
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x230
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x14
+	.long	0x103
+	.byte	0x2
+	.byte	0x52
+	.uleb128 0x7
+	.quad	.LFE7-.LFB7
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x273
+	.long	0x27d
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x230
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x14
+	.long	0x10d
+	.byte	0x2
+	.byte	0x5c
+	.uleb128 0x8
+	.quad	.LFE8-.LFB8
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x297
+	.long	0x2a1
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x230
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x14
+	.long	0x132
+	.byte	0x2
+	.byte	0x66
+	.uleb128 0x9
+	.quad	.LFE9-.LFB9
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x2bb
+	.long	0x2c5
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x2c5
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x13
+	.long	0x151
+	.uleb128 0x11
+	.long	0x13c
+	.byte	0x2
+	.byte	0x70
+	.uleb128 0xa
+	.quad	.LFE10-.LFB10
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x2e4
+	.long	0x2ee
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x2c5
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x15
+	.string	"f11a"
+	.byte	0x2
+	.byte	0x78
+	.string	"_Z4f11av"
+	.long	0xc6
+	.uleb128 0xb
+	.quad	.LFE11-.LFB11
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x11
+	.long	0x146
+	.byte	0x2
+	.byte	0x7e
+	.uleb128 0xc
+	.quad	.LFE12-.LFB12
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x328
+	.long	0x332
+	.uleb128 0x12
+	.uleb128 0x10
+	.long	0x2c5
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x16
+	.string	"t12"
+	.byte	0x2
+	.byte	0x86
+	.string	"_Z3t12v"
+	.long	0xcd
+	.uleb128 0xd
+	.quad	.LFE13-.LFB13
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x16
+	.string	"t13"
+	.byte	0x2
+	.byte	0x8e
+	.string	"_Z3t13v"
+	.long	0xcd
+	.uleb128 0xe
+	.quad	.LFE14-.LFB14
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x17
+	.string	"t14"
+	.byte	0x2
+	.byte	0x96
+	.string	"_Z3t14v"
+	.long	0xcd
+	.uleb128 0xf
+	.quad	.LFE15-.LFB15
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x3b6
+	.uleb128 0x18
+	.uleb128 0x10
+	.quad	.LBE2-.LBB2
+	.uleb128 0x19
+	.string	"s1"
+	.byte	0x2
+	.byte	0x98
+	.long	0x3b6
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.uleb128 0x19
+	.string	"s2"
+	.byte	0x2
+	.byte	0x99
+	.long	0x3b6
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -32
+	.byte	0
+	.byte	0
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x3bc
+	.uleb128 0x13
+	.long	0x3c1
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x6
+	.string	"char"
+	.uleb128 0x17
+	.string	"t15"
+	.byte	0x2
+	.byte	0xa3
+	.string	"_Z3t15v"
+	.long	0xcd
+	.uleb128 0x11
+	.quad	.LFE16-.LFB16
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x411
+	.uleb128 0x18
+	.uleb128 0x12
+	.quad	.LBE3-.LBB3
+	.uleb128 0x19
+	.string	"s1"
+	.byte	0x2
+	.byte	0xa5
+	.long	0x411
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.uleb128 0x19
+	.string	"s2"
+	.byte	0x2
+	.byte	0xa6
+	.long	0x411
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -32
+	.byte	0
+	.byte	0
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x417
+	.uleb128 0x13
+	.long	0x41c
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"wchar_t"
+	.uleb128 0x16
+	.string	"t16"
+	.byte	0x2
+	.byte	0xb0
+	.string	"_Z3t16v"
+	.long	0xcd
+	.uleb128 0x13
+	.quad	.LFE17-.LFB17
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x1a
+	.string	"t17"
+	.byte	0x2
+	.byte	0xb8
+	.string	"_Z3t17v"
+	.long	0xcd
+	.uleb128 0x14
+	.quad	.LFE18-.LFB18
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x496
+	.uleb128 0x18
+	.uleb128 0x15
+	.quad	.LBE4-.LBB4
+	.uleb128 0x19
+	.string	"c"
+	.byte	0x2
+	.byte	0xba
+	.long	0x3c1
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -17
+	.uleb128 0x18
+	.uleb128 0x16
+	.quad	.LBE5-.LBB5
+	.uleb128 0x19
+	.string	"i"
+	.byte	0x2
+	.byte	0xbb
+	.long	0xc6
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.byte	0
+	.byte	0
+	.uleb128 0x17
+	.string	"t18"
+	.byte	0x2
+	.byte	0xc7
+	.string	"_Z3t18v"
+	.long	0xcd
+	.uleb128 0x17
+	.quad	.LFE19-.LFB19
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x4fe
+	.uleb128 0x18
+	.uleb128 0x18
+	.quad	.LBE6-.LBB6
+	.uleb128 0x19
+	.string	"c"
+	.byte	0x2
+	.byte	0xc9
+	.long	0x3c1
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -17
+	.uleb128 0x18
+	.uleb128 0x19
+	.quad	.LBE7-.LBB7
+	.uleb128 0x19
+	.string	"i"
+	.byte	0x2
+	.byte	0xca
+	.long	0xc6
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.uleb128 0x18
+	.uleb128 0x1a
+	.quad	.LBE8-.LBB8
+	.uleb128 0x19
+	.string	"s"
+	.byte	0x2
+	.byte	0xcc
+	.long	0x3b6
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -32
+	.byte	0
+	.byte	0
+	.byte	0
+	.byte	0
+	.uleb128 0x1b
+	.string	"c3"
+	.byte	0x1
+	.byte	0x39
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.uleb128 0x1c
+	.string	"v2"
+	.byte	0x1
+	.byte	0x3b
+	.long	0xc6
+	.uleb128 0x1c
+	.string	"v3"
+	.byte	0x1
+	.byte	0x3c
+	.long	0xc6
+	.uleb128 0x1d
+	.long	0x3c1
+	.long	0x52b
+	.uleb128 0x1e
+	.byte	0
+	.uleb128 0x1c
+	.string	"v4"
+	.byte	0x1
+	.byte	0x3d
+	.long	0x520
+	.uleb128 0x1c
+	.string	"v5"
+	.byte	0x1
+	.byte	0x3e
+	.long	0x520
+	.uleb128 0x1d
+	.long	0x3b6
+	.long	0x54a
+	.uleb128 0x1e
+	.byte	0
+	.uleb128 0x1c
+	.string	"t17data"
+	.byte	0x1
+	.byte	0x53
+	.long	0x53f
+	.uleb128 0x1f
+	.string	"p6"
+	.byte	0x2
+	.byte	0x45
+	.long	0x566
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0x1b
+	.uleb128 0x8
+	.byte	0x8
+	.long	0xc6
+	.uleb128 0x1f
+	.string	"p7"
+	.byte	0x2
+	.byte	0x4f
+	.long	0x566
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0x1c
+	.uleb128 0x1f
+	.string	"p8"
+	.byte	0x2
+	.byte	0x59
+	.long	0x586
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0x1d
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x3c1
+	.uleb128 0x1f
+	.string	"p9"
+	.byte	0x2
+	.byte	0x63
+	.long	0x586
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0x1e
+	.uleb128 0x9
+	.long	0xc6
+	.uleb128 0x1f
+	.string	"pfn"
+	.byte	0x2
+	.byte	0x6d
+	.long	0x5ac
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0x1f
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x599
+	.byte	0
+	.section	.debug_info,"",@progbits
+.Lskeleton_debug_info0:
+	.long	0x7e
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.uleb128 0x1
+	.long	.Ldebug_ranges0+0
+	.quad	0
+	.long	.Ldebug_line0
+	.byte	0x27
+	.byte	0x37
+	.byte	0xdc
+	.byte	0x2f
+	.byte	0x9
+	.byte	0xc6
+	.byte	0xf9
+	.byte	0x52
+	.long	.Ldebug_ranges0
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_1.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_abbrev,"",@progbits
+.Lskeleton_debug_abbrev0:
+	.uleb128 0x1
+	.uleb128 0x11
+	.byte	0
+	.uleb128 0x55
+	.uleb128 0x17
+	.uleb128 0x11
+	.uleb128 0x1
+	.uleb128 0x10
+	.uleb128 0x17
+	.uleb128 0x2131
+	.uleb128 0x7
+	.uleb128 0x2132
+	.uleb128 0x17
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2130
+	.uleb128 0x8
+	.uleb128 0x2134
+	.uleb128 0x17
+	.uleb128 0x2135
+	.uleb128 0x17
+	.uleb128 0x2133
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x41
+	.byte	0
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2130
+	.uleb128 0x8
+	.uleb128 0x2134
+	.uleb128 0x17
+	.uleb128 0x2135
+	.uleb128 0x17
+	.uleb128 0x2133
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.byte	0
+	.section	.debug_abbrev.dwo,"e",@progbits
+.Ldebug_abbrev0:
+	.uleb128 0x1
+	.uleb128 0x41
+	.byte	0x1
+	.uleb128 0x13
+	.uleb128 0xb
+	.uleb128 0x210f
+	.uleb128 0x7
+	.uleb128 0x10
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x2
+	.byte	0x1
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0xd
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x38
+	.uleb128 0xb
+	.uleb128 0x32
+	.uleb128 0xb
+	.byte	0
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x1f02
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x5
+	.uleb128 0x5
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x34
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x6
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.uleb128 0x24
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x3e
+	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0x8
+	.byte	0
+	.byte	0
+	.uleb128 0x8
+	.uleb128 0xf
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x9
+	.uleb128 0x15
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xa
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x1f02
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xc
+	.uleb128 0x11
+	.byte	0x1
+	.uleb128 0x25
+	.uleb128 0x8
+	.uleb128 0x13
+	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2131
+	.uleb128 0x7
+	.byte	0
+	.byte	0
+	.uleb128 0xd
+	.uleb128 0x2
+	.byte	0x1
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x69
+	.uleb128 0x20
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xe
+	.uleb128 0x2e
+	.byte	0
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x1f02
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0xf
+	.uleb128 0xf
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x20
+	.byte	0
+	.byte	0
+	.uleb128 0x10
+	.uleb128 0x2e
+	.byte	0
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2117
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x11
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x47
+	.uleb128 0x13
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x2116
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x12
+	.uleb128 0x5
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x34
+	.uleb128 0x19
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.uleb128 0x13
+	.uleb128 0x26
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x14
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x47
+	.uleb128 0x13
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x2117
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x15
+	.uleb128 0x2e
+	.byte	0
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2117
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x16
+	.uleb128 0x2e
+	.byte	0
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2116
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x17
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2116
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x18
+	.uleb128 0xb
+	.byte	0x1
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.byte	0
+	.byte	0
+	.uleb128 0x19
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.uleb128 0x1a
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2117
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x1b
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x20
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3c
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x1c
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3c
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x1d
+	.uleb128 0x1
+	.byte	0x1
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x1e
+	.uleb128 0x21
+	.byte	0
+	.byte	0
+	.byte	0
+	.uleb128 0x1f
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.byte	0
+	.section	.debug_gnu_pubnames,"",@progbits
+.Ldebug_pubnames0:
+	.long	0x15b
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.long	0x5b3
+	.long	0x15b
+	.byte	0x30
+	.string	"f13i"
+	.long	0x177
+	.byte	0x30
+	.string	"C1::testcase1"
+	.long	0x1a0
+	.byte	0x30
+	.string	"C1::testcase2"
+	.long	0x1c4
+	.byte	0x30
+	.string	"C1::testcase3"
+	.long	0x1e8
+	.byte	0x30
+	.string	"C1::testcase4"
+	.long	0x20c
+	.byte	0x30
+	.string	"C2::testcase1"
+	.long	0x235
+	.byte	0x30
+	.string	"C2::testcase2"
+	.long	0x259
+	.byte	0x30
+	.string	"C2::testcase3"
+	.long	0x27d
+	.byte	0x30
+	.string	"C2::testcase4"
+	.long	0x2a1
+	.byte	0x30
+	.string	"C3::testcase1"
+	.long	0x2ca
+	.byte	0x30
+	.string	"C3::testcase2"
+	.long	0x2ee
+	.byte	0x30
+	.string	"f11a"
+	.long	0x30e
+	.byte	0x30
+	.string	"C3::testcase3"
+	.long	0x332
+	.byte	0x30
+	.string	"t12"
+	.long	0x350
+	.byte	0x30
+	.string	"t13"
+	.long	0x36e
+	.byte	0x30
+	.string	"t14"
+	.long	0x3c9
+	.byte	0x30
+	.string	"t15"
+	.long	0x427
+	.byte	0x30
+	.string	"t16"
+	.long	0x445
+	.byte	0x30
+	.string	"t17"
+	.long	0x496
+	.byte	0x30
+	.string	"t18"
+	.long	0x559
+	.byte	0x20
+	.string	"p6"
+	.long	0x56c
+	.byte	0x20
+	.string	"p7"
+	.long	0x579
+	.byte	0x20
+	.string	"p8"
+	.long	0x58c
+	.byte	0x20
+	.string	"p9"
+	.long	0x59e
+	.byte	0x20
+	.string	"pfn"
+	.long	0
+	.section	.debug_gnu_pubtypes,"",@progbits
+.Ldebug_pubtypes0:
+	.long	0x50
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.long	0x5b3
+	.long	0xc6
+	.byte	0x90
+	.string	"int"
+	.long	0xcd
+	.byte	0x90
+	.string	"bool"
+	.long	0x8d
+	.byte	0x10
+	.string	"C1"
+	.long	0xdf
+	.byte	0x10
+	.string	"C2"
+	.long	0x122
+	.byte	0x10
+	.string	"C3"
+	.long	0x3c1
+	.byte	0x90
+	.string	"char"
+	.long	0x41c
+	.byte	0x90
+	.string	"wchar_t"
+	.long	0
+	.section	.debug_aranges,"",@progbits
+	.long	0x3c
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.byte	0x8
+	.byte	0
+	.value	0
+	.value	0
+	.quad	.Ltext0
+	.quad	.Letext0-.Ltext0
+	.quad	.LFB0
+	.quad	.LFE0-.LFB0
+	.quad	0
+	.quad	0
+	.section	.debug_ranges,"",@progbits
+.Ldebug_ranges0:
+	.quad	.Ltext0
+	.quad	.Letext0
+	.quad	.LFB0
+	.quad	.LFE0
+	.quad	0
+	.quad	0
+	.section	.debug_line,"",@progbits
+.Ldebug_line0:
+	.section	.debug_line.dwo,"e",@progbits
+.Lskeleton_debug_line0:
+	.long	.LELT0-.LSLT0
+.LSLT0:
+	.value	0x4
+	.long	.LELTP0-.LASLTP0
+.LASLTP0:
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0xf6
+	.byte	0xf2
+	.byte	0xd
+	.byte	0
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0
+	.byte	0
+	.byte	0
+	.byte	0x1
+	.byte	0
+	.byte	0
+	.byte	0x1
+	.byte	0
+	.string	"dwp_test.h"
+	.uleb128 0
+	.uleb128 0
+	.uleb128 0
+	.string	"dwp_test_1.cc"
+	.uleb128 0
+	.uleb128 0
+	.uleb128 0
+	.byte	0
+.LELTP0:
+.LELT0:
+	.section	.debug_str_offsets.dwo,"e",@progbits
+	.long	0
+	.long	0xa
+	.long	0x14
+	.long	0x27
+	.long	0x3a
+	.long	0x44
+	.long	0x57
+	.long	0x5f
+	.long	0x72
+	.long	0x85
+	.long	0x98
+	.long	0xa2
+	.long	0xb5
+	.long	0xc8
+	.long	0xdb
+	.long	0xee
+	.long	0x101
+	.section	.debug_str.dwo,"e",@progbits
+.LASF0:
+	.string	"testcase1"
+.LASF1:
+	.string	"testcase2"
+.LASF2:
+	.string	"_ZN2C39testcase1Ev"
+.LASF3:
+	.string	"_ZN2C39testcase2Ev"
+.LASF4:
+	.string	"testcase3"
+.LASF5:
+	.string	"_ZN2C39testcase3Ev"
+.LASF6:
+	.string	"member1"
+.LASF7:
+	.string	"_ZN2C29testcase1Ev"
+.LASF8:
+	.string	"_ZN2C29testcase2Ev"
+.LASF9:
+	.string	"_ZN2C29testcase3Ev"
+.LASF10:
+	.string	"testcase4"
+.LASF11:
+	.string	"_ZN2C29testcase4Ev"
+.LASF12:
+	.string	"_ZN2C19testcase1Ev"
+.LASF13:
+	.string	"_ZN2C19testcase2Ev"
+.LASF14:
+	.string	"_ZN2C19testcase3Ev"
+.LASF15:
+	.string	"_ZN2C19testcase4Ev"
+.LASF16:
+	.string	"this"
+	.section	.debug_addr,"",@progbits
+.Ldebug_addr0:
+	.quad	.LFB0
+	.quad	.LFB1
+	.quad	.LFB2
+	.quad	.LFB3
+	.quad	.LFB4
+	.quad	.LFB5
+	.quad	.LFB6
+	.quad	.LFB7
+	.quad	.LFB8
+	.quad	.LFB9
+	.quad	.LFB10
+	.quad	.LFB11
+	.quad	.LFB12
+	.quad	.LFB13
+	.quad	.LFB14
+	.quad	.LFB15
+	.quad	.LBB2
+	.quad	.LFB16
+	.quad	.LBB3
+	.quad	.LFB17
+	.quad	.LFB18
+	.quad	.LBB4
+	.quad	.LBB5
+	.quad	.LFB19
+	.quad	.LBB6
+	.quad	.LBB7
+	.quad	.LBB8
+	.quad	p6
+	.quad	p7
+	.quad	p8
+	.quad	p9
+	.quad	pfn
+	.ident	"GCC: (Google_crosstoolv16-gcc-4.7.x-grtev3) 4.7.x-google 20120720 (prerelease)"
+	.section	.note.GNU-stack,"",@progbits
diff --git a/gold/testsuite/dwp_test_1.sh b/gold/testsuite/dwp_test_1.sh
new file mode 100755
index 0000000..7831a49
--- /dev/null
+++ b/gold/testsuite/dwp_test_1.sh
@@ -0,0 +1,63 @@
+#!/bin/sh
+
+# dwp_test_1.sh -- Test the dwp tool.
+
+# Copyright 2012 Free Software Foundation, Inc.
+# Written by Cary Coutant <ccoutant@google.com>.
+
+# This file is part of gold.
+
+# 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, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+# MA 02110-1301, USA.
+
+check()
+{
+    if ! grep -q "$2" "$1"
+    then
+	echo "Did not find expected output:"
+	echo "   $2"
+	echo ""
+	echo "Actual error output below:"
+	cat "$1"
+	exit 1
+    fi
+}
+
+check_num()
+{
+    n=$(grep -c "$2" "$1")
+    if test "$n" -ne "$3"
+    then
+	echo "Found $n occurrences (should find $3):"
+	echo "   $2"
+	echo ""
+	echo "Actual error output below:"
+	cat "$1"
+	exit 1
+    fi
+}
+
+STDOUT="dwp_test_1.stdout"
+
+check $STDOUT "^Contents of the .debug_info.dwo section"
+check_num $STDOUT "DW_TAG_compile_unit" 4
+check_num $STDOUT "DW_TAG_type_unit" 3
+check_num $STDOUT "DW_AT_name.*: C1" 3
+check_num $STDOUT "DW_AT_name.*: C2" 2
+check_num $STDOUT "DW_AT_name.*: C3" 3
+check_num $STDOUT "DW_AT_name.*: testcase1" 6
+check_num $STDOUT "DW_AT_name.*: testcase2" 6
+check_num $STDOUT "DW_AT_name.*: testcase3" 6
+check_num $STDOUT "DW_AT_name.*: testcase4" 4
diff --git a/gold/testsuite/dwp_test_1b.cc b/gold/testsuite/dwp_test_1b.cc
new file mode 100644
index 0000000..c75376b
--- /dev/null
+++ b/gold/testsuite/dwp_test_1b.cc
@@ -0,0 +1,35 @@
+// dwp_test_1b.cc -- a test case for dwp
+
+// Copyright 2012 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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, write to the Free Software
+// Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// Adapted from two_file_test_1b.cc.
+
+#include "dwp_test.h"
+
+// 16 Call a function directly after its address has been taken.
+
+C3 c3;
+
+bool
+t16a()
+{
+  return f10() == 135;
+}
diff --git a/gold/testsuite/dwp_test_1b.s b/gold/testsuite/dwp_test_1b.s
new file mode 100644
index 0000000..9c9891d
--- /dev/null
+++ b/gold/testsuite/dwp_test_1b.s
@@ -0,0 +1,549 @@
+	.file	"dwp_test_1b.cc"
+	.text
+.Ltext0:
+	.globl	c3
+	.bss
+	.align 4
+	.type	c3, @object
+	.size	c3, 4
+c3:
+	.zero	4
+	.text
+	.globl	_Z4t16av
+	.type	_Z4t16av, @function
+_Z4t16av:
+.LFB1:
+	.file 1 "dwp_test_1b.cc"
+	.loc 1 33 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 1 34 0
+	call	_Z3f10v
+	cmpl	$135, %eax
+	sete	%al
+	.loc 1 35 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE1:
+	.size	_Z4t16av, .-_Z4t16av
+.Letext0:
+	.file 2 "dwp_test.h"
+	.section	.debug_types.dwo,"G",@progbits,wt.bb2916f0c1bd34b5,comdat
+	.long	0x119
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0x8a
+	.byte	0xda
+	.byte	0x59
+	.byte	0x6e
+	.byte	0x4d
+	.byte	0x5c
+	.byte	0xa
+	.byte	0x88
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C3"
+	.byte	0x4
+	.byte	0x2
+	.byte	0x2f
+	.long	0xfc
+	.uleb128 0x3
+	.string	"member1"
+	.byte	0x2
+	.byte	0x36
+	.long	0xfc
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.string	"testcase1"
+	.byte	0x2
+	.byte	0x32
+	.string	"_ZN2C39testcase1Ev"
+	.long	0x103
+	.byte	0x1
+	.long	0x6e
+	.long	0x74
+	.uleb128 0x5
+	.long	0x10b
+	.byte	0
+	.uleb128 0x4
+	.string	"testcase2"
+	.byte	0x2
+	.byte	0x33
+	.string	"_ZN2C39testcase2Ev"
+	.long	0x103
+	.byte	0x1
+	.long	0xa1
+	.long	0xa7
+	.uleb128 0x5
+	.long	0x10b
+	.byte	0
+	.uleb128 0x4
+	.string	"testcase3"
+	.byte	0x2
+	.byte	0x34
+	.string	"_ZN2C39testcase3Ev"
+	.long	0x103
+	.byte	0x1
+	.long	0xd4
+	.long	0xda
+	.uleb128 0x5
+	.long	0x10b
+	.byte	0
+	.uleb128 0x6
+	.string	"f4"
+	.byte	0x2
+	.byte	0x35
+	.string	"_ZN2C32f4Ev"
+	.long	0x111
+	.byte	0x1
+	.long	0xf5
+	.uleb128 0x5
+	.long	0x10b
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x117
+	.uleb128 0x9
+	.long	0x103
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.bb2916f0c1bd34b5,comdat
+	.long	0x6f
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_1b.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_info.dwo,"e",@progbits
+.Ldebug_info0:
+	.long	0xcb
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.uleb128 0xa
+	.string	"GNU C++ 4.7.x-google 20120720 (prerelease)"
+	.byte	0x4
+	.string	"dwp_test_1b.cc"
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.byte	0xf6
+	.byte	0xef
+	.byte	0x47
+	.byte	0xa2
+	.byte	0x3e
+	.byte	0xc1
+	.byte	0x6e
+	.byte	0xbd
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0xb
+	.string	"t16a"
+	.byte	0x1
+	.byte	0x20
+	.string	"_Z4t16av"
+	.long	0x95
+	.uleb128 0
+	.quad	.LFE1-.LFB1
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0xc
+	.string	"c3"
+	.byte	0x1
+	.byte	0x1d
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0x1
+	.byte	0
+	.section	.debug_info,"",@progbits
+.Lskeleton_debug_info0:
+	.long	0x7f
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.uleb128 0x1
+	.quad	.Ltext0
+	.quad	.Letext0-.Ltext0
+	.long	.Ldebug_line0
+	.byte	0xf6
+	.byte	0xef
+	.byte	0x47
+	.byte	0xa2
+	.byte	0x3e
+	.byte	0xc1
+	.byte	0x6e
+	.byte	0xbd
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_1b.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_abbrev,"",@progbits
+.Lskeleton_debug_abbrev0:
+	.uleb128 0x1
+	.uleb128 0x11
+	.byte	0
+	.uleb128 0x11
+	.uleb128 0x1
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x10
+	.uleb128 0x17
+	.uleb128 0x2131
+	.uleb128 0x7
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2130
+	.uleb128 0x8
+	.uleb128 0x2134
+	.uleb128 0x17
+	.uleb128 0x2135
+	.uleb128 0x17
+	.uleb128 0x2133
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x41
+	.byte	0
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2130
+	.uleb128 0x8
+	.uleb128 0x2134
+	.uleb128 0x17
+	.uleb128 0x2135
+	.uleb128 0x17
+	.uleb128 0x2133
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.byte	0
+	.section	.debug_abbrev.dwo,"e",@progbits
+.Ldebug_abbrev0:
+	.uleb128 0x1
+	.uleb128 0x41
+	.byte	0x1
+	.uleb128 0x13
+	.uleb128 0xb
+	.uleb128 0x210f
+	.uleb128 0x7
+	.uleb128 0x10
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x2
+	.byte	0x1
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0xd
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x38
+	.uleb128 0xb
+	.uleb128 0x32
+	.uleb128 0xb
+	.byte	0
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x5
+	.uleb128 0x5
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x34
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x6
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.uleb128 0x24
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x3e
+	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0x8
+	.byte	0
+	.byte	0
+	.uleb128 0x8
+	.uleb128 0xf
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x9
+	.uleb128 0x15
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xa
+	.uleb128 0x11
+	.byte	0x1
+	.uleb128 0x25
+	.uleb128 0x8
+	.uleb128 0x13
+	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2131
+	.uleb128 0x7
+	.byte	0
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0x2e
+	.byte	0
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2116
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0xc
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x20
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.byte	0
+	.section	.debug_gnu_pubnames,"",@progbits
+.Ldebug_pubnames0:
+	.long	0x20
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.long	0xcf
+	.long	0x9d
+	.byte	0x30
+	.string	"t16a"
+	.long	0xbd
+	.byte	0x20
+	.string	"c3"
+	.long	0
+	.section	.debug_gnu_pubtypes,"",@progbits
+.Ldebug_pubtypes0:
+	.long	0x29
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.long	0xcf
+	.long	0x8e
+	.byte	0x90
+	.string	"int"
+	.long	0x95
+	.byte	0x90
+	.string	"bool"
+	.long	0
+	.byte	0x10
+	.string	"C3"
+	.long	0
+	.section	.debug_aranges,"",@progbits
+	.long	0x2c
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.byte	0x8
+	.byte	0
+	.value	0
+	.value	0
+	.quad	.Ltext0
+	.quad	.Letext0-.Ltext0
+	.quad	0
+	.quad	0
+	.section	.debug_line,"",@progbits
+.Ldebug_line0:
+	.section	.debug_line.dwo,"e",@progbits
+.Lskeleton_debug_line0:
+	.long	.LELT0-.LSLT0
+.LSLT0:
+	.value	0x4
+	.long	.LELTP0-.LASLTP0
+.LASLTP0:
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0xf6
+	.byte	0xf2
+	.byte	0xd
+	.byte	0
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0
+	.byte	0
+	.byte	0
+	.byte	0x1
+	.byte	0
+	.byte	0
+	.byte	0x1
+	.byte	0
+	.string	"dwp_test_1b.cc"
+	.uleb128 0
+	.uleb128 0
+	.uleb128 0
+	.string	"dwp_test.h"
+	.uleb128 0
+	.uleb128 0
+	.uleb128 0
+	.byte	0
+.LELTP0:
+.LELT0:
+	.section	.debug_addr,"",@progbits
+.Ldebug_addr0:
+	.quad	.LFB1
+	.quad	c3
+	.ident	"GCC: (Google_crosstoolv16-gcc-4.7.x-grtev3) 4.7.x-google 20120720 (prerelease)"
+	.section	.note.GNU-stack,"",@progbits
diff --git a/gold/testsuite/dwp_test_2.cc b/gold/testsuite/dwp_test_2.cc
new file mode 100644
index 0000000..a1172b3
--- /dev/null
+++ b/gold/testsuite/dwp_test_2.cc
@@ -0,0 +1,144 @@
+// dwp_test_2.cc -- a test case for dwp
+
+// Copyright 2012 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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, write to the Free Software
+// Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// Adapted from two_file_test_2.cc.
+
+#include "dwp_test.h"
+
+// 1  Code in file 1 calls code in file 2.
+
+int
+C1::t1_2()
+{
+  return 123;
+}
+
+bool
+C1::t1a()
+{
+  return t1_2() == 123;
+}
+
+// 2  Code in file 1 refers to global data in file 2.
+
+int v2 = 456;
+
+// 3 Code in file 1 referes to common symbol in file 2.  This is
+// initialized at runtime to 789.
+
+int v3;
+
+// 4  Code in file 1 refers to offset within global data in file 2.
+
+char v4[] = "Hello, world";
+
+// 5 Code in file 1 refers to offset within common symbol in file 2.
+// This is initialized at runtime to a copy of v4.
+
+char v5[13];
+
+// 6  Data in file 1 refers to global data in file 2.  This reuses v2.
+
+// 7  Data in file 1 refers to common symbol in file 2.  This reuses v3.
+
+// 8 Data in file 1 refers to offset within global data in file 2.
+// This reuses v4.
+
+// 9 Data in file 1 refers to offset within common symbol in file 2.
+// This reuses v5.
+
+// 10 Data in file 1 refers to function in file 2.
+
+int
+f10()
+{
+  return 135;
+}
+
+// 11 Pass function pointer from file 1 to file 2.
+
+int
+f11b(int (*pfn)())
+{
+  return (*pfn)();
+}
+
+// 12 Compare address of function for equality in both files.
+
+bool
+(*C3::f4())()
+{
+  return &t12;
+}
+
+// 13 Compare address of inline function for equality in both files.
+
+void
+(*f13())()
+{
+  return &f13i;
+}
+
+// 14 Compare string constants in file 1 and file 2.
+
+const char*
+f14()
+{
+  return TEST_STRING_CONSTANT;
+}
+
+// 15 Compare wide string constants in file 1 and file 2.
+
+const wchar_t*
+f15()
+{
+  return TEST_WIDE_STRING_CONSTANT;
+}
+
+// 17 File 1 checks array of string constants defined in file 2.
+
+const char* t17data[T17_COUNT] =
+{
+  "a", "b", "c", "d", "e"
+};
+
+// 18 File 1 checks string constants referenced directly in file 2.
+
+const char*
+f18(int i)
+{
+  switch (i)
+    {
+    case 0:
+      return "a";
+    case 1:
+      return "b";
+    case 2:
+      return "c";
+    case 3:
+      return "d";
+    case 4:
+      return "e";
+    default:
+      return 0;
+    }
+}
diff --git a/gold/testsuite/dwp_test_2.s b/gold/testsuite/dwp_test_2.s
new file mode 100644
index 0000000..fa80771
--- /dev/null
+++ b/gold/testsuite/dwp_test_2.s
@@ -0,0 +1,1714 @@
+	.file	"dwp_test_2.cc"
+	.text
+.Ltext0:
+	.section	.text._Z4f13iv,"axG",@progbits,_Z4f13iv,comdat
+	.weak	_Z4f13iv
+	.type	_Z4f13iv, @function
+_Z4f13iv:
+.LFB0:
+	.file 1 "dwp_test.h"
+	.loc 1 70 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 1 70 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE0:
+	.size	_Z4f13iv, .-_Z4f13iv
+	.text
+	.align 2
+	.globl	_ZN2C14t1_2Ev
+	.type	_ZN2C14t1_2Ev, @function
+_ZN2C14t1_2Ev:
+.LFB1:
+	.file 2 "dwp_test_2.cc"
+	.loc 2 31 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 32 0
+	movl	$123, %eax
+	.loc 2 33 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE1:
+	.size	_ZN2C14t1_2Ev, .-_ZN2C14t1_2Ev
+	.align 2
+	.globl	_ZN2C13t1aEv
+	.type	_ZN2C13t1aEv, @function
+_ZN2C13t1aEv:
+.LFB2:
+	.loc 2 37 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$8, %rsp
+	movq	%rdi, -8(%rbp)
+	.loc 2 38 0
+	movq	-8(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C14t1_2Ev
+	cmpl	$123, %eax
+	sete	%al
+	.loc 2 39 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE2:
+	.size	_ZN2C13t1aEv, .-_ZN2C13t1aEv
+	.globl	v2
+	.data
+	.align 4
+	.type	v2, @object
+	.size	v2, 4
+v2:
+	.long	456
+	.globl	v3
+	.bss
+	.align 4
+	.type	v3, @object
+	.size	v3, 4
+v3:
+	.zero	4
+	.globl	v4
+	.data
+	.type	v4, @object
+	.size	v4, 13
+v4:
+	.string	"Hello, world"
+	.globl	v5
+	.bss
+	.type	v5, @object
+	.size	v5, 13
+v5:
+	.zero	13
+	.text
+	.globl	_Z3f10v
+	.type	_Z3f10v, @function
+_Z3f10v:
+.LFB3:
+	.loc 2 73 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 2 74 0
+	movl	$135, %eax
+	.loc 2 75 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE3:
+	.size	_Z3f10v, .-_Z3f10v
+	.globl	_Z4f11bPFivE
+	.type	_Z4f11bPFivE, @function
+_Z4f11bPFivE:
+.LFB4:
+	.loc 2 81 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$16, %rsp
+	movq	%rdi, -8(%rbp)
+	.loc 2 82 0
+	movq	-8(%rbp), %rax
+	call	*%rax
+	.loc 2 83 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE4:
+	.size	_Z4f11bPFivE, .-_Z4f11bPFivE
+	.align 2
+	.globl	_ZN2C32f4Ev
+	.type	_ZN2C32f4Ev, @function
+_ZN2C32f4Ev:
+.LFB5:
+	.loc 2 89 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movq	%rdi, -8(%rbp)
+	.loc 2 90 0
+	movl	$_Z3t12v, %eax
+	.loc 2 91 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE5:
+	.size	_ZN2C32f4Ev, .-_ZN2C32f4Ev
+	.globl	_Z3f13v
+	.type	_Z3f13v, @function
+_Z3f13v:
+.LFB6:
+	.loc 2 97 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 2 98 0
+	movl	$_Z4f13iv, %eax
+	.loc 2 99 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE6:
+	.size	_Z3f13v, .-_Z3f13v
+	.section	.rodata
+.LC0:
+	.string	"test string constant"
+	.text
+	.globl	_Z3f14v
+	.type	_Z3f14v, @function
+_Z3f14v:
+.LFB7:
+	.loc 2 105 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 2 106 0
+	movl	$.LC0, %eax
+	.loc 2 107 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE7:
+	.size	_Z3f14v, .-_Z3f14v
+	.section	.rodata
+	.align 8
+.LC1:
+	.string	"t"
+	.string	""
+	.string	""
+	.string	"e"
+	.string	""
+	.string	""
+	.string	"s"
+	.string	""
+	.string	""
+	.string	"t"
+	.string	""
+	.string	""
+	.string	" "
+	.string	""
+	.string	""
+	.string	"w"
+	.string	""
+	.string	""
+	.string	"i"
+	.string	""
+	.string	""
+	.string	"d"
+	.string	""
+	.string	""
+	.string	"e"
+	.string	""
+	.string	""
+	.string	" "
+	.string	""
+	.string	""
+	.string	"s"
+	.string	""
+	.string	""
+	.string	"t"
+	.string	""
+	.string	""
+	.string	"r"
+	.string	""
+	.string	""
+	.string	"i"
+	.string	""
+	.string	""
+	.string	"n"
+	.string	""
+	.string	""
+	.string	"g"
+	.string	""
+	.string	""
+	.string	" "
+	.string	""
+	.string	""
+	.string	"c"
+	.string	""
+	.string	""
+	.string	"o"
+	.string	""
+	.string	""
+	.string	"n"
+	.string	""
+	.string	""
+	.string	"s"
+	.string	""
+	.string	""
+	.string	"t"
+	.string	""
+	.string	""
+	.string	"a"
+	.string	""
+	.string	""
+	.string	"n"
+	.string	""
+	.string	""
+	.string	"t"
+	.string	""
+	.string	""
+	.string	""
+	.string	""
+	.string	""
+	.string	""
+	.text
+	.globl	_Z3f15v
+	.type	_Z3f15v, @function
+_Z3f15v:
+.LFB8:
+	.loc 2 113 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	.loc 2 114 0
+	movl	$.LC1, %eax
+	.loc 2 115 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE8:
+	.size	_Z3f15v, .-_Z3f15v
+	.globl	t17data
+	.section	.rodata
+.LC2:
+	.string	"a"
+.LC3:
+	.string	"b"
+.LC4:
+	.string	"c"
+.LC5:
+	.string	"d"
+.LC6:
+	.string	"e"
+	.data
+	.align 32
+	.type	t17data, @object
+	.size	t17data, 40
+t17data:
+	.quad	.LC2
+	.quad	.LC3
+	.quad	.LC4
+	.quad	.LC5
+	.quad	.LC6
+	.text
+	.globl	_Z3f18i
+	.type	_Z3f18i, @function
+_Z3f18i:
+.LFB9:
+	.loc 2 128 0
+	.cfi_startproc
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	movl	%edi, -4(%rbp)
+	.loc 2 129 0
+	cmpl	$4, -4(%rbp)
+	ja	.L19
+	movl	-4(%rbp), %eax
+	movq	.L25(,%rax,8), %rax
+	jmp	*%rax
+	.section	.rodata
+	.align 8
+	.align 4
+.L25:
+	.quad	.L20
+	.quad	.L21
+	.quad	.L22
+	.quad	.L23
+	.quad	.L24
+	.text
+.L20:
+	.loc 2 132 0
+	movl	$.LC2, %eax
+	jmp	.L26
+.L21:
+	.loc 2 134 0
+	movl	$.LC3, %eax
+	jmp	.L26
+.L22:
+	.loc 2 136 0
+	movl	$.LC4, %eax
+	jmp	.L26
+.L23:
+	.loc 2 138 0
+	movl	$.LC5, %eax
+	jmp	.L26
+.L24:
+	.loc 2 140 0
+	movl	$.LC6, %eax
+	jmp	.L26
+.L19:
+	.loc 2 142 0
+	movl	$0, %eax
+.L26:
+	.loc 2 144 0
+	popq	%rbp
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE9:
+	.size	_Z3f18i, .-_Z3f18i
+.Letext0:
+	.section	.debug_types.dwo,"G",@progbits,wt.bb2916f0c1bd34b5,comdat
+	.long	0xf3
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0x8a
+	.byte	0xda
+	.byte	0x59
+	.byte	0x6e
+	.byte	0x4d
+	.byte	0x5c
+	.byte	0xa
+	.byte	0x88
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C3"
+	.byte	0x4
+	.byte	0x1
+	.byte	0x2f
+	.long	0xd6
+	.uleb128 0x3
+	.string	"member1"
+	.byte	0x1
+	.byte	0x36
+	.long	0xd6
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.uleb128 0
+	.byte	0x1
+	.byte	0x32
+	.string	"_ZN2C39testcase1Ev"
+	.long	0xdd
+	.byte	0x1
+	.long	0x65
+	.long	0x6b
+	.uleb128 0x5
+	.long	0xe5
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x1
+	.byte	0x1
+	.byte	0x33
+	.string	"_ZN2C39testcase2Ev"
+	.long	0xdd
+	.byte	0x1
+	.long	0x8f
+	.long	0x95
+	.uleb128 0x5
+	.long	0xe5
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2
+	.byte	0x1
+	.byte	0x34
+	.string	"_ZN2C39testcase3Ev"
+	.long	0xdd
+	.byte	0x1
+	.long	0xb9
+	.long	0xbf
+	.uleb128 0x5
+	.long	0xe5
+	.byte	0
+	.uleb128 0x6
+	.string	"f4"
+	.byte	0x1
+	.byte	0x35
+	.uleb128 0x3
+	.long	0xeb
+	.byte	0x1
+	.long	0xcf
+	.uleb128 0x5
+	.long	0xe5
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.uleb128 0x8
+	.byte	0x8
+	.long	0xf1
+	.uleb128 0x9
+	.long	0xdd
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.bb2916f0c1bd34b5,comdat
+	.long	0x6e
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_2.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_types.dwo,"G",@progbits,wt.c419a9b7a4a2fab5,comdat
+	.long	0x138
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0xe3
+	.byte	0xad
+	.byte	0x5
+	.byte	0x3b
+	.byte	0x75
+	.byte	0xeb
+	.byte	0xfb
+	.byte	0xc7
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C1"
+	.byte	0x4
+	.byte	0x1
+	.byte	0x19
+	.long	0x126
+	.uleb128 0x3
+	.string	"member1"
+	.byte	0x1
+	.byte	0x22
+	.long	0x126
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.uleb128 0
+	.byte	0x1
+	.byte	0x1c
+	.string	"_ZN2C19testcase1Ev"
+	.long	0x12d
+	.byte	0x1
+	.long	0x65
+	.long	0x6b
+	.uleb128 0x5
+	.long	0x135
+	.byte	0
+	.uleb128 0xa
+	.string	"t1a"
+	.byte	0x1
+	.byte	0x1d
+	.uleb128 0x4
+	.long	0x12d
+	.byte	0x1
+	.long	0x80
+	.long	0x86
+	.uleb128 0x5
+	.long	0x135
+	.byte	0
+	.uleb128 0xa
+	.string	"t1_2"
+	.byte	0x1
+	.byte	0x1e
+	.uleb128 0x5
+	.long	0x126
+	.byte	0x1
+	.long	0x9c
+	.long	0xa2
+	.uleb128 0x5
+	.long	0x135
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x1
+	.byte	0x1
+	.byte	0x1f
+	.string	"_ZN2C19testcase2Ev"
+	.long	0x12d
+	.byte	0x1
+	.long	0xc6
+	.long	0xcc
+	.uleb128 0x5
+	.long	0x135
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2
+	.byte	0x1
+	.byte	0x20
+	.string	"_ZN2C19testcase3Ev"
+	.long	0x12d
+	.byte	0x1
+	.long	0xf0
+	.long	0xf6
+	.uleb128 0x5
+	.long	0x135
+	.byte	0
+	.uleb128 0xb
+	.string	"testcase4"
+	.byte	0x1
+	.byte	0x21
+	.string	"_ZN2C19testcase4Ev"
+	.long	0x12d
+	.byte	0x1
+	.long	0x11f
+	.uleb128 0x5
+	.long	0x135
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.c419a9b7a4a2fab5,comdat
+	.long	0x6e
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_2.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_info.dwo,"e",@progbits
+.Ldebug_info0:
+	.long	0x329
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.uleb128 0xc
+	.string	"GNU C++ 4.7.x-google 20120720 (prerelease)"
+	.byte	0x4
+	.string	"dwp_test_2.cc"
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.byte	0xb9
+	.byte	0xf8
+	.byte	0xe0
+	.byte	0x8c
+	.byte	0x71
+	.byte	0xab
+	.byte	0xc
+	.byte	0xcf
+	.uleb128 0xd
+	.string	"C1"
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.long	0xb9
+	.uleb128 0xe
+	.string	"t1a"
+	.byte	0x1
+	.byte	0x1d
+	.uleb128 0x4
+	.long	0xc0
+	.byte	0x1
+	.uleb128 0xe
+	.string	"t1_2"
+	.byte	0x1
+	.byte	0x1e
+	.uleb128 0x5
+	.long	0xb9
+	.byte	0x1
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0xf
+	.byte	0x8
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.uleb128 0xd
+	.string	"C3"
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0xef
+	.uleb128 0xe
+	.string	"f4"
+	.byte	0x1
+	.byte	0x35
+	.uleb128 0x3
+	.long	0xfe
+	.byte	0x1
+	.byte	0
+	.uleb128 0xf
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.uleb128 0x9
+	.long	0xc0
+	.uleb128 0x8
+	.byte	0x8
+	.long	0xf9
+	.uleb128 0x10
+	.string	"f13i"
+	.byte	0x1
+	.byte	0x46
+	.string	"_Z4f13iv"
+	.uleb128 0
+	.quad	.LFE0-.LFB0
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x11
+	.long	0xaa
+	.byte	0x2
+	.uleb128 0x1
+	.quad	.LFE1-.LFB1
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x139
+	.long	0x147
+	.uleb128 0x12
+	.string	"this"
+	.long	0x147
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x13
+	.long	0xc8
+	.uleb128 0x14
+	.long	0x9d
+	.byte	0x2
+	.byte	0x24
+	.uleb128 0x2
+	.quad	.LFE2-.LFB2
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x166
+	.long	0x174
+	.uleb128 0x12
+	.string	"this"
+	.long	0x147
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x15
+	.string	"f10"
+	.byte	0x2
+	.byte	0x48
+	.string	"_Z3f10v"
+	.long	0xb9
+	.uleb128 0x3
+	.quad	.LFE3-.LFB3
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x16
+	.string	"f11b"
+	.byte	0x2
+	.byte	0x50
+	.string	"_Z4f11bPFivE"
+	.long	0xb9
+	.uleb128 0x4
+	.quad	.LFE4-.LFB4
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x1c9
+	.uleb128 0x17
+	.string	"pfn"
+	.byte	0x2
+	.byte	0x50
+	.long	0x1ce
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x9
+	.long	0xb9
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x1c9
+	.uleb128 0x18
+	.long	0xe2
+	.byte	0x2
+	.byte	0x58
+	.uleb128 0x5
+	.quad	.LFE5-.LFB5
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x1ee
+	.long	0x1fc
+	.uleb128 0x12
+	.string	"this"
+	.long	0x1fc
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -24
+	.byte	0
+	.uleb128 0x13
+	.long	0xef
+	.uleb128 0x19
+	.uleb128 0x15
+	.string	"f13"
+	.byte	0x2
+	.byte	0x60
+	.string	"_Z3f13v"
+	.long	0x220
+	.uleb128 0x6
+	.quad	.LFE6-.LFB6
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x201
+	.uleb128 0x15
+	.string	"f14"
+	.byte	0x2
+	.byte	0x68
+	.string	"_Z3f14v"
+	.long	0x244
+	.uleb128 0x7
+	.quad	.LFE7-.LFB7
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x24a
+	.uleb128 0x13
+	.long	0x24f
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x6
+	.string	"char"
+	.uleb128 0x15
+	.string	"f15"
+	.byte	0x2
+	.byte	0x70
+	.string	"_Z3f15v"
+	.long	0x275
+	.uleb128 0x8
+	.quad	.LFE8-.LFB8
+	.uleb128 0x1
+	.byte	0x9c
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x27b
+	.uleb128 0x13
+	.long	0x280
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"wchar_t"
+	.uleb128 0x1a
+	.string	"f18"
+	.byte	0x2
+	.byte	0x7f
+	.string	"_Z3f18i"
+	.long	0x244
+	.uleb128 0x9
+	.quad	.LFE9-.LFB9
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x2ba
+	.uleb128 0x17
+	.string	"i"
+	.byte	0x2
+	.byte	0x7f
+	.long	0xb9
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -20
+	.byte	0
+	.uleb128 0x1b
+	.string	"v2"
+	.byte	0x2
+	.byte	0x2b
+	.long	0xb9
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0xa
+	.uleb128 0x1b
+	.string	"v3"
+	.byte	0x2
+	.byte	0x30
+	.long	0xb9
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0xb
+	.uleb128 0x1c
+	.long	0x24f
+	.long	0x2e4
+	.uleb128 0x1d
+	.long	0x2e4
+	.byte	0xc
+	.byte	0
+	.uleb128 0x7
+	.byte	0x8
+	.byte	0x7
+	.string	"sizetype"
+	.uleb128 0x1b
+	.string	"v4"
+	.byte	0x2
+	.byte	0x34
+	.long	0x2d4
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0xc
+	.uleb128 0x1b
+	.string	"v5"
+	.byte	0x2
+	.byte	0x39
+	.long	0x2d4
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0xd
+	.uleb128 0x1c
+	.long	0x244
+	.long	0x31a
+	.uleb128 0x1d
+	.long	0x2e4
+	.byte	0x4
+	.byte	0
+	.uleb128 0x1b
+	.string	"t17data"
+	.byte	0x2
+	.byte	0x77
+	.long	0x30a
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0xe
+	.byte	0
+	.section	.debug_info,"",@progbits
+.Lskeleton_debug_info0:
+	.long	0x7e
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.uleb128 0x1
+	.long	.Ldebug_ranges0+0
+	.quad	0
+	.long	.Ldebug_line0
+	.byte	0xb9
+	.byte	0xf8
+	.byte	0xe0
+	.byte	0x8c
+	.byte	0x71
+	.byte	0xab
+	.byte	0xc
+	.byte	0xcf
+	.long	.Ldebug_ranges0
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_2.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_abbrev,"",@progbits
+.Lskeleton_debug_abbrev0:
+	.uleb128 0x1
+	.uleb128 0x11
+	.byte	0
+	.uleb128 0x55
+	.uleb128 0x17
+	.uleb128 0x11
+	.uleb128 0x1
+	.uleb128 0x10
+	.uleb128 0x17
+	.uleb128 0x2131
+	.uleb128 0x7
+	.uleb128 0x2132
+	.uleb128 0x17
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2130
+	.uleb128 0x8
+	.uleb128 0x2134
+	.uleb128 0x17
+	.uleb128 0x2135
+	.uleb128 0x17
+	.uleb128 0x2133
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x41
+	.byte	0
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2130
+	.uleb128 0x8
+	.uleb128 0x2134
+	.uleb128 0x17
+	.uleb128 0x2135
+	.uleb128 0x17
+	.uleb128 0x2133
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.byte	0
+	.section	.debug_abbrev.dwo,"e",@progbits
+.Ldebug_abbrev0:
+	.uleb128 0x1
+	.uleb128 0x41
+	.byte	0x1
+	.uleb128 0x13
+	.uleb128 0xb
+	.uleb128 0x210f
+	.uleb128 0x7
+	.uleb128 0x10
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x2
+	.byte	0x1
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0xd
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x38
+	.uleb128 0xb
+	.uleb128 0x32
+	.uleb128 0xb
+	.byte	0
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x5
+	.uleb128 0x5
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x34
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x6
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x1f02
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.uleb128 0x24
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x3e
+	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0x8
+	.byte	0
+	.byte	0
+	.uleb128 0x8
+	.uleb128 0xf
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x9
+	.uleb128 0x15
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xa
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x1f02
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xc
+	.uleb128 0x11
+	.byte	0x1
+	.uleb128 0x25
+	.uleb128 0x8
+	.uleb128 0x13
+	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2131
+	.uleb128 0x7
+	.byte	0
+	.byte	0
+	.uleb128 0xd
+	.uleb128 0x2
+	.byte	0x1
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x69
+	.uleb128 0x20
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xe
+	.uleb128 0x2e
+	.byte	0
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x1f02
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0xf
+	.uleb128 0xf
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x20
+	.byte	0
+	.byte	0
+	.uleb128 0x10
+	.uleb128 0x2e
+	.byte	0
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2117
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x11
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x47
+	.uleb128 0x13
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x2117
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x12
+	.uleb128 0x5
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x34
+	.uleb128 0x19
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.uleb128 0x13
+	.uleb128 0x26
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x14
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x47
+	.uleb128 0x13
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x2116
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x15
+	.uleb128 0x2e
+	.byte	0
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2117
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x16
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2116
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x17
+	.uleb128 0x5
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.uleb128 0x18
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x47
+	.uleb128 0x13
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x2117
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x19
+	.uleb128 0x15
+	.byte	0
+	.byte	0
+	.byte	0
+	.uleb128 0x1a
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2117
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x1b
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.uleb128 0x1c
+	.uleb128 0x1
+	.byte	0x1
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x1d
+	.uleb128 0x21
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x2f
+	.uleb128 0xb
+	.byte	0
+	.byte	0
+	.byte	0
+	.section	.debug_gnu_pubnames,"",@progbits
+.Ldebug_pubnames0:
+	.long	0xa3
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.long	0x32d
+	.long	0x104
+	.byte	0x30
+	.string	"f13i"
+	.long	0x120
+	.byte	0x30
+	.string	"C1::t1_2"
+	.long	0x14c
+	.byte	0x30
+	.string	"C1::t1a"
+	.long	0x174
+	.byte	0x30
+	.string	"f10"
+	.long	0x192
+	.byte	0x30
+	.string	"f11b"
+	.long	0x1d4
+	.byte	0x30
+	.string	"C3::f4"
+	.long	0x202
+	.byte	0x30
+	.string	"f13"
+	.long	0x226
+	.byte	0x30
+	.string	"f14"
+	.long	0x257
+	.byte	0x30
+	.string	"f15"
+	.long	0x28b
+	.byte	0x30
+	.string	"f18"
+	.long	0x2ba
+	.byte	0x20
+	.string	"v2"
+	.long	0x2c7
+	.byte	0x20
+	.string	"v3"
+	.long	0x2f0
+	.byte	0x20
+	.string	"v4"
+	.long	0x2fd
+	.byte	0x20
+	.string	"v5"
+	.long	0x31a
+	.byte	0x20
+	.string	"t17data"
+	.long	0
+	.section	.debug_gnu_pubtypes,"",@progbits
+.Ldebug_pubtypes0:
+	.long	0x56
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.long	0x32d
+	.long	0xb9
+	.byte	0x90
+	.string	"int"
+	.long	0xc0
+	.byte	0x90
+	.string	"bool"
+	.long	0x8d
+	.byte	0x10
+	.string	"C1"
+	.long	0xd2
+	.byte	0x10
+	.string	"C3"
+	.long	0x24f
+	.byte	0x90
+	.string	"char"
+	.long	0x280
+	.byte	0x90
+	.string	"wchar_t"
+	.long	0x2e4
+	.byte	0x90
+	.string	"sizetype"
+	.long	0
+	.section	.debug_aranges,"",@progbits
+	.long	0x3c
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.byte	0x8
+	.byte	0
+	.value	0
+	.value	0
+	.quad	.Ltext0
+	.quad	.Letext0-.Ltext0
+	.quad	.LFB0
+	.quad	.LFE0-.LFB0
+	.quad	0
+	.quad	0
+	.section	.debug_ranges,"",@progbits
+.Ldebug_ranges0:
+	.quad	.Ltext0
+	.quad	.Letext0
+	.quad	.LFB0
+	.quad	.LFE0
+	.quad	0
+	.quad	0
+	.section	.debug_line,"",@progbits
+.Ldebug_line0:
+	.section	.debug_line.dwo,"e",@progbits
+.Lskeleton_debug_line0:
+	.long	.LELT0-.LSLT0
+.LSLT0:
+	.value	0x4
+	.long	.LELTP0-.LASLTP0
+.LASLTP0:
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0xf6
+	.byte	0xf2
+	.byte	0xd
+	.byte	0
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0
+	.byte	0
+	.byte	0
+	.byte	0x1
+	.byte	0
+	.byte	0
+	.byte	0x1
+	.byte	0
+	.string	"dwp_test.h"
+	.uleb128 0
+	.uleb128 0
+	.uleb128 0
+	.string	"dwp_test_2.cc"
+	.uleb128 0
+	.uleb128 0
+	.uleb128 0
+	.byte	0
+.LELTP0:
+.LELT0:
+	.section	.debug_str_offsets.dwo,"e",@progbits
+	.long	0
+	.long	0xa
+	.long	0x14
+	.long	0x1e
+	.long	0x2a
+	.long	0x37
+	.section	.debug_str.dwo,"e",@progbits
+.LASF0:
+	.string	"testcase1"
+.LASF1:
+	.string	"testcase2"
+.LASF2:
+	.string	"testcase3"
+.LASF3:
+	.string	"_ZN2C32f4Ev"
+.LASF4:
+	.string	"_ZN2C13t1aEv"
+.LASF5:
+	.string	"_ZN2C14t1_2Ev"
+	.section	.debug_addr,"",@progbits
+.Ldebug_addr0:
+	.quad	.LFB0
+	.quad	.LFB1
+	.quad	.LFB2
+	.quad	.LFB3
+	.quad	.LFB4
+	.quad	.LFB5
+	.quad	.LFB6
+	.quad	.LFB7
+	.quad	.LFB8
+	.quad	.LFB9
+	.quad	v2
+	.quad	v3
+	.quad	v4
+	.quad	v5
+	.quad	t17data
+	.ident	"GCC: (Google_crosstoolv16-gcc-4.7.x-grtev3) 4.7.x-google 20120720 (prerelease)"
+	.section	.note.GNU-stack,"",@progbits
diff --git a/gold/testsuite/dwp_test_2.sh b/gold/testsuite/dwp_test_2.sh
new file mode 100755
index 0000000..619d73b
--- /dev/null
+++ b/gold/testsuite/dwp_test_2.sh
@@ -0,0 +1,63 @@
+#!/bin/sh
+
+# dwp_test_2.sh -- Test the dwp tool.
+
+# Copyright 2012 Free Software Foundation, Inc.
+# Written by Cary Coutant <ccoutant@google.com>.
+
+# This file is part of gold.
+
+# 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, write to the Free Software
+# Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+# MA 02110-1301, USA.
+
+check()
+{
+    if ! grep -q "$2" "$1"
+    then
+	echo "Did not find expected output:"
+	echo "   $2"
+	echo ""
+	echo "Actual error output below:"
+	cat "$1"
+	exit 1
+    fi
+}
+
+check_num()
+{
+    n=$(grep -c "$2" "$1")
+    if test "$n" -ne "$3"
+    then
+	echo "Found $n occurrences (should find $3):"
+	echo "   $2"
+	echo ""
+	echo "Actual error output below:"
+	cat "$1"
+	exit 1
+    fi
+}
+
+STDOUT="dwp_test_2.stdout"
+
+check $STDOUT "^Contents of the .debug_info.dwo section"
+check_num $STDOUT "DW_TAG_compile_unit" 4
+check_num $STDOUT "DW_TAG_type_unit" 3
+check_num $STDOUT "DW_AT_name.*: C1" 3
+check_num $STDOUT "DW_AT_name.*: C2" 2
+check_num $STDOUT "DW_AT_name.*: C3" 3
+check_num $STDOUT "DW_AT_name.*: testcase1" 6
+check_num $STDOUT "DW_AT_name.*: testcase2" 6
+check_num $STDOUT "DW_AT_name.*: testcase3" 6
+check_num $STDOUT "DW_AT_name.*: testcase4" 4
diff --git a/gold/testsuite/dwp_test_main.cc b/gold/testsuite/dwp_test_main.cc
new file mode 100644
index 0000000..abddc0f
--- /dev/null
+++ b/gold/testsuite/dwp_test_main.cc
@@ -0,0 +1,59 @@
+// dwp_test_main.cc -- a test case for dwp
+
+// Copyright 2012 Free Software Foundation, Inc.
+// Written by Cary Coutant <ccoutant@google.com>.
+
+// This file is part of gold.
+
+// 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, write to the Free Software
+// Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
+// MA 02110-1301, USA.
+
+// Adapted from two_file_test_main.cc.
+
+#include <cassert>
+
+#include "dwp_test.h"
+
+int
+main()
+{
+  C1 c1;
+  C2 c2;
+
+  // Initialize common data.
+  v3 = 789;
+  for (int i = 0; i < 13; ++i)
+    v5[i] = v4[i];
+
+  assert(c1.testcase1());
+  assert(c1.t1a());
+  assert(c1.testcase2());
+  assert(c1.testcase3());
+  assert(c1.testcase4());
+  assert(c2.testcase1());
+  assert(c2.testcase2());
+  assert(c2.testcase3());
+  assert(c2.testcase4());
+  assert(c3.testcase1());
+  assert(c3.testcase2());
+  assert(c3.testcase3());
+  assert(t12());
+  assert(t13());
+  assert(t16());
+  assert(t16a());
+  assert(t17());
+  assert(t18());
+  return 0;
+}
diff --git a/gold/testsuite/dwp_test_main.s b/gold/testsuite/dwp_test_main.s
new file mode 100644
index 0000000..f864365
--- /dev/null
+++ b/gold/testsuite/dwp_test_main.s
@@ -0,0 +1,1399 @@
+	.file	"dwp_test_main.cc"
+	.text
+.Ltext0:
+	.section	.rodata
+.LC0:
+	.string	"dwp_test_main.cc"
+.LC1:
+	.string	"c1.testcase1()"
+.LC2:
+	.string	"c1.t1a()"
+.LC3:
+	.string	"c1.testcase2()"
+.LC4:
+	.string	"c1.testcase3()"
+.LC5:
+	.string	"c1.testcase4()"
+.LC6:
+	.string	"c2.testcase1()"
+.LC7:
+	.string	"c2.testcase2()"
+.LC8:
+	.string	"c2.testcase3()"
+.LC9:
+	.string	"c2.testcase4()"
+.LC10:
+	.string	"c3.testcase1()"
+.LC11:
+	.string	"c3.testcase2()"
+.LC12:
+	.string	"c3.testcase3()"
+.LC13:
+	.string	"t12()"
+.LC14:
+	.string	"t13()"
+.LC15:
+	.string	"t16()"
+.LC16:
+	.string	"t16a()"
+.LC17:
+	.string	"t17()"
+.LC18:
+	.string	"t18()"
+	.text
+	.globl	main
+	.type	main, @function
+main:
+.LFB1:
+	.file 1 "dwp_test_main.cc"
+	.loc 1 31 0
+	.cfi_startproc
+	.cfi_personality 0x3,__gxx_personality_v0
+	.cfi_lsda 0x3,.LLSDA1
+	pushq	%rbp
+	.cfi_def_cfa_offset 16
+	.cfi_offset 6, -16
+	movq	%rsp, %rbp
+	.cfi_def_cfa_register 6
+	subq	$32, %rsp
+.LBB2:
+	.loc 1 36 0
+	movl	$789, v3(%rip)
+.LBB3:
+	.loc 1 37 0
+	movl	$0, -4(%rbp)
+	jmp	.L2
+.L3:
+	.loc 1 38 0
+	movl	-4(%rbp), %eax
+	cltq
+	movzbl	v4(%rax), %edx
+	movl	-4(%rbp), %eax
+	cltq
+	movb	%dl, v5(%rax)
+	.loc 1 37 0 discriminator 2
+	addl	$1, -4(%rbp)
+.L2:
+	.loc 1 37 0 is_stmt 0 discriminator 1
+	cmpl	$12, -4(%rbp)
+	setle	%al
+	testb	%al, %al
+	jne	.L3
+.LBE3:
+	.loc 1 40 0 is_stmt 1
+	leaq	-16(%rbp), %rax
+	movq	%rax, %rdi
+.LEHB0:
+	call	_ZN2C19testcase1Ev
+	.loc 1 40 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L4
+	.loc 1 40 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$40, %edx
+	movl	$.LC0, %esi
+	movl	$.LC1, %edi
+	call	__assert_fail
+.L4:
+	.loc 1 41 0 is_stmt 1
+	leaq	-16(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C13t1aEv
+	.loc 1 41 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L5
+	.loc 1 41 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$41, %edx
+	movl	$.LC0, %esi
+	movl	$.LC2, %edi
+	call	__assert_fail
+.L5:
+	.loc 1 42 0 is_stmt 1
+	leaq	-16(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C19testcase2Ev
+	.loc 1 42 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L6
+	.loc 1 42 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$42, %edx
+	movl	$.LC0, %esi
+	movl	$.LC3, %edi
+	call	__assert_fail
+.L6:
+	.loc 1 43 0 is_stmt 1
+	leaq	-16(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C19testcase3Ev
+	.loc 1 43 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L7
+	.loc 1 43 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$43, %edx
+	movl	$.LC0, %esi
+	movl	$.LC4, %edi
+	call	__assert_fail
+.L7:
+	.loc 1 44 0 is_stmt 1
+	leaq	-16(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C19testcase4Ev
+	.loc 1 44 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L8
+	.loc 1 44 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$44, %edx
+	movl	$.LC0, %esi
+	movl	$.LC5, %edi
+	call	__assert_fail
+.L8:
+	.loc 1 45 0 is_stmt 1
+	leaq	-32(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C29testcase1Ev
+	.loc 1 45 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L9
+	.loc 1 45 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$45, %edx
+	movl	$.LC0, %esi
+	movl	$.LC6, %edi
+	call	__assert_fail
+.L9:
+	.loc 1 46 0 is_stmt 1
+	leaq	-32(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C29testcase2Ev
+	.loc 1 46 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L10
+	.loc 1 46 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$46, %edx
+	movl	$.LC0, %esi
+	movl	$.LC7, %edi
+	call	__assert_fail
+.L10:
+	.loc 1 47 0 is_stmt 1
+	leaq	-32(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C29testcase3Ev
+	.loc 1 47 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L11
+	.loc 1 47 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$47, %edx
+	movl	$.LC0, %esi
+	movl	$.LC8, %edi
+	call	__assert_fail
+.L11:
+	.loc 1 48 0 is_stmt 1
+	leaq	-32(%rbp), %rax
+	movq	%rax, %rdi
+	call	_ZN2C29testcase4Ev
+	.loc 1 48 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L12
+	.loc 1 48 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$48, %edx
+	movl	$.LC0, %esi
+	movl	$.LC9, %edi
+	call	__assert_fail
+.L12:
+	.loc 1 49 0 is_stmt 1
+	movl	$c3, %edi
+	call	_ZN2C39testcase1Ev
+	.loc 1 49 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L13
+	.loc 1 49 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$49, %edx
+	movl	$.LC0, %esi
+	movl	$.LC10, %edi
+	call	__assert_fail
+.L13:
+	.loc 1 50 0 is_stmt 1
+	movl	$c3, %edi
+	call	_ZN2C39testcase2Ev
+	.loc 1 50 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L14
+	.loc 1 50 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$50, %edx
+	movl	$.LC0, %esi
+	movl	$.LC11, %edi
+	call	__assert_fail
+.L14:
+	.loc 1 51 0 is_stmt 1
+	movl	$c3, %edi
+	call	_ZN2C39testcase3Ev
+	.loc 1 51 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L15
+	.loc 1 51 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$51, %edx
+	movl	$.LC0, %esi
+	movl	$.LC12, %edi
+	call	__assert_fail
+.L15:
+	.loc 1 52 0 is_stmt 1
+	call	_Z3t12v
+	.loc 1 52 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L16
+	.loc 1 52 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$52, %edx
+	movl	$.LC0, %esi
+	movl	$.LC13, %edi
+	call	__assert_fail
+.L16:
+	.loc 1 53 0 is_stmt 1
+	call	_Z3t13v
+	.loc 1 53 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L17
+	.loc 1 53 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$53, %edx
+	movl	$.LC0, %esi
+	movl	$.LC14, %edi
+	call	__assert_fail
+.L17:
+	.loc 1 54 0 is_stmt 1
+	call	_Z3t16v
+	.loc 1 54 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L18
+	.loc 1 54 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$54, %edx
+	movl	$.LC0, %esi
+	movl	$.LC15, %edi
+	call	__assert_fail
+.L18:
+	.loc 1 55 0 is_stmt 1
+	call	_Z4t16av
+	.loc 1 55 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L19
+	.loc 1 55 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$55, %edx
+	movl	$.LC0, %esi
+	movl	$.LC16, %edi
+	call	__assert_fail
+.L19:
+	.loc 1 56 0 is_stmt 1
+	call	_Z3t17v
+	.loc 1 56 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L20
+	.loc 1 56 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$56, %edx
+	movl	$.LC0, %esi
+	movl	$.LC17, %edi
+	call	__assert_fail
+.L20:
+	.loc 1 57 0 is_stmt 1
+	call	_Z3t18v
+.LEHE0:
+	.loc 1 57 0 is_stmt 0 discriminator 1
+	testb	%al, %al
+	jne	.L21
+	.loc 1 57 0 discriminator 2
+	movl	$_ZZ4mainE19__PRETTY_FUNCTION__, %ecx
+	movl	$57, %edx
+	movl	$.LC0, %esi
+	movl	$.LC18, %edi
+	call	__assert_fail
+.L21:
+	.loc 1 58 0 is_stmt 1
+	movl	$0, %eax
+	jmp	.L25
+.L24:
+	movq	%rax, %rdi
+.LEHB1:
+	call	_Unwind_Resume
+.LEHE1:
+.L25:
+.LBE2:
+	.loc 1 59 0
+	leave
+	.cfi_def_cfa 7, 8
+	ret
+	.cfi_endproc
+.LFE1:
+	.globl	__gxx_personality_v0
+	.section	.gcc_except_table,"a",@progbits
+.LLSDA1:
+	.byte	0xff
+	.byte	0xff
+	.byte	0x1
+	.uleb128 .LLSDACSE1-.LLSDACSB1
+.LLSDACSB1:
+	.uleb128 .LEHB0-.LFB1
+	.uleb128 .LEHE0-.LEHB0
+	.uleb128 .L24-.LFB1
+	.uleb128 0
+	.uleb128 .LEHB1-.LFB1
+	.uleb128 .LEHE1-.LEHB1
+	.uleb128 0
+	.uleb128 0
+.LLSDACSE1:
+	.text
+	.size	main, .-main
+	.section	.rodata
+	.type	_ZZ4mainE19__PRETTY_FUNCTION__, @object
+	.size	_ZZ4mainE19__PRETTY_FUNCTION__, 11
+_ZZ4mainE19__PRETTY_FUNCTION__:
+	.string	"int main()"
+	.text
+.Letext0:
+	.file 2 "dwp_test.h"
+	.section	.debug_types.dwo,"G",@progbits,wt.bb2916f0c1bd34b5,comdat
+	.long	0xf7
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0x8a
+	.byte	0xda
+	.byte	0x59
+	.byte	0x6e
+	.byte	0x4d
+	.byte	0x5c
+	.byte	0xa
+	.byte	0x88
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C3"
+	.byte	0x4
+	.byte	0x2
+	.byte	0x2f
+	.long	0xda
+	.uleb128 0x3
+	.uleb128 0x3
+	.byte	0x2
+	.byte	0x36
+	.long	0xda
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.uleb128 0
+	.byte	0x2
+	.byte	0x32
+	.string	"_ZN2C39testcase1Ev"
+	.long	0xe1
+	.byte	0x1
+	.long	0x5e
+	.long	0x64
+	.uleb128 0x5
+	.long	0xe9
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x1
+	.byte	0x2
+	.byte	0x33
+	.string	"_ZN2C39testcase2Ev"
+	.long	0xe1
+	.byte	0x1
+	.long	0x88
+	.long	0x8e
+	.uleb128 0x5
+	.long	0xe9
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2
+	.byte	0x2
+	.byte	0x34
+	.string	"_ZN2C39testcase3Ev"
+	.long	0xe1
+	.byte	0x1
+	.long	0xb2
+	.long	0xb8
+	.uleb128 0x5
+	.long	0xe9
+	.byte	0
+	.uleb128 0x6
+	.string	"f4"
+	.byte	0x2
+	.byte	0x35
+	.string	"_ZN2C32f4Ev"
+	.long	0xef
+	.byte	0x1
+	.long	0xd3
+	.uleb128 0x5
+	.long	0xe9
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.uleb128 0x8
+	.byte	0x8
+	.long	0xf5
+	.uleb128 0x9
+	.long	0xe1
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.bb2916f0c1bd34b5,comdat
+	.long	0x71
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_main.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_types.dwo,"G",@progbits,wt.66526f88bcc798ab,comdat
+	.long	0xf1
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0x66
+	.byte	0x52
+	.byte	0x6f
+	.byte	0x88
+	.byte	0xbc
+	.byte	0xc7
+	.byte	0x98
+	.byte	0xab
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0x4b
+	.byte	0xf9
+	.byte	0xce
+	.byte	0xbf
+	.byte	0xd8
+	.byte	0xf0
+	.byte	0x4a
+	.byte	0xae
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C2"
+	.byte	0x4
+	.byte	0x2
+	.byte	0x25
+	.long	0xdf
+	.uleb128 0x3
+	.uleb128 0x3
+	.byte	0x2
+	.byte	0x2c
+	.long	0xdf
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.uleb128 0
+	.byte	0x2
+	.byte	0x28
+	.string	"_ZN2C29testcase1Ev"
+	.long	0xe6
+	.byte	0x1
+	.long	0x5e
+	.long	0x64
+	.uleb128 0x5
+	.long	0xee
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x1
+	.byte	0x2
+	.byte	0x29
+	.string	"_ZN2C29testcase2Ev"
+	.long	0xe6
+	.byte	0x1
+	.long	0x88
+	.long	0x8e
+	.uleb128 0x5
+	.long	0xee
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2
+	.byte	0x2
+	.byte	0x2a
+	.string	"_ZN2C29testcase3Ev"
+	.long	0xe6
+	.byte	0x1
+	.long	0xb2
+	.long	0xb8
+	.uleb128 0x5
+	.long	0xee
+	.byte	0
+	.uleb128 0xa
+	.uleb128 0x4
+	.byte	0x2
+	.byte	0x2b
+	.string	"_ZN2C29testcase4Ev"
+	.long	0xe6
+	.byte	0x1
+	.long	0xd8
+	.uleb128 0x5
+	.long	0xee
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.66526f88bcc798ab,comdat
+	.long	0x71
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0x66
+	.byte	0x52
+	.byte	0x6f
+	.byte	0x88
+	.byte	0xbc
+	.byte	0xc7
+	.byte	0x98
+	.byte	0xab
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_main.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_types.dwo,"G",@progbits,wt.c419a9b7a4a2fab5,comdat
+	.long	0x141
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.long	0x25
+	.uleb128 0x1
+	.byte	0x4
+	.byte	0xe3
+	.byte	0xad
+	.byte	0x5
+	.byte	0x3b
+	.byte	0x75
+	.byte	0xeb
+	.byte	0xfb
+	.byte	0xc7
+	.long	.Lskeleton_debug_line0
+	.uleb128 0x2
+	.string	"C1"
+	.byte	0x4
+	.byte	0x2
+	.byte	0x19
+	.long	0x12f
+	.uleb128 0x3
+	.uleb128 0x3
+	.byte	0x2
+	.byte	0x22
+	.long	0x12f
+	.byte	0
+	.byte	0x1
+	.uleb128 0x4
+	.uleb128 0
+	.byte	0x2
+	.byte	0x1c
+	.string	"_ZN2C19testcase1Ev"
+	.long	0x136
+	.byte	0x1
+	.long	0x5e
+	.long	0x64
+	.uleb128 0x5
+	.long	0x13e
+	.byte	0
+	.uleb128 0xb
+	.string	"t1a"
+	.byte	0x2
+	.byte	0x1d
+	.string	"_ZN2C13t1aEv"
+	.long	0x136
+	.byte	0x1
+	.long	0x85
+	.long	0x8b
+	.uleb128 0x5
+	.long	0x13e
+	.byte	0
+	.uleb128 0xb
+	.string	"t1_2"
+	.byte	0x2
+	.byte	0x1e
+	.string	"_ZN2C14t1_2Ev"
+	.long	0x12f
+	.byte	0x1
+	.long	0xae
+	.long	0xb4
+	.uleb128 0x5
+	.long	0x13e
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x1
+	.byte	0x2
+	.byte	0x1f
+	.string	"_ZN2C19testcase2Ev"
+	.long	0x136
+	.byte	0x1
+	.long	0xd8
+	.long	0xde
+	.uleb128 0x5
+	.long	0x13e
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2
+	.byte	0x2
+	.byte	0x20
+	.string	"_ZN2C19testcase3Ev"
+	.long	0x136
+	.byte	0x1
+	.long	0x102
+	.long	0x108
+	.uleb128 0x5
+	.long	0x13e
+	.byte	0
+	.uleb128 0xa
+	.uleb128 0x4
+	.byte	0x2
+	.byte	0x21
+	.string	"_ZN2C19testcase4Ev"
+	.long	0x136
+	.byte	0x1
+	.long	0x128
+	.uleb128 0x5
+	.long	0x13e
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0x8
+	.byte	0x8
+	.long	0x25
+	.byte	0
+	.section	.debug_types,"G",@progbits,wt.c419a9b7a4a2fab5,comdat
+	.long	0x71
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.long	0
+	.uleb128 0x2
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_main.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_info.dwo,"e",@progbits
+.Ldebug_info0:
+	.long	0x178
+	.value	0x4
+	.long	.Ldebug_abbrev0
+	.byte	0x8
+	.uleb128 0xc
+	.string	"GNU C++ 4.7.x-google 20120720 (prerelease)"
+	.byte	0x4
+	.string	"dwp_test_main.cc"
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.byte	0xc8
+	.byte	0xeb
+	.byte	0x9a
+	.byte	0x5c
+	.byte	0xd9
+	.byte	0x51
+	.byte	0xba
+	.byte	0xe5
+	.uleb128 0x7
+	.byte	0x4
+	.byte	0x5
+	.string	"int"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x2
+	.string	"bool"
+	.uleb128 0xd
+	.string	"main"
+	.byte	0x1
+	.byte	0x1e
+	.long	0x90
+	.uleb128 0
+	.quad	.LFE1-.LFB1
+	.uleb128 0x1
+	.byte	0x9c
+	.long	0x11b
+	.uleb128 0xe
+	.uleb128 0x1
+	.quad	.LBE2-.LBB2
+	.uleb128 0xf
+	.string	"c1"
+	.byte	0x1
+	.byte	0x20
+	.byte	0xc4
+	.byte	0x19
+	.byte	0xa9
+	.byte	0xb7
+	.byte	0xa4
+	.byte	0xa2
+	.byte	0xfa
+	.byte	0xb5
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -32
+	.uleb128 0xf
+	.string	"c2"
+	.byte	0x1
+	.byte	0x21
+	.byte	0x66
+	.byte	0x52
+	.byte	0x6f
+	.byte	0x88
+	.byte	0xbc
+	.byte	0xc7
+	.byte	0x98
+	.byte	0xab
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -48
+	.uleb128 0x10
+	.string	"__PRETTY_FUNCTION__"
+	.long	0x13f
+	.uleb128 0x2
+	.byte	0xfb
+	.uleb128 0x2
+	.uleb128 0xe
+	.uleb128 0x3
+	.quad	.LBE3-.LBB3
+	.uleb128 0x11
+	.string	"i"
+	.byte	0x1
+	.byte	0x25
+	.long	0x90
+	.uleb128 0x2
+	.byte	0x91
+	.sleb128 -20
+	.byte	0
+	.byte	0
+	.byte	0
+	.uleb128 0x12
+	.long	0x137
+	.long	0x12b
+	.uleb128 0x13
+	.long	0x12b
+	.byte	0xa
+	.byte	0
+	.uleb128 0x7
+	.byte	0x8
+	.byte	0x7
+	.string	"sizetype"
+	.uleb128 0x7
+	.byte	0x1
+	.byte	0x6
+	.string	"char"
+	.uleb128 0x14
+	.long	0x11b
+	.uleb128 0x15
+	.string	"c3"
+	.byte	0x2
+	.byte	0x39
+	.byte	0xbb
+	.byte	0x29
+	.byte	0x16
+	.byte	0xf0
+	.byte	0xc1
+	.byte	0xbd
+	.byte	0x34
+	.byte	0xb5
+	.uleb128 0x16
+	.string	"v3"
+	.byte	0x2
+	.byte	0x3c
+	.long	0x90
+	.uleb128 0x12
+	.long	0x137
+	.long	0x167
+	.uleb128 0x17
+	.byte	0
+	.uleb128 0x16
+	.string	"v4"
+	.byte	0x2
+	.byte	0x3d
+	.long	0x15c
+	.uleb128 0x16
+	.string	"v5"
+	.byte	0x2
+	.byte	0x3e
+	.long	0x15c
+	.byte	0
+	.section	.debug_info,"",@progbits
+.Lskeleton_debug_info0:
+	.long	0x81
+	.value	0x4
+	.long	.Lskeleton_debug_abbrev0
+	.byte	0x8
+	.uleb128 0x1
+	.quad	.Ltext0
+	.quad	.Letext0-.Ltext0
+	.long	.Ldebug_line0
+	.byte	0xc8
+	.byte	0xeb
+	.byte	0x9a
+	.byte	0x5c
+	.byte	0xd9
+	.byte	0x51
+	.byte	0xba
+	.byte	0xe5
+	.string	"/home/ccoutant/opensource/binutils-git/binutils/gold/testsuite"
+	.string	"dwp_test_main.dwo"
+	.long	.Ldebug_pubnames0
+	.long	.Ldebug_pubtypes0
+	.long	.Ldebug_addr0
+	.section	.debug_abbrev,"",@progbits
+.Lskeleton_debug_abbrev0:
+	.uleb128 0x1
+	.uleb128 0x11
+	.byte	0
+	.uleb128 0x11
+	.uleb128 0x1
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x10
+	.uleb128 0x17
+	.uleb128 0x2131
+	.uleb128 0x7
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2130
+	.uleb128 0x8
+	.uleb128 0x2134
+	.uleb128 0x17
+	.uleb128 0x2135
+	.uleb128 0x17
+	.uleb128 0x2133
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x41
+	.byte	0
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2130
+	.uleb128 0x8
+	.uleb128 0x2134
+	.uleb128 0x17
+	.uleb128 0x2135
+	.uleb128 0x17
+	.uleb128 0x2133
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.byte	0
+	.section	.debug_abbrev.dwo,"e",@progbits
+.Ldebug_abbrev0:
+	.uleb128 0x1
+	.uleb128 0x41
+	.byte	0x1
+	.uleb128 0x13
+	.uleb128 0xb
+	.uleb128 0x210f
+	.uleb128 0x7
+	.uleb128 0x10
+	.uleb128 0x17
+	.byte	0
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x2
+	.byte	0x1
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0xd
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x38
+	.uleb128 0xb
+	.uleb128 0x32
+	.uleb128 0xb
+	.byte	0
+	.byte	0
+	.uleb128 0x4
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x5
+	.uleb128 0x5
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x34
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x6
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x7
+	.uleb128 0x24
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x3e
+	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0x8
+	.byte	0
+	.byte	0
+	.uleb128 0x8
+	.uleb128 0xf
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x9
+	.uleb128 0x15
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xa
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x1f02
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xb
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x6e
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x32
+	.uleb128 0xb
+	.uleb128 0x3c
+	.uleb128 0x19
+	.uleb128 0x64
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xc
+	.uleb128 0x11
+	.byte	0x1
+	.uleb128 0x25
+	.uleb128 0x8
+	.uleb128 0x13
+	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x1b
+	.uleb128 0x8
+	.uleb128 0x2131
+	.uleb128 0x7
+	.byte	0
+	.byte	0
+	.uleb128 0xd
+	.uleb128 0x2e
+	.byte	0x1
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.uleb128 0x40
+	.uleb128 0x18
+	.uleb128 0x2116
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0xe
+	.uleb128 0xb
+	.byte	0x1
+	.uleb128 0x11
+	.uleb128 0x1f01
+	.uleb128 0x12
+	.uleb128 0x7
+	.byte	0
+	.byte	0
+	.uleb128 0xf
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x20
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.uleb128 0x10
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x34
+	.uleb128 0x19
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.uleb128 0x11
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x2
+	.uleb128 0x18
+	.byte	0
+	.byte	0
+	.uleb128 0x12
+	.uleb128 0x1
+	.byte	0x1
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x1
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x13
+	.uleb128 0x21
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x2f
+	.uleb128 0xb
+	.byte	0
+	.byte	0
+	.uleb128 0x14
+	.uleb128 0x26
+	.byte	0
+	.uleb128 0x49
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x15
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x20
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3c
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x16
+	.uleb128 0x34
+	.byte	0
+	.uleb128 0x3
+	.uleb128 0x8
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
+	.uleb128 0x3f
+	.uleb128 0x19
+	.uleb128 0x3c
+	.uleb128 0x19
+	.byte	0
+	.byte	0
+	.uleb128 0x17
+	.uleb128 0x21
+	.byte	0
+	.byte	0
+	.byte	0
+	.byte	0
+	.section	.debug_gnu_pubnames,"",@progbits
+.Ldebug_pubnames0:
+	.long	0x18
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.long	0x17c
+	.long	0x9f
+	.byte	0x30
+	.string	"main"
+	.long	0
+	.section	.debug_gnu_pubtypes,"",@progbits
+.Ldebug_pubtypes0:
+	.long	0x51
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.long	0x17c
+	.long	0x90
+	.byte	0x90
+	.string	"int"
+	.long	0x97
+	.byte	0x90
+	.string	"bool"
+	.long	0
+	.byte	0x10
+	.string	"C1"
+	.long	0
+	.byte	0x10
+	.string	"C2"
+	.long	0
+	.byte	0x10
+	.string	"C3"
+	.long	0x12b
+	.byte	0x90
+	.string	"sizetype"
+	.long	0x137
+	.byte	0x90
+	.string	"char"
+	.long	0
+	.section	.debug_aranges,"",@progbits
+	.long	0x2c
+	.value	0x2
+	.long	.Lskeleton_debug_info0
+	.byte	0x8
+	.byte	0
+	.value	0
+	.value	0
+	.quad	.Ltext0
+	.quad	.Letext0-.Ltext0
+	.quad	0
+	.quad	0
+	.section	.debug_line,"",@progbits
+.Ldebug_line0:
+	.section	.debug_line.dwo,"e",@progbits
+.Lskeleton_debug_line0:
+	.long	.LELT0-.LSLT0
+.LSLT0:
+	.value	0x4
+	.long	.LELTP0-.LASLTP0
+.LASLTP0:
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0xf6
+	.byte	0xf2
+	.byte	0xd
+	.byte	0
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0x1
+	.byte	0
+	.byte	0
+	.byte	0
+	.byte	0x1
+	.byte	0
+	.byte	0
+	.byte	0x1
+	.byte	0
+	.string	"dwp_test_main.cc"
+	.uleb128 0
+	.uleb128 0
+	.uleb128 0
+	.string	"dwp_test.h"
+	.uleb128 0
+	.uleb128 0
+	.uleb128 0
+	.byte	0
+.LELTP0:
+.LELT0:
+	.section	.debug_str_offsets.dwo,"e",@progbits
+	.long	0
+	.long	0xa
+	.long	0x14
+	.long	0x1e
+	.long	0x26
+	.section	.debug_str.dwo,"e",@progbits
+.LASF0:
+	.string	"testcase1"
+.LASF1:
+	.string	"testcase2"
+.LASF2:
+	.string	"testcase3"
+.LASF3:
+	.string	"member1"
+.LASF4:
+	.string	"testcase4"
+	.section	.debug_addr,"",@progbits
+.Ldebug_addr0:
+	.quad	.LFB1
+	.quad	.LBB2
+	.quad	_ZZ4mainE19__PRETTY_FUNCTION__
+	.quad	.LBB3
+	.ident	"GCC: (Google_crosstoolv16-gcc-4.7.x-grtev3) 4.7.x-google 20120720 (prerelease)"
+	.section	.note.GNU-stack,"",@progbits
-- 
1.7.9.6 (Apple Git-31.1)


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]