X-Git-Url: https://git.sur5r.net/?a=blobdiff_plain;f=src%2Fhelper%2Ftypes.h;h=79eac13ae7df8796a436086ade7ffcccb0037a7a;hb=42ef503d37b18d907da16d26e99167566d5aabd1;hp=a5c2624a1a3eb3a553e8db00664e369733d640b1;hpb=8591335ba6556d788999ac29f1efbdbe0cb3554a;p=openocd diff --git a/src/helper/types.h b/src/helper/types.h index a5c2624a..79eac13a 100644 --- a/src/helper/types.h +++ b/src/helper/types.h @@ -2,7 +2,7 @@ * Copyright (C) 2004, 2005 by Dominic Rath * * Dominic.Rath@gmx.de * * * - * Copyright (C) 2007,2008 Øyvind Harboe * + * Copyright (C) 2007,2008 Øyvind Harboe * * oyvind.harboe@zylin.com * * * * This program is free software; you can redistribute it and/or modify * @@ -33,8 +33,6 @@ #include #endif -typedef struct jtag_tap_s jtag_tap_t; - #ifdef HAVE_STDBOOL_H #include #else /* HAVE_STDBOOL_H */ @@ -56,6 +54,10 @@ typedef bool _Bool; #endif /* HAVE_STDBOOL_H */ +/// turns a macro argument into a string constant +#define stringify(s) __stringify(s) +#define __stringify(s) #s + /* DANGER!!!! here be dragons! * * Leave these fn's as byte accesses because it is safe @@ -123,13 +125,14 @@ static inline void h_u16_to_be(uint8_t* buf, int val) buf[1] = (uint8_t) (val >> 0); } -#ifdef __ECOS +#if defined(__ECOS) + /* eCos plain lacks these definition... A series of upstream patches * could probably repair it, but it seems like too much work to be * worth it. */ - +#if !defined(_STDINT_H) #define PRIx32 "x" #define PRId32 "d" #define SCNx32 "x" @@ -151,8 +154,19 @@ typedef uint64_t uintmax_t; #define INT64_MAX 0x7fffffffffffffffLL #define INT64_MIN (-INT64_MAX - 1LL) #define UINT64_MAX (__CONCAT(INT64_MAX, U) * 2ULL + 1ULL) +#endif + + #ifndef LLONG_MAX + #define ULLONG_MAX UINT64_C(0xFFFFFFFFFFFFFFFF) + #define LLONG_MAX INT64_C(0x7FFFFFFFFFFFFFFF) + #define LLONG_MIN ULLONG_MAX + #endif + +#define ULLONG_MAX 18446744073709551615 +/* C99, eCos is C90 compliant (with bits of C99) */ +#define isblank(c) ((c) == ' ' || (c) == '\t') #endif