Revert "Cleanup of osdcomm.h (nw)"

This reverts commit 1d40aecb58.
This commit is contained in:
Miodrag Milanovic 2015-12-09 11:37:33 +01:00
parent 1d40aecb58
commit 791743976e
2 changed files with 50 additions and 17 deletions

View File

@ -27,10 +27,7 @@
// define this to zap memory to a fixed non-0 value before freeing
//#define OVERWRITE_FREED_MEMORY
// compatibility with non-clang compilers
#ifndef __has_feature
#define __has_feature(x) 0
#endif
//**************************************************************************
// CONSTANTS

View File

@ -16,7 +16,7 @@
#include <stdio.h>
#include <string.h>
#include <cstdint>
/***************************************************************************
COMPILER-SPECIFIC NASTINESS
@ -29,23 +29,38 @@
/* Some optimizations/warnings cleanups for GCC */
#if defined(__GNUC__)
#if defined(__GNUC__) && (__GNUC__ >= 3)
#define ATTR_UNUSED __attribute__((__unused__))
#define ATTR_NORETURN __attribute__((noreturn))
#define ATTR_PRINTF(x,y) __attribute__((format(printf, x, y)))
#define ATTR_MALLOC __attribute__((malloc))
#define ATTR_PURE __attribute__((pure))
#define ATTR_CONST __attribute__((const))
#define ATTR_FORCE_INLINE __attribute__((always_inline))
#define ATTR_NONNULL(...) __attribute__((nonnull(__VA_ARGS__)))
#define ATTR_DEPRECATED __attribute__((deprecated))
/* not supported in GCC prior to 4.4.x */
#if ((__GNUC__ == 4) && (__GNUC_MINOR__ >= 4)) || (__GNUC__ > 4)
#define ATTR_HOT __attribute__((hot))
#define ATTR_COLD __attribute__((cold))
#else
#define ATTR_HOT
#define ATTR_COLD
#endif
#define UNEXPECTED(exp) __builtin_expect(!!(exp), 0)
#define EXPECTED(exp) __builtin_expect(!!(exp), 1)
#define RESTRICT __restrict__
#define SETJMP_GNUC_PROTECT() (void)__builtin_return_address(1)
#else
#define ATTR_UNUSED
#if defined(_MSC_VER) && (_MSC_VER >= 1200)
#define ATTR_NORETURN __declspec(noreturn)
#else
#define ATTR_NORETURN
#endif
#define ATTR_PRINTF(x,y)
#define ATTR_MALLOC
#define ATTR_PURE
#define ATTR_CONST
#define ATTR_FORCE_INLINE __forceinline
#define ATTR_NONNULL(...)
@ -55,6 +70,7 @@
#define UNEXPECTED(exp) (exp)
#define EXPECTED(exp) (exp)
#define RESTRICT
#define SETJMP_GNUC_PROTECT() do {} while (0)
#endif
@ -63,28 +79,43 @@
FUNDAMENTAL TYPES
***************************************************************************/
/* These types work on most modern compilers; however, OSD code can
define their own by setting OSD_TYPES_DEFINED */
#ifndef OSD_TYPES_DEFINED
/* 8-bit values */
using UINT8 = uint8_t;
using INT8 = int8_t;
typedef unsigned char UINT8;
typedef signed char INT8;
/* 16-bit values */
using UINT16 = uint16_t;
using INT16 = int16_t;
typedef unsigned short UINT16;
typedef signed short INT16;
/* 32-bit values */
using UINT32 = uint32_t;
using INT32 = int32_t;
#ifndef _WINDOWS_H
typedef unsigned int UINT32;
typedef signed int INT32;
#endif
/* 64-bit values */
using UINT64 = uint64_t;
using INT64 = int64_t;
#ifndef _WINDOWS_H
#ifdef _MSC_VER
typedef signed __int64 INT64;
typedef unsigned __int64 UINT64;
#else
__extension__ typedef unsigned long long UINT64;
__extension__ typedef signed long long INT64;
#endif
#endif
#endif
/* pointer-sized values */
#ifdef PTR64
using FPTR = uint64_t;
typedef UINT64 FPTR;
#else
using FPTR = uint32_t;
typedef UINT32 FPTR;
#endif
@ -134,7 +165,7 @@ using FPTR = uint32_t;
/* MINGW has adopted the MSVC formatting for 64-bit ints as of gcc 4.4 */
#if defined(__MINGW32__) || defined(_MSC_VER)
#if (defined(__MINGW32__) && (__GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 4))) || defined(_MSC_VER)
#define I64FMT "I64"
#else
#define I64FMT "ll"
@ -187,6 +218,11 @@ using FPTR = uint32_t;
#define LITTLE_ENDIANIZE_INT64(x) (FLIPENDIAN_INT64(x))
#endif /* LSB_FIRST */
// compatibility with non-clang compilers
#ifndef __has_feature
#define __has_feature(x) 0
#endif
#ifdef _MSC_VER
#include <malloc.h>
typedef ptrdiff_t ssize_t;