github.com/afumu/libc@v0.0.6/time/time_windows_amd64.go (about)

     1  // Code generated by 'ccgo time\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 time\time_windows_amd64.go -pkgname time', DO NOT EDIT.
     2  
     3  package time
     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  	CLK_TCK                                         = 1000
    19  	CLOCKS_PER_SEC                                  = 1000
    20  	CLOCK_MONOTONIC                                 = 1
    21  	CLOCK_PROCESS_CPUTIME_ID                        = 2
    22  	CLOCK_REALTIME                                  = 0
    23  	CLOCK_THREAD_CPUTIME_ID                         = 3
    24  	DUMMYSTRUCTNAME                                 = 0
    25  	DUMMYSTRUCTNAME1                                = 0
    26  	DUMMYSTRUCTNAME2                                = 0
    27  	DUMMYSTRUCTNAME3                                = 0
    28  	DUMMYSTRUCTNAME4                                = 0
    29  	DUMMYSTRUCTNAME5                                = 0
    30  	DUMMYUNIONNAME                                  = 0
    31  	DUMMYUNIONNAME1                                 = 0
    32  	DUMMYUNIONNAME2                                 = 0
    33  	DUMMYUNIONNAME3                                 = 0
    34  	DUMMYUNIONNAME4                                 = 0
    35  	DUMMYUNIONNAME5                                 = 0
    36  	DUMMYUNIONNAME6                                 = 0
    37  	DUMMYUNIONNAME7                                 = 0
    38  	DUMMYUNIONNAME8                                 = 0
    39  	DUMMYUNIONNAME9                                 = 0
    40  	MINGW_DDK_H                                     = 0
    41  	MINGW_DDRAW_VERSION                             = 7
    42  	MINGW_HAS_DDK_H                                 = 1
    43  	MINGW_HAS_DDRAW_H                               = 1
    44  	MINGW_HAS_SECURE_API                            = 1
    45  	MINGW_SDK_INIT                                  = 0
    46  	TIMER_ABSTIME                                   = 1
    47  	UNALIGNED                                       = 0
    48  	USE___UUIDOF                                    = 0
    49  	WIN32                                           = 1
    50  	WIN64                                           = 1
    51  	WINNT                                           = 1
    52  	WINPTHREAD_API                                  = 0
    53  	WIN_PTHREADS_TIME_H                             = 0
    54  	X_AGLOBAL                                       = 0
    55  	X_ANONYMOUS_STRUCT                              = 0
    56  	X_ANONYMOUS_UNION                               = 0
    57  	X_ARGMAX                                        = 100
    58  	X_CLOCK_T_DEFINED                               = 0
    59  	X_CONST_RETURN                                  = 0
    60  	X_CRTNOALIAS                                    = 0
    61  	X_CRTRESTRICT                                   = 0
    62  	X_CRT_ALTERNATIVE_IMPORTED                      = 0
    63  	X_CRT_MANAGED_HEAP_DEPRECATE                    = 0
    64  	X_CRT_PACKING                                   = 8
    65  	X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES          = 0
    66  	X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY   = 0
    67  	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES        = 0
    68  	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT  = 0
    69  	X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
    70  	X_DLL                                           = 0
    71  	X_ERRCODE_DEFINED                               = 0
    72  	X_FILE_OFFSET_BITS                              = 64
    73  	X_INC_CRTDEFS                                   = 0
    74  	X_INC_CRTDEFS_MACRO                             = 0
    75  	X_INC_MINGW_SECAPI                              = 0
    76  	X_INC_VADEFS                                    = 0
    77  	X_INC_WTIME_INL                                 = 0
    78  	X_INC_WTIME_S_INL                               = 0
    79  	X_INC__MINGW_H                                  = 0
    80  	X_INT128_DEFINED                                = 0
    81  	X_INTEGRAL_MAX_BITS                             = 64
    82  	X_INTPTR_T_DEFINED                              = 0
    83  	X_MT                                            = 0
    84  	X_M_AMD64                                       = 100
    85  	X_M_X64                                         = 100
    86  	X_PGLOBAL                                       = 0
    87  	X_POSIX_CPUTIME                                 = 200809
    88  	X_POSIX_MONOTONIC_CLOCK                         = 200809
    89  	X_POSIX_THREAD_CPUTIME                          = 200809
    90  	X_POSIX_TIMERS                                  = 200809
    91  	X_PTRDIFF_T_                                    = 0
    92  	X_PTRDIFF_T_DEFINED                             = 0
    93  	X_REENTRANT                                     = 1
    94  	X_RSIZE_T_DEFINED                               = 0
    95  	X_SECURECRT_FILL_BUFFER_PATTERN                 = 0xFD
    96  	X_SIZE_T_DEFINED                                = 0
    97  	X_SSIZE_T_DEFINED                               = 0
    98  	X_TAGLC_ID_DEFINED                              = 0
    99  	X_THREADLOCALEINFO                              = 0
   100  	X_TIME32_T_DEFINED                              = 0
   101  	X_TIME64_T_DEFINED                              = 0
   102  	X_TIMEB_DEFINED                                 = 0
   103  	X_TIMEB_H_                                      = 0
   104  	X_TIMEB_H_S                                     = 0
   105  	X_TIMESPEC_DEFINED                              = 0
   106  	X_TIMEVAL_DEFINED                               = 0
   107  	X_TIMEZONE_DEFINED                              = 0
   108  	X_TIME_H_                                       = 0
   109  	X_TIME_T_DEFINED                                = 0
   110  	X_TM_DEFINED                                    = 0
   111  	X_UINTPTR_T_DEFINED                             = 0
   112  	X_VA_LIST_DEFINED                               = 0
   113  	X_W64                                           = 0
   114  	X_WCHAR_T_DEFINED                               = 0
   115  	X_WCTYPE_T_DEFINED                              = 0
   116  	X_WIN32                                         = 1
   117  	X_WIN32_WINNT                                   = 0x502
   118  	X_WIN64                                         = 1
   119  	X_WINT_T                                        = 0
   120  	X_WTIME_DEFINED                                 = 0
   121  )
   122  
   123  type Ptrdiff_t = int64 /* <builtin>:3:26 */
   124  
   125  type Size_t = uint64 /* <builtin>:9:23 */
   126  
   127  type Wchar_t = uint16 /* <builtin>:15:24 */
   128  
   129  type X__int128_t = struct {
   130  	Flo int64
   131  	Fhi int64
   132  } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
   133  type X__uint128_t = struct {
   134  	Flo uint64
   135  	Fhi uint64
   136  } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
   137  
   138  type X__builtin_va_list = uintptr /* <builtin>:46:14 */
   139  type X__float128 = float64        /* <builtin>:47:21 */
   140  
   141  type Va_list = X__builtin_va_list /* <builtin>:50:27 */
   142  
   143  // *
   144  // This file has no copyright assigned and is placed in the Public Domain.
   145  // This file is part of the mingw-w64 runtime package.
   146  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   147  
   148  // *
   149  // This file has no copyright assigned and is placed in the Public Domain.
   150  // This file is part of the mingw-w64 runtime package.
   151  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   152  
   153  // *
   154  // This file has no copyright assigned and is placed in the Public Domain.
   155  // This file is part of the mingw-w64 runtime package.
   156  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   157  
   158  // *
   159  // This file has no copyright assigned and is placed in the Public Domain.
   160  // This file is part of the mingw-w64 runtime package.
   161  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   162  
   163  // This macro holds an monotonic increasing value, which indicates
   164  //    a specific fix/patch is present on trunk.  This value isn't related to
   165  //    minor/major version-macros.  It is increased on demand, if a big
   166  //    fix was applied to trunk.  This macro gets just increased on trunk.  For
   167  //    other branches its value won't be modified.
   168  
   169  // mingw.org's version macros: these make gcc to define
   170  //    MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
   171  //    and the __mingwthr_key_dtor() function from the MinGW
   172  //    CRT in its private gthr-win32.h header.
   173  
   174  // Set VC specific compiler target macros.
   175  
   176  // MS does not prefix symbols by underscores for 64-bit.
   177  // As we have to support older gcc version, which are using underscores
   178  //       as symbol prefix for x64, we have to check here for the user label
   179  //       prefix defined by gcc.
   180  
   181  // Special case nameless struct/union.
   182  
   183  // MinGW-w64 has some additional C99 printf/scanf feature support.
   184  //    So we add some helper macros to ease recognition of them.
   185  
   186  // *
   187  // This file has no copyright assigned and is placed in the Public Domain.
   188  // This file is part of the mingw-w64 runtime package.
   189  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   190  
   191  // http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
   192  // Templates won't work in C, will break if secure API is not enabled, disabled
   193  
   194  // https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
   195  // fallback on default implementation if we can't know the size of the destination
   196  
   197  // Include _cygwin.h if we're building a Cygwin application.
   198  
   199  // Target specific macro replacement for type "long".  In the Windows API,
   200  //    the type long is always 32 bit, even if the target is 64 bit (LLP64).
   201  //    On 64 bit Cygwin, the type long is 64 bit (LP64).  So, to get the right
   202  //    sized definitions and declarations, all usage of type long in the Windows
   203  //    headers have to be replaced by the below defined macro __LONG32.
   204  
   205  // C/C++ specific language defines.
   206  
   207  // Note the extern. This is needed to work around GCC's
   208  // limitations in handling dllimport attribute.
   209  
   210  // Attribute `nonnull' was valid as of gcc 3.3.  We don't use GCC's
   211  //    variadiac macro facility, because variadic macros cause syntax
   212  //    errors with  --traditional-cpp.
   213  
   214  //  High byte is the major version, low byte is the minor.
   215  
   216  // *
   217  // This file has no copyright assigned and is placed in the Public Domain.
   218  // This file is part of the mingw-w64 runtime package.
   219  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   220  
   221  // *
   222  // This file has no copyright assigned and is placed in the Public Domain.
   223  // This file is part of the mingw-w64 runtime package.
   224  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   225  
   226  type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
   227  
   228  type Ssize_t = int64 /* crtdefs.h:45:35 */
   229  
   230  type Rsize_t = Size_t /* crtdefs.h:52:16 */
   231  
   232  type Intptr_t = int64 /* crtdefs.h:62:35 */
   233  
   234  type Uintptr_t = uint64 /* crtdefs.h:75:44 */
   235  
   236  type Wint_t = uint16   /* crtdefs.h:106:24 */
   237  type Wctype_t = uint16 /* crtdefs.h:107:24 */
   238  
   239  type Errno_t = int32 /* crtdefs.h:113:13 */
   240  
   241  type X__time32_t = int32 /* crtdefs.h:118:14 */
   242  
   243  type X__time64_t = int64 /* crtdefs.h:123:35 */
   244  
   245  type Time_t = X__time64_t /* crtdefs.h:138:20 */
   246  
   247  type Threadlocaleinfostruct = struct {
   248  	Frefcount      int32
   249  	Flc_codepage   uint32
   250  	Flc_collate_cp uint32
   251  	Flc_handle     [6]uint32
   252  	Flc_id         [6]LC_ID
   253  	Flc_category   [6]struct {
   254  		Flocale    uintptr
   255  		Fwlocale   uintptr
   256  		Frefcount  uintptr
   257  		Fwrefcount uintptr
   258  	}
   259  	Flc_clike            int32
   260  	Fmb_cur_max          int32
   261  	Flconv_intl_refcount uintptr
   262  	Flconv_num_refcount  uintptr
   263  	Flconv_mon_refcount  uintptr
   264  	Flconv               uintptr
   265  	Fctype1_refcount     uintptr
   266  	Fctype1              uintptr
   267  	Fpctype              uintptr
   268  	Fpclmap              uintptr
   269  	Fpcumap              uintptr
   270  	Flc_time_curr        uintptr
   271  } /* crtdefs.h:422:1 */
   272  
   273  type Pthreadlocinfo = uintptr /* crtdefs.h:424:39 */
   274  type Pthreadmbcinfo = uintptr /* crtdefs.h:425:36 */
   275  
   276  type Localeinfo_struct = struct {
   277  	Flocinfo Pthreadlocinfo
   278  	Fmbcinfo Pthreadmbcinfo
   279  } /* crtdefs.h:428:9 */
   280  
   281  type X_locale_tstruct = Localeinfo_struct /* crtdefs.h:431:3 */
   282  type X_locale_t = uintptr                 /* crtdefs.h:431:19 */
   283  
   284  type TagLC_ID = struct {
   285  	FwLanguage uint16
   286  	FwCountry  uint16
   287  	FwCodePage uint16
   288  } /* crtdefs.h:422:1 */
   289  
   290  type LC_ID = TagLC_ID  /* crtdefs.h:439:3 */
   291  type LPLC_ID = uintptr /* crtdefs.h:439:9 */
   292  
   293  type Threadlocinfo = Threadlocaleinfostruct /* crtdefs.h:468:3 */
   294  
   295  type Clock_t = int32 /* time.h:60:16 */
   296  
   297  type Tm = struct {
   298  	Ftm_sec   int32
   299  	Ftm_min   int32
   300  	Ftm_hour  int32
   301  	Ftm_mday  int32
   302  	Ftm_mon   int32
   303  	Ftm_year  int32
   304  	Ftm_wday  int32
   305  	Ftm_yday  int32
   306  	Ftm_isdst int32
   307  } /* time.h:97:3 */
   308  
   309  var Xdaylight int32 /* time.h:278:22: */
   310  
   311  var Xtimezone int32    /* time.h:281:23: */
   312  var Xtzname [2]uintptr /* time.h:282:23: */
   313  
   314  // *
   315  // This file has no copyright assigned and is placed in the Public Domain.
   316  // This file is part of the mingw-w64 runtime package.
   317  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   318  
   319  type Timeval = struct {
   320  	Ftv_sec  int32
   321  	Ftv_usec int32
   322  } /* _timeval.h:10:1 */
   323  
   324  type Timezone = struct {
   325  	Ftz_minuteswest int32
   326  	Ftz_dsttime     int32
   327  } /* time.h:290:1 */
   328  
   329  // Adding timespec definition.
   330  // *
   331  // This file has no copyright assigned and is placed in the Public Domain.
   332  // This file is part of the mingw-w64 runtime package.
   333  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   334  
   335  // *
   336  // This file has no copyright assigned and is placed in the Public Domain.
   337  // This file is part of the mingw-w64 runtime package.
   338  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   339  
   340  type X__timeb32 = struct {
   341  	Ftime        X__time32_t
   342  	Fmillitm     uint16
   343  	Ftimezone    int16
   344  	Fdstflag     int16
   345  	F__ccgo_pad1 [2]byte
   346  } /* timeb.h:53:3 */
   347  
   348  type Timeb = struct {
   349  	Ftime        Time_t
   350  	Fmillitm     uint16
   351  	Ftimezone    int16
   352  	Fdstflag     int16
   353  	F__ccgo_pad1 [2]byte
   354  } /* timeb.h:61:3 */
   355  
   356  type X__timeb64 = struct {
   357  	Ftime        X__time64_t
   358  	Fmillitm     uint16
   359  	Ftimezone    int16
   360  	Fdstflag     int16
   361  	F__ccgo_pad1 [2]byte
   362  } /* timeb.h:69:3 */
   363  
   364  type Timespec = struct {
   365  	Ftv_sec      Time_t
   366  	Ftv_nsec     int32
   367  	F__ccgo_pad1 [4]byte
   368  } /* timeb.h:90:1 */
   369  
   370  type Itimerspec = struct {
   371  	Fit_interval struct {
   372  		Ftv_sec      Time_t
   373  		Ftv_nsec     int32
   374  		F__ccgo_pad1 [4]byte
   375  	}
   376  	Fit_value struct {
   377  		Ftv_sec      Time_t
   378  		Ftv_nsec     int32
   379  		F__ccgo_pad1 [4]byte
   380  	}
   381  } /* timeb.h:95:1 */
   382  
   383  // POSIX 2008 says clock_gettime and timespec are defined in time.h header,
   384  //    but other systems - like Linux, Solaris, etc - tend to declare such
   385  //    recent extensions only if the following guards are met.
   386  //
   387  //    Copyright (c) 2011-2016  mingw-w64 project
   388  //
   389  //    Permission is hereby granted, free of charge, to any person obtaining a
   390  //    copy of this software and associated documentation files (the "Software"),
   391  //    to deal in the Software without restriction, including without limitation
   392  //    the rights to use, copy, modify, merge, publish, distribute, sublicense,
   393  //    and/or sell copies of the Software, and to permit persons to whom the
   394  //    Software is furnished to do so, subject to the following conditions:
   395  //
   396  //    The above copyright notice and this permission notice shall be included in
   397  //    all copies or substantial portions of the Software.
   398  //
   399  //    THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
   400  //    IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
   401  //    FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
   402  //    AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
   403  //    LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
   404  //    FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
   405  //    DEALINGS IN THE SOFTWARE.
   406  
   407  // *
   408  // This file has no copyright assigned and is placed in the Public Domain.
   409  // This file is part of the mingw-w64 runtime package.
   410  // No warranty is given; refer to the file DISCLAIMER.PD within this package.
   411  
   412  // Posix timers are supported
   413  
   414  // Monotonic clocks are available.
   415  
   416  // CPU-time clocks are available.
   417  
   418  // Clock support in threads are available.
   419  
   420  type Clockid_t = int32 /* pthread_time.h:49:13 */
   421  
   422  var _ int8 /* gen.c:2:13: */