PageRenderTime 962ms CodeModel.GetById 946ms RepoModel.GetById 1ms app.codeStats 0ms

/js/lib/Socket.IO-node/support/expresso/deps/jscoverage/js/jscpucfg.h

http://github.com/onedayitwillmake/RealtimeMultiplayerNodeJs
C++ Header | 212 lines | 141 code | 33 blank | 38 comment | 8 complexity | 017e04d55c701c65bd79cbb2d6ca1e45 MD5 | raw file
Possible License(s): GPL-2.0, LGPL-2.1, MPL-2.0-no-copyleft-exception, BSD-3-Clause
  1. /* -*- Mode: C; tab-width: 8; indent-tabs-mode: nil; c-basic-offset: 4 -*-
  2. *
  3. * ***** BEGIN LICENSE BLOCK *****
  4. * Version: MPL 1.1/GPL 2.0/LGPL 2.1
  5. *
  6. * The contents of this file are subject to the Mozilla Public License Version
  7. * 1.1 (the "License"); you may not use this file except in compliance with
  8. * the License. You may obtain a copy of the License at
  9. * http://www.mozilla.org/MPL/
  10. *
  11. * Software distributed under the License is distributed on an "AS IS" basis,
  12. * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
  13. * for the specific language governing rights and limitations under the
  14. * License.
  15. *
  16. * The Original Code is Mozilla Communicator client code, released
  17. * March 31, 1998.
  18. *
  19. * The Initial Developer of the Original Code is
  20. * Netscape Communications Corporation.
  21. * Portions created by the Initial Developer are Copyright (C) 1998
  22. * the Initial Developer. All Rights Reserved.
  23. *
  24. * Contributor(s):
  25. *
  26. * Alternatively, the contents of this file may be used under the terms of
  27. * either of the GNU General Public License Version 2 or later (the "GPL"),
  28. * or the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
  29. * in which case the provisions of the GPL or the LGPL are applicable instead
  30. * of those above. If you wish to allow use of your version of this file only
  31. * under the terms of either the GPL or the LGPL, and not to allow others to
  32. * use your version of this file under the terms of the MPL, indicate your
  33. * decision by deleting the provisions above and replace them with the notice
  34. * and other provisions required by the GPL or the LGPL. If you do not delete
  35. * the provisions above, a recipient may use your version of this file under
  36. * the terms of any one of the MPL, the GPL or the LGPL.
  37. *
  38. * ***** END LICENSE BLOCK ***** */
  39. #ifndef js_cpucfg___
  40. #define js_cpucfg___
  41. #define JS_HAVE_LONG_LONG
  42. #if defined(XP_WIN) || defined(XP_OS2) || defined(WINCE)
  43. #if defined(_WIN64)
  44. #if defined(_M_X64) || defined(_M_AMD64) || defined(_AMD64_)
  45. #define IS_LITTLE_ENDIAN 1
  46. #undef IS_BIG_ENDIAN
  47. #define JS_BYTES_PER_BYTE 1L
  48. #define JS_BYTES_PER_SHORT 2L
  49. #define JS_BYTES_PER_INT 4L
  50. #define JS_BYTES_PER_INT64 8L
  51. #define JS_BYTES_PER_LONG 4L
  52. #define JS_BYTES_PER_FLOAT 4L
  53. #define JS_BYTES_PER_DOUBLE 8L
  54. #define JS_BYTES_PER_WORD 8L
  55. #define JS_BYTES_PER_DWORD 8L
  56. #define JS_BITS_PER_BYTE 8L
  57. #define JS_BITS_PER_SHORT 16L
  58. #define JS_BITS_PER_INT 32L
  59. #define JS_BITS_PER_INT64 64L
  60. #define JS_BITS_PER_LONG 32L
  61. #define JS_BITS_PER_FLOAT 32L
  62. #define JS_BITS_PER_DOUBLE 64L
  63. #define JS_BITS_PER_WORD 64L
  64. #define JS_BITS_PER_BYTE_LOG2 3L
  65. #define JS_BITS_PER_SHORT_LOG2 4L
  66. #define JS_BITS_PER_INT_LOG2 5L
  67. #define JS_BITS_PER_INT64_LOG2 6L
  68. #define JS_BITS_PER_LONG_LOG2 5L
  69. #define JS_BITS_PER_FLOAT_LOG2 5L
  70. #define JS_BITS_PER_DOUBLE_LOG2 6L
  71. #define JS_BITS_PER_WORD_LOG2 6L
  72. #define JS_ALIGN_OF_SHORT 2L
  73. #define JS_ALIGN_OF_INT 4L
  74. #define JS_ALIGN_OF_LONG 4L
  75. #define JS_ALIGN_OF_INT64 8L
  76. #define JS_ALIGN_OF_FLOAT 4L
  77. #define JS_ALIGN_OF_DOUBLE 8L
  78. #define JS_ALIGN_OF_POINTER 8L
  79. #define JS_ALIGN_OF_WORD 8L
  80. #define JS_BYTES_PER_WORD_LOG2 3L
  81. #define JS_BYTES_PER_DWORD_LOG2 3L
  82. #define PR_WORDS_PER_DWORD_LOG2 0L
  83. #else /* !(defined(_M_X64) || defined(_M_AMD64) || defined(_AMD64_)) */
  84. #error "CPU type is unknown"
  85. #endif /* !(defined(_M_X64) || defined(_M_AMD64) || defined(_AMD64_)) */
  86. #elif defined(_WIN32) || defined(XP_OS2) || defined(WINCE)
  87. #ifdef __WATCOMC__
  88. #define HAVE_VA_LIST_AS_ARRAY 1
  89. #endif
  90. #define IS_LITTLE_ENDIAN 1
  91. #undef IS_BIG_ENDIAN
  92. #define JS_BYTES_PER_BYTE 1L
  93. #define JS_BYTES_PER_SHORT 2L
  94. #define JS_BYTES_PER_INT 4L
  95. #define JS_BYTES_PER_INT64 8L
  96. #define JS_BYTES_PER_LONG 4L
  97. #define JS_BYTES_PER_FLOAT 4L
  98. #define JS_BYTES_PER_DOUBLE 8L
  99. #define JS_BYTES_PER_WORD 4L
  100. #define JS_BYTES_PER_DWORD 8L
  101. #define JS_BITS_PER_BYTE 8L
  102. #define JS_BITS_PER_SHORT 16L
  103. #define JS_BITS_PER_INT 32L
  104. #define JS_BITS_PER_INT64 64L
  105. #define JS_BITS_PER_LONG 32L
  106. #define JS_BITS_PER_FLOAT 32L
  107. #define JS_BITS_PER_DOUBLE 64L
  108. #define JS_BITS_PER_WORD 32L
  109. #define JS_BITS_PER_BYTE_LOG2 3L
  110. #define JS_BITS_PER_SHORT_LOG2 4L
  111. #define JS_BITS_PER_INT_LOG2 5L
  112. #define JS_BITS_PER_INT64_LOG2 6L
  113. #define JS_BITS_PER_LONG_LOG2 5L
  114. #define JS_BITS_PER_FLOAT_LOG2 5L
  115. #define JS_BITS_PER_DOUBLE_LOG2 6L
  116. #define JS_BITS_PER_WORD_LOG2 5L
  117. #define JS_ALIGN_OF_SHORT 2L
  118. #define JS_ALIGN_OF_INT 4L
  119. #define JS_ALIGN_OF_LONG 4L
  120. #define JS_ALIGN_OF_INT64 8L
  121. #define JS_ALIGN_OF_FLOAT 4L
  122. #define JS_ALIGN_OF_DOUBLE 4L
  123. #define JS_ALIGN_OF_POINTER 4L
  124. #define JS_ALIGN_OF_WORD 4L
  125. #define JS_BYTES_PER_WORD_LOG2 2L
  126. #define JS_BYTES_PER_DWORD_LOG2 3L
  127. #define PR_WORDS_PER_DWORD_LOG2 1L
  128. #endif /* _WIN32 || XP_OS2 || WINCE*/
  129. #if defined(_WINDOWS) && !defined(_WIN32) /* WIN16 */
  130. #define IS_LITTLE_ENDIAN 1
  131. #undef IS_BIG_ENDIAN
  132. #define JS_BYTES_PER_BYTE 1L
  133. #define JS_BYTES_PER_SHORT 2L
  134. #define JS_BYTES_PER_INT 2L
  135. #define JS_BYTES_PER_INT64 8L
  136. #define JS_BYTES_PER_LONG 4L
  137. #define JS_BYTES_PER_FLOAT 4L
  138. #define JS_BYTES_PER_DOUBLE 8L
  139. #define JS_BYTES_PER_WORD 4L
  140. #define JS_BYTES_PER_DWORD 8L
  141. #define JS_BITS_PER_BYTE 8L
  142. #define JS_BITS_PER_SHORT 16L
  143. #define JS_BITS_PER_INT 16L
  144. #define JS_BITS_PER_INT64 64L
  145. #define JS_BITS_PER_LONG 32L
  146. #define JS_BITS_PER_FLOAT 32L
  147. #define JS_BITS_PER_DOUBLE 64L
  148. #define JS_BITS_PER_WORD 32L
  149. #define JS_BITS_PER_BYTE_LOG2 3L
  150. #define JS_BITS_PER_SHORT_LOG2 4L
  151. #define JS_BITS_PER_INT_LOG2 4L
  152. #define JS_BITS_PER_INT64_LOG2 6L
  153. #define JS_BITS_PER_LONG_LOG2 5L
  154. #define JS_BITS_PER_FLOAT_LOG2 5L
  155. #define JS_BITS_PER_DOUBLE_LOG2 6L
  156. #define JS_BITS_PER_WORD_LOG2 5L
  157. #define JS_ALIGN_OF_SHORT 2L
  158. #define JS_ALIGN_OF_INT 2L
  159. #define JS_ALIGN_OF_LONG 2L
  160. #define JS_ALIGN_OF_INT64 2L
  161. #define JS_ALIGN_OF_FLOAT 2L
  162. #define JS_ALIGN_OF_DOUBLE 2L
  163. #define JS_ALIGN_OF_POINTER 2L
  164. #define JS_ALIGN_OF_WORD 2L
  165. #define JS_BYTES_PER_WORD_LOG2 2L
  166. #define JS_BYTES_PER_DWORD_LOG2 3L
  167. #define PR_WORDS_PER_DWORD_LOG2 1L
  168. #endif /* defined(_WINDOWS) && !defined(_WIN32) */
  169. #elif defined(XP_UNIX) || defined(XP_BEOS)
  170. #error "This file is supposed to be auto-generated on UNIX platforms, but the"
  171. #error "static version for Mac and Windows platforms is being used."
  172. #error "Something's probably wrong with paths/headers/dependencies/Makefiles."
  173. #else
  174. #error "Must define one of XP_BEOS, XP_OS2, XP_WIN, or XP_UNIX"
  175. #endif
  176. #ifndef JS_STACK_GROWTH_DIRECTION
  177. #define JS_STACK_GROWTH_DIRECTION (-1)
  178. #endif
  179. #endif /* js_cpucfg___ */