Warning, file /multimedia/kmplayer/src/moz-sdk/prcpucfg.h was not indexed or was modified since last indexation (in which case cross-reference links may be missing, inaccurate or erroneous).
0001 /* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 2 -*- */ 0002 /* ***** BEGIN LICENSE BLOCK ***** 0003 * Version: MPL 1.1/GPL 2.0/LGPL 2.1 0004 * 0005 * The contents of this file are subject to the Mozilla Public License Version 0006 * 1.1 (the "License"); you may not use this file except in compliance with 0007 * the License. You may obtain a copy of the License at 0008 * http://www.mozilla.org/MPL/ 0009 * 0010 * Software distributed under the License is distributed on an "AS IS" basis, 0011 * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License 0012 * for the specific language governing rights and limitations under the 0013 * License. 0014 * 0015 * The Original Code is the Netscape Portable Runtime (NSPR). 0016 * 0017 * The Initial Developer of the Original Code is 0018 * Netscape Communications Corporation. 0019 * Portions created by the Initial Developer are Copyright (C) 1998-2000 0020 * the Initial Developer. All Rights Reserved. 0021 * 0022 * Contributor(s): 0023 * 0024 * Alternatively, the contents of this file may be used under the terms of 0025 * either the GNU General Public License Version 2 or later (the "GPL"), or 0026 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), 0027 * in which case the provisions of the GPL or the LGPL are applicable instead 0028 * of those above. If you wish to allow use of your version of this file only 0029 * under the terms of either the GPL or the LGPL, and not to allow others to 0030 * use your version of this file under the terms of the MPL, indicate your 0031 * decision by deleting the provisions above and replace them with the notice 0032 * and other provisions required by the GPL or the LGPL. If you do not delete 0033 * the provisions above, a recipient may use your version of this file under 0034 * the terms of any one of the MPL, the GPL or the LGPL. 0035 * 0036 * ***** END LICENSE BLOCK ***** */ 0037 0038 /* 0039 * This file is used by not only Linux but also other glibc systems 0040 * such as GNU/Hurd and GNU/k*BSD. 0041 */ 0042 0043 #ifndef nspr_cpucfg___ 0044 #define nspr_cpucfg___ 0045 0046 #ifndef XP_UNIX 0047 #define XP_UNIX 0048 #endif 0049 0050 #if !defined(LINUX) && defined(__linux__) 0051 #define LINUX 0052 #endif 0053 0054 #ifdef __FreeBSD_kernel__ 0055 #define PR_AF_INET6 28 /* same as AF_INET6 */ 0056 #elif defined(__GNU__) 0057 #define PR_AF_INET6 26 /* same as AF_INET6 */ 0058 #else 0059 #define PR_AF_INET6 10 /* same as AF_INET6 */ 0060 #endif 0061 0062 #ifdef __powerpc64__ 0063 0064 #undef IS_LITTLE_ENDIAN 0065 #define IS_BIG_ENDIAN 1 0066 #define IS_64 0067 0068 #define PR_BYTES_PER_BYTE 1 0069 #define PR_BYTES_PER_SHORT 2 0070 #define PR_BYTES_PER_INT 4 0071 #define PR_BYTES_PER_INT64 8 0072 #define PR_BYTES_PER_LONG 8 0073 #define PR_BYTES_PER_FLOAT 4 0074 #define PR_BYTES_PER_DOUBLE 8 0075 #define PR_BYTES_PER_WORD 8 0076 #define PR_BYTES_PER_DWORD 8 0077 0078 #define PR_BITS_PER_BYTE 8 0079 #define PR_BITS_PER_SHORT 16 0080 #define PR_BITS_PER_INT 32 0081 #define PR_BITS_PER_INT64 64 0082 #define PR_BITS_PER_LONG 64 0083 #define PR_BITS_PER_FLOAT 32 0084 #define PR_BITS_PER_DOUBLE 64 0085 #define PR_BITS_PER_WORD 64 0086 0087 #define PR_BITS_PER_BYTE_LOG2 3 0088 #define PR_BITS_PER_SHORT_LOG2 4 0089 #define PR_BITS_PER_INT_LOG2 5 0090 #define PR_BITS_PER_INT64_LOG2 6 0091 #define PR_BITS_PER_LONG_LOG2 6 0092 #define PR_BITS_PER_FLOAT_LOG2 5 0093 #define PR_BITS_PER_DOUBLE_LOG2 6 0094 #define PR_BITS_PER_WORD_LOG2 6 0095 0096 #define PR_ALIGN_OF_SHORT 2 0097 #define PR_ALIGN_OF_INT 4 0098 #define PR_ALIGN_OF_LONG 8 0099 #define PR_ALIGN_OF_INT64 8 0100 #define PR_ALIGN_OF_FLOAT 4 0101 #define PR_ALIGN_OF_DOUBLE 8 0102 #define PR_ALIGN_OF_POINTER 8 0103 #define PR_ALIGN_OF_WORD 8 0104 0105 #define PR_BYTES_PER_WORD_LOG2 3 0106 #define PR_BYTES_PER_DWORD_LOG2 3 0107 0108 #elif defined(__powerpc__) 0109 0110 #undef IS_LITTLE_ENDIAN 0111 #define IS_BIG_ENDIAN 1 0112 0113 #define PR_BYTES_PER_BYTE 1 0114 #define PR_BYTES_PER_SHORT 2 0115 #define PR_BYTES_PER_INT 4 0116 #define PR_BYTES_PER_INT64 8 0117 #define PR_BYTES_PER_LONG 4 0118 #define PR_BYTES_PER_FLOAT 4 0119 #define PR_BYTES_PER_DOUBLE 8 0120 #define PR_BYTES_PER_WORD 4 0121 #define PR_BYTES_PER_DWORD 8 0122 0123 #define PR_BITS_PER_BYTE 8 0124 #define PR_BITS_PER_SHORT 16 0125 #define PR_BITS_PER_INT 32 0126 #define PR_BITS_PER_INT64 64 0127 #define PR_BITS_PER_LONG 32 0128 #define PR_BITS_PER_FLOAT 32 0129 #define PR_BITS_PER_DOUBLE 64 0130 #define PR_BITS_PER_WORD 32 0131 0132 #define PR_BITS_PER_BYTE_LOG2 3 0133 #define PR_BITS_PER_SHORT_LOG2 4 0134 #define PR_BITS_PER_INT_LOG2 5 0135 #define PR_BITS_PER_INT64_LOG2 6 0136 #define PR_BITS_PER_LONG_LOG2 5 0137 #define PR_BITS_PER_FLOAT_LOG2 5 0138 #define PR_BITS_PER_DOUBLE_LOG2 6 0139 #define PR_BITS_PER_WORD_LOG2 5 0140 0141 #define PR_ALIGN_OF_SHORT 2 0142 #define PR_ALIGN_OF_INT 4 0143 #define PR_ALIGN_OF_LONG 4 0144 #define PR_ALIGN_OF_INT64 8 0145 #define PR_ALIGN_OF_FLOAT 4 0146 #define PR_ALIGN_OF_DOUBLE 8 0147 #define PR_ALIGN_OF_POINTER 4 0148 #define PR_ALIGN_OF_WORD 4 0149 0150 #define PR_BYTES_PER_WORD_LOG2 2 0151 #define PR_BYTES_PER_DWORD_LOG2 3 0152 0153 #elif defined(__alpha) 0154 0155 #define IS_LITTLE_ENDIAN 1 0156 #undef IS_BIG_ENDIAN 0157 #define IS_64 0158 0159 #define PR_BYTES_PER_BYTE 1 0160 #define PR_BYTES_PER_SHORT 2 0161 #define PR_BYTES_PER_INT 4 0162 #define PR_BYTES_PER_INT64 8 0163 #define PR_BYTES_PER_LONG 8 0164 #define PR_BYTES_PER_FLOAT 4 0165 #define PR_BYTES_PER_DOUBLE 8 0166 #define PR_BYTES_PER_WORD 8 0167 #define PR_BYTES_PER_DWORD 8 0168 0169 #define PR_BITS_PER_BYTE 8 0170 #define PR_BITS_PER_SHORT 16 0171 #define PR_BITS_PER_INT 32 0172 #define PR_BITS_PER_INT64 64 0173 #define PR_BITS_PER_LONG 64 0174 #define PR_BITS_PER_FLOAT 32 0175 #define PR_BITS_PER_DOUBLE 64 0176 #define PR_BITS_PER_WORD 64 0177 0178 #define PR_BITS_PER_BYTE_LOG2 3 0179 #define PR_BITS_PER_SHORT_LOG2 4 0180 #define PR_BITS_PER_INT_LOG2 5 0181 #define PR_BITS_PER_INT64_LOG2 6 0182 #define PR_BITS_PER_LONG_LOG2 6 0183 #define PR_BITS_PER_FLOAT_LOG2 5 0184 #define PR_BITS_PER_DOUBLE_LOG2 6 0185 #define PR_BITS_PER_WORD_LOG2 6 0186 0187 #define PR_ALIGN_OF_SHORT 2 0188 #define PR_ALIGN_OF_INT 4 0189 #define PR_ALIGN_OF_LONG 8 0190 #define PR_ALIGN_OF_INT64 8 0191 #define PR_ALIGN_OF_FLOAT 4 0192 #define PR_ALIGN_OF_DOUBLE 8 0193 #define PR_ALIGN_OF_POINTER 8 0194 #define PR_ALIGN_OF_WORD 8 0195 0196 #define PR_BYTES_PER_WORD_LOG2 3 0197 #define PR_BYTES_PER_DWORD_LOG2 3 0198 0199 #elif defined(__ia64__) 0200 0201 #define IS_LITTLE_ENDIAN 1 0202 #undef IS_BIG_ENDIAN 0203 #define IS_64 0204 0205 #define PR_BYTES_PER_BYTE 1 0206 #define PR_BYTES_PER_SHORT 2 0207 #define PR_BYTES_PER_INT 4 0208 #define PR_BYTES_PER_INT64 8 0209 #define PR_BYTES_PER_LONG 8 0210 #define PR_BYTES_PER_FLOAT 4 0211 #define PR_BYTES_PER_DOUBLE 8 0212 #define PR_BYTES_PER_WORD 8 0213 #define PR_BYTES_PER_DWORD 8 0214 0215 #define PR_BITS_PER_BYTE 8 0216 #define PR_BITS_PER_SHORT 16 0217 #define PR_BITS_PER_INT 32 0218 #define PR_BITS_PER_INT64 64 0219 #define PR_BITS_PER_LONG 64 0220 #define PR_BITS_PER_FLOAT 32 0221 #define PR_BITS_PER_DOUBLE 64 0222 #define PR_BITS_PER_WORD 64 0223 0224 #define PR_BITS_PER_BYTE_LOG2 3 0225 #define PR_BITS_PER_SHORT_LOG2 4 0226 #define PR_BITS_PER_INT_LOG2 5 0227 #define PR_BITS_PER_INT64_LOG2 6 0228 #define PR_BITS_PER_LONG_LOG2 6 0229 #define PR_BITS_PER_FLOAT_LOG2 5 0230 #define PR_BITS_PER_DOUBLE_LOG2 6 0231 #define PR_BITS_PER_WORD_LOG2 6 0232 0233 #define PR_ALIGN_OF_SHORT 2 0234 #define PR_ALIGN_OF_INT 4 0235 #define PR_ALIGN_OF_LONG 8 0236 #define PR_ALIGN_OF_INT64 8 0237 #define PR_ALIGN_OF_FLOAT 4 0238 #define PR_ALIGN_OF_DOUBLE 8 0239 #define PR_ALIGN_OF_POINTER 8 0240 #define PR_ALIGN_OF_WORD 8 0241 0242 #define PR_BYTES_PER_WORD_LOG2 3 0243 #define PR_BYTES_PER_DWORD_LOG2 3 0244 0245 #elif defined(__x86_64__) 0246 0247 #define IS_LITTLE_ENDIAN 1 0248 #undef IS_BIG_ENDIAN 0249 #define IS_64 0250 0251 #define PR_BYTES_PER_BYTE 1 0252 #define PR_BYTES_PER_SHORT 2 0253 #define PR_BYTES_PER_INT 4 0254 #define PR_BYTES_PER_INT64 8 0255 #define PR_BYTES_PER_LONG 8 0256 #define PR_BYTES_PER_FLOAT 4 0257 #define PR_BYTES_PER_DOUBLE 8 0258 #define PR_BYTES_PER_WORD 8 0259 #define PR_BYTES_PER_DWORD 8 0260 0261 #define PR_BITS_PER_BYTE 8 0262 #define PR_BITS_PER_SHORT 16 0263 #define PR_BITS_PER_INT 32 0264 #define PR_BITS_PER_INT64 64 0265 #define PR_BITS_PER_LONG 64 0266 #define PR_BITS_PER_FLOAT 32 0267 #define PR_BITS_PER_DOUBLE 64 0268 #define PR_BITS_PER_WORD 64 0269 0270 #define PR_BITS_PER_BYTE_LOG2 3 0271 #define PR_BITS_PER_SHORT_LOG2 4 0272 #define PR_BITS_PER_INT_LOG2 5 0273 #define PR_BITS_PER_INT64_LOG2 6 0274 #define PR_BITS_PER_LONG_LOG2 6 0275 #define PR_BITS_PER_FLOAT_LOG2 5 0276 #define PR_BITS_PER_DOUBLE_LOG2 6 0277 #define PR_BITS_PER_WORD_LOG2 6 0278 0279 #define PR_ALIGN_OF_SHORT 2 0280 #define PR_ALIGN_OF_INT 4 0281 #define PR_ALIGN_OF_LONG 8 0282 #define PR_ALIGN_OF_INT64 8 0283 #define PR_ALIGN_OF_FLOAT 4 0284 #define PR_ALIGN_OF_DOUBLE 8 0285 #define PR_ALIGN_OF_POINTER 8 0286 #define PR_ALIGN_OF_WORD 8 0287 0288 #define PR_BYTES_PER_WORD_LOG2 3 0289 #define PR_BYTES_PER_DWORD_LOG2 3 0290 0291 #elif defined(__mc68000__) 0292 0293 #undef IS_LITTLE_ENDIAN 0294 #define IS_BIG_ENDIAN 1 0295 0296 #define PR_BYTES_PER_BYTE 1 0297 #define PR_BYTES_PER_SHORT 2 0298 #define PR_BYTES_PER_INT 4 0299 #define PR_BYTES_PER_INT64 8 0300 #define PR_BYTES_PER_LONG 4 0301 #define PR_BYTES_PER_FLOAT 4 0302 #define PR_BYTES_PER_DOUBLE 8 0303 #define PR_BYTES_PER_WORD 4 0304 #define PR_BYTES_PER_DWORD 8 0305 0306 #define PR_BITS_PER_BYTE 8 0307 #define PR_BITS_PER_SHORT 16 0308 #define PR_BITS_PER_INT 32 0309 #define PR_BITS_PER_INT64 64 0310 #define PR_BITS_PER_LONG 32 0311 #define PR_BITS_PER_FLOAT 32 0312 #define PR_BITS_PER_DOUBLE 64 0313 #define PR_BITS_PER_WORD 32 0314 0315 #define PR_BITS_PER_BYTE_LOG2 3 0316 #define PR_BITS_PER_SHORT_LOG2 4 0317 #define PR_BITS_PER_INT_LOG2 5 0318 #define PR_BITS_PER_INT64_LOG2 6 0319 #define PR_BITS_PER_LONG_LOG2 5 0320 #define PR_BITS_PER_FLOAT_LOG2 5 0321 #define PR_BITS_PER_DOUBLE_LOG2 6 0322 #define PR_BITS_PER_WORD_LOG2 5 0323 0324 #define PR_ALIGN_OF_SHORT 2 0325 #define PR_ALIGN_OF_INT 2 0326 #define PR_ALIGN_OF_LONG 2 0327 #define PR_ALIGN_OF_INT64 2 0328 #define PR_ALIGN_OF_FLOAT 2 0329 #define PR_ALIGN_OF_DOUBLE 2 0330 #define PR_ALIGN_OF_POINTER 2 0331 #define PR_ALIGN_OF_WORD 2 0332 0333 #define PR_BYTES_PER_WORD_LOG2 2 0334 #define PR_BYTES_PER_DWORD_LOG2 3 0335 0336 #elif defined(__sparc__) && defined (__arch64__) 0337 0338 #undef IS_LITTLE_ENDIAN 0339 #define IS_BIG_ENDIAN 1 0340 #define IS_64 0341 0342 #define PR_BYTES_PER_BYTE 1 0343 #define PR_BYTES_PER_SHORT 2 0344 #define PR_BYTES_PER_INT 4 0345 #define PR_BYTES_PER_INT64 8 0346 #define PR_BYTES_PER_LONG 8 0347 #define PR_BYTES_PER_FLOAT 4 0348 #define PR_BYTES_PER_DOUBLE 8 0349 #define PR_BYTES_PER_WORD 8 0350 #define PR_BYTES_PER_DWORD 8 0351 0352 #define PR_BITS_PER_BYTE 8 0353 #define PR_BITS_PER_SHORT 16 0354 #define PR_BITS_PER_INT 32 0355 #define PR_BITS_PER_INT64 64 0356 #define PR_BITS_PER_LONG 64 0357 #define PR_BITS_PER_FLOAT 32 0358 #define PR_BITS_PER_DOUBLE 64 0359 #define PR_BITS_PER_WORD 64 0360 0361 #define PR_BITS_PER_BYTE_LOG2 3 0362 #define PR_BITS_PER_SHORT_LOG2 4 0363 #define PR_BITS_PER_INT_LOG2 5 0364 #define PR_BITS_PER_INT64_LOG2 6 0365 #define PR_BITS_PER_LONG_LOG2 6 0366 #define PR_BITS_PER_FLOAT_LOG2 5 0367 #define PR_BITS_PER_DOUBLE_LOG2 6 0368 #define PR_BITS_PER_WORD_LOG2 6 0369 0370 #define PR_ALIGN_OF_SHORT 2 0371 #define PR_ALIGN_OF_INT 4 0372 #define PR_ALIGN_OF_INT64 8 0373 #define PR_ALIGN_OF_LONG 8 0374 #define PR_ALIGN_OF_FLOAT 4 0375 #define PR_ALIGN_OF_DOUBLE 8 0376 #define PR_ALIGN_OF_POINTER 8 0377 #define PR_ALIGN_OF_WORD 8 0378 0379 #define PR_BYTES_PER_WORD_LOG2 3 0380 #define PR_BYTES_PER_DWORD_LOG2 3 0381 0382 #elif defined(__sparc__) 0383 0384 #undef IS_LITTLE_ENDIAN 0385 #define IS_BIG_ENDIAN 1 0386 0387 #define PR_BYTES_PER_BYTE 1 0388 #define PR_BYTES_PER_SHORT 2 0389 #define PR_BYTES_PER_INT 4 0390 #define PR_BYTES_PER_INT64 8 0391 #define PR_BYTES_PER_LONG 4 0392 #define PR_BYTES_PER_FLOAT 4 0393 #define PR_BYTES_PER_DOUBLE 8 0394 #define PR_BYTES_PER_WORD 4 0395 #define PR_BYTES_PER_DWORD 8 0396 0397 #define PR_BITS_PER_BYTE 8 0398 #define PR_BITS_PER_SHORT 16 0399 #define PR_BITS_PER_INT 32 0400 #define PR_BITS_PER_INT64 64 0401 #define PR_BITS_PER_LONG 32 0402 #define PR_BITS_PER_FLOAT 32 0403 #define PR_BITS_PER_DOUBLE 64 0404 #define PR_BITS_PER_WORD 32 0405 0406 #define PR_BITS_PER_BYTE_LOG2 3 0407 #define PR_BITS_PER_SHORT_LOG2 4 0408 #define PR_BITS_PER_INT_LOG2 5 0409 #define PR_BITS_PER_INT64_LOG2 6 0410 #define PR_BITS_PER_LONG_LOG2 5 0411 #define PR_BITS_PER_FLOAT_LOG2 5 0412 #define PR_BITS_PER_DOUBLE_LOG2 6 0413 #define PR_BITS_PER_WORD_LOG2 5 0414 0415 #define PR_ALIGN_OF_SHORT 2 0416 #define PR_ALIGN_OF_INT 4 0417 #define PR_ALIGN_OF_LONG 4 0418 #define PR_ALIGN_OF_INT64 8 0419 #define PR_ALIGN_OF_FLOAT 4 0420 #define PR_ALIGN_OF_DOUBLE 8 0421 #define PR_ALIGN_OF_POINTER 4 0422 #define PR_ALIGN_OF_WORD 4 0423 0424 #define PR_BYTES_PER_WORD_LOG2 2 0425 #define PR_BYTES_PER_DWORD_LOG2 3 0426 0427 #elif defined(__i386__) 0428 0429 #define IS_LITTLE_ENDIAN 1 0430 #undef IS_BIG_ENDIAN 0431 0432 #define PR_BYTES_PER_BYTE 1 0433 #define PR_BYTES_PER_SHORT 2 0434 #define PR_BYTES_PER_INT 4 0435 #define PR_BYTES_PER_INT64 8 0436 #define PR_BYTES_PER_LONG 4 0437 #define PR_BYTES_PER_FLOAT 4 0438 #define PR_BYTES_PER_DOUBLE 8 0439 #define PR_BYTES_PER_WORD 4 0440 #define PR_BYTES_PER_DWORD 8 0441 0442 #define PR_BITS_PER_BYTE 8 0443 #define PR_BITS_PER_SHORT 16 0444 #define PR_BITS_PER_INT 32 0445 #define PR_BITS_PER_INT64 64 0446 #define PR_BITS_PER_LONG 32 0447 #define PR_BITS_PER_FLOAT 32 0448 #define PR_BITS_PER_DOUBLE 64 0449 #define PR_BITS_PER_WORD 32 0450 0451 #define PR_BITS_PER_BYTE_LOG2 3 0452 #define PR_BITS_PER_SHORT_LOG2 4 0453 #define PR_BITS_PER_INT_LOG2 5 0454 #define PR_BITS_PER_INT64_LOG2 6 0455 #define PR_BITS_PER_LONG_LOG2 5 0456 #define PR_BITS_PER_FLOAT_LOG2 5 0457 #define PR_BITS_PER_DOUBLE_LOG2 6 0458 #define PR_BITS_PER_WORD_LOG2 5 0459 0460 #define PR_ALIGN_OF_SHORT 2 0461 #define PR_ALIGN_OF_INT 4 0462 #define PR_ALIGN_OF_LONG 4 0463 #define PR_ALIGN_OF_INT64 4 0464 #define PR_ALIGN_OF_FLOAT 4 0465 #define PR_ALIGN_OF_DOUBLE 4 0466 #define PR_ALIGN_OF_POINTER 4 0467 #define PR_ALIGN_OF_WORD 4 0468 0469 #define PR_BYTES_PER_WORD_LOG2 2 0470 #define PR_BYTES_PER_DWORD_LOG2 3 0471 0472 #elif defined(__mips__) 0473 0474 #ifdef __MIPSEB__ 0475 #define IS_BIG_ENDIAN 1 0476 #undef IS_LITTLE_ENDIAN 0477 #elif defined(__MIPSEL__) 0478 #define IS_LITTLE_ENDIAN 1 0479 #undef IS_BIG_ENDIAN 0480 #else 0481 #error "Unknown MIPS endianness." 0482 #endif 0483 0484 #define PR_BYTES_PER_BYTE 1 0485 #define PR_BYTES_PER_SHORT 2 0486 #define PR_BYTES_PER_INT 4 0487 #define PR_BYTES_PER_INT64 8 0488 #define PR_BYTES_PER_LONG 4 0489 #define PR_BYTES_PER_FLOAT 4 0490 #define PR_BYTES_PER_DOUBLE 8 0491 #define PR_BYTES_PER_WORD 4 0492 #define PR_BYTES_PER_DWORD 8 0493 0494 #define PR_BITS_PER_BYTE 8 0495 #define PR_BITS_PER_SHORT 16 0496 #define PR_BITS_PER_INT 32 0497 #define PR_BITS_PER_INT64 64 0498 #define PR_BITS_PER_LONG 32 0499 #define PR_BITS_PER_FLOAT 32 0500 #define PR_BITS_PER_DOUBLE 64 0501 #define PR_BITS_PER_WORD 32 0502 0503 #define PR_BITS_PER_BYTE_LOG2 3 0504 #define PR_BITS_PER_SHORT_LOG2 4 0505 #define PR_BITS_PER_INT_LOG2 5 0506 #define PR_BITS_PER_INT64_LOG2 6 0507 #define PR_BITS_PER_LONG_LOG2 5 0508 #define PR_BITS_PER_FLOAT_LOG2 5 0509 #define PR_BITS_PER_DOUBLE_LOG2 6 0510 #define PR_BITS_PER_WORD_LOG2 5 0511 0512 #define PR_ALIGN_OF_SHORT 2 0513 #define PR_ALIGN_OF_INT 4 0514 #define PR_ALIGN_OF_LONG 4 0515 #define PR_ALIGN_OF_INT64 8 0516 #define PR_ALIGN_OF_FLOAT 4 0517 #define PR_ALIGN_OF_DOUBLE 8 0518 #define PR_ALIGN_OF_POINTER 4 0519 #define PR_ALIGN_OF_WORD 4 0520 0521 #define PR_BYTES_PER_WORD_LOG2 2 0522 #define PR_BYTES_PER_DWORD_LOG2 3 0523 0524 #elif defined(__arm__) 0525 0526 #ifdef __ARMEB__ 0527 #undef IS_LITTLE_ENDIAN 0528 #define IS_BIG_ENDIAN 1 0529 #elif defined(__ARMEL__) 0530 #define IS_LITTLE_ENDIAN 1 0531 #undef IS_BIG_ENDIAN 0532 #else 0533 #error "Unknown ARM endianness." 0534 #endif 0535 0536 #define PR_BYTES_PER_BYTE 1 0537 #define PR_BYTES_PER_SHORT 2 0538 #define PR_BYTES_PER_INT 4 0539 #define PR_BYTES_PER_INT64 8 0540 #define PR_BYTES_PER_LONG 4 0541 #define PR_BYTES_PER_FLOAT 4 0542 #define PR_BYTES_PER_DOUBLE 8 0543 #define PR_BYTES_PER_WORD 4 0544 #define PR_BYTES_PER_DWORD 8 0545 0546 #define PR_BITS_PER_BYTE 8 0547 #define PR_BITS_PER_SHORT 16 0548 #define PR_BITS_PER_INT 32 0549 #define PR_BITS_PER_INT64 64 0550 #define PR_BITS_PER_LONG 32 0551 #define PR_BITS_PER_FLOAT 32 0552 #define PR_BITS_PER_DOUBLE 64 0553 #define PR_BITS_PER_WORD 32 0554 0555 #define PR_BITS_PER_BYTE_LOG2 3 0556 #define PR_BITS_PER_SHORT_LOG2 4 0557 #define PR_BITS_PER_INT_LOG2 5 0558 #define PR_BITS_PER_INT64_LOG2 6 0559 #define PR_BITS_PER_LONG_LOG2 5 0560 #define PR_BITS_PER_FLOAT_LOG2 5 0561 #define PR_BITS_PER_DOUBLE_LOG2 6 0562 #define PR_BITS_PER_WORD_LOG2 5 0563 0564 #define PR_ALIGN_OF_SHORT 2 0565 #define PR_ALIGN_OF_INT 4 0566 #define PR_ALIGN_OF_LONG 4 0567 #define PR_ALIGN_OF_INT64 4 0568 #define PR_ALIGN_OF_FLOAT 4 0569 #define PR_ALIGN_OF_DOUBLE 4 0570 #define PR_ALIGN_OF_POINTER 4 0571 #define PR_ALIGN_OF_WORD 4 0572 0573 #define PR_BYTES_PER_WORD_LOG2 2 0574 #define PR_BYTES_PER_DWORD_LOG2 3 0575 0576 #elif defined(__hppa__) 0577 0578 #undef IS_LITTLE_ENDIAN 0579 #define IS_BIG_ENDIAN 1 0580 0581 #define PR_BYTES_PER_BYTE 1 0582 #define PR_BYTES_PER_SHORT 2 0583 #define PR_BYTES_PER_INT 4 0584 #define PR_BYTES_PER_INT64 8 0585 #define PR_BYTES_PER_LONG 4 0586 #define PR_BYTES_PER_FLOAT 4 0587 #define PR_BYTES_PER_DOUBLE 8 0588 #define PR_BYTES_PER_WORD 4 0589 #define PR_BYTES_PER_DWORD 8 0590 0591 #define PR_BITS_PER_BYTE 8 0592 #define PR_BITS_PER_SHORT 16 0593 #define PR_BITS_PER_INT 32 0594 #define PR_BITS_PER_INT64 64 0595 #define PR_BITS_PER_LONG 32 0596 #define PR_BITS_PER_FLOAT 32 0597 #define PR_BITS_PER_DOUBLE 64 0598 #define PR_BITS_PER_WORD 32 0599 0600 #define PR_BITS_PER_BYTE_LOG2 3 0601 #define PR_BITS_PER_SHORT_LOG2 4 0602 #define PR_BITS_PER_INT_LOG2 5 0603 #define PR_BITS_PER_INT64_LOG2 6 0604 #define PR_BITS_PER_LONG_LOG2 5 0605 #define PR_BITS_PER_FLOAT_LOG2 5 0606 #define PR_BITS_PER_DOUBLE_LOG2 6 0607 #define PR_BITS_PER_WORD_LOG2 5 0608 0609 #define PR_ALIGN_OF_SHORT 2 0610 #define PR_ALIGN_OF_INT 4 0611 #define PR_ALIGN_OF_LONG 4 0612 #define PR_ALIGN_OF_INT64 8 0613 #define PR_ALIGN_OF_FLOAT 4 0614 #define PR_ALIGN_OF_DOUBLE 8 0615 #define PR_ALIGN_OF_POINTER 4 0616 #define PR_ALIGN_OF_WORD 4 0617 0618 #define PR_BYTES_PER_WORD_LOG2 2 0619 #define PR_BYTES_PER_DWORD_LOG2 3 0620 0621 #elif defined(__s390x__) 0622 0623 #define IS_BIG_ENDIAN 1 0624 #undef IS_LITTLE_ENDIAN 0625 #define IS_64 0626 0627 #define PR_BYTES_PER_BYTE 1 0628 #define PR_BYTES_PER_SHORT 2 0629 #define PR_BYTES_PER_INT 4 0630 #define PR_BYTES_PER_INT64 8 0631 #define PR_BYTES_PER_LONG 8 0632 #define PR_BYTES_PER_FLOAT 4 0633 #define PR_BYTES_PER_DOUBLE 8 0634 #define PR_BYTES_PER_WORD 8 0635 #define PR_BYTES_PER_DWORD 8 0636 0637 #define PR_BITS_PER_BYTE 8 0638 #define PR_BITS_PER_SHORT 16 0639 #define PR_BITS_PER_INT 32 0640 #define PR_BITS_PER_INT64 64 0641 #define PR_BITS_PER_LONG 64 0642 #define PR_BITS_PER_FLOAT 32 0643 #define PR_BITS_PER_DOUBLE 64 0644 #define PR_BITS_PER_WORD 64 0645 0646 #define PR_BITS_PER_BYTE_LOG2 3 0647 #define PR_BITS_PER_SHORT_LOG2 4 0648 #define PR_BITS_PER_INT_LOG2 5 0649 #define PR_BITS_PER_INT64_LOG2 6 0650 #define PR_BITS_PER_LONG_LOG2 6 0651 #define PR_BITS_PER_FLOAT_LOG2 5 0652 #define PR_BITS_PER_DOUBLE_LOG2 6 0653 #define PR_BITS_PER_WORD_LOG2 6 0654 0655 #define PR_ALIGN_OF_SHORT 2 0656 #define PR_ALIGN_OF_INT 4 0657 #define PR_ALIGN_OF_LONG 8 0658 #define PR_ALIGN_OF_INT64 8 0659 #define PR_ALIGN_OF_FLOAT 4 0660 #define PR_ALIGN_OF_DOUBLE 8 0661 #define PR_ALIGN_OF_POINTER 8 0662 #define PR_ALIGN_OF_WORD 8 0663 0664 #define PR_BYTES_PER_WORD_LOG2 3 0665 #define PR_BYTES_PER_DWORD_LOG2 3 0666 0667 #elif defined(__s390__) 0668 0669 #define IS_BIG_ENDIAN 1 0670 #undef IS_LITTLE_ENDIAN 0671 0672 #define PR_BYTES_PER_BYTE 1 0673 #define PR_BYTES_PER_SHORT 2 0674 #define PR_BYTES_PER_INT 4 0675 #define PR_BYTES_PER_INT64 8 0676 #define PR_BYTES_PER_LONG 4 0677 #define PR_BYTES_PER_FLOAT 4 0678 #define PR_BYTES_PER_DOUBLE 8 0679 #define PR_BYTES_PER_WORD 4 0680 #define PR_BYTES_PER_DWORD 8 0681 0682 #define PR_BITS_PER_BYTE 8 0683 #define PR_BITS_PER_SHORT 16 0684 #define PR_BITS_PER_INT 32 0685 #define PR_BITS_PER_INT64 64 0686 #define PR_BITS_PER_LONG 32 0687 #define PR_BITS_PER_FLOAT 32 0688 #define PR_BITS_PER_DOUBLE 64 0689 #define PR_BITS_PER_WORD 32 0690 0691 #define PR_BITS_PER_BYTE_LOG2 3 0692 #define PR_BITS_PER_SHORT_LOG2 4 0693 #define PR_BITS_PER_INT_LOG2 5 0694 #define PR_BITS_PER_INT64_LOG2 6 0695 #define PR_BITS_PER_LONG_LOG2 5 0696 #define PR_BITS_PER_FLOAT_LOG2 5 0697 #define PR_BITS_PER_DOUBLE_LOG2 6 0698 #define PR_BITS_PER_WORD_LOG2 5 0699 0700 #define PR_ALIGN_OF_SHORT 2 0701 #define PR_ALIGN_OF_INT 4 0702 #define PR_ALIGN_OF_LONG 4 0703 #define PR_ALIGN_OF_INT64 4 0704 #define PR_ALIGN_OF_FLOAT 4 0705 #define PR_ALIGN_OF_DOUBLE 4 0706 #define PR_ALIGN_OF_POINTER 4 0707 #define PR_ALIGN_OF_WORD 4 0708 0709 #define PR_BYTES_PER_WORD_LOG2 2 0710 #define PR_BYTES_PER_DWORD_LOG2 3 0711 0712 #elif defined(__sh__) 0713 0714 #ifdef __LITTLE_ENDIAN__ 0715 #define IS_LITTLE_ENDIAN 1 0716 #undef IS_BIG_ENDIAN 0717 #else 0718 #define IS_BIG_ENDIAN 1 0719 #undef IS_LITTLE_ENDIAN 0720 #endif 0721 0722 #define PR_BYTES_PER_BYTE 1 0723 #define PR_BYTES_PER_SHORT 2 0724 #define PR_BYTES_PER_INT 4 0725 #define PR_BYTES_PER_INT64 8 0726 #define PR_BYTES_PER_LONG 4 0727 #define PR_BYTES_PER_FLOAT 4 0728 #define PR_BYTES_PER_DOUBLE 8 0729 #define PR_BYTES_PER_WORD 4 0730 #define PR_BYTES_PER_DWORD 8 0731 0732 #define PR_BITS_PER_BYTE 8 0733 #define PR_BITS_PER_SHORT 16 0734 #define PR_BITS_PER_INT 32 0735 #define PR_BITS_PER_INT64 64 0736 #define PR_BITS_PER_LONG 32 0737 #define PR_BITS_PER_FLOAT 32 0738 #define PR_BITS_PER_DOUBLE 64 0739 #define PR_BITS_PER_WORD 32 0740 0741 #define PR_BITS_PER_BYTE_LOG2 3 0742 #define PR_BITS_PER_SHORT_LOG2 4 0743 #define PR_BITS_PER_INT_LOG2 5 0744 #define PR_BITS_PER_INT64_LOG2 6 0745 #define PR_BITS_PER_LONG_LOG2 5 0746 #define PR_BITS_PER_FLOAT_LOG2 5 0747 #define PR_BITS_PER_DOUBLE_LOG2 6 0748 #define PR_BITS_PER_WORD_LOG2 5 0749 0750 #define PR_ALIGN_OF_SHORT 2 0751 #define PR_ALIGN_OF_INT 4 0752 #define PR_ALIGN_OF_LONG 4 0753 #define PR_ALIGN_OF_INT64 4 0754 #define PR_ALIGN_OF_FLOAT 4 0755 #define PR_ALIGN_OF_DOUBLE 4 0756 #define PR_ALIGN_OF_POINTER 4 0757 #define PR_ALIGN_OF_WORD 4 0758 0759 #define PR_BYTES_PER_WORD_LOG2 2 0760 #define PR_BYTES_PER_DWORD_LOG2 3 0761 0762 #else 0763 0764 #error "Unknown CPU architecture" 0765 0766 #endif 0767 0768 #ifndef HAVE_LONG_LONG 0769 #define HAVE_LONG_LONG 0770 #endif 0771 #if PR_ALIGN_OF_DOUBLE == 8 0772 #define HAVE_ALIGNED_DOUBLES 0773 #endif 0774 #if PR_ALIGN_OF_INT64 == 8 0775 #define HAVE_ALIGNED_LONGLONGS 0776 #endif 0777 0778 #ifndef NO_NSPR_10_SUPPORT 0779 0780 #define BYTES_PER_BYTE PR_BYTES_PER_BYTE 0781 #define BYTES_PER_SHORT PR_BYTES_PER_SHORT 0782 #define BYTES_PER_INT PR_BYTES_PER_INT 0783 #define BYTES_PER_INT64 PR_BYTES_PER_INT64 0784 #define BYTES_PER_LONG PR_BYTES_PER_LONG 0785 #define BYTES_PER_FLOAT PR_BYTES_PER_FLOAT 0786 #define BYTES_PER_DOUBLE PR_BYTES_PER_DOUBLE 0787 #define BYTES_PER_WORD PR_BYTES_PER_WORD 0788 #define BYTES_PER_DWORD PR_BYTES_PER_DWORD 0789 0790 #define BITS_PER_BYTE PR_BITS_PER_BYTE 0791 #define BITS_PER_SHORT PR_BITS_PER_SHORT 0792 #define BITS_PER_INT PR_BITS_PER_INT 0793 #define BITS_PER_INT64 PR_BITS_PER_INT64 0794 #define BITS_PER_LONG PR_BITS_PER_LONG 0795 #define BITS_PER_FLOAT PR_BITS_PER_FLOAT 0796 #define BITS_PER_DOUBLE PR_BITS_PER_DOUBLE 0797 #define BITS_PER_WORD PR_BITS_PER_WORD 0798 0799 #define BITS_PER_BYTE_LOG2 PR_BITS_PER_BYTE_LOG2 0800 #define BITS_PER_SHORT_LOG2 PR_BITS_PER_SHORT_LOG2 0801 #define BITS_PER_INT_LOG2 PR_BITS_PER_INT_LOG2 0802 #define BITS_PER_INT64_LOG2 PR_BITS_PER_INT64_LOG2 0803 #define BITS_PER_LONG_LOG2 PR_BITS_PER_LONG_LOG2 0804 #define BITS_PER_FLOAT_LOG2 PR_BITS_PER_FLOAT_LOG2 0805 #define BITS_PER_DOUBLE_LOG2 PR_BITS_PER_DOUBLE_LOG2 0806 #define BITS_PER_WORD_LOG2 PR_BITS_PER_WORD_LOG2 0807 0808 #define ALIGN_OF_SHORT PR_ALIGN_OF_SHORT 0809 #define ALIGN_OF_INT PR_ALIGN_OF_INT 0810 #define ALIGN_OF_LONG PR_ALIGN_OF_LONG 0811 #define ALIGN_OF_INT64 PR_ALIGN_OF_INT64 0812 #define ALIGN_OF_FLOAT PR_ALIGN_OF_FLOAT 0813 #define ALIGN_OF_DOUBLE PR_ALIGN_OF_DOUBLE 0814 #define ALIGN_OF_POINTER PR_ALIGN_OF_POINTER 0815 #define ALIGN_OF_WORD PR_ALIGN_OF_WORD 0816 0817 #define BYTES_PER_WORD_LOG2 PR_BYTES_PER_WORD_LOG2 0818 #define BYTES_PER_DWORD_LOG2 PR_BYTES_PER_DWORD_LOG2 0819 #define WORDS_PER_DWORD_LOG2 PR_WORDS_PER_DWORD_LOG2 0820 0821 #endif /* NO_NSPR_10_SUPPORT */ 0822 0823 #endif /* nspr_cpucfg___ */