diff options
Diffstat (limited to 'gcc')
-rw-r--r-- | gcc/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/gcov-io.h | 21 |
2 files changed, 26 insertions, 0 deletions
diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 0d65cdc..ffb97d3 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +Fri Oct 10 18:54:39 CEST 2003 Herman A.J. ten Brugge <hermantenbrugge@home.nl> + + * gcov-io.h: Check BITS_PER_UNIT when defining gcov_unsigned_t, + gcov_position_t and gcov_type. + 2003-10-09 Kaz Kojima <kkojima@gcc.gnu.org> * configure.in (HAVE_AS_TLS): Add sh-*-* and sh[34]*-*-* cases. diff --git a/gcc/gcov-io.h b/gcc/gcov-io.h index e1506ba..0254632 100644 --- a/gcc/gcov-io.h +++ b/gcc/gcov-io.h @@ -167,6 +167,7 @@ Software Foundation, 59 Temple Place - Suite 330, Boston, MA #if IN_LIBGCOV /* About the target */ +#if BITS_PER_UNIT == 8 typedef unsigned gcov_unsigned_t __attribute__ ((mode (SI))); typedef unsigned gcov_position_t __attribute__ ((mode (SI))); #if LONG_LONG_TYPE_SIZE > 32 @@ -174,6 +175,26 @@ typedef signed gcov_type __attribute__ ((mode (DI))); #else typedef signed gcov_type __attribute__ ((mode (SI))); #endif +#else +#if BITS_PER_UNIT == 16 +typedef unsigned gcov_unsigned_t __attribute__ ((mode (HI))); +typedef unsigned gcov_position_t __attribute__ ((mode (HI))); +#if LONG_LONG_TYPE_SIZE > 32 +typedef signed gcov_type __attribute__ ((mode (SI))); +#else +typedef signed gcov_type __attribute__ ((mode (HI))); +#endif +#else +typedef unsigned gcov_unsigned_t __attribute__ ((mode (QI))); +typedef unsigned gcov_position_t __attribute__ ((mode (QI))); +#if LONG_LONG_TYPE_SIZE > 32 +typedef signed gcov_type __attribute__ ((mode (HI))); +#else +typedef signed gcov_type __attribute__ ((mode (QI))); +#endif +#endif +#endif + #if defined (TARGET_HAS_F_SETLKW) #define GCOV_LOCKED 1 |