diff options
author | dpatel <dpatel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-25 20:26:00 +0000 |
---|---|---|
committer | dpatel <dpatel@138bc75d-0d04-0410-961f-82ee72b054a4> | 2005-04-25 20:26:00 +0000 |
commit | ae15b0afd8830f1c37bacfaa256bf6ab9f63a9bc (patch) | |
tree | 13f5787cb2580f9ba8ab759bf090d2d7e368fb21 | |
parent | 8f3ab23a5e5969f212365e007002c3f3e7605df9 (diff) | |
download | gcc-ae15b0afd8830f1c37bacfaa256bf6ab9f63a9bc.tar.gz |
* dbxout.c (dbxout_type): Emit attribute vector.
* gcc.dg/stabs-attrib-vect-darwin.c: New test.
git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@98737 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/dbxout.c | 16 | ||||
-rw-r--r-- | gcc/testsuite/ChangeLog | 4 | ||||
-rw-r--r-- | gcc/testsuite/gcc.dg/stabs-attrib-vect-darwin.c | 11 |
4 files changed, 32 insertions, 3 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index fea482b414c..2824494573d 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,7 @@ +2005-04-25 Devang Patel <dpatel@apple.com> + + * dbxout.c (dbxout_type): Emit attribute vector. + 2005-04-05 Paul Brook <julian@codesourcery.com> * target-def.h (TARGET_CXX_USE_AEABI_ATEXIT): Define. diff --git a/gcc/dbxout.c b/gcc/dbxout.c index 4cbe16b603f..6ad3b629d10 100644 --- a/gcc/dbxout.c +++ b/gcc/dbxout.c @@ -1652,11 +1652,15 @@ dbxout_type (tree type, int full) tree tem; tree main_variant; static int anonymous_type_number = 0; + bool vector_type = false; if (TREE_CODE (type) == VECTOR_TYPE) - /* The frontend feeds us a representation for the vector as a struct - containing an array. Pull out the array type. */ - type = TREE_TYPE (TYPE_FIELDS (TYPE_DEBUG_REPRESENTATION_TYPE (type))); + { + /* The frontend feeds us a representation for the vector as a struct + containing an array. Pull out the array type. */ + type = TREE_TYPE (TYPE_FIELDS (TYPE_DEBUG_REPRESENTATION_TYPE (type))); + vector_type = true; + } /* If there was an input error and we don't really have a type, avoid crashing and write something that is at least valid @@ -1991,6 +1995,12 @@ dbxout_type (tree type, int full) break; } + if (vector_type) + { + have_used_extensions = 1; + stabstr_S ("@V;"); + } + /* Output "a" followed by a range type definition for the index type of the array followed by a reference to the target-type. diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index 168fcdf50ca..ddd7310e96a 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,7 @@ +2005-04-25 Devang Patel <dpatel@apple.com> + + * gcc.dg/stabs-attrib-vect-darwin.c: New test. + 2005-04-25 Andrew Pinski <pinskia@physics.uc.edu> PR testsuite/21062 diff --git a/gcc/testsuite/gcc.dg/stabs-attrib-vect-darwin.c b/gcc/testsuite/gcc.dg/stabs-attrib-vect-darwin.c new file mode 100644 index 00000000000..d380f8e8d00 --- /dev/null +++ b/gcc/testsuite/gcc.dg/stabs-attrib-vect-darwin.c @@ -0,0 +1,11 @@ +/* Test Attribute Vector associated with vector type stabs. */ +/* { dg-do compile { target powerpc*-*-darwin* } } */ +/* { dg-options "-gstabs -fno-eliminate-unused-debug-types -faltivec" } */ + +int main () +{ + vector int vi = { 6,7,8,9 }; + return 0; +} + +/* { dg-final { scan-assembler ".stabs.*vi\:\\(0,16\\)=\@V" } } */ |