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