stat_windows_arm64.go 20 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559
  1. // Code generated by 'ccgo sys\stat\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 sys\stat\stat_windows_arm64.go -pkgname stat', DO NOT EDIT.
  2. package stat
  3. import (
  4. "math"
  5. "reflect"
  6. "sync/atomic"
  7. "unsafe"
  8. )
  9. var _ = math.Pi
  10. var _ reflect.Kind
  11. var _ atomic.Value
  12. var _ unsafe.Pointer
  13. const (
  14. DUMMYSTRUCTNAME = 0
  15. DUMMYSTRUCTNAME1 = 0
  16. DUMMYSTRUCTNAME2 = 0
  17. DUMMYSTRUCTNAME3 = 0
  18. DUMMYSTRUCTNAME4 = 0
  19. DUMMYSTRUCTNAME5 = 0
  20. DUMMYUNIONNAME = 0
  21. DUMMYUNIONNAME1 = 0
  22. DUMMYUNIONNAME2 = 0
  23. DUMMYUNIONNAME3 = 0
  24. DUMMYUNIONNAME4 = 0
  25. DUMMYUNIONNAME5 = 0
  26. DUMMYUNIONNAME6 = 0
  27. DUMMYUNIONNAME7 = 0
  28. DUMMYUNIONNAME8 = 0
  29. DUMMYUNIONNAME9 = 0
  30. F_OK = 0
  31. MINGW_DDK_H = 0
  32. MINGW_HAS_DDK_H = 1
  33. MINGW_HAS_SECURE_API = 1
  34. MINGW_SDK_INIT = 0
  35. R_OK = 4
  36. S_IEXEC = 64
  37. S_IFBLK = 12288
  38. S_IFCHR = 8192
  39. S_IFDIR = 16384
  40. S_IFIFO = 4096
  41. S_IFMT = 61440
  42. S_IFREG = 32768
  43. S_IREAD = 256
  44. S_IRGRP = 32
  45. S_IROTH = 4
  46. S_IRUSR = 256
  47. S_IRWXG = 56
  48. S_IRWXO = 7
  49. S_IRWXU = 448
  50. S_IWGRP = 16
  51. S_IWOTH = 2
  52. S_IWRITE = 128
  53. S_IWUSR = 128
  54. S_IXGRP = 8
  55. S_IXOTH = 1
  56. S_IXUSR = 64
  57. UNALIGNED = 0
  58. USE___UUIDOF = 0
  59. WIN32 = 1
  60. WIN64 = 1
  61. WINNT = 1
  62. W_OK = 2
  63. X_OK = 1
  64. X_AGLOBAL = 0
  65. X_ANONYMOUS_STRUCT = 0
  66. X_ANONYMOUS_UNION = 0
  67. X_ARGMAX = 100
  68. X_ARM64_ = 1
  69. X_A_ARCH = 0x20
  70. X_A_HIDDEN = 0x02
  71. X_A_NORMAL = 0x00
  72. X_A_RDONLY = 0x01
  73. X_A_SUBDIR = 0x10
  74. X_A_SYSTEM = 0x04
  75. X_CONST_RETURN = 0
  76. X_CRTNOALIAS = 0
  77. X_CRTRESTRICT = 0
  78. X_CRT_ALTERNATIVE_IMPORTED = 0
  79. X_CRT_DIRECTORY_DEFINED = 0
  80. X_CRT_MANAGED_HEAP_DEPRECATE = 0
  81. X_CRT_MEMORY_DEFINED = 0
  82. X_CRT_PACKING = 8
  83. X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES = 0
  84. X_CRT_SECURE_CPP_OVERLOAD_SECURE_NAMES_MEMORY = 0
  85. X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES = 0
  86. X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_COUNT = 0
  87. X_CRT_SECURE_CPP_OVERLOAD_STANDARD_NAMES_MEMORY = 0
  88. X_CRT_USE_WINAPI_FAMILY_DESKTOP_APP = 0
  89. X_DEV_T_DEFINED = 0
  90. X_DLL = 0
  91. X_ERRCODE_DEFINED = 0
  92. X_FILE_OFFSET_BITS = 64
  93. X_FILE_OFFSET_BITS_SET_LSEEK = 0
  94. X_FILE_OFFSET_BITS_SET_OFFT = 0
  95. X_FINDDATA_T_DEFINED = 0
  96. X_FSIZE_T_DEFINED = 0
  97. X_INC_CORECRT = 0
  98. X_INC_CRTDEFS = 0
  99. X_INC_CRTDEFS_MACRO = 0
  100. X_INC_MINGW_SECAPI = 0
  101. X_INC_STAT = 0
  102. X_INC_STRING = 0
  103. X_INC_STRING_S = 0
  104. X_INC_TYPES = 0
  105. X_INC_VADEFS = 0
  106. X_INC__MINGW_H = 0
  107. X_INO_T_DEFINED = 0
  108. X_INT128_DEFINED = 0
  109. X_INTPTR_T_DEFINED = 0
  110. X_IO_H_ = 0
  111. X_MODE_T_ = 0
  112. X_MT = 0
  113. X_M_ARM64 = 1
  114. X_NLSCMPERROR = 2147483647
  115. X_NLSCMP_DEFINED = 0
  116. X_OFF64_T_DEFINED = 0
  117. X_OFF_T_ = 0
  118. X_OFF_T_DEFINED = 0
  119. X_PGLOBAL = 0
  120. X_PID_T_ = 0
  121. X_PTRDIFF_T_ = 0
  122. X_PTRDIFF_T_DEFINED = 0
  123. X_RSIZE_T_DEFINED = 0
  124. X_SECURECRT_FILL_BUFFER_PATTERN = 0xFD
  125. X_SIGSET_T_ = 0
  126. X_SIZE_T_DEFINED = 0
  127. X_SSIZE_T_DEFINED = 0
  128. X_STAT_DEFINED = 0
  129. X_S_IEXEC = 0x0040
  130. X_S_IFBLK = 0x3000
  131. X_S_IFCHR = 0x2000
  132. X_S_IFDIR = 0x4000
  133. X_S_IFIFO = 0x1000
  134. X_S_IFMT = 0xF000
  135. X_S_IFREG = 0x8000
  136. X_S_IREAD = 0x0100
  137. X_S_IRUSR = 256
  138. X_S_IRWXU = 448
  139. X_S_IWRITE = 0x0080
  140. X_S_IWUSR = 128
  141. X_S_IXUSR = 64
  142. X_TAGLC_ID_DEFINED = 0
  143. X_THREADLOCALEINFO = 0
  144. X_TIME32_T_DEFINED = 0
  145. X_TIME64_T_DEFINED = 0
  146. X_TIMESPEC_DEFINED = 0
  147. X_TIME_T_DEFINED = 0
  148. X_UCRT = 0
  149. X_UINTPTR_T_DEFINED = 0
  150. X_VA_LIST_DEFINED = 0
  151. X_W64 = 0
  152. X_WCHAR_T_DEFINED = 0
  153. X_WCTYPE_T_DEFINED = 0
  154. X_WConst_return = 0
  155. X_WFINDDATA_T_DEFINED = 0
  156. X_WIN32 = 1
  157. X_WIN32_WINNT = 0x601
  158. X_WIN64 = 1
  159. X_WINT_T = 0
  160. X_WIO_DEFINED = 0
  161. X_WSTAT_DEFINED = 0
  162. X_WSTRING_DEFINED = 0
  163. X_WSTRING_S_DEFINED = 0
  164. )
  165. type Ptrdiff_t = int64 /* <builtin>:3:26 */
  166. type Size_t = uint64 /* <builtin>:9:23 */
  167. type Wchar_t = uint16 /* <builtin>:15:24 */
  168. type X__int128_t = struct {
  169. Flo int64
  170. Fhi int64
  171. } /* <builtin>:21:43 */ // must match modernc.org/mathutil.Int128
  172. type X__uint128_t = struct {
  173. Flo uint64
  174. Fhi uint64
  175. } /* <builtin>:22:44 */ // must match modernc.org/mathutil.Int128
  176. type X__builtin_va_list = uintptr /* <builtin>:46:14 */
  177. type X__float128 = float64 /* <builtin>:47:21 */
  178. type Va_list = X__builtin_va_list /* <builtin>:50:27 */
  179. // *
  180. // This file has no copyright assigned and is placed in the Public Domain.
  181. // This file is part of the mingw-w64 runtime package.
  182. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  183. // *
  184. // This file has no copyright assigned and is placed in the Public Domain.
  185. // This file is part of the mingw-w64 runtime package.
  186. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  187. // *
  188. // This file has no copyright assigned and is placed in the Public Domain.
  189. // This file is part of the mingw-w64 runtime package.
  190. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  191. // *
  192. // This file has no copyright assigned and is placed in the Public Domain.
  193. // This file is part of the mingw-w64 runtime package.
  194. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  195. // *
  196. // This file has no copyright assigned and is placed in the Public Domain.
  197. // This file is part of the mingw-w64 runtime package.
  198. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  199. // This macro holds an monotonic increasing value, which indicates
  200. // a specific fix/patch is present on trunk. This value isn't related to
  201. // minor/major version-macros. It is increased on demand, if a big
  202. // fix was applied to trunk. This macro gets just increased on trunk. For
  203. // other branches its value won't be modified.
  204. // mingw.org's version macros: these make gcc to define
  205. // MINGW32_SUPPORTS_MT_EH and to use the _CRT_MT global
  206. // and the __mingwthr_key_dtor() function from the MinGW
  207. // CRT in its private gthr-win32.h header.
  208. // Set VC specific compiler target macros.
  209. // MS does not prefix symbols by underscores for 64-bit.
  210. // As we have to support older gcc version, which are using underscores
  211. // as symbol prefix for x64, we have to check here for the user label
  212. // prefix defined by gcc.
  213. // Special case nameless struct/union.
  214. // MinGW-w64 has some additional C99 printf/scanf feature support.
  215. // So we add some helper macros to ease recognition of them.
  216. // If _FORTIFY_SOURCE is enabled, some inline functions may use
  217. // __builtin_va_arg_pack(). GCC may report an error if the address
  218. // of such a function is used. Set _FORTIFY_VA_ARG=0 in this case.
  219. // Enable workaround for ABI incompatibility on affected platforms
  220. // *
  221. // This file has no copyright assigned and is placed in the Public Domain.
  222. // This file is part of the mingw-w64 runtime package.
  223. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  224. // http://msdn.microsoft.com/en-us/library/ms175759%28v=VS.100%29.aspx
  225. // Templates won't work in C, will break if secure API is not enabled, disabled
  226. // https://blogs.msdn.com/b/sdl/archive/2010/02/16/vc-2010-and-memcpy.aspx?Redirected=true
  227. // fallback on default implementation if we can't know the size of the destination
  228. // Include _cygwin.h if we're building a Cygwin application.
  229. // Target specific macro replacement for type "long". In the Windows API,
  230. // the type long is always 32 bit, even if the target is 64 bit (LLP64).
  231. // On 64 bit Cygwin, the type long is 64 bit (LP64). So, to get the right
  232. // sized definitions and declarations, all usage of type long in the Windows
  233. // headers have to be replaced by the below defined macro __LONG32.
  234. // C/C++ specific language defines.
  235. // Note the extern. This is needed to work around GCC's
  236. // limitations in handling dllimport attribute.
  237. // Attribute `nonnull' was valid as of gcc 3.3. We don't use GCC's
  238. // variadiac macro facility, because variadic macros cause syntax
  239. // errors with --traditional-cpp.
  240. // High byte is the major version, low byte is the minor.
  241. // Allow both 0x1400 and 0xE00 to identify UCRT
  242. // ===-------- vadefs.h ---------------------------------------------------===
  243. //
  244. // Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
  245. // See https://llvm.org/LICENSE.txt for license information.
  246. // SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
  247. //
  248. //===-----------------------------------------------------------------------===
  249. // Only include this if we are aiming for MSVC compatibility.
  250. // *
  251. // This file has no copyright assigned and is placed in the Public Domain.
  252. // This file is part of the mingw-w64 runtime package.
  253. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  254. // *
  255. // This file has no copyright assigned and is placed in the Public Domain.
  256. // This file is part of the mingw-w64 runtime package.
  257. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  258. // for backward compatibility
  259. type X__gnuc_va_list = X__builtin_va_list /* vadefs.h:24:29 */
  260. type Ssize_t = int64 /* corecrt.h:45:35 */
  261. type Rsize_t = Size_t /* corecrt.h:52:16 */
  262. type Intptr_t = int64 /* corecrt.h:62:35 */
  263. type Uintptr_t = uint64 /* corecrt.h:75:44 */
  264. type Wint_t = uint16 /* corecrt.h:106:24 */
  265. type Wctype_t = uint16 /* corecrt.h:107:24 */
  266. type Errno_t = int32 /* corecrt.h:113:13 */
  267. type X__time32_t = int32 /* corecrt.h:118:14 */
  268. type X__time64_t = int64 /* corecrt.h:123:35 */
  269. type Time_t = X__time64_t /* corecrt.h:138:20 */
  270. type Threadlocaleinfostruct = struct {
  271. F_locale_pctype uintptr
  272. F_locale_mb_cur_max int32
  273. F_locale_lc_codepage uint32
  274. } /* corecrt.h:430:1 */
  275. type Pthreadlocinfo = uintptr /* corecrt.h:432:39 */
  276. type Pthreadmbcinfo = uintptr /* corecrt.h:433:36 */
  277. type Localeinfo_struct = struct {
  278. Flocinfo Pthreadlocinfo
  279. Fmbcinfo Pthreadmbcinfo
  280. } /* corecrt.h:436:9 */
  281. type X_locale_tstruct = Localeinfo_struct /* corecrt.h:439:3 */
  282. type X_locale_t = uintptr /* corecrt.h:439:19 */
  283. type TagLC_ID = struct {
  284. FwLanguage uint16
  285. FwCountry uint16
  286. FwCodePage uint16
  287. } /* corecrt.h:443:9 */
  288. type LC_ID = TagLC_ID /* corecrt.h:447:3 */
  289. type LPLC_ID = uintptr /* corecrt.h:447:9 */
  290. type Threadlocinfo = Threadlocaleinfostruct /* corecrt.h:482:3 */
  291. type X_fsize_t = uint32 /* io.h:29:25 */
  292. type X_finddata32_t = struct {
  293. Fattrib uint32
  294. Ftime_create X__time32_t
  295. Ftime_access X__time32_t
  296. Ftime_write X__time32_t
  297. Fsize X_fsize_t
  298. Fname [260]int8
  299. } /* io.h:35:3 */
  300. type X_finddata32i64_t = struct {
  301. Fattrib uint32
  302. Ftime_create X__time32_t
  303. Ftime_access X__time32_t
  304. Ftime_write X__time32_t
  305. Fsize int64
  306. Fname [260]int8
  307. F__ccgo_pad1 [4]byte
  308. } /* io.h:44:3 */
  309. type X_finddata64i32_t = struct {
  310. Fattrib uint32
  311. F__ccgo_pad1 [4]byte
  312. Ftime_create X__time64_t
  313. Ftime_access X__time64_t
  314. Ftime_write X__time64_t
  315. Fsize X_fsize_t
  316. Fname [260]int8
  317. } /* io.h:53:3 */
  318. type X__finddata64_t = struct {
  319. Fattrib uint32
  320. F__ccgo_pad1 [4]byte
  321. Ftime_create X__time64_t
  322. Ftime_access X__time64_t
  323. Ftime_write X__time64_t
  324. Fsize int64
  325. Fname [260]int8
  326. F__ccgo_pad2 [4]byte
  327. } /* io.h:62:3 */
  328. type X_wfinddata32_t = struct {
  329. Fattrib uint32
  330. Ftime_create X__time32_t
  331. Ftime_access X__time32_t
  332. Ftime_write X__time32_t
  333. Fsize X_fsize_t
  334. Fname [260]Wchar_t
  335. } /* io.h:94:3 */
  336. type X_wfinddata32i64_t = struct {
  337. Fattrib uint32
  338. Ftime_create X__time32_t
  339. Ftime_access X__time32_t
  340. Ftime_write X__time32_t
  341. Fsize int64
  342. Fname [260]Wchar_t
  343. } /* io.h:103:3 */
  344. type X_wfinddata64i32_t = struct {
  345. Fattrib uint32
  346. F__ccgo_pad1 [4]byte
  347. Ftime_create X__time64_t
  348. Ftime_access X__time64_t
  349. Ftime_write X__time64_t
  350. Fsize X_fsize_t
  351. Fname [260]Wchar_t
  352. F__ccgo_pad2 [4]byte
  353. } /* io.h:112:3 */
  354. type X_wfinddata64_t = struct {
  355. Fattrib uint32
  356. F__ccgo_pad1 [4]byte
  357. Ftime_create X__time64_t
  358. Ftime_access X__time64_t
  359. Ftime_write X__time64_t
  360. Fsize int64
  361. Fname [260]Wchar_t
  362. } /* io.h:121:3 */
  363. type X_off_t = int32 /* _mingw_off_t.h:5:16 */
  364. type Off32_t = int32 /* _mingw_off_t.h:7:16 */
  365. type X_off64_t = int64 /* _mingw_off_t.h:13:39 */
  366. type Off64_t = int64 /* _mingw_off_t.h:15:39 */
  367. type Off_t = Off64_t /* _mingw_off_t.h:24:17 */
  368. // *
  369. // This file has no copyright assigned and is placed in the Public Domain.
  370. // This file is part of the mingw-w64 runtime package.
  371. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  372. // *
  373. // This file has no copyright assigned and is placed in the Public Domain.
  374. // This file is part of the mingw-w64 runtime package.
  375. // No warranty is given; refer to the file DISCLAIMER.PD within this package.
  376. type X_ino_t = uint16 /* types.h:43:24 */
  377. type Ino_t = uint16 /* types.h:45:24 */
  378. type X_dev_t = uint32 /* types.h:51:22 */
  379. type Dev_t = uint32 /* types.h:53:22 */
  380. type X_pid_t = int64 /* types.h:63:17 */
  381. type Pid_t = X_pid_t /* types.h:68:16 */
  382. type X_mode_t = uint16 /* types.h:74:24 */
  383. type Mode_t = X_mode_t /* types.h:77:17 */
  384. type Useconds_t = uint32 /* types.h:84:22 */
  385. type Timespec = struct {
  386. Ftv_sec Time_t
  387. Ftv_nsec int32
  388. F__ccgo_pad1 [4]byte
  389. } /* types.h:89:1 */
  390. type Itimerspec = struct {
  391. Fit_interval struct {
  392. Ftv_sec Time_t
  393. Ftv_nsec int32
  394. F__ccgo_pad1 [4]byte
  395. }
  396. Fit_value struct {
  397. Ftv_sec Time_t
  398. Ftv_nsec int32
  399. F__ccgo_pad1 [4]byte
  400. }
  401. } /* types.h:94:1 */
  402. type X_sigset_t = uint64 /* types.h:104:28 */
  403. type X_stat32 = struct {
  404. Fst_dev X_dev_t
  405. Fst_ino X_ino_t
  406. Fst_mode uint16
  407. Fst_nlink int16
  408. Fst_uid int16
  409. Fst_gid int16
  410. F__ccgo_pad1 [2]byte
  411. Fst_rdev X_dev_t
  412. Fst_size X_off_t
  413. Fst_atime X__time32_t
  414. Fst_mtime X__time32_t
  415. Fst_ctime X__time32_t
  416. } /* _mingw_stat64.h:25:3 */
  417. type Stat = struct {
  418. Fst_dev X_dev_t
  419. Fst_ino X_ino_t
  420. Fst_mode uint16
  421. Fst_nlink int16
  422. Fst_uid int16
  423. Fst_gid int16
  424. F__ccgo_pad1 [2]byte
  425. Fst_rdev X_dev_t
  426. Fst_size X_off_t
  427. Fst_atime Time_t
  428. Fst_mtime Time_t
  429. Fst_ctime Time_t
  430. } /* _mingw_stat64.h:40:3 */
  431. type X_stat32i64 = struct {
  432. Fst_dev X_dev_t
  433. Fst_ino X_ino_t
  434. Fst_mode uint16
  435. Fst_nlink int16
  436. Fst_uid int16
  437. Fst_gid int16
  438. F__ccgo_pad1 [2]byte
  439. Fst_rdev X_dev_t
  440. F__ccgo_pad2 [4]byte
  441. Fst_size int64
  442. Fst_atime X__time32_t
  443. Fst_mtime X__time32_t
  444. Fst_ctime X__time32_t
  445. F__ccgo_pad3 [4]byte
  446. } /* _mingw_stat64.h:55:3 */
  447. type X_stat64i32 = struct {
  448. Fst_dev X_dev_t
  449. Fst_ino X_ino_t
  450. Fst_mode uint16
  451. Fst_nlink int16
  452. Fst_uid int16
  453. Fst_gid int16
  454. F__ccgo_pad1 [2]byte
  455. Fst_rdev X_dev_t
  456. Fst_size X_off_t
  457. Fst_atime X__time64_t
  458. Fst_mtime X__time64_t
  459. Fst_ctime X__time64_t
  460. } /* _mingw_stat64.h:69:3 */
  461. type X_stat64 = struct {
  462. Fst_dev X_dev_t
  463. Fst_ino X_ino_t
  464. Fst_mode uint16
  465. Fst_nlink int16
  466. Fst_uid int16
  467. Fst_gid int16
  468. F__ccgo_pad1 [2]byte
  469. Fst_rdev X_dev_t
  470. F__ccgo_pad2 [4]byte
  471. Fst_size int64
  472. Fst_atime X__time64_t
  473. Fst_mtime X__time64_t
  474. Fst_ctime X__time64_t
  475. } /* _mingw_stat64.h:83:3 */
  476. var _ int8 /* gen.c:2:13: */