This is the mail archive of the gdb-patches@sourceware.org mailing list for the GDB 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] Fix implicit pointer vs. typedefs


Hi Tom,

found missing check_typedef in indirect_pieced_value, with the extended
testcase the fix will:
	 print *j
	-Cannot access memory at address 0x0
	-(gdb) FAIL: gdb.dwarf2/implptr.exp: print *j in implptr:bar
	+$2 = 5
	+(gdb) PASS: gdb.dwarf2/implptr.exp: print *j in implptr:bar
	 print **k
	-Cannot access memory at address 0x0
	-(gdb) FAIL: gdb.dwarf2/implptr.exp: print **k in implptr:bar
	+$3 = 5
	+(gdb) PASS: gdb.dwarf2/implptr.exp: print **k in implptr:bar
	 print ***l
	-Cannot access memory at address 0x0
	-(gdb) FAIL: gdb.dwarf2/implptr.exp: print ***l in implptr:bar
	+$4 = 5
	+(gdb) PASS: gdb.dwarf2/implptr.exp: print ***l in implptr:bar

Unrelated to the fix it introduces to the testcase a convenience parameter
COMPILE=1 to rebuild it from source (BTW it FAILs with gcc-4.7.0, it is OK with
Fedora 15 GCC).

No regressions on {x86_64,x86_64-m32,i686}-fedora16pre-linux-gnu.
I will check it in if no responses appear.


Thanks,
Jan


gdb/
2011-07-18  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* dwarf2loc.c (indirect_pieced_value): Use check_typedef for VALUE's
	type.

gdb/testsuite/
2011-07-18  Jan Kratochvil  <jan.kratochvil@redhat.com>

	* gdb.dwarf2/implptr.S: Rebuilt.
	* gdb.dwarf2/implptr.c (intp, intpp, intppp): New typedefs.
	(bar): Use them for j, k, l.
	* gdb.dwarf2/implptr.exp: New variable opts.  Support runtest parameter
	COMPILE.
	(print j in implptr:bar): Update for the intp typedef.
	(print p[0].x in implptr:foo): Use more exact regex.

--- a/gdb/dwarf2loc.c
+++ b/gdb/dwarf2loc.c
@@ -967,7 +967,7 @@ indirect_pieced_value (struct value *value)
   struct value *result;
   LONGEST byte_offset;
 
-  type = value_type (value);
+  type = check_typedef (value_type (value));
   if (TYPE_CODE (type) != TYPE_CODE_PTR)
     return NULL;
 
--- a/gdb/testsuite/gdb.dwarf2/implptr.c
+++ b/gdb/testsuite/gdb.dwarf2/implptr.c
@@ -52,12 +52,16 @@ foo (int i)
   return i + j;			/* foo breakpoint */
 }
 
+typedef int *intp;
+typedef intp *intpp;
+typedef intpp *intppp;
+
 int __attribute__ ((noinline, used, noclone)) 
 bar (int i) 
 {
-  int *j = &i;
-  int **k = &j;
-  int ***l = &k;
+  intp j = &i;
+  intpp k = &j;
+  intppp l = &k;
   i++;				/* bar breakpoint */
   return i;
 }
--- a/gdb/testsuite/gdb.dwarf2/implptr.exp
+++ b/gdb/testsuite/gdb.dwarf2/implptr.exp
@@ -20,17 +20,23 @@ load_lib dwarf.exp
 if {![dwarf2_support]} {
     return 0  
 }
-# This test can only be run on x86 targets.
-if {![is_x86_like_target]} {
-    return 0  
-}
 
 set testfile "implptr"
 set srcfile ${testfile}.S
 set csrcfile ${testfile}.c
 set binfile ${objdir}/${subdir}/${testfile}.x
+set opts {}
+
+if [info exists COMPILE] {
+    # make check RUNTESTFLAGS='gdb.dwarf2/implptr.exp COMPILE=1 CC_FOR_TARGET=gcc\ -m32'
+    set srcfile ${csrcfile}
+    lappend opts debug optimize=-O2
+} elseif {![is_x86_like_target]} {
+    # This test can only be run on x86 targets.
+    return 0  
+}
 
-if {[prepare_for_testing ${testfile}.exp ${testfile}.x $srcfile]} {
+if {[prepare_for_testing ${testfile}.exp ${testfile}.x $srcfile $opts]} {
     return -1
 }
 
@@ -45,7 +51,7 @@ proc implptr_test_bar {} {
     gdb_test "break implptr.c:$line" "Breakpoint 2.*" \
        "set bar breakpoint for implptr"
     gdb_continue_to_breakpoint "continue to bar breakpoint for implptr"
-    gdb_test "print j" " = .int .. <synthetic pointer>" "print j in implptr:bar"
+    gdb_test "print j" " = \\(intp\\) <synthetic pointer>" "print j in implptr:bar"
     gdb_test "print *j" " = 5" "print *j in implptr:bar"
     gdb_test "print **k" " = 5" "print **k in implptr:bar"
     gdb_test "print ***l" " = 5" "print ***l in implptr:bar"
@@ -58,7 +64,7 @@ proc implptr_test_foo {} {
     gdb_test "break implptr.c:$line" "Breakpoint 3.*" \
 	"set foo breakpoint for implptr"
     gdb_continue_to_breakpoint "continue to foo breakpoint for implptr"
-    gdb_test "print p\[0].x" " = .int .. <synthetic pointer>" \
+    gdb_test "print p\[0].x" " = \\(int \\*\\) <synthetic pointer>" \
 	"print p\[0].x in implptr:foo"
     gdb_test "print *p\[0].x" " = 69" \
 	"print *p\[0].x in implptr:foo"
--- a/gdb/testsuite/gdb.dwarf2/implptr.S
+++ b/gdb/testsuite/gdb.dwarf2/implptr.S
@@ -6,7 +6,7 @@
 	.type	foo, @function
 foo:
 .LFB1:
-	.file 1 "implptr.c"
+	.file 1 "gdb.dwarf2/implptr.c"
 	.loc 1 45 0
 	.cfi_startproc
 .LVL0:
@@ -50,41 +50,44 @@ foo:
 	.type	bar, @function
 bar:
 .LFB2:
-	.loc 1 57 0
+	.loc 1 61 0
 	.cfi_startproc
 .LVL7:
-	.loc 1 61 0
+	.loc 1 65 0
 	movl	4(%esp), %eax
 	addl	$1, %eax
-	.loc 1 63 0
+	.loc 1 67 0
 	ret
 	.cfi_endproc
 .LFE2:
 	.size	bar, .-bar
+	.section	.text.startup,"ax",@progbits
 	.p2align 4,,15
 	.globl	main
 	.type	main, @function
 main:
 .LFB3:
-	.loc 1 66 0
+	.loc 1 70 0
 	.cfi_startproc
 	pushl	%ebx
 	.cfi_def_cfa_offset 8
 	.cfi_offset 3, -8
 	subl	$4, %esp
 	.cfi_def_cfa_offset 12
-	.loc 1 67 0
+	.loc 1 71 0
 	movl	$5, (%esp)
 	call	bar
+.LVL8:
 	movl	$23, (%esp)
 	movl	%eax, %ebx
 	call	foo
-	.loc 1 68 0
+.LVL9:
+	.loc 1 72 0
 	addl	$4, %esp
 	.cfi_def_cfa_offset 8
-	.loc 1 67 0
+	.loc 1 71 0
 	addl	%ebx, %eax
-	.loc 1 68 0
+	.loc 1 72 0
 	popl	%ebx
 	.cfi_def_cfa_offset 4
 	.cfi_restore 3
@@ -93,268 +96,268 @@ main:
 .LFE3:
 	.size	main, .-main
 	.comm	u,24,4
+	.text
 .Letext0:
-	.section	.debug_types,"G",@progbits,wt.ade46b36db7edab6,comdat
-	.long	0x46
+	.section	.debug_info,"",@progbits
+.Ldebug_info0:
+	.long	0x217
 	.value	0x4
 	.long	.Ldebug_abbrev0
 	.byte	0x4
-	.byte	0xad
-	.byte	0xe4
-	.byte	0x6b
-	.byte	0x36
-	.byte	0xdb
-	.byte	0x7e
-	.byte	0xda
-	.byte	0xb6
-	.long	0x1d
 	.uleb128 0x1
+	.long	.LASF4
 	.byte	0x1
+	.long	.LASF5
+	.long	.LASF6
+	.long	.Ldebug_ranges0+0
+	.long	0
 	.long	.Ldebug_line0
 	.uleb128 0x2
 	.string	"S"
 	.byte	0x8
 	.byte	0x1
 	.byte	0x18
-	.long	0x3c
+	.long	0x44
 	.uleb128 0x3
 	.string	"x"
 	.byte	0x1
 	.byte	0x1a
-	.long	0x3c
+	.long	0x44
 	.byte	0
 	.uleb128 0x3
 	.string	"y"
 	.byte	0x1
 	.byte	0x1a
-	.long	0x42
+	.long	0x4a
 	.byte	0x4
 	.byte	0
 	.uleb128 0x4
 	.byte	0x4
-	.long	0x42
+	.long	0x4a
 	.uleb128 0x5
 	.byte	0x4
 	.byte	0x5
 	.string	"int"
-	.byte	0
-	.section	.debug_info,"",@progbits
-.Ldebug_info0:
-	.long	0x1b6
-	.value	0x4
-	.long	.Ldebug_abbrev0
-	.byte	0x4
+	.uleb128 0x6
+	.long	.LASF0
+	.byte	0x1
+	.byte	0x37
+	.long	0x44
 	.uleb128 0x6
 	.long	.LASF1
 	.byte	0x1
-	.long	.LASF2
-	.long	.LASF3
-	.long	.Ltext0
-	.long	.Letext0
-	.long	.Ldebug_line0
+	.byte	0x38
+	.long	0x67
 	.uleb128 0x4
 	.byte	0x4
-	.long	0x2b
-	.uleb128 0x5
+	.long	0x51
+	.uleb128 0x6
+	.long	.LASF2
+	.byte	0x1
+	.byte	0x39
+	.long	0x78
+	.uleb128 0x4
 	.byte	0x4
-	.byte	0x5
-	.string	"int"
+	.long	0x5c
 	.uleb128 0x7
 	.string	"add"
 	.byte	0x1
 	.byte	0x20
 	.byte	0x3
-	.long	0x5a
+	.long	0xa6
 	.uleb128 0x8
 	.string	"a"
 	.byte	0x1
 	.byte	0x20
-	.long	0x5a
+	.long	0xa6
 	.uleb128 0x8
 	.string	"b"
 	.byte	0x1
 	.byte	0x20
-	.long	0x5a
+	.long	0xa6
 	.uleb128 0x8
 	.string	"c"
 	.byte	0x1
 	.byte	0x20
-	.long	0x2b
+	.long	0x4a
 	.byte	0
-	.uleb128 0x9
+	.uleb128 0x4
 	.byte	0x4
-	.byte	0xad
-	.byte	0xe4
-	.byte	0x6b
-	.byte	0x36
-	.byte	0xdb
-	.byte	0x7e
-	.byte	0xda
-	.byte	0xb6
-	.uleb128 0xa
+	.long	0x25
+	.uleb128 0x9
 	.string	"foo"
 	.byte	0x1
 	.byte	0x2c
-	.long	0x2b
+	.long	0x4a
 	.long	.LFB1
 	.long	.LFE1
 	.uleb128 0x1
 	.byte	0x9c
-	.long	0xff
-	.uleb128 0xb
+	.long	0x147
+	.uleb128 0xa
 	.string	"i"
 	.byte	0x1
 	.byte	0x2c
-	.long	0x2b
+	.long	0x4a
 	.long	.LLST0
-	.uleb128 0xc
+	.uleb128 0xb
 	.string	"j"
 	.byte	0x1
 	.byte	0x2e
-	.long	0x2b
+	.long	0x4a
 	.long	.LLST1
-	.uleb128 0xc
+	.uleb128 0xb
 	.string	"p"
 	.byte	0x1
 	.byte	0x2f
-	.long	0xff
+	.long	0x147
 	.long	.LLST2
-	.uleb128 0xd
-	.long	0x32
+	.uleb128 0xc
+	.long	0x7e
 	.long	.LBB6
 	.long	.LBE6
 	.byte	0x1
 	.byte	0x30
-	.long	0xd3
-	.uleb128 0xe
-	.long	0x50
+	.long	0x11b
+	.uleb128 0xd
+	.long	0x9c
 	.byte	0
-	.uleb128 0xf
-	.long	0x47
+	.uleb128 0xe
+	.long	0x93
 	.uleb128 0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+151
+	.long	.Ldebug_info0+223
 	.sleb128 8
-	.uleb128 0x10
-	.long	0x3e
+	.uleb128 0xf
+	.long	0x8a
 	.long	.LLST3
 	.byte	0
-	.uleb128 0x11
-	.long	0x32
+	.uleb128 0x10
+	.long	0x7e
 	.long	.LBB8
 	.long	.LBE8
 	.byte	0x1
 	.byte	0x33
-	.uleb128 0xe
-	.long	0x50
+	.uleb128 0xd
+	.long	0x9c
 	.byte	0x3
-	.uleb128 0xf
-	.long	0x47
+	.uleb128 0xe
+	.long	0x93
 	.uleb128 0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+151
+	.long	.Ldebug_info0+223
 	.sleb128 8
-	.uleb128 0x10
-	.long	0x3e
+	.uleb128 0xf
+	.long	0x8a
 	.long	.LLST4
 	.byte	0
 	.byte	0
+	.uleb128 0x11
+	.long	0x25
+	.long	0x157
 	.uleb128 0x12
-	.byte	0xad
-	.byte	0xe4
-	.byte	0x6b
-	.byte	0x36
-	.byte	0xdb
-	.byte	0x7e
-	.byte	0xda
-	.byte	0xb6
-	.long	0x113
-	.uleb128 0x13
-	.long	0x113
+	.long	0x157
 	.byte	0x1
 	.byte	0
-	.uleb128 0x14
+	.uleb128 0x13
 	.byte	0x4
 	.byte	0x7
-	.long	.LASF0
-	.uleb128 0xa
+	.long	.LASF3
+	.uleb128 0x9
 	.string	"bar"
 	.byte	0x1
-	.byte	0x38
-	.long	0x2b
+	.byte	0x3c
+	.long	0x4a
 	.long	.LFB2
 	.long	.LFE2
 	.uleb128 0x1
 	.byte	0x9c
-	.long	0x170
-	.uleb128 0x15
+	.long	0x1b4
+	.uleb128 0x14
 	.string	"i"
 	.byte	0x1
-	.byte	0x38
-	.long	0x2b
+	.byte	0x3c
+	.long	0x4a
 	.uleb128 0x2
 	.byte	0x91
 	.sleb128 0
-	.uleb128 0x16
+	.uleb128 0x15
 	.string	"j"
 	.byte	0x1
-	.byte	0x3a
-	.long	0x25
+	.byte	0x3e
+	.long	0x51
 	.uleb128 0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+307
+	.long	.Ldebug_info0+375
 	.sleb128 0
-	.uleb128 0x16
+	.uleb128 0x15
 	.string	"k"
 	.byte	0x1
-	.byte	0x3b
-	.long	0x170
+	.byte	0x3f
+	.long	0x5c
 	.uleb128 0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+319
+	.long	.Ldebug_info0+387
 	.sleb128 0
-	.uleb128 0x16
+	.uleb128 0x15
 	.string	"l"
 	.byte	0x1
-	.byte	0x3c
-	.long	0x176
+	.byte	0x40
+	.long	0x6d
 	.uleb128 0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+335
+	.long	.Ldebug_info0+403
 	.sleb128 0
 	.byte	0
-	.uleb128 0x4
-	.byte	0x4
-	.long	0x25
-	.uleb128 0x4
-	.byte	0x4
-	.long	0x170
-	.uleb128 0x17
-	.long	.LASF4
+	.uleb128 0x16
+	.long	.LASF7
 	.byte	0x1
-	.byte	0x41
-	.long	0x2b
+	.byte	0x45
+	.long	0x4a
 	.long	.LFB3
 	.long	.LFE3
 	.uleb128 0x1
 	.byte	0x9c
+	.long	0x1f2
+	.uleb128 0x17
+	.long	.LVL8
+	.long	0x15e
+	.long	0x1e1
 	.uleb128 0x18
-	.long	0x2b
-	.long	0x1a1
-	.uleb128 0x13
-	.long	0x113
-	.byte	0x5
+	.uleb128 0x2
+	.byte	0x74
+	.sleb128 0
+	.uleb128 0x1
+	.byte	0x35
 	.byte	0
 	.uleb128 0x19
+	.long	.LVL9
+	.long	0xac
+	.uleb128 0x18
+	.uleb128 0x2
+	.byte	0x74
+	.sleb128 0
+	.uleb128 0x1
+	.byte	0x47
+	.byte	0
+	.byte	0
+	.uleb128 0x11
+	.long	0x4a
+	.long	0x202
+	.uleb128 0x12
+	.long	0x157
+	.byte	0x5
+	.byte	0
+	.uleb128 0x1a
 	.string	"u"
 	.byte	0x1
 	.byte	0x1d
-	.long	0x191
-	.uleb128 0x1a
+	.long	0x1f2
+	.uleb128 0x1b
 	.string	"u"
 	.byte	0x1
 	.byte	0x1d
-	.long	0x191
+	.long	0x1f2
 	.uleb128 0x5
 	.byte	0x3
 	.long	u
@@ -362,10 +365,20 @@ main:
 	.section	.debug_abbrev,"",@progbits
 .Ldebug_abbrev0:
 	.uleb128 0x1
-	.uleb128 0x41
+	.uleb128 0x11
 	.byte	0x1
+	.uleb128 0x25
+	.uleb128 0xe
 	.uleb128 0x13
 	.uleb128 0xb
+	.uleb128 0x3
+	.uleb128 0xe
+	.uleb128 0x1b
+	.uleb128 0xe
+	.uleb128 0x55
+	.uleb128 0x17
+	.uleb128 0x11
+	.uleb128 0x1
 	.uleb128 0x10
 	.uleb128 0x17
 	.byte	0
@@ -421,22 +434,16 @@ main:
 	.byte	0
 	.byte	0
 	.uleb128 0x6
-	.uleb128 0x11
-	.byte	0x1
-	.uleb128 0x25
-	.uleb128 0xe
-	.uleb128 0x13
-	.uleb128 0xb
+	.uleb128 0x16
+	.byte	0
 	.uleb128 0x3
 	.uleb128 0xe
-	.uleb128 0x1b
-	.uleb128 0xe
-	.uleb128 0x11
-	.uleb128 0x1
-	.uleb128 0x12
-	.uleb128 0x1
-	.uleb128 0x10
-	.uleb128 0x17
+	.uleb128 0x3a
+	.uleb128 0xb
+	.uleb128 0x3b
+	.uleb128 0xb
+	.uleb128 0x49
+	.uleb128 0x13
 	.byte	0
 	.byte	0
 	.uleb128 0x7
@@ -470,15 +477,6 @@ main:
 	.byte	0
 	.byte	0
 	.uleb128 0x9
-	.uleb128 0xf
-	.byte	0
-	.uleb128 0xb
-	.uleb128 0xb
-	.uleb128 0x49
-	.uleb128 0x20
-	.byte	0
-	.byte	0
-	.uleb128 0xa
 	.uleb128 0x2e
 	.byte	0x1
 	.uleb128 0x3f
@@ -499,11 +497,13 @@ main:
 	.uleb128 0x1
 	.uleb128 0x40
 	.uleb128 0x18
+	.uleb128 0x2117
+	.uleb128 0x19
 	.uleb128 0x1
 	.uleb128 0x13
 	.byte	0
 	.byte	0
-	.uleb128 0xb
+	.uleb128 0xa
 	.uleb128 0x5
 	.byte	0
 	.uleb128 0x3
@@ -518,7 +518,7 @@ main:
 	.uleb128 0x17
 	.byte	0
 	.byte	0
-	.uleb128 0xc
+	.uleb128 0xb
 	.uleb128 0x34
 	.byte	0
 	.uleb128 0x3
@@ -533,7 +533,7 @@ main:
 	.uleb128 0x17
 	.byte	0
 	.byte	0
-	.uleb128 0xd
+	.uleb128 0xc
 	.uleb128 0x1d
 	.byte	0x1
 	.uleb128 0x31
@@ -550,7 +550,7 @@ main:
 	.uleb128 0x13
 	.byte	0
 	.byte	0
-	.uleb128 0xe
+	.uleb128 0xd
 	.uleb128 0x5
 	.byte	0
 	.uleb128 0x31
@@ -559,7 +559,7 @@ main:
 	.uleb128 0xb
 	.byte	0
 	.byte	0
-	.uleb128 0xf
+	.uleb128 0xe
 	.uleb128 0x5
 	.byte	0
 	.uleb128 0x31
@@ -568,7 +568,7 @@ main:
 	.uleb128 0x18
 	.byte	0
 	.byte	0
-	.uleb128 0x10
+	.uleb128 0xf
 	.uleb128 0x5
 	.byte	0
 	.uleb128 0x31
@@ -577,7 +577,7 @@ main:
 	.uleb128 0x17
 	.byte	0
 	.byte	0
-	.uleb128 0x11
+	.uleb128 0x10
 	.uleb128 0x1d
 	.byte	0x1
 	.uleb128 0x31
@@ -592,16 +592,16 @@ main:
 	.uleb128 0xb
 	.byte	0
 	.byte	0
-	.uleb128 0x12
+	.uleb128 0x11
 	.uleb128 0x1
 	.byte	0x1
 	.uleb128 0x49
-	.uleb128 0x20
+	.uleb128 0x13
 	.uleb128 0x1
 	.uleb128 0x13
 	.byte	0
 	.byte	0
-	.uleb128 0x13
+	.uleb128 0x12
 	.uleb128 0x21
 	.byte	0
 	.uleb128 0x49
@@ -610,7 +610,7 @@ main:
 	.uleb128 0xb
 	.byte	0
 	.byte	0
-	.uleb128 0x14
+	.uleb128 0x13
 	.uleb128 0x24
 	.byte	0
 	.uleb128 0xb
@@ -621,7 +621,7 @@ main:
 	.uleb128 0xe
 	.byte	0
 	.byte	0
-	.uleb128 0x15
+	.uleb128 0x14
 	.uleb128 0x5
 	.byte	0
 	.uleb128 0x3
@@ -636,7 +636,7 @@ main:
 	.uleb128 0x18
 	.byte	0
 	.byte	0
-	.uleb128 0x16
+	.uleb128 0x15
 	.uleb128 0x34
 	.byte	0
 	.uleb128 0x3
@@ -651,9 +651,9 @@ main:
 	.uleb128 0x18
 	.byte	0
 	.byte	0
-	.uleb128 0x17
+	.uleb128 0x16
 	.uleb128 0x2e
-	.byte	0
+	.byte	0x1
 	.uleb128 0x3f
 	.uleb128 0x19
 	.uleb128 0x3
@@ -670,18 +670,42 @@ main:
 	.uleb128 0x1
 	.uleb128 0x40
 	.uleb128 0x18
+	.uleb128 0x2117
+	.uleb128 0x19
+	.uleb128 0x1
+	.uleb128 0x13
 	.byte	0
 	.byte	0
-	.uleb128 0x18
-	.uleb128 0x1
+	.uleb128 0x17
+	.uleb128 0x4109
 	.byte	0x1
-	.uleb128 0x49
+	.uleb128 0x11
+	.uleb128 0x1
+	.uleb128 0x31
 	.uleb128 0x13
 	.uleb128 0x1
 	.uleb128 0x13
 	.byte	0
 	.byte	0
+	.uleb128 0x18
+	.uleb128 0x410a
+	.byte	0
+	.uleb128 0x2
+	.uleb128 0x18
+	.uleb128 0x2111
+	.uleb128 0x18
+	.byte	0
+	.byte	0
 	.uleb128 0x19
+	.uleb128 0x4109
+	.byte	0x1
+	.uleb128 0x11
+	.uleb128 0x1
+	.uleb128 0x31
+	.uleb128 0x13
+	.byte	0
+	.byte	0
+	.uleb128 0x1a
 	.uleb128 0x34
 	.byte	0
 	.uleb128 0x3
@@ -698,7 +722,7 @@ main:
 	.uleb128 0x19
 	.byte	0
 	.byte	0
-	.uleb128 0x1a
+	.uleb128 0x1b
 	.uleb128 0x34
 	.byte	0
 	.uleb128 0x3
@@ -719,13 +743,13 @@ main:
 	.section	.debug_loc,"",@progbits
 .Ldebug_loc0:
 .LLST0:
-	.long	.LVL0-.Ltext0
-	.long	.LVL1-.Ltext0
+	.long	.LVL0
+	.long	.LVL1
 	.value	0x2
 	.byte	0x91
 	.sleb128 0
-	.long	.LVL1-.Ltext0
-	.long	.LFE1-.Ltext0
+	.long	.LVL1
+	.long	.LFE1
 	.value	0x6
 	.byte	0x91
 	.sleb128 0
@@ -736,13 +760,13 @@ main:
 	.long	0
 	.long	0
 .LLST1:
-	.long	.LVL1-.Ltext0
-	.long	.LVL4-.Ltext0
+	.long	.LVL1
+	.long	.LVL4
 	.value	0x2
 	.byte	0x91
 	.sleb128 0
-	.long	.LVL4-.Ltext0
-	.long	.LFE1-.Ltext0
+	.long	.LVL4
+	.long	.LFE1
 	.value	0x6
 	.byte	0x91
 	.sleb128 0
@@ -753,11 +777,11 @@ main:
 	.long	0
 	.long	0
 .LLST2:
-	.long	.LVL1-.Ltext0
-	.long	.LVL4-.Ltext0
+	.long	.LVL1
+	.long	.LVL4
 	.value	0x20
 	.byte	0xf2
-	.long	.Ldebug_info0+125
+	.long	.Ldebug_info0+197
 	.sleb128 0
 	.byte	0x93
 	.uleb128 0x4
@@ -770,7 +794,7 @@ main:
 	.byte	0x93
 	.uleb128 0x4
 	.byte	0xf2
-	.long	.Ldebug_info0+138
+	.long	.Ldebug_info0+210
 	.sleb128 0
 	.byte	0x93
 	.uleb128 0x4
@@ -782,11 +806,11 @@ main:
 	.byte	0x9f
 	.byte	0x93
 	.uleb128 0x4
-	.long	.LVL4-.Ltext0
-	.long	.LFE1-.Ltext0
+	.long	.LVL4
+	.long	.LFE1
 	.value	0x20
 	.byte	0xf2
-	.long	.Ldebug_info0+138
+	.long	.Ldebug_info0+210
 	.sleb128 0
 	.byte	0x93
 	.uleb128 0x4
@@ -799,7 +823,7 @@ main:
 	.byte	0x93
 	.uleb128 0x4
 	.byte	0xf2
-	.long	.Ldebug_info0+125
+	.long	.Ldebug_info0+197
 	.sleb128 0
 	.byte	0x93
 	.uleb128 0x4
@@ -814,47 +838,47 @@ main:
 	.long	0
 	.long	0
 .LLST3:
-	.long	.LVL1-.Ltext0
-	.long	.LVL2-.Ltext0
+	.long	.LVL1
+	.long	.LVL2
 	.value	0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+151
+	.long	.Ldebug_info0+223
 	.sleb128 0
-	.long	.LVL2-.Ltext0
-	.long	.LVL3-.Ltext0
+	.long	.LVL2
+	.long	.LVL3
 	.value	0x2
 	.byte	0x30
 	.byte	0x9f
-	.long	.LVL3-.Ltext0
-	.long	.LFE1-.Ltext0
+	.long	.LVL3
+	.long	.LFE1
 	.value	0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+151
+	.long	.Ldebug_info0+223
 	.sleb128 8
 	.long	0
 	.long	0
 .LLST4:
-	.long	.LVL4-.Ltext0
-	.long	.LVL5-.Ltext0
+	.long	.LVL4
+	.long	.LVL5
 	.value	0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+151
+	.long	.Ldebug_info0+223
 	.sleb128 0
-	.long	.LVL5-.Ltext0
-	.long	.LVL6-.Ltext0
+	.long	.LVL5
+	.long	.LVL6
 	.value	0x2
 	.byte	0x30
 	.byte	0x9f
-	.long	.LVL6-.Ltext0
-	.long	.LFE1-.Ltext0
+	.long	.LVL6
+	.long	.LFE1
 	.value	0x6
 	.byte	0xf2
-	.long	.Ldebug_info0+151
+	.long	.Ldebug_info0+223
 	.sleb128 8
 	.long	0
 	.long	0
 	.section	.debug_aranges,"",@progbits
-	.long	0x1c
+	.long	0x24
 	.value	0x2
 	.long	.Ldebug_info0
 	.byte	0x4
@@ -863,20 +887,36 @@ main:
 	.value	0
 	.long	.Ltext0
 	.long	.Letext0-.Ltext0
+	.long	.LFB3
+	.long	.LFE3-.LFB3
+	.long	0
+	.long	0
+	.section	.debug_ranges,"",@progbits
+.Ldebug_ranges0:
+	.long	.Ltext0
+	.long	.Letext0
+	.long	.LFB3
+	.long	.LFE3
 	.long	0
 	.long	0
 	.section	.debug_line,"",@progbits
 .Ldebug_line0:
 	.section	.debug_str,"MS",@progbits,1
-.LASF0:
-	.string	"unsigned int"
+.LASF5:
+	.string	"gdb.dwarf2/implptr.c"
+.LASF6:
+	.string	""
 .LASF3:
-	.string	"/home/tromey/gnu/archer/archer/gdb/testsuite/gdb.dwarf2"
-.LASF4:
+	.string	"unsigned int"
+.LASF7:
 	.string	"main"
 .LASF2:
-	.string	"implptr.c"
+	.string	"intppp"
+.LASF4:
+	.string	"GNU C 4.6.1 20110627 (Red Hat 4.6.1-1)"
+.LASF0:
+	.string	"intp"
 .LASF1:
-	.string	"GNU C 4.6.0 20101116 (experimental) [trunk revision 166803]"
-	.ident	"GCC: (GNU) 4.6.0 20101116 (experimental) [trunk revision 166803]"
+	.string	"intpp"
+	.ident	"GCC: (GNU) 4.6.1 20110627 (Red Hat 4.6.1-1)"
 	.section	.note.GNU-stack,"",@progbits


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