nsprpub/pr/include/md/_linux.cfg

Wed, 31 Dec 2014 06:09:35 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Wed, 31 Dec 2014 06:09:35 +0100
changeset 0
6474c204b198
permissions
-rw-r--r--

Cloned upstream origin tor-browser at tor-browser-31.3.0esr-4.5-1-build1
revision ID fc1c9ff7c1b2defdbc039f12214767608f46423f for hacking purpose.

     1 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */
     2 /* This Source Code Form is subject to the terms of the Mozilla Public
     3  * License, v. 2.0. If a copy of the MPL was not distributed with this
     4  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
     6 /*
     7  * This file is used by not only Linux but also other glibc systems
     8  * such as GNU/Hurd and GNU/k*BSD.
     9  */
    11 #ifndef nspr_cpucfg___
    12 #define nspr_cpucfg___
    14 #ifndef XP_UNIX
    15 #define XP_UNIX
    16 #endif
    18 #if !defined(LINUX) && defined(__linux__)
    19 #define LINUX
    20 #endif
    22 #ifdef __FreeBSD_kernel__
    23 #define PR_AF_INET6 28  /* same as AF_INET6 */
    24 #elif defined(__GNU__)
    25 #define PR_AF_INET6 26  /* same as AF_INET6 */
    26 #else
    27 #define PR_AF_INET6 10  /* same as AF_INET6 */
    28 #endif
    30 #ifdef __powerpc64__
    32 #ifdef __LITTLE_ENDIAN__
    33 #define IS_LITTLE_ENDIAN 1
    34 #undef  IS_BIG_ENDIAN
    35 #else
    36 #undef  IS_LITTLE_ENDIAN
    37 #define IS_BIG_ENDIAN    1
    38 #endif
    39 #define IS_64
    41 #define PR_BYTES_PER_BYTE   1
    42 #define PR_BYTES_PER_SHORT  2
    43 #define PR_BYTES_PER_INT    4
    44 #define PR_BYTES_PER_INT64  8
    45 #define PR_BYTES_PER_LONG   8
    46 #define PR_BYTES_PER_FLOAT  4
    47 #define PR_BYTES_PER_DOUBLE 8
    48 #define PR_BYTES_PER_WORD   8
    49 #define PR_BYTES_PER_DWORD  8
    51 #define PR_BITS_PER_BYTE    8
    52 #define PR_BITS_PER_SHORT   16
    53 #define PR_BITS_PER_INT     32
    54 #define PR_BITS_PER_INT64   64
    55 #define PR_BITS_PER_LONG    64
    56 #define PR_BITS_PER_FLOAT   32
    57 #define PR_BITS_PER_DOUBLE  64
    58 #define PR_BITS_PER_WORD    64
    60 #define PR_BITS_PER_BYTE_LOG2   3
    61 #define PR_BITS_PER_SHORT_LOG2  4
    62 #define PR_BITS_PER_INT_LOG2    5
    63 #define PR_BITS_PER_INT64_LOG2  6
    64 #define PR_BITS_PER_LONG_LOG2   6
    65 #define PR_BITS_PER_FLOAT_LOG2  5
    66 #define PR_BITS_PER_DOUBLE_LOG2 6
    67 #define PR_BITS_PER_WORD_LOG2   6
    69 #define PR_ALIGN_OF_SHORT   2
    70 #define PR_ALIGN_OF_INT     4
    71 #define PR_ALIGN_OF_LONG    8
    72 #define PR_ALIGN_OF_INT64   8
    73 #define PR_ALIGN_OF_FLOAT   4
    74 #define PR_ALIGN_OF_DOUBLE  8
    75 #define PR_ALIGN_OF_POINTER 8
    76 #define PR_ALIGN_OF_WORD    8
    78 #define PR_BYTES_PER_WORD_LOG2   3
    79 #define PR_BYTES_PER_DWORD_LOG2  3
    81 #elif defined(__powerpc__)
    83 #ifdef __LITTLE_ENDIAN__
    84 #define IS_LITTLE_ENDIAN 1
    85 #undef  IS_BIG_ENDIAN
    86 #else
    87 #undef  IS_LITTLE_ENDIAN
    88 #define IS_BIG_ENDIAN    1
    89 #endif
    91 #define PR_BYTES_PER_BYTE   1
    92 #define PR_BYTES_PER_SHORT  2
    93 #define PR_BYTES_PER_INT    4
    94 #define PR_BYTES_PER_INT64  8
    95 #define PR_BYTES_PER_LONG   4
    96 #define PR_BYTES_PER_FLOAT  4
    97 #define PR_BYTES_PER_DOUBLE 8
    98 #define PR_BYTES_PER_WORD   4
    99 #define PR_BYTES_PER_DWORD  8
   101 #define PR_BITS_PER_BYTE    8
   102 #define PR_BITS_PER_SHORT   16
   103 #define PR_BITS_PER_INT     32
   104 #define PR_BITS_PER_INT64   64
   105 #define PR_BITS_PER_LONG    32
   106 #define PR_BITS_PER_FLOAT   32
   107 #define PR_BITS_PER_DOUBLE  64
   108 #define PR_BITS_PER_WORD    32
   110 #define PR_BITS_PER_BYTE_LOG2   3
   111 #define PR_BITS_PER_SHORT_LOG2  4
   112 #define PR_BITS_PER_INT_LOG2    5
   113 #define PR_BITS_PER_INT64_LOG2  6
   114 #define PR_BITS_PER_LONG_LOG2   5
   115 #define PR_BITS_PER_FLOAT_LOG2  5
   116 #define PR_BITS_PER_DOUBLE_LOG2 6
   117 #define PR_BITS_PER_WORD_LOG2   5
   119 #define PR_ALIGN_OF_SHORT   2
   120 #define PR_ALIGN_OF_INT     4
   121 #define PR_ALIGN_OF_LONG    4
   122 #define PR_ALIGN_OF_INT64   8
   123 #define PR_ALIGN_OF_FLOAT   4
   124 #define PR_ALIGN_OF_DOUBLE  8
   125 #define PR_ALIGN_OF_POINTER 4
   126 #define PR_ALIGN_OF_WORD    4
   128 #define PR_BYTES_PER_WORD_LOG2   2
   129 #define PR_BYTES_PER_DWORD_LOG2  3
   131 #elif defined(__alpha)
   133 #define IS_LITTLE_ENDIAN 1
   134 #undef  IS_BIG_ENDIAN
   135 #define IS_64
   137 #define PR_BYTES_PER_BYTE   1
   138 #define PR_BYTES_PER_SHORT  2
   139 #define PR_BYTES_PER_INT    4
   140 #define PR_BYTES_PER_INT64  8
   141 #define PR_BYTES_PER_LONG   8
   142 #define PR_BYTES_PER_FLOAT  4
   143 #define PR_BYTES_PER_DOUBLE 8
   144 #define PR_BYTES_PER_WORD   8
   145 #define PR_BYTES_PER_DWORD  8
   147 #define PR_BITS_PER_BYTE    8
   148 #define PR_BITS_PER_SHORT   16
   149 #define PR_BITS_PER_INT     32
   150 #define PR_BITS_PER_INT64   64
   151 #define PR_BITS_PER_LONG    64
   152 #define PR_BITS_PER_FLOAT   32
   153 #define PR_BITS_PER_DOUBLE  64
   154 #define PR_BITS_PER_WORD    64
   156 #define PR_BITS_PER_BYTE_LOG2   3
   157 #define PR_BITS_PER_SHORT_LOG2  4
   158 #define PR_BITS_PER_INT_LOG2    5
   159 #define PR_BITS_PER_INT64_LOG2  6
   160 #define PR_BITS_PER_LONG_LOG2   6
   161 #define PR_BITS_PER_FLOAT_LOG2  5
   162 #define PR_BITS_PER_DOUBLE_LOG2 6
   163 #define PR_BITS_PER_WORD_LOG2   6
   165 #define PR_ALIGN_OF_SHORT   2
   166 #define PR_ALIGN_OF_INT     4
   167 #define PR_ALIGN_OF_LONG    8
   168 #define PR_ALIGN_OF_INT64   8
   169 #define PR_ALIGN_OF_FLOAT   4
   170 #define PR_ALIGN_OF_DOUBLE  8
   171 #define PR_ALIGN_OF_POINTER 8
   172 #define PR_ALIGN_OF_WORD    8
   174 #define PR_BYTES_PER_WORD_LOG2  3
   175 #define PR_BYTES_PER_DWORD_LOG2 3
   177 #elif defined(__ia64__)
   179 #define IS_LITTLE_ENDIAN 1
   180 #undef  IS_BIG_ENDIAN
   181 #define IS_64
   183 #define PR_BYTES_PER_BYTE   1
   184 #define PR_BYTES_PER_SHORT  2
   185 #define PR_BYTES_PER_INT    4
   186 #define PR_BYTES_PER_INT64  8
   187 #define PR_BYTES_PER_LONG   8
   188 #define PR_BYTES_PER_FLOAT  4
   189 #define PR_BYTES_PER_DOUBLE 8
   190 #define PR_BYTES_PER_WORD   8
   191 #define PR_BYTES_PER_DWORD  8
   193 #define PR_BITS_PER_BYTE    8
   194 #define PR_BITS_PER_SHORT   16
   195 #define PR_BITS_PER_INT     32
   196 #define PR_BITS_PER_INT64   64
   197 #define PR_BITS_PER_LONG    64
   198 #define PR_BITS_PER_FLOAT   32
   199 #define PR_BITS_PER_DOUBLE  64
   200 #define PR_BITS_PER_WORD    64
   202 #define PR_BITS_PER_BYTE_LOG2   3
   203 #define PR_BITS_PER_SHORT_LOG2  4
   204 #define PR_BITS_PER_INT_LOG2    5
   205 #define PR_BITS_PER_INT64_LOG2  6
   206 #define PR_BITS_PER_LONG_LOG2   6
   207 #define PR_BITS_PER_FLOAT_LOG2  5
   208 #define PR_BITS_PER_DOUBLE_LOG2 6
   209 #define PR_BITS_PER_WORD_LOG2   6
   211 #define PR_ALIGN_OF_SHORT   2
   212 #define PR_ALIGN_OF_INT     4
   213 #define PR_ALIGN_OF_LONG    8
   214 #define PR_ALIGN_OF_INT64   8
   215 #define PR_ALIGN_OF_FLOAT   4
   216 #define PR_ALIGN_OF_DOUBLE  8
   217 #define PR_ALIGN_OF_POINTER 8
   218 #define PR_ALIGN_OF_WORD    8
   220 #define PR_BYTES_PER_WORD_LOG2  3
   221 #define PR_BYTES_PER_DWORD_LOG2 3
   223 #elif defined(__x86_64__)
   225 #ifdef __ILP32__
   227 #define IS_LITTLE_ENDIAN 1
   228 #undef  IS_BIG_ENDIAN
   230 #define PR_BYTES_PER_BYTE   1
   231 #define PR_BYTES_PER_SHORT  2
   232 #define PR_BYTES_PER_INT    4
   233 #define PR_BYTES_PER_INT64  8
   234 #define PR_BYTES_PER_LONG   4
   235 #define PR_BYTES_PER_FLOAT  4
   236 #define PR_BYTES_PER_DOUBLE 8
   237 #define PR_BYTES_PER_WORD   4
   238 #define PR_BYTES_PER_DWORD  8
   240 #define PR_BITS_PER_BYTE    8
   241 #define PR_BITS_PER_SHORT   16
   242 #define PR_BITS_PER_INT     32
   243 #define PR_BITS_PER_INT64   64
   244 #define PR_BITS_PER_LONG    32
   245 #define PR_BITS_PER_FLOAT   32
   246 #define PR_BITS_PER_DOUBLE  64
   247 #define PR_BITS_PER_WORD    32
   249 #define PR_BITS_PER_BYTE_LOG2   3
   250 #define PR_BITS_PER_SHORT_LOG2  4
   251 #define PR_BITS_PER_INT_LOG2    5
   252 #define PR_BITS_PER_INT64_LOG2  6
   253 #define PR_BITS_PER_LONG_LOG2   5
   254 #define PR_BITS_PER_FLOAT_LOG2  5
   255 #define PR_BITS_PER_DOUBLE_LOG2 6
   256 #define PR_BITS_PER_WORD_LOG2   5
   258 #define PR_ALIGN_OF_SHORT   2
   259 #define PR_ALIGN_OF_INT     4
   260 #define PR_ALIGN_OF_LONG    4
   261 #define PR_ALIGN_OF_INT64   8
   262 #define PR_ALIGN_OF_FLOAT   4
   263 #define PR_ALIGN_OF_DOUBLE  8
   264 #define PR_ALIGN_OF_POINTER 4
   265 #define PR_ALIGN_OF_WORD    4
   267 #define PR_BYTES_PER_WORD_LOG2   2
   268 #define PR_BYTES_PER_DWORD_LOG2  3
   270 #else
   272 #define IS_LITTLE_ENDIAN 1
   273 #undef  IS_BIG_ENDIAN
   274 #define IS_64
   276 #define PR_BYTES_PER_BYTE   1
   277 #define PR_BYTES_PER_SHORT  2
   278 #define PR_BYTES_PER_INT    4
   279 #define PR_BYTES_PER_INT64  8
   280 #define PR_BYTES_PER_LONG   8
   281 #define PR_BYTES_PER_FLOAT  4
   282 #define PR_BYTES_PER_DOUBLE 8
   283 #define PR_BYTES_PER_WORD   8
   284 #define PR_BYTES_PER_DWORD  8
   286 #define PR_BITS_PER_BYTE    8
   287 #define PR_BITS_PER_SHORT   16
   288 #define PR_BITS_PER_INT     32
   289 #define PR_BITS_PER_INT64   64
   290 #define PR_BITS_PER_LONG    64
   291 #define PR_BITS_PER_FLOAT   32
   292 #define PR_BITS_PER_DOUBLE  64
   293 #define PR_BITS_PER_WORD    64
   295 #define PR_BITS_PER_BYTE_LOG2   3
   296 #define PR_BITS_PER_SHORT_LOG2  4
   297 #define PR_BITS_PER_INT_LOG2    5
   298 #define PR_BITS_PER_INT64_LOG2  6
   299 #define PR_BITS_PER_LONG_LOG2   6
   300 #define PR_BITS_PER_FLOAT_LOG2  5
   301 #define PR_BITS_PER_DOUBLE_LOG2 6
   302 #define PR_BITS_PER_WORD_LOG2   6
   304 #define PR_ALIGN_OF_SHORT   2
   305 #define PR_ALIGN_OF_INT     4
   306 #define PR_ALIGN_OF_LONG    8
   307 #define PR_ALIGN_OF_INT64   8
   308 #define PR_ALIGN_OF_FLOAT   4
   309 #define PR_ALIGN_OF_DOUBLE  8
   310 #define PR_ALIGN_OF_POINTER 8
   311 #define PR_ALIGN_OF_WORD    8
   313 #define PR_BYTES_PER_WORD_LOG2  3
   314 #define PR_BYTES_PER_DWORD_LOG2 3
   316 #endif
   318 #elif defined(__mc68000__)
   320 #undef  IS_LITTLE_ENDIAN
   321 #define IS_BIG_ENDIAN 1
   323 #define PR_BYTES_PER_BYTE   1
   324 #define PR_BYTES_PER_SHORT  2
   325 #define PR_BYTES_PER_INT    4
   326 #define PR_BYTES_PER_INT64  8
   327 #define PR_BYTES_PER_LONG   4
   328 #define PR_BYTES_PER_FLOAT  4
   329 #define PR_BYTES_PER_DOUBLE 8
   330 #define PR_BYTES_PER_WORD   4
   331 #define PR_BYTES_PER_DWORD  8
   333 #define PR_BITS_PER_BYTE    8
   334 #define PR_BITS_PER_SHORT   16
   335 #define PR_BITS_PER_INT     32
   336 #define PR_BITS_PER_INT64   64
   337 #define PR_BITS_PER_LONG    32
   338 #define PR_BITS_PER_FLOAT   32
   339 #define PR_BITS_PER_DOUBLE  64
   340 #define PR_BITS_PER_WORD    32
   342 #define PR_BITS_PER_BYTE_LOG2   3
   343 #define PR_BITS_PER_SHORT_LOG2  4
   344 #define PR_BITS_PER_INT_LOG2    5
   345 #define PR_BITS_PER_INT64_LOG2  6
   346 #define PR_BITS_PER_LONG_LOG2   5
   347 #define PR_BITS_PER_FLOAT_LOG2  5
   348 #define PR_BITS_PER_DOUBLE_LOG2 6
   349 #define PR_BITS_PER_WORD_LOG2   5
   351 #define PR_ALIGN_OF_SHORT   2
   352 #define PR_ALIGN_OF_INT     2
   353 #define PR_ALIGN_OF_LONG    2
   354 #define PR_ALIGN_OF_INT64   2
   355 #define PR_ALIGN_OF_FLOAT   2
   356 #define PR_ALIGN_OF_DOUBLE  2
   357 #define PR_ALIGN_OF_POINTER 2
   358 #define PR_ALIGN_OF_WORD    2
   360 #define PR_BYTES_PER_WORD_LOG2   2
   361 #define PR_BYTES_PER_DWORD_LOG2  3
   363 #elif defined(__sparc__) && defined (__arch64__)
   365 #undef	IS_LITTLE_ENDIAN
   366 #define	IS_BIG_ENDIAN 1
   367 #define IS_64
   369 #define PR_BYTES_PER_BYTE   1
   370 #define PR_BYTES_PER_SHORT  2
   371 #define PR_BYTES_PER_INT    4
   372 #define PR_BYTES_PER_INT64  8
   373 #define PR_BYTES_PER_LONG   8
   374 #define PR_BYTES_PER_FLOAT  4
   375 #define PR_BYTES_PER_DOUBLE 8
   376 #define PR_BYTES_PER_WORD   8
   377 #define PR_BYTES_PER_DWORD  8
   379 #define PR_BITS_PER_BYTE    8
   380 #define PR_BITS_PER_SHORT   16
   381 #define PR_BITS_PER_INT     32
   382 #define PR_BITS_PER_INT64   64
   383 #define PR_BITS_PER_LONG    64
   384 #define PR_BITS_PER_FLOAT   32
   385 #define PR_BITS_PER_DOUBLE  64
   386 #define PR_BITS_PER_WORD    64
   388 #define PR_BITS_PER_BYTE_LOG2   3
   389 #define PR_BITS_PER_SHORT_LOG2  4
   390 #define PR_BITS_PER_INT_LOG2    5
   391 #define PR_BITS_PER_INT64_LOG2  6
   392 #define PR_BITS_PER_LONG_LOG2   6
   393 #define PR_BITS_PER_FLOAT_LOG2  5
   394 #define PR_BITS_PER_DOUBLE_LOG2 6
   395 #define PR_BITS_PER_WORD_LOG2   6
   397 #define PR_ALIGN_OF_SHORT   2
   398 #define PR_ALIGN_OF_INT     4
   399 #define PR_ALIGN_OF_INT64   8
   400 #define PR_ALIGN_OF_LONG    8
   401 #define PR_ALIGN_OF_FLOAT   4
   402 #define PR_ALIGN_OF_DOUBLE  8
   403 #define PR_ALIGN_OF_POINTER 8
   404 #define PR_ALIGN_OF_WORD    8
   406 #define PR_BYTES_PER_WORD_LOG2   3
   407 #define PR_BYTES_PER_DWORD_LOG2  3
   409 #elif defined(__sparc__)
   411 #undef	IS_LITTLE_ENDIAN
   412 #define	IS_BIG_ENDIAN 1
   414 #define PR_BYTES_PER_BYTE   1
   415 #define PR_BYTES_PER_SHORT  2
   416 #define PR_BYTES_PER_INT    4
   417 #define PR_BYTES_PER_INT64  8
   418 #define PR_BYTES_PER_LONG   4
   419 #define PR_BYTES_PER_FLOAT  4
   420 #define PR_BYTES_PER_DOUBLE 8
   421 #define PR_BYTES_PER_WORD   4
   422 #define PR_BYTES_PER_DWORD  8
   424 #define PR_BITS_PER_BYTE    8
   425 #define PR_BITS_PER_SHORT   16
   426 #define PR_BITS_PER_INT     32
   427 #define PR_BITS_PER_INT64   64
   428 #define PR_BITS_PER_LONG    32
   429 #define PR_BITS_PER_FLOAT   32
   430 #define PR_BITS_PER_DOUBLE  64
   431 #define PR_BITS_PER_WORD    32
   433 #define PR_BITS_PER_BYTE_LOG2   3
   434 #define PR_BITS_PER_SHORT_LOG2  4
   435 #define PR_BITS_PER_INT_LOG2    5
   436 #define PR_BITS_PER_INT64_LOG2  6
   437 #define PR_BITS_PER_LONG_LOG2   5
   438 #define PR_BITS_PER_FLOAT_LOG2  5
   439 #define PR_BITS_PER_DOUBLE_LOG2 6
   440 #define PR_BITS_PER_WORD_LOG2   5
   442 #define PR_ALIGN_OF_SHORT   2
   443 #define PR_ALIGN_OF_INT     4
   444 #define PR_ALIGN_OF_LONG    4
   445 #define PR_ALIGN_OF_INT64   8
   446 #define PR_ALIGN_OF_FLOAT   4
   447 #define PR_ALIGN_OF_DOUBLE  8
   448 #define PR_ALIGN_OF_POINTER 4
   449 #define PR_ALIGN_OF_WORD    4
   451 #define PR_BYTES_PER_WORD_LOG2   2
   452 #define PR_BYTES_PER_DWORD_LOG2  3
   454 #elif defined(__i386__)
   456 #define IS_LITTLE_ENDIAN 1
   457 #undef  IS_BIG_ENDIAN
   459 #define PR_BYTES_PER_BYTE   1
   460 #define PR_BYTES_PER_SHORT  2
   461 #define PR_BYTES_PER_INT    4
   462 #define PR_BYTES_PER_INT64  8
   463 #define PR_BYTES_PER_LONG   4
   464 #define PR_BYTES_PER_FLOAT  4
   465 #define PR_BYTES_PER_DOUBLE 8
   466 #define PR_BYTES_PER_WORD   4
   467 #define PR_BYTES_PER_DWORD  8
   469 #define PR_BITS_PER_BYTE    8
   470 #define PR_BITS_PER_SHORT   16
   471 #define PR_BITS_PER_INT     32
   472 #define PR_BITS_PER_INT64   64
   473 #define PR_BITS_PER_LONG    32
   474 #define PR_BITS_PER_FLOAT   32
   475 #define PR_BITS_PER_DOUBLE  64
   476 #define PR_BITS_PER_WORD    32
   478 #define PR_BITS_PER_BYTE_LOG2   3
   479 #define PR_BITS_PER_SHORT_LOG2  4
   480 #define PR_BITS_PER_INT_LOG2    5
   481 #define PR_BITS_PER_INT64_LOG2  6
   482 #define PR_BITS_PER_LONG_LOG2   5
   483 #define PR_BITS_PER_FLOAT_LOG2  5
   484 #define PR_BITS_PER_DOUBLE_LOG2 6
   485 #define PR_BITS_PER_WORD_LOG2   5
   487 #define PR_ALIGN_OF_SHORT   2
   488 #define PR_ALIGN_OF_INT     4
   489 #define PR_ALIGN_OF_LONG    4
   490 #define PR_ALIGN_OF_INT64   4
   491 #define PR_ALIGN_OF_FLOAT   4
   492 #define PR_ALIGN_OF_DOUBLE  4
   493 #define PR_ALIGN_OF_POINTER 4
   494 #define PR_ALIGN_OF_WORD    4
   496 #define PR_BYTES_PER_WORD_LOG2   2
   497 #define PR_BYTES_PER_DWORD_LOG2  3
   499 #elif defined(__mips__)
   501 #ifdef __MIPSEB__
   502 #define IS_BIG_ENDIAN 1
   503 #undef  IS_LITTLE_ENDIAN
   504 #elif defined(__MIPSEL__)
   505 #define IS_LITTLE_ENDIAN 1
   506 #undef  IS_BIG_ENDIAN
   507 #else
   508 #error "Unknown MIPS endianness."
   509 #endif
   511 #define PR_BYTES_PER_BYTE   1
   512 #define PR_BYTES_PER_SHORT  2
   513 #define PR_BYTES_PER_INT    4
   514 #define PR_BYTES_PER_INT64  8
   515 #define PR_BYTES_PER_LONG   4
   516 #define PR_BYTES_PER_FLOAT  4
   517 #define PR_BYTES_PER_DOUBLE 8
   518 #define PR_BYTES_PER_WORD   4
   519 #define PR_BYTES_PER_DWORD  8
   521 #define PR_BITS_PER_BYTE    8
   522 #define PR_BITS_PER_SHORT   16
   523 #define PR_BITS_PER_INT     32
   524 #define PR_BITS_PER_INT64   64
   525 #define PR_BITS_PER_LONG    32
   526 #define PR_BITS_PER_FLOAT   32
   527 #define PR_BITS_PER_DOUBLE  64
   528 #define PR_BITS_PER_WORD    32
   530 #define PR_BITS_PER_BYTE_LOG2   3
   531 #define PR_BITS_PER_SHORT_LOG2  4
   532 #define PR_BITS_PER_INT_LOG2    5
   533 #define PR_BITS_PER_INT64_LOG2  6
   534 #define PR_BITS_PER_LONG_LOG2   5
   535 #define PR_BITS_PER_FLOAT_LOG2  5
   536 #define PR_BITS_PER_DOUBLE_LOG2 6
   537 #define PR_BITS_PER_WORD_LOG2   5
   539 #define PR_ALIGN_OF_SHORT   2
   540 #define PR_ALIGN_OF_INT     4
   541 #define PR_ALIGN_OF_LONG    4
   542 #define PR_ALIGN_OF_INT64   8
   543 #define PR_ALIGN_OF_FLOAT   4
   544 #define PR_ALIGN_OF_DOUBLE  8
   545 #define PR_ALIGN_OF_POINTER 4
   546 #define PR_ALIGN_OF_WORD    4
   548 #define PR_BYTES_PER_WORD_LOG2   2
   549 #define PR_BYTES_PER_DWORD_LOG2  3
   551 #elif defined(__arm__)
   553 #ifdef __ARMEB__
   554 #undef  IS_LITTLE_ENDIAN
   555 #define IS_BIG_ENDIAN 1
   556 #elif defined(__ARMEL__)
   557 #define IS_LITTLE_ENDIAN 1
   558 #undef  IS_BIG_ENDIAN
   559 #else
   560 #error "Unknown ARM endianness."
   561 #endif
   563 #define PR_BYTES_PER_BYTE   1
   564 #define PR_BYTES_PER_SHORT  2
   565 #define PR_BYTES_PER_INT    4
   566 #define PR_BYTES_PER_INT64  8
   567 #define PR_BYTES_PER_LONG   4
   568 #define PR_BYTES_PER_FLOAT  4
   569 #define PR_BYTES_PER_DOUBLE 8
   570 #define PR_BYTES_PER_WORD   4
   571 #define PR_BYTES_PER_DWORD  8
   573 #define PR_BITS_PER_BYTE    8
   574 #define PR_BITS_PER_SHORT   16
   575 #define PR_BITS_PER_INT     32
   576 #define PR_BITS_PER_INT64   64
   577 #define PR_BITS_PER_LONG    32
   578 #define PR_BITS_PER_FLOAT   32
   579 #define PR_BITS_PER_DOUBLE  64
   580 #define PR_BITS_PER_WORD    32
   582 #define PR_BITS_PER_BYTE_LOG2   3
   583 #define PR_BITS_PER_SHORT_LOG2  4
   584 #define PR_BITS_PER_INT_LOG2    5
   585 #define PR_BITS_PER_INT64_LOG2  6
   586 #define PR_BITS_PER_LONG_LOG2   5
   587 #define PR_BITS_PER_FLOAT_LOG2  5
   588 #define PR_BITS_PER_DOUBLE_LOG2 6
   589 #define PR_BITS_PER_WORD_LOG2   5
   591 #define PR_ALIGN_OF_SHORT   2
   592 #define PR_ALIGN_OF_INT     4
   593 #define PR_ALIGN_OF_LONG    4
   594 #define PR_ALIGN_OF_INT64   4
   595 #define PR_ALIGN_OF_FLOAT   4
   596 #define PR_ALIGN_OF_DOUBLE  4
   597 #define PR_ALIGN_OF_POINTER 4
   598 #define PR_ALIGN_OF_WORD    4
   600 #define PR_BYTES_PER_WORD_LOG2   2
   601 #define PR_BYTES_PER_DWORD_LOG2  3
   603 #elif defined(__aarch64__)
   605 #ifdef __AARCH64EB__
   606 #undef  IS_LITTLE_ENDIAN
   607 #define IS_BIG_ENDIAN 1
   608 #elif defined(__AARCH64EL__)
   609 #define IS_LITTLE_ENDIAN 1
   610 #undef  IS_BIG_ENDIAN
   611 #else
   612 #error "Unknown Aarch64 endianness."
   613 #endif
   614 #define IS_64
   616 #define PR_BYTES_PER_BYTE   1
   617 #define PR_BYTES_PER_SHORT  2
   618 #define PR_BYTES_PER_INT    4
   619 #define PR_BYTES_PER_INT64  8
   620 #define PR_BYTES_PER_LONG   8
   621 #define PR_BYTES_PER_FLOAT  4
   622 #define PR_BYTES_PER_DOUBLE 8
   623 #define PR_BYTES_PER_WORD   8
   624 #define PR_BYTES_PER_DWORD  8
   626 #define PR_BITS_PER_BYTE    8
   627 #define PR_BITS_PER_SHORT   16
   628 #define PR_BITS_PER_INT     32
   629 #define PR_BITS_PER_INT64   64
   630 #define PR_BITS_PER_LONG    64
   631 #define PR_BITS_PER_FLOAT   32
   632 #define PR_BITS_PER_DOUBLE  64
   633 #define PR_BITS_PER_WORD    64
   635 #define PR_BITS_PER_BYTE_LOG2   3
   636 #define PR_BITS_PER_SHORT_LOG2  4
   637 #define PR_BITS_PER_INT_LOG2    5
   638 #define PR_BITS_PER_INT64_LOG2  6
   639 #define PR_BITS_PER_LONG_LOG2   6
   640 #define PR_BITS_PER_FLOAT_LOG2  5
   641 #define PR_BITS_PER_DOUBLE_LOG2 6
   642 #define PR_BITS_PER_WORD_LOG2   6
   644 #define PR_ALIGN_OF_SHORT   2
   645 #define PR_ALIGN_OF_INT     4
   646 #define PR_ALIGN_OF_LONG    8
   647 #define PR_ALIGN_OF_INT64   8
   648 #define PR_ALIGN_OF_FLOAT   4
   649 #define PR_ALIGN_OF_DOUBLE  8
   650 #define PR_ALIGN_OF_POINTER 8
   651 #define PR_ALIGN_OF_WORD    8
   653 #define PR_BYTES_PER_WORD_LOG2  3
   654 #define PR_BYTES_PER_DWORD_LOG2 3
   656 #elif defined(__hppa__)
   658 #undef  IS_LITTLE_ENDIAN
   659 #define IS_BIG_ENDIAN    1
   661 #define PR_BYTES_PER_BYTE   1
   662 #define PR_BYTES_PER_SHORT  2
   663 #define PR_BYTES_PER_INT    4
   664 #define PR_BYTES_PER_INT64  8
   665 #define PR_BYTES_PER_LONG   4
   666 #define PR_BYTES_PER_FLOAT  4
   667 #define PR_BYTES_PER_DOUBLE 8
   668 #define PR_BYTES_PER_WORD   4
   669 #define PR_BYTES_PER_DWORD  8
   671 #define PR_BITS_PER_BYTE    8
   672 #define PR_BITS_PER_SHORT   16
   673 #define PR_BITS_PER_INT     32
   674 #define PR_BITS_PER_INT64   64
   675 #define PR_BITS_PER_LONG    32
   676 #define PR_BITS_PER_FLOAT   32
   677 #define PR_BITS_PER_DOUBLE  64
   678 #define PR_BITS_PER_WORD    32
   680 #define PR_BITS_PER_BYTE_LOG2   3
   681 #define PR_BITS_PER_SHORT_LOG2  4
   682 #define PR_BITS_PER_INT_LOG2    5
   683 #define PR_BITS_PER_INT64_LOG2  6
   684 #define PR_BITS_PER_LONG_LOG2   5
   685 #define PR_BITS_PER_FLOAT_LOG2  5
   686 #define PR_BITS_PER_DOUBLE_LOG2 6
   687 #define PR_BITS_PER_WORD_LOG2   5
   689 #define PR_ALIGN_OF_SHORT   2
   690 #define PR_ALIGN_OF_INT     4
   691 #define PR_ALIGN_OF_LONG    4
   692 #define PR_ALIGN_OF_INT64   8
   693 #define PR_ALIGN_OF_FLOAT   4
   694 #define PR_ALIGN_OF_DOUBLE  8
   695 #define PR_ALIGN_OF_POINTER 4
   696 #define PR_ALIGN_OF_WORD    4
   698 #define PR_BYTES_PER_WORD_LOG2   2
   699 #define PR_BYTES_PER_DWORD_LOG2  3
   701 #elif defined(__s390x__)
   703 #define IS_BIG_ENDIAN 1
   704 #undef  IS_LITTLE_ENDIAN
   705 #define IS_64
   707 #define PR_BYTES_PER_BYTE   1
   708 #define PR_BYTES_PER_SHORT  2
   709 #define PR_BYTES_PER_INT    4
   710 #define PR_BYTES_PER_INT64  8
   711 #define PR_BYTES_PER_LONG   8
   712 #define PR_BYTES_PER_FLOAT  4
   713 #define PR_BYTES_PER_DOUBLE 8
   714 #define PR_BYTES_PER_WORD   8
   715 #define PR_BYTES_PER_DWORD  8
   717 #define PR_BITS_PER_BYTE    8
   718 #define PR_BITS_PER_SHORT   16
   719 #define PR_BITS_PER_INT     32
   720 #define PR_BITS_PER_INT64   64
   721 #define PR_BITS_PER_LONG    64
   722 #define PR_BITS_PER_FLOAT   32
   723 #define PR_BITS_PER_DOUBLE  64
   724 #define PR_BITS_PER_WORD    64
   726 #define PR_BITS_PER_BYTE_LOG2   3
   727 #define PR_BITS_PER_SHORT_LOG2  4
   728 #define PR_BITS_PER_INT_LOG2    5
   729 #define PR_BITS_PER_INT64_LOG2  6
   730 #define PR_BITS_PER_LONG_LOG2   6
   731 #define PR_BITS_PER_FLOAT_LOG2  5
   732 #define PR_BITS_PER_DOUBLE_LOG2 6
   733 #define PR_BITS_PER_WORD_LOG2   6
   735 #define PR_ALIGN_OF_SHORT   2
   736 #define PR_ALIGN_OF_INT     4
   737 #define PR_ALIGN_OF_LONG    8
   738 #define PR_ALIGN_OF_INT64   8
   739 #define PR_ALIGN_OF_FLOAT   4
   740 #define PR_ALIGN_OF_DOUBLE  8
   741 #define PR_ALIGN_OF_POINTER 8
   742 #define PR_ALIGN_OF_WORD    8
   744 #define PR_BYTES_PER_WORD_LOG2   3
   745 #define PR_BYTES_PER_DWORD_LOG2  3
   747 #elif defined(__s390__)
   749 #define IS_BIG_ENDIAN 1
   750 #undef  IS_LITTLE_ENDIAN
   752 #define PR_BYTES_PER_BYTE   1
   753 #define PR_BYTES_PER_SHORT  2
   754 #define PR_BYTES_PER_INT    4
   755 #define PR_BYTES_PER_INT64  8
   756 #define PR_BYTES_PER_LONG   4
   757 #define PR_BYTES_PER_FLOAT  4
   758 #define PR_BYTES_PER_DOUBLE 8
   759 #define PR_BYTES_PER_WORD   4
   760 #define PR_BYTES_PER_DWORD  8
   762 #define PR_BITS_PER_BYTE    8
   763 #define PR_BITS_PER_SHORT   16
   764 #define PR_BITS_PER_INT     32
   765 #define PR_BITS_PER_INT64   64
   766 #define PR_BITS_PER_LONG    32
   767 #define PR_BITS_PER_FLOAT   32
   768 #define PR_BITS_PER_DOUBLE  64
   769 #define PR_BITS_PER_WORD    32
   771 #define PR_BITS_PER_BYTE_LOG2   3
   772 #define PR_BITS_PER_SHORT_LOG2  4
   773 #define PR_BITS_PER_INT_LOG2    5
   774 #define PR_BITS_PER_INT64_LOG2  6
   775 #define PR_BITS_PER_LONG_LOG2   5
   776 #define PR_BITS_PER_FLOAT_LOG2  5
   777 #define PR_BITS_PER_DOUBLE_LOG2 6
   778 #define PR_BITS_PER_WORD_LOG2   5
   780 #define PR_ALIGN_OF_SHORT   2
   781 #define PR_ALIGN_OF_INT     4
   782 #define PR_ALIGN_OF_LONG    4
   783 #define PR_ALIGN_OF_INT64   4
   784 #define PR_ALIGN_OF_FLOAT   4
   785 #define PR_ALIGN_OF_DOUBLE  4
   786 #define PR_ALIGN_OF_POINTER 4
   787 #define PR_ALIGN_OF_WORD    4
   789 #define PR_BYTES_PER_WORD_LOG2   2
   790 #define PR_BYTES_PER_DWORD_LOG2  3
   792 #elif defined(__sh__)
   794 #define IS_LITTLE_ENDIAN 1
   795 #undef  IS_BIG_ENDIAN
   797 #define PR_BYTES_PER_BYTE   1
   798 #define PR_BYTES_PER_SHORT  2
   799 #define PR_BYTES_PER_INT    4
   800 #define PR_BYTES_PER_INT64  8
   801 #define PR_BYTES_PER_LONG   4
   802 #define PR_BYTES_PER_FLOAT  4
   803 #define PR_BYTES_PER_DOUBLE 8
   804 #define PR_BYTES_PER_WORD   4
   805 #define PR_BYTES_PER_DWORD  8
   807 #define PR_BITS_PER_BYTE    8
   808 #define PR_BITS_PER_SHORT   16
   809 #define PR_BITS_PER_INT     32
   810 #define PR_BITS_PER_INT64   64
   811 #define PR_BITS_PER_LONG    32
   812 #define PR_BITS_PER_FLOAT   32
   813 #define PR_BITS_PER_DOUBLE  64
   814 #define PR_BITS_PER_WORD    32
   816 #define PR_BITS_PER_BYTE_LOG2   3
   817 #define PR_BITS_PER_SHORT_LOG2  4
   818 #define PR_BITS_PER_INT_LOG2    5
   819 #define PR_BITS_PER_INT64_LOG2  6
   820 #define PR_BITS_PER_LONG_LOG2   5
   821 #define PR_BITS_PER_FLOAT_LOG2  5
   822 #define PR_BITS_PER_DOUBLE_LOG2 6
   823 #define PR_BITS_PER_WORD_LOG2   5
   825 #define PR_ALIGN_OF_SHORT   2
   826 #define PR_ALIGN_OF_INT     4
   827 #define PR_ALIGN_OF_LONG    4
   828 #define PR_ALIGN_OF_INT64   4
   829 #define PR_ALIGN_OF_FLOAT   4
   830 #define PR_ALIGN_OF_DOUBLE  4
   831 #define PR_ALIGN_OF_POINTER 4
   832 #define PR_ALIGN_OF_WORD    4
   834 #define PR_BYTES_PER_WORD_LOG2   2
   835 #define PR_BYTES_PER_DWORD_LOG2  3
   837 #elif defined(__avr32__)
   839 #undef  IS_LITTLE_ENDIAN
   840 #define IS_BIG_ENDIAN 1
   842 #define PR_BYTES_PER_BYTE   1
   843 #define PR_BYTES_PER_SHORT  2
   844 #define PR_BYTES_PER_INT    4
   845 #define PR_BYTES_PER_INT64  8
   846 #define PR_BYTES_PER_LONG   4
   847 #define PR_BYTES_PER_FLOAT  4
   848 #define PR_BYTES_PER_DOUBLE 8
   849 #define PR_BYTES_PER_WORD   4
   850 #define PR_BYTES_PER_DWORD  8
   852 #define PR_BITS_PER_BYTE    8
   853 #define PR_BITS_PER_SHORT   16
   854 #define PR_BITS_PER_INT     32
   855 #define PR_BITS_PER_INT64   64
   856 #define PR_BITS_PER_LONG    32
   857 #define PR_BITS_PER_FLOAT   32
   858 #define PR_BITS_PER_DOUBLE  64
   859 #define PR_BITS_PER_WORD    32
   861 #define PR_BITS_PER_BYTE_LOG2   3
   862 #define PR_BITS_PER_SHORT_LOG2  4
   863 #define PR_BITS_PER_INT_LOG2    5
   864 #define PR_BITS_PER_INT64_LOG2  6
   865 #define PR_BITS_PER_LONG_LOG2   5
   866 #define PR_BITS_PER_FLOAT_LOG2  5
   867 #define PR_BITS_PER_DOUBLE_LOG2 6
   868 #define PR_BITS_PER_WORD_LOG2   5
   870 #define PR_ALIGN_OF_SHORT   2
   871 #define PR_ALIGN_OF_INT     4
   872 #define PR_ALIGN_OF_LONG    4
   873 #define PR_ALIGN_OF_INT64   4
   874 #define PR_ALIGN_OF_FLOAT   4
   875 #define PR_ALIGN_OF_DOUBLE  4
   876 #define PR_ALIGN_OF_POINTER 4
   877 #define PR_ALIGN_OF_WORD    4
   879 #define PR_BYTES_PER_WORD_LOG2   2
   880 #define PR_BYTES_PER_DWORD_LOG2  3
   882 #elif defined(__m32r__)
   884 #undef  IS_LITTLE_ENDIAN
   885 #define IS_BIG_ENDIAN 1
   887 #define PR_BYTES_PER_BYTE   1
   888 #define PR_BYTES_PER_SHORT  2
   889 #define PR_BYTES_PER_INT    4
   890 #define PR_BYTES_PER_INT64  8
   891 #define PR_BYTES_PER_LONG   4
   892 #define PR_BYTES_PER_FLOAT  4
   893 #define PR_BYTES_PER_DOUBLE 8
   894 #define PR_BYTES_PER_WORD   4
   895 #define PR_BYTES_PER_DWORD  8
   897 #define PR_BITS_PER_BYTE    8
   898 #define PR_BITS_PER_SHORT   16
   899 #define PR_BITS_PER_INT     32
   900 #define PR_BITS_PER_INT64   64
   901 #define PR_BITS_PER_LONG    32
   902 #define PR_BITS_PER_FLOAT   32
   903 #define PR_BITS_PER_DOUBLE  64
   904 #define PR_BITS_PER_WORD    32
   906 #define PR_BITS_PER_BYTE_LOG2   3
   907 #define PR_BITS_PER_SHORT_LOG2  4
   908 #define PR_BITS_PER_INT_LOG2    5
   909 #define PR_BITS_PER_INT64_LOG2  6
   910 #define PR_BITS_PER_LONG_LOG2   5
   911 #define PR_BITS_PER_FLOAT_LOG2  5
   912 #define PR_BITS_PER_DOUBLE_LOG2 6
   913 #define PR_BITS_PER_WORD_LOG2   5
   915 #define PR_ALIGN_OF_SHORT   2
   916 #define PR_ALIGN_OF_INT     4
   917 #define PR_ALIGN_OF_LONG    4
   918 #define PR_ALIGN_OF_INT64   4
   919 #define PR_ALIGN_OF_FLOAT   4
   920 #define PR_ALIGN_OF_DOUBLE  4
   921 #define PR_ALIGN_OF_POINTER 4
   922 #define PR_ALIGN_OF_WORD    4
   924 #define PR_BYTES_PER_WORD_LOG2   2
   925 #define PR_BYTES_PER_DWORD_LOG2  3
   927 #else
   929 #error "Unknown CPU architecture"
   931 #endif
   933 #ifndef HAVE_LONG_LONG
   934 #define	HAVE_LONG_LONG
   935 #endif
   936 #if PR_ALIGN_OF_DOUBLE == 8
   937 #define HAVE_ALIGNED_DOUBLES
   938 #endif
   939 #if PR_ALIGN_OF_INT64 == 8
   940 #define HAVE_ALIGNED_LONGLONGS
   941 #endif
   943 #ifndef NO_NSPR_10_SUPPORT
   945 #define BYTES_PER_BYTE		PR_BYTES_PER_BYTE
   946 #define BYTES_PER_SHORT 	PR_BYTES_PER_SHORT
   947 #define BYTES_PER_INT 		PR_BYTES_PER_INT
   948 #define BYTES_PER_INT64		PR_BYTES_PER_INT64
   949 #define BYTES_PER_LONG		PR_BYTES_PER_LONG
   950 #define BYTES_PER_FLOAT		PR_BYTES_PER_FLOAT
   951 #define BYTES_PER_DOUBLE	PR_BYTES_PER_DOUBLE
   952 #define BYTES_PER_WORD		PR_BYTES_PER_WORD
   953 #define BYTES_PER_DWORD		PR_BYTES_PER_DWORD
   955 #define BITS_PER_BYTE		PR_BITS_PER_BYTE
   956 #define BITS_PER_SHORT		PR_BITS_PER_SHORT
   957 #define BITS_PER_INT		PR_BITS_PER_INT
   958 #define BITS_PER_INT64		PR_BITS_PER_INT64
   959 #define BITS_PER_LONG		PR_BITS_PER_LONG
   960 #define BITS_PER_FLOAT		PR_BITS_PER_FLOAT
   961 #define BITS_PER_DOUBLE		PR_BITS_PER_DOUBLE
   962 #define BITS_PER_WORD		PR_BITS_PER_WORD
   964 #define BITS_PER_BYTE_LOG2	PR_BITS_PER_BYTE_LOG2
   965 #define BITS_PER_SHORT_LOG2	PR_BITS_PER_SHORT_LOG2
   966 #define BITS_PER_INT_LOG2	PR_BITS_PER_INT_LOG2
   967 #define BITS_PER_INT64_LOG2	PR_BITS_PER_INT64_LOG2
   968 #define BITS_PER_LONG_LOG2	PR_BITS_PER_LONG_LOG2
   969 #define BITS_PER_FLOAT_LOG2	PR_BITS_PER_FLOAT_LOG2
   970 #define BITS_PER_DOUBLE_LOG2 	PR_BITS_PER_DOUBLE_LOG2
   971 #define BITS_PER_WORD_LOG2	PR_BITS_PER_WORD_LOG2
   973 #define ALIGN_OF_SHORT		PR_ALIGN_OF_SHORT
   974 #define ALIGN_OF_INT		PR_ALIGN_OF_INT
   975 #define ALIGN_OF_LONG		PR_ALIGN_OF_LONG
   976 #define ALIGN_OF_INT64		PR_ALIGN_OF_INT64
   977 #define ALIGN_OF_FLOAT		PR_ALIGN_OF_FLOAT
   978 #define ALIGN_OF_DOUBLE		PR_ALIGN_OF_DOUBLE
   979 #define ALIGN_OF_POINTER	PR_ALIGN_OF_POINTER
   980 #define ALIGN_OF_WORD		PR_ALIGN_OF_WORD
   982 #define BYTES_PER_WORD_LOG2	PR_BYTES_PER_WORD_LOG2
   983 #define BYTES_PER_DWORD_LOG2	PR_BYTES_PER_DWORD_LOG2
   984 #define WORDS_PER_DWORD_LOG2	PR_WORDS_PER_DWORD_LOG2
   986 #endif /* NO_NSPR_10_SUPPORT */
   988 #endif /* nspr_cpucfg___ */

mercurial