stdlib_windows_arm64.go (18920B)
1 // Code generated by 'ccgo stdlib\gen.c -crt-import-path "" -export-defines "" -export-enums "" -export-externs X -export-fields F -export-structs "" -export-typedefs "" -header -hide _OSSwapInt16,_OSSwapInt32,_OSSwapInt64 -o stdlib\stdlib_windows_arm64.go -pkgname stdlib', DO NOT EDIT. 2 3 package stdlib 4 5 import ( 6 "math" 7 "reflect" 8 "sync/atomic" 9 "unsafe" 10 ) 11 12 var _ = math.Pi 13 var _ reflect.Kind 14 var _ atomic.Value 15 var _ unsafe.Pointer 16 17 const ( 18 CHAR_BIT = 8 19 CHAR_MAX = 127 20 CHAR_MIN = -128 21 DUMMYSTRUCTNAME = 0 22 DUMMYSTRUCTNAME1 = 0 23 DUMMYSTRUCTNAME2 = 0 24 DUMMYSTRUCTNAME3 = 0 25 DUMMYSTRUCTNAME4 = 0 26 DUMMYSTRUCTNAME5 = 0 27 DUMMYUNIONNAME = 0 28 DUMMYUNIONNAME1 = 0 29 DUMMYUNIONNAME2 = 0 30 DUMMYUNIONNAME3 = 0 31 DUMMYUNIONNAME4 = 0 32 DUMMYUNIONNAME5 = 0 33 DUMMYUNIONNAME6 = 0 34 DUMMYUNIONNAME7 = 0 35 DUMMYUNIONNAME8 = 0 36 DUMMYUNIONNAME9 = 0 37 EXIT_FAILURE = 1 38 EXIT_SUCCESS = 0 39 INT_MAX = 2147483647 40 INT_MIN = -2147483648 41 LLONG_MAX = 9223372036854775807 42 LLONG_MIN = -9223372036854775808 43 LONG_LONG_MAX = 9223372036854775807 44 LONG_LONG_MIN = -9223372036854775808 45 LONG_MAX = 2147483647 46 LONG_MIN = -2147483648 47 MB_LEN_MAX = 1 48 MINGW_DDK_H = 0 49 MINGW_HAS_DDK_H = 1 50 MINGW_HAS_SECURE_API = 1 51 MINGW_SDK_INIT = 0 52 RAND_MAX = 0x7fff 53 SCHAR_MAX = 127 54 SCHAR_MIN = -128 55 SHRT_MAX = 32767 56 SHRT_MIN = -32768 57 UCHAR_MAX = 255 58 UINT_MAX = 4294967295 59 ULLONG_MAX = 18446744073709551615 60 ULONG_LONG_MAX = 18446744073709551615 61 ULONG_MAX = 4294967295 62 UNALIGNED = 0 63 USE___UUIDOF = 0 64 USHRT_MAX = 65535 65 WIN32 = 1 66 WIN64 = 1 67 WINNT = 1 68 X_AGLOBAL = 0 69 X_ALLOCA_S_HEAP_MARKER = 0xDDDD 70 X_ALLOCA_S_MARKER_SIZE = 16 71 X_ALLOCA_S_STACK_MARKER = 0xCCCC 72 X_ALLOCA_S_THRESHOLD = 1024 73 X_ANONYMOUS_STRUCT = 0 74 X_ANONYMOUS_UNION = 0 75 X_ARGMAX = 100 76 X_ARM64_ = 1 77 X_CALL_REPORTFAULT = 0x2 78 X_CONST_RETURN = 0 79 X_CRTNOALIAS = 0 80 X_CRTRESTRICT = 0 81 X_CRT_ABS_DEFINED = 0 82 X_CRT_ALGO_DEFINED = 0 83 X_CRT_ALLOCATION_DEFINED = 0 84 X_CRT_ALTERNATIVE_IMPORTED = 0 85 X_CRT_ATOF_DEFINED = 0 86 X_CRT_DOUBLE_DEC = 0 87 X_CRT_ERRNO_DEFINED = 0 88 X_CRT_MANAGED_HEAP_DEPRECATE = 0 89 X_CRT_PACKING = 8 90 X_CRT_PERROR_DEFINED = 0 91 X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0 92 X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0 93 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0 94 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0 95 X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0 96 X_CRT_SWAB_DEFINED = 0 97 X_CRT_SYSTEM_DEFINED = 0 98 X_CRT_TERMINATE_DEFINED = 0 99 X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0 100 X_CRT_WPERROR_DEFINED = 0 101 X_CRT_WSYSTEM_DEFINED = 0 102 X_CVTBUFSIZE = 349 103 X_DIV_T_DEFINED = 0 104 X_DLL = 0 105 X_ERRCODE_DEFINED = 0 106 X_FILE_OFFSET_BITS = 64 107 X_FREEA_INLINE = 0 108 X_FREEENTRY = 0 109 X_GCC_LIMITS_H_ = 0 110 X_HEAPBADBEGIN = -3 111 X_HEAPBADNODE = -4 112 X_HEAPBADPTR = -6 113 X_HEAPEMPTY = -1 114 X_HEAPEND = -5 115 X_HEAPINFO_DEFINED = 0 116 X_HEAPOK = -2 117 X_HEAP_MAXREQ = 0xFFFFFFFFFFFFFFE0 118 X_INC_CORECRT = 0 119 X_INC_CORECRT_WSTDLIB = 0 120 X_INC_CRTDEFS = 0 121 X_INC_CRTDEFS_MACRO = 0 122 X_INC_MINGW_SECAPI = 0 123 X_INC_STDLIB = 0 124 X_INC_STDLIB_S = 0 125 X_INC_VADEFS = 0 126 X_INC__MINGW_H = 0 127 X_INT128_DEFINED = 0 128 X_INTPTR_T_DEFINED = 0 129 X_MALLOC_H_ = 0 130 X_MAX_DIR = 256 131 X_MAX_DRIVE = 3 132 X_MAX_ENV = 32767 133 X_MAX_EXT = 256 134 X_MAX_FNAME = 256 135 X_MAX_PATH = 260 136 X_MAX_WAIT_MALLOC_CRT = 60000 137 X_MT = 0 138 X_M_ARM64 = 1 139 X_ONEXIT_T_DEFINED = 0 140 X_OUT_TO_DEFAULT = 0 141 X_OUT_TO_MSGBOX = 2 142 X_OUT_TO_STDERR = 1 143 X_PGLOBAL = 0 144 X_PTRDIFF_T_ = 0 145 X_PTRDIFF_T_DEFINED = 0 146 X_QSORT_S_DEFINED = 0 147 X_REPORT_ERRMODE = 3 148 X_RSIZE_T_DEFINED = 0 149 X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD 150 X_SIZE_T_DEFINED = 0 151 X_SSIZE_T_DEFINED = 0 152 X_TAGLC_ID_DEFINED = 0 153 X_THREADLOCALEINFO = 0 154 X_TIME32_T_DEFINED = 0 155 X_TIME64_T_DEFINED = 0 156 X_TIME_T_DEFINED = 0 157 X_UCRT = 0 158 X_UINTPTR_T_DEFINED = 0 159 X_USEDENTRY = 1 160 X_VA_LIST_DEFINED = 0 161 X_W64 = 0 162 X_WCHAR_T_DEFINED = 0 163 X_WCTYPE_T_DEFINED = 0 164 X_WIN32 = 1 165 X_WIN32_WINNT = 0x601 166 X_WIN64 = 1 167 X_WINT_T = 0 168 X_WRITE_ABORT_MSG = 0x1 169 X_WSTDLIBP_DEFINED = 0 170 X_WSTDLIB_DEFINED = 0 171 ) 172 173 type Ptrdiff_t = int64 /* <builtin>:3:26 */ 174 175 type Size_t = uint64 /* <builtin>:9:23 */ 176 177 type Wchar_t = uint16 /* <builtin>:15:24 */ 178 179 type X__int128_t = struct { 180 Flo int64 181 Fhi int64 182 } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128 183 type X__uint128_t = struct { 184 Flo uint64 185 Fhi uint64 186 } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128 187 188 type X__builtin_va_list = uintptr /* <builtin>:46:14 */ 189 type X__float128 = float64 /* <builtin>:47:21 */ 190 191 type Va_list = X__builtin_va_list /* <builtin>:50:27 */ 192 193 // * 194 // This file has no copyright assigned and is placed in the Public Domain. 195 // This file is part of the mingw-w64 runtime package. 196 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 197 198 // * 199 // This file has no copyright assigned and is placed in the Public Domain. 200 // This file is part of the mingw-w64 runtime package. 201 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 202 203 // * 204 // This file has no copyright assigned and is placed in the Public Domain. 205 // This file is part of the mingw-w64 runtime package. 206 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 207 208 // * 209 // This file has no copyright assigned and is placed in the Public Domain. 210 // This file is part of the mingw-w64 runtime package. 211 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 212 213 // This macro holds an monotonic increasing value, which indicates 214 // a specific fix/patch is present on trunk. This value isn't related to 215 // minor/major version-macros. It is increased on demand, if a big 216 // fix was applied to trunk. This macro gets just increased on trunk. For 217 // other branches its value won't be modified. 218 219 // mingw.org's version macros: these make gcc to define 220 // MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global 221 // and the __mingwthr_key_dtor() function from the MinGW 222 // CRT in its private gthr-win32.h header. 223 224 // Set VC specific compiler target macros. 225 226 // MS does not prefix symbols by underscores for 64-bit. 227 // As we have to support older gcc version, which are using underscores 228 // as symbol prefix for x64, we have to check here for the user label 229 // prefix defined by gcc. 230 231 // Special case nameless struct/union. 232 233 // MinGW-w64 has some additional C99 printf/scanf feature support. 234 // So we add some helper macros to ease recognition of them. 235 236 // If _FORTIFY_SOURCE is enabled, some inline functions may use 237 // __builtin_va_arg_pack(). GCC may report an error if the address 238 // of such a function is used. Set _FORTIFY_VA_ARG=0 in this case. 239 240 // Enable workaround for ABI incompatibility on affected platforms 241 242 // * 243 // This file has no copyright assigned and is placed in the Public Domain. 244 // This file is part of the mingw-w64 runtime package. 245 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 246 247 // http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx 248 // Templates won't work in C, will break if secure API is not enabled, disabled 249 250 // https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true 251 // fallback on default implementation if we can't know the size of the destination 252 253 // Include _cygwin.h if we're building a Cygwin application. 254 255 // Target specific macro replacement for type "long". In the Windows API, 256 // the type long is always 32 bit, even if the target is 64 bit (LLP64). 257 // On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right 258 // sized definitions and declarations, all usage of type long in the Windows 259 // headers have to be replaced by the below defined macro __LONG32. 260 261 // C/C++ specific language defines. 262 263 // Note the extern. This is needed to work around GCC's 264 // limitations in handling dllimport attribute. 265 266 // Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's 267 // variadiac macro facility, because variadic macros cause syntax 268 // errors with --traditional-cpp. 269 270 // High byte is the major version, low byte is the minor. 271 272 // Allow both 0x1400 and 0xE00 to identify UCRT 273 274 // ===-------- vadefs.h ---------------------------------------------------=== 275 // 276 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 277 // See https://llvm.org/LICENSE.txt for license information. 278 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 279 // 280 //===-----------------------------------------------------------------------=== 281 282 // Only include this if we are aiming for MSVC compatibility. 283 // * 284 // This file has no copyright assigned and is placed in the Public Domain. 285 // This file is part of the mingw-w64 runtime package. 286 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 287 288 // * 289 // This file has no copyright assigned and is placed in the Public Domain. 290 // This file is part of the mingw-w64 runtime package. 291 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 292 293 // for backward compatibility 294 295 type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */ 296 297 type Ssize_t = int64 /* corecrt.h:45:35 */ 298 299 type Rsize_t = Size_t /* corecrt.h:52:16 */ 300 301 type Intptr_t = int64 /* corecrt.h:62:35 */ 302 303 type Uintptr_t = uint64 /* corecrt.h:75:44 */ 304 305 type Wint_t = uint16 /* corecrt.h:106:24 */ 306 type Wctype_t = uint16 /* corecrt.h:107:24 */ 307 308 type Errno_t = int32 /* corecrt.h:113:13 */ 309 310 type X__time32_t = int32 /* corecrt.h:118:14 */ 311 312 type X__time64_t = int64 /* corecrt.h:123:35 */ 313 314 type Time_t = X__time64_t /* corecrt.h:138:20 */ 315 316 type Threadlocaleinfostruct = struct { 317 F_locale_pctype uintptr 318 F_locale_mb_cur_max int32 319 F_locale_lc_codepage uint32 320 } /* corecrt.h:430:1 */ 321 322 type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */ 323 type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */ 324 325 type Localeinfo_struct = struct { 326 Flocinfo Pthreadlocinfo 327 Fmbcinfo Pthreadmbcinfo 328 } /* corecrt.h:436:9 */ 329 330 type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */ 331 type X_locale_t = uintptr /* corecrt.h:439:19 */ 332 333 type TagLC_ID = struct { 334 FwLanguage uint16 335 FwCountry uint16 336 FwCodePage uint16 337 } /* corecrt.h:443:9 */ 338 339 type LC_ID = TagLC_ID /* corecrt.h:447:3 */ 340 type LPLC_ID = uintptr /* corecrt.h:447:9 */ 341 342 type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */ 343 344 //===---- limits.h - Standard header for integer sizes --------------------===* * 345 // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. 346 // See https://llvm.org/LICENSE.txt for license information. 347 // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception 348 // 349 // \*===----------------------------------------------------------------------=== 350 351 // The system's limits.h may, in turn, try to #include_next GCC's limits.h. 352 // Avert this #include_next madness. 353 354 // System headers include a number of constants from POSIX in <limits.h>. 355 // Include it if we're hosted. 356 357 // Many system headers try to "help us out" by defining these. No really, we 358 // know how big each datatype is. 359 360 // C90/99 5.2.4.2.1 361 362 // C2x 5.2.4.2.1 363 // FIXME: This is using the placeholder dates Clang produces for these macros 364 // in C2x mode; switch to the correct values once they've been published. 365 366 // C99 5.2.4.2.1: Added long long. 367 // C++11 18.3.3.2: same contents as the Standard C Library header <limits.h>. 368 // 369 370 // LONG_LONG_MIN/LONG_LONG_MAX/ULONG_LONG_MAX are a GNU extension. It's too bad 371 // that we don't have something like #pragma poison that could be used to 372 // deprecate a macro - the code should just use LLONG_MAX and friends. 373 // 374 375 type X_onexit_t = uintptr /* stdlib.h:50:15 */ 376 377 type X_div_t = struct { 378 Fquot int32 379 Frem int32 380 } /* stdlib.h:60:11 */ 381 382 type Div_t = X_div_t /* stdlib.h:63:5 */ 383 384 type X_ldiv_t = struct { 385 Fquot int32 386 Frem int32 387 } /* stdlib.h:65:11 */ 388 389 type Ldiv_t = X_ldiv_t /* stdlib.h:68:5 */ 390 391 type X_LDOUBLE = struct{ Fld [10]uint8 } /* stdlib.h:77:5 */ 392 393 type X_CRT_DOUBLE = struct{ Fx float64 } /* stdlib.h:84:5 */ 394 395 type X_CRT_FLOAT = struct{ Ff float32 } /* stdlib.h:88:5 */ 396 397 type X_LONGDOUBLE = struct{ Fx float64 } /* stdlib.h:95:5 */ 398 399 type X_LDBL12 = struct{ Fld12 [12]uint8 } /* stdlib.h:102:5 */ 400 401 type X_purecall_handler = uintptr /* stdlib.h:143:16 */ 402 403 type X_invalid_parameter_handler = uintptr /* stdlib.h:148:16 */ 404 405 type Lldiv_t = struct { 406 Fquot int64 407 Frem int64 408 } /* stdlib.h:724:61 */ 409 410 // * 411 // This file has no copyright assigned and is placed in the Public Domain. 412 // This file is part of the mingw-w64 runtime package. 413 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 414 415 // * 416 // This file has no copyright assigned and is placed in the Public Domain. 417 // This file is part of the mingw-w64 runtime package. 418 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 419 420 // * 421 // This file has no copyright assigned and is placed in the Public Domain. 422 // This file is part of the mingw-w64 runtime package. 423 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 424 425 // Return codes for _heapwalk() 426 427 // Values for _heapinfo.useflag 428 429 // The structure used to walk through the heap with _heapwalk. 430 type X_heapinfo = struct { 431 F_pentry uintptr 432 F_size Size_t 433 F_useflag int32 434 F__ccgo_pad1 [4]byte 435 } /* malloc.h:46:11 */ 436 437 // * 438 // This file has no copyright assigned and is placed in the Public Domain. 439 // This file is part of the mingw-w64 runtime package. 440 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 441 442 // * 443 // This file has no copyright assigned and is placed in the Public Domain. 444 // This file is part of the mingw-w64 runtime package. 445 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 446 447 // * 448 // This file has no copyright assigned and is placed in the Public Domain. 449 // This file is part of the mingw-w64 runtime package. 450 // No warranty is given; refer to the file DISCLAIMER.PD within this package. 451 452 // Return codes for _heapwalk() 453 454 // Values for _heapinfo.useflag 455 456 // The structure used to walk through the heap with _heapwalk. 457 type X_HEAPINFO = X_heapinfo /* malloc.h:50:5 */ 458 459 var _ int8 /* gen.c:2:13: */