time_windows_amd64.go (15781B)
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: */