github.com/afumu/libc@v0.0.6/stdlib/stdlib_windows_arm64.go (about)

     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: */