diff options
author | Jan Kratochvil <jan.kratochvil@redhat.com> | 2011-07-27 21:18:40 +0000 |
---|---|---|
committer | Jan Kratochvil <jan.kratochvil@redhat.com> | 2011-07-27 21:18:40 +0000 |
commit | d24f74ce456f68cf5a68b519dd08b96b971d88d6 (patch) | |
tree | ecfd6d6fdaa03ab3f2115235d22188e2fcca6210 | |
parent | 3396237fb5098bbd82b8e91fa67140af285840c0 (diff) | |
download | gdb-d24f74ce456f68cf5a68b519dd08b96b971d88d6.zip gdb-d24f74ce456f68cf5a68b519dd08b96b971d88d6.tar.gz gdb-d24f74ce456f68cf5a68b519dd08b96b971d88d6.tar.bz2 |
gdb/testsuite/
* gdb.dwarf2/dw2-simple-locdesc.S: Change DWARF version to 3.
(.Ldie26, .Ldie41, .Ldie4a, .Ldie54, .Ldie5b): Remove.
(.Ldie30) Add as field "data4".
(.Ldie32) Rename field "b" to "shl".
(abbrev4) Change for the "data4" field.
(abbrev5, abbrev6) Remove.
* gdb.dwarf2/dw2-simple-locdesc.exp (p &s.b): Rename to ...
(p &s.shl): ... here. Add comment.
(p &s.data4): New.
-rw-r--r-- | gdb/testsuite/ChangeLog | 12 | ||||
-rw-r--r-- | gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.S | 62 | ||||
-rw-r--r-- | gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.exp | 8 |
3 files changed, 34 insertions, 48 deletions
diff --git a/gdb/testsuite/ChangeLog b/gdb/testsuite/ChangeLog index 3060f8e..905e2fc 100644 --- a/gdb/testsuite/ChangeLog +++ b/gdb/testsuite/ChangeLog @@ -1,5 +1,17 @@ 2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com> + * gdb.dwarf2/dw2-simple-locdesc.S: Change DWARF version to 3. + (.Ldie26, .Ldie41, .Ldie4a, .Ldie54, .Ldie5b): Remove. + (.Ldie30) Add as field "data4". + (.Ldie32) Rename field "b" to "shl". + (abbrev4) Change for the "data4" field. + (abbrev5, abbrev6) Remove. + * gdb.dwarf2/dw2-simple-locdesc.exp (p &s.b): Rename to ... + (p &s.shl): ... here. Add comment. + (p &s.data4): New. + +2011-07-27 Jan Kratochvil <jan.kratochvil@redhat.com> + Fix crash on lval_computed values. * gdb.dwarf2/implptr.exp (print sizeof (j[0])): New test. diff --git a/gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.S b/gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.S index 029a9c5..3f7df5f 100644 --- a/gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.S +++ b/gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.S @@ -27,7 +27,7 @@ var: d: .4byte .Lcu_end - 1f /* Length of Compilation Unit Info */ 1: - .value 0x2 /* DWARF version number */ + .value 0x3 /* DWARF version number */ .4byte .Ldebug_abbrev0 /* Offset Into Abbrev. Section */ .byte 0x4 /* Pointer Size (in bytes) */ .uleb128 0x1 /* (DIE (0xb) DW_TAG_compile_unit) */ @@ -39,18 +39,16 @@ d: .4byte 0x1000004 /* DW_AT_byte_size */ .byte 0x1 /* DW_AT_decl_file (<stdin>) */ .byte 0x1 /* DW_AT_decl_line */ -.Ldie26: - .uleb128 0x3 /* (DIE (0x26) DW_TAG_member) */ - .ascii "a\0" /* DW_AT_name */ +.Ldie30: + .uleb128 0x4 /* (DIE (0x30) DW_TAG_member) */ + .ascii "data4\0" /* DW_AT_name */ .byte 0x1 /* DW_AT_decl_file (<stdin>) */ .byte 0x1 /* DW_AT_decl_line */ - .4byte .Ldie41 - d /* DW_AT_type */ - .byte 0x2 /* DW_AT_data_member_location */ - .byte 0x23 /* DW_OP_plus_uconst */ - .uleb128 0 + .4byte .Ldie62 - d /* DW_AT_type */ + .4byte 0x10000 /* DW_AT_data_member_location */ .Ldie32: .uleb128 0x3 /* (DIE (0x32) DW_TAG_member) */ - .ascii "b\0" /* DW_AT_name */ + .ascii "shl\0" /* DW_AT_name */ .byte 0x1 /* DW_AT_decl_file (<stdin>) */ .byte 0x1 /* DW_AT_decl_line */ .4byte .Ldie62 - d /* DW_AT_type */ @@ -60,24 +58,6 @@ d: .byte 0x24 /* DW_OP_shl */ .byte 0x22 /* DW_OP_plus */ .byte 0 /* end of children of DIE 0x19 */ -.Ldie41: - .uleb128 0x4 /* (DIE (0x41) DW_TAG_array_type) */ - .4byte .Ldie5b - d /* DW_AT_type */ -.Ldie4a: - .uleb128 0x5 /* (DIE (0x4a) DW_TAG_subrange_type) */ - .4byte .Ldie54 - d /* DW_AT_type */ - .4byte 0xffffff /* DW_AT_upper_bound */ - .byte 0 /* end of children of DIE 0x41 */ -.Ldie54: - .uleb128 0x6 /* (DIE (0x54) DW_TAG_base_type) */ - .byte 0x8 /* DW_AT_byte_size */ - .byte 0x7 /* DW_AT_encoding */ - .4byte .LASF0 /* DW_AT_name: "sizetype" */ -.Ldie5b: - .uleb128 0x6 /* (DIE (0x5b) DW_TAG_base_type) */ - .byte 0x1 /* DW_AT_byte_size */ - .byte 0x6 /* DW_AT_encoding */ - .4byte .LASF1 /* DW_AT_name: "char" */ .Ldie62: .uleb128 0x7 /* (DIE (0x62) DW_TAG_base_type) */ .byte 0x4 /* DW_AT_byte_size */ @@ -137,32 +117,20 @@ d: .byte 0 .byte 0 .uleb128 0x4 /* (abbrev code) */ - .uleb128 0x1 /* (TAG: DW_TAG_array_type) */ - .byte 0x1 /* DW_children_yes */ - .uleb128 0x49 /* (DW_AT_type) */ - .uleb128 0x13 /* (DW_FORM_ref4) */ - .byte 0 - .byte 0 - .uleb128 0x5 /* (abbrev code) */ - .uleb128 0x21 /* (TAG: DW_TAG_subrange_type) */ + .uleb128 0xd /* (TAG: DW_TAG_member) */ .byte 0 /* DW_children_no */ + .uleb128 0x3 /* (DW_AT_name) */ + .uleb128 0x8 /* (DW_FORM_string) */ + .uleb128 0x3a /* (DW_AT_decl_file) */ + .uleb128 0xb /* (DW_FORM_data1) */ + .uleb128 0x3b /* (DW_AT_decl_line) */ + .uleb128 0xb /* (DW_FORM_data1) */ .uleb128 0x49 /* (DW_AT_type) */ .uleb128 0x13 /* (DW_FORM_ref4) */ - .uleb128 0x2f /* (DW_AT_upper_bound) */ + .uleb128 0x38 /* (DW_AT_data_member_location) */ .uleb128 0x6 /* (DW_FORM_data4) */ .byte 0 .byte 0 - .uleb128 0x6 /* (abbrev code) */ - .uleb128 0x24 /* (TAG: DW_TAG_base_type) */ - .byte 0 /* DW_children_no */ - .uleb128 0xb /* (DW_AT_byte_size) */ - .uleb128 0xb /* (DW_FORM_data1) */ - .uleb128 0x3e /* (DW_AT_encoding) */ - .uleb128 0xb /* (DW_FORM_data1) */ - .uleb128 0x3 /* (DW_AT_name) */ - .uleb128 0xe /* (DW_FORM_strp) */ - .byte 0 - .byte 0 .uleb128 0x7 /* (abbrev code) */ .uleb128 0x24 /* (TAG: DW_TAG_base_type) */ .byte 0 /* DW_children_no */ diff --git a/gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.exp b/gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.exp index 9fbca1b..8d39f88 100644 --- a/gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.exp +++ b/gdb/testsuite/gdb.dwarf2/dw2-simple-locdesc.exp @@ -30,4 +30,10 @@ if { [gdb_compile "${srcdir}/${subdir}/${srcfile}" "${binfile}" object {}] != "" clean_restart $executable -gdb_test "p &s.b" { = \(int \*\) 0x1000000} +# Re: [patch 2/2] Fix decode_locdesc for gcc-4.7.x optimized DWARF +# http://sourceware.org/ml/gdb-patches/2011-07/msg00766.html +gdb_test "p &s.shl" { = \(int \*\) 0x1000000} + +# Re: RFC: fix DW_AT_data_member_location buglet +# http://sourceware.org/ml/gdb-patches/2011-05/msg00291.html +gdb_test "p &s.data4" { = \(int \*\) 0x10000} |