Revision bad5b1ec

b/host-utils.h
51 51

  
52 52
static always_inline int clz32(uint32_t val)
53 53
{
54
#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
54
#if QEMU_GNUC_PREREQ(3, 4)
55 55
    if (val)
56 56
        return __builtin_clz(val);
57 57
    else
......
93 93

  
94 94
static always_inline int clz64(uint64_t val)
95 95
{
96
#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
96
#if QEMU_GNUC_PREREQ(3, 4)
97 97
    if (val)
98 98
        return __builtin_clzll(val);
99 99
    else
......
118 118

  
119 119
static always_inline int ctz32 (uint32_t val)
120 120
{
121
#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
121
#if QEMU_GNUC_PREREQ(3, 4)
122 122
    if (val)
123 123
        return __builtin_ctz(val);
124 124
    else
......
162 162

  
163 163
static always_inline int ctz64 (uint64_t val)
164 164
{
165
#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
165
#if QEMU_GNUC_PREREQ(3, 4)
166 166
    if (val)
167 167
        return __builtin_ctz(val);
168 168
    else
......
206 206

  
207 207
static always_inline int ctpop32 (uint32_t val)
208 208
{
209
#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
209
#if QEMU_GNUC_PREREQ(3, 4)
210 210
    return __builtin_popcount(val);
211 211
#else
212 212
    val = (val & 0x55555555) + ((val >>  1) & 0x55555555);
......
221 221

  
222 222
static always_inline int ctpop64 (uint64_t val)
223 223
{
224
#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
224
#if QEMU_GNUC_PREREQ(3, 4)
225 225
    return __builtin_popcountll(val);
226 226
#else
227 227
    val = (val & 0x5555555555555555ULL) + ((val >>  1) & 0x5555555555555555ULL);
b/hw/apic.c
20 20
#include "hw.h"
21 21
#include "pc.h"
22 22
#include "qemu-timer.h"
23
#include "osdep.h"
23 24

  
24 25
//#define DEBUG_APIC
25 26
//#define DEBUG_IOAPIC
......
107 108
/* Find first bit starting from msb */
108 109
static int fls_bit(uint32_t value)
109 110
{
110
#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
111
#if QEMU_GNUC_PREREQ(3, 4)
111 112
    return 31 - __builtin_clz(value);
112 113
#else
113 114
    unsigned int ret = 0;
......
127 128
/* Find first bit starting from lsb */
128 129
static int ffs_bit(uint32_t value)
129 130
{
130
#if defined(__GNUC__) && ((__GNUC__ > 3) || (__GNUC__ == 3 && __GNUC_MINOR__ >= 4))
131
#if QEMU_GNUC_PREREQ(3, 4)
131 132
    return __builtin_ffs(value) - 1;
132 133
#else
133 134
    unsigned int ret = 0;
b/osdep.h
62 62

  
63 63
#define qemu_printf printf
64 64

  
65
#if defined (__GNUC__) && defined (__GNUC_MINOR_)
66
# define QEMU_GNUC_PREREQ(maj, min) \
67
         ((__GNUC__ << 16) + __GNUC_MINOR__ >= ((maj) << 16) + (min))
68
#else
69
# define QEMU_GNUC_PREREQ(maj, min) 0
70
#endif
71

  
65 72
void *qemu_memalign(size_t alignment, size_t size);
66 73
void *qemu_vmalloc(size_t size);
67 74
void qemu_vfree(void *ptr);

Also available in: Unified diff