diff options
author | Jakub Jelinek <jakub@redhat.com> | 2007-12-10 14:05:15 +0100 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2007-12-10 14:05:15 +0100 |
commit | 502630f495cd78b97fd3788e049640210bce8ddb (patch) | |
tree | 05dc3b1795274ccf3c3f26f0c70fa79e6500232a /gcc | |
parent | 7dc4605144fe5d8dbf6ad7d2610b6300287bd86a (diff) | |
download | gcc-502630f495cd78b97fd3788e049640210bce8ddb.zip gcc-502630f495cd78b97fd3788e049640210bce8ddb.tar.gz gcc-502630f495cd78b97fd3788e049640210bce8ddb.tar.bz2 |
dwarf2out.c (gen_array_type_die, [...]): For Fortran multi-dimensional arrays use DW_AT_ordering DW_ORD_col_major.
* dwarf2out.c (gen_array_type_die, gen_descr_array_type_die): For
Fortran multi-dimensional arrays use DW_AT_ordering
DW_ORD_col_major.
From-SVN: r130742
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 6 | ||||
-rw-r--r-- | gcc/dwarf2out.c | 11 |
2 files changed, 17 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 9d6a077..d9dbd49 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2007-12-10 Jakub Jelinek <jakub@redhat.com> + + * dwarf2out.c (gen_array_type_die, gen_descr_array_type_die): For + Fortran multi-dimensional arrays use DW_AT_ordering + DW_ORD_col_major. + 2007-12-10 Paolo Bonzini <bonzini@gnu.org> PR target/32086 diff --git a/gcc/dwarf2out.c b/gcc/dwarf2out.c index d818f0d..785d0fa 100644 --- a/gcc/dwarf2out.c +++ b/gcc/dwarf2out.c @@ -11636,6 +11636,12 @@ gen_array_type_die (tree type, dw_die_ref context_die) add_AT_flag (array_die, DW_AT_GNU_vector, 1); } + /* For Fortran multidimensional arrays use DW_ORD_col_major ordering. */ + if (is_fortran () + && TREE_CODE (type) == ARRAY_TYPE + && TREE_CODE (TREE_TYPE (type)) == ARRAY_TYPE) + add_AT_unsigned (array_die, DW_AT_ordering, DW_ORD_col_major); + #if 0 /* We default the array ordering. SDB will probably do the right things even if DW_AT_ordering is not present. It's not even @@ -11787,6 +11793,11 @@ gen_descr_array_type_die (tree type, struct array_descr_info *info, add_name_attribute (array_die, type_tag (type)); equate_type_number_to_die (type, array_die); + /* For Fortran multidimensional arrays use DW_ORD_col_major ordering. */ + if (is_fortran () + && info->ndimensions >= 2) + add_AT_unsigned (array_die, DW_AT_ordering, DW_ORD_col_major); + if (info->data_location) add_descr_info_field (array_die, DW_AT_data_location, info->data_location, info->base_decl); |