From 25bcd7ea327b499be10398fc747dcc9856855e90 Mon Sep 17 00:00:00 2001 From: Rainer Orth Date: Fri, 20 Nov 2009 16:55:19 +0000 Subject: [PATCH] config.gcc (alpha*-dec-osf[45]*): Set use_gcc_stdint. gcc: * config.gcc (alpha*-dec-osf[45]*): Set use_gcc_stdint. * config/alpha/osf.h (SIG_ATOMIC_TYPE): Define. (INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE): Define. (UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define. (INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, (INT_LEAST64_TYPE): Define. (UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, UINT_LEAST64_TYPE): Define. (INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, INT_FAST64_TYPE): Define. (UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, UINT_FAST64_TYPE): Define. (INTPTR_TYPE, UINTPTR_TYPE): Define. gcc/testsuite: * gcc.dg/c99-stdint-6.c: Set dg-options for alpha*-dec-osf5*. Wrap *int_least*_t tests in !NO_LEAST_TYPES. Wrap *intmax_t tests in !NO_MAX_TYPES. From-SVN: r154373 --- gcc/ChangeLog | 16 ++++++++++++++ gcc/config.gcc | 1 + gcc/config/alpha/osf.h | 34 ++++++++++++++++++++++++++++- gcc/testsuite/ChangeLog | 6 +++++ gcc/testsuite/gcc.dg/c99-stdint-6.c | 5 +++++ 5 files changed, 61 insertions(+), 1 deletion(-) diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 4a7f32e4708..61c529102a9 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,19 @@ +2009-11-20 Rainer Orth + + * config.gcc (alpha*-dec-osf[45]*): Set use_gcc_stdint. + * config/alpha/osf.h (SIG_ATOMIC_TYPE): Define. + (INT8_TYPE, INT16_TYPE, INT32_TYPE, INT64_TYPE): Define. + (UINT8_TYPE, UINT16_TYPE, UINT32_TYPE, UINT64_TYPE): Define. + (INT_LEAST8_TYPE, INT_LEAST16_TYPE, INT_LEAST32_TYPE, + (INT_LEAST64_TYPE): Define. + (UINT_LEAST8_TYPE, UINT_LEAST16_TYPE, UINT_LEAST32_TYPE, + UINT_LEAST64_TYPE): Define. + (INT_FAST8_TYPE, INT_FAST16_TYPE, INT_FAST32_TYPE, + INT_FAST64_TYPE): Define. + (UINT_FAST8_TYPE, UINT_FAST16_TYPE, UINT_FAST32_TYPE, + UINT_FAST64_TYPE): Define. + (INTPTR_TYPE, UINTPTR_TYPE): Define. + 2009-11-20 Julian Brown * config/arm/arm.h (ASM_OUTPUT_REG_PUSH): Handle STATIC_CHAIN_REGNUM diff --git a/gcc/config.gcc b/gcc/config.gcc index 297b8943fd6..90aa7a7cbfb 100644 --- a/gcc/config.gcc +++ b/gcc/config.gcc @@ -651,6 +651,7 @@ alpha*-dec-osf[45]*) tmake_file="alpha/t-alpha alpha/t-ieee alpha/t-crtfm alpha/t-osf4" tm_file="${tm_file} alpha/osf.h" extra_headers=va_list.h + use_gcc_stdint=provide case ${target} in *-*-osf4*) # Define TARGET_SUPPORT_ARCH except on 4.0a. diff --git a/gcc/config/alpha/osf.h b/gcc/config/alpha/osf.h index 81c12aa14fc..a384cc870f3 100644 --- a/gcc/config/alpha/osf.h +++ b/gcc/config/alpha/osf.h @@ -1,6 +1,6 @@ /* Definitions of target machine for GNU compiler, for DEC Alpha on OSF/1. Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 2001, 2002, 2003, - 2004, 2007 Free Software Foundation, Inc. + 2004, 2007, 2009 Free Software Foundation, Inc. Contributed by Richard Kenner (kenner@vlsi1.ultra.nyu.edu) This file is part of GCC. @@ -162,6 +162,38 @@ __enable_execute_stack (void *addr) \ #define SIZE_TYPE "long unsigned int" #define PTRDIFF_TYPE "long int" +#define SIG_ATOMIC_TYPE "int" + +#define INT8_TYPE "signed char" +#define INT16_TYPE "short int" +#define INT32_TYPE "int" +#define INT64_TYPE "long int" +#define UINT8_TYPE "unsigned char" +#define UINT16_TYPE "short unsigned int" +#define UINT32_TYPE "unsigned int" +#define UINT64_TYPE "long unsigned int" + +#define INT_LEAST8_TYPE "signed char" +#define INT_LEAST16_TYPE "short int" +#define INT_LEAST32_TYPE "int" +#define INT_LEAST64_TYPE "long int" +#define UINT_LEAST8_TYPE "unsigned char" +#define UINT_LEAST16_TYPE "short unsigned int" +#define UINT_LEAST32_TYPE "unsigned int" +#define UINT_LEAST64_TYPE "long unsigned int" + +#define INT_FAST8_TYPE "signed char" +#define INT_FAST16_TYPE "int" +#define INT_FAST32_TYPE "int" +#define INT_FAST64_TYPE "long int" +#define UINT_FAST8_TYPE "unsigned char" +#define UINT_FAST16_TYPE "unsigned int" +#define UINT_FAST32_TYPE "unsigned int" +#define UINT_FAST64_TYPE "long unsigned int" + +#define INTPTR_TYPE "long int" +#define UINTPTR_TYPE "long unsigned int" + /* The linker will stick __main into the .init section. */ #define HAS_INIT_SECTION #define LD_INIT_SWITCH "-init" diff --git a/gcc/testsuite/ChangeLog b/gcc/testsuite/ChangeLog index de7ab00fd2b..ecedddc6f9d 100644 --- a/gcc/testsuite/ChangeLog +++ b/gcc/testsuite/ChangeLog @@ -1,3 +1,9 @@ +2009-11-20 Rainer Orth + + * gcc.dg/c99-stdint-6.c: Set dg-options for alpha*-dec-osf5*. + Wrap *int_least*_t tests in !NO_LEAST_TYPES. + Wrap *intmax_t tests in !NO_MAX_TYPES. + 2009-11-20 Paolo Carlini PR c++/42060 diff --git a/gcc/testsuite/gcc.dg/c99-stdint-6.c b/gcc/testsuite/gcc.dg/c99-stdint-6.c index 5007f54163b..cac0cdf08e4 100644 --- a/gcc/testsuite/gcc.dg/c99-stdint-6.c +++ b/gcc/testsuite/gcc.dg/c99-stdint-6.c @@ -3,6 +3,7 @@ /* { dg-do compile { target inttypes_types } } */ /* { dg-options "-std=iso9899:1999 -pedantic-errors" } */ /* { dg-options "-std=gnu99 -pedantic-errors -DNO_FAST_TYPES" { target *-*-solaris2.[789]* } } */ +/* { dg-options "-std=gnu99 -pedantic-errors -DNO_LEAST_TYPES -DNO_FAST_TYPES -DNO_MAX_TYPES" { target alpha*-dec-osf5* } } */ #include #include @@ -37,6 +38,7 @@ check_types (void) #ifdef __UINT64_TYPE__ CHECK_TYPES(__UINT64_TYPE__, uint64_t); #endif +#ifndef NO_LEAST_TYPES CHECK_TYPES(__INT_LEAST8_TYPE__, int_least8_t); CHECK_TYPES(__INT_LEAST16_TYPE__, int_least16_t); CHECK_TYPES(__INT_LEAST32_TYPE__, int_least32_t); @@ -45,6 +47,7 @@ check_types (void) CHECK_TYPES(__UINT_LEAST16_TYPE__, uint_least16_t); CHECK_TYPES(__UINT_LEAST32_TYPE__, uint_least32_t); CHECK_TYPES(__UINT_LEAST64_TYPE__, uint_least64_t); +#endif #ifndef NO_FAST_TYPES CHECK_TYPES(__INT_FAST8_TYPE__, int_fast8_t); CHECK_TYPES(__INT_FAST16_TYPE__, int_fast16_t); @@ -61,7 +64,9 @@ check_types (void) #ifdef __UINTPTR_TYPE__ CHECK_TYPES(__UINTPTR_TYPE__, uintptr_t); #endif +#ifndef NO_MAX_TYPES CHECK_TYPES(__INTMAX_TYPE__, intmax_t); CHECK_TYPES(__UINTMAX_TYPE__, uintmax_t); +#endif CHECK_TYPES(__SIG_ATOMIC_TYPE__, sig_atomic_t); }