authorgravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2021-02-11 23:45:40-07:00
committergravatar for andrew@ziglang.orgAndrew Kelley <andrew@ziglang.org> 2021-02-11 23:45:40-07:00
logb4e344bcf859f2df89637e0825a2e0e57d092ef6
tree44465c5c3eadcfdc57f0a0a3eb5cffff9107bd7f
parent3d0f4b90305bc1815ccc86613cb3da715e9b62c0
parentd3565ed6b48c9c66128f181e7b90b5348504cb3f

Merge remote-tracking branch 'origin/master' into ast-memory-layout

Conflicts: * lib/std/zig/ast.zig * lib/std/zig/parse.zig * lib/std/zig/parser_test.zig * lib/std/zig/render.zig * src/Module.zig * src/zir.zig I resolved some of the conflicts by reverting a small portion of @tadeokondrak's stage2 logic here regarding `callconv(.Inline)`. It will need to get reworked as part of this branch.

697 files changed, 36751 insertions(+), 2773 deletions(-)

doc/langref.html.in+23-23
...@@ -2909,15 +2909,15 @@ test "enum variant switch" {...@@ -2909,15 +2909,15 @@ test "enum variant switch" {
2909 expect(mem.eql(u8, what_is_it, "this is a number"));2909 expect(mem.eql(u8, what_is_it, "this is a number"));
2910}2910}
29112911
2912// @TagType can be used to access the integer tag type of an enum.2912// @typeInfo can be used to access the integer tag type of an enum.
2913const Small = enum {2913const Small = enum {
2914 one,2914 one,
2915 two,2915 two,
2916 three,2916 three,
2917 four,2917 four,
2918};2918};
2919test "@TagType" {2919test "std.meta.Tag" {
2920 expect(@TagType(Small) == u2);2920 expect(@typeInfo(Small).Enum.tag_type == u2);
2921}2921}
29222922
2923// @typeInfo tells us the field count and the fields names:2923// @typeInfo tells us the field count and the fields names:
...@@ -3092,8 +3092,7 @@ test "simple union" {...@@ -3092,8 +3092,7 @@ test "simple union" {
3092 {#header_open|Tagged union#}3092 {#header_open|Tagged union#}
3093 <p>Unions can be declared with an enum tag type.3093 <p>Unions can be declared with an enum tag type.
3094 This turns the union into a <em>tagged</em> union, which makes it eligible3094 This turns the union into a <em>tagged</em> union, which makes it eligible
3095 to use with {#link|switch#} expressions. One can use {#link|@TagType#} to3095 to use with {#link|switch#} expressions.
3096 obtain the enum type from the union type.
3097 Tagged unions coerce to their tag type: {#link|Type Coercion: unions and enums#}.3096 Tagged unions coerce to their tag type: {#link|Type Coercion: unions and enums#}.
3098 </p>3097 </p>
3099 {#code_begin|test#}3098 {#code_begin|test#}
...@@ -3119,8 +3118,8 @@ test "switch on tagged union" {...@@ -3119,8 +3118,8 @@ test "switch on tagged union" {
3119 }3118 }
3120}3119}
31213120
3122test "@TagType" {3121test "get tag type" {
3123 expect(@TagType(ComplexType) == ComplexTypeTag);3122 expect(std.meta.Tag(ComplexType) == ComplexTypeTag);
3124}3123}
31253124
3126test "coerce to enum" {3125test "coerce to enum" {
...@@ -4241,9 +4240,9 @@ fn _start() callconv(.Naked) noreturn {...@@ -4241,9 +4240,9 @@ fn _start() callconv(.Naked) noreturn {
4241 abort();4240 abort();
4242}4241}
42434242
4244// The inline specifier forces a function to be inlined at all call sites.4243// The inline calling convention forces a function to be inlined at all call sites.
4245// If the function cannot be inlined, it is a compile-time error.4244// If the function cannot be inlined, it is a compile-time error.
4246inline fn shiftLeftOne(a: u32) u32 {4245fn shiftLeftOne(a: u32) callconv(.Inline) u32 {
4247 return a << 1;4246 return a << 1;
4248}4247}
42494248
...@@ -7534,19 +7533,21 @@ export fn @"A function name that is a complete sentence."() void {}...@@ -7534,19 +7533,21 @@ export fn @"A function name that is a complete sentence."() void {}
75347533
7535 {#header_open|@field#}7534 {#header_open|@field#}
7536 <pre>{#syntax#}@field(lhs: anytype, comptime field_name: []const u8) (field){#endsyntax#}</pre>7535 <pre>{#syntax#}@field(lhs: anytype, comptime field_name: []const u8) (field){#endsyntax#}</pre>
7537 <p>Performs field access by a compile-time string.7536 <p>Performs field access by a compile-time string. Works on both fields and declarations.
7538 </p>7537 </p>
7539 {#code_begin|test#}7538 {#code_begin|test#}
7540const std = @import("std");7539const std = @import("std");
75417540
7542const Point = struct {7541const Point = struct {
7543 x: u32,7542 x: u32,
7544 y: u327543 y: u32,
7544
7545 pub var z: u32 = 1;
7545};7546};
75467547
7547test "field access by string" {7548test "field access by string" {
7548 const expect = std.testing.expect;7549 const expect = std.testing.expect;
7549 var p = Point {.x = 0, .y = 0};7550 var p = Point{ .x = 0, .y = 0 };
75507551
7551 @field(p, "x") = 4;7552 @field(p, "x") = 4;
7552 @field(p, "y") = @field(p, "x") + 1;7553 @field(p, "y") = @field(p, "x") + 1;
...@@ -7554,6 +7555,15 @@ test "field access by string" {...@@ -7554,6 +7555,15 @@ test "field access by string" {
7554 expect(@field(p, "x") == 4);7555 expect(@field(p, "x") == 4);
7555 expect(@field(p, "y") == 5);7556 expect(@field(p, "y") == 5);
7556}7557}
7558
7559test "decl access by string" {
7560 const expect = std.testing.expect;
7561
7562 expect(@field(Point, "z") == 1);
7563
7564 @field(Point, "z") = 2;
7565 expect(@field(Point, "z") == 2);
7566}
7557 {#code_end#}7567 {#code_end#}
75587568
7559 {#header_close#}7569 {#header_close#}
...@@ -7740,7 +7750,7 @@ test "@hasDecl" {...@@ -7740,7 +7750,7 @@ test "@hasDecl" {
7740 {#header_close#}7750 {#header_close#}
77417751
7742 {#header_open|@intToEnum#}7752 {#header_open|@intToEnum#}
7743 <pre>{#syntax#}@intToEnum(comptime DestType: type, int_value: @TagType(DestType)) DestType{#endsyntax#}</pre>7753 <pre>{#syntax#}@intToEnum(comptime DestType: type, int_value: std.meta.Tag(DestType)) DestType{#endsyntax#}</pre>
7744 <p>7754 <p>
7745 Converts an integer into an {#link|enum#} value.7755 Converts an integer into an {#link|enum#} value.
7746 </p>7756 </p>
...@@ -8435,16 +8445,6 @@ fn doTheTest() void {...@@ -8435,16 +8445,6 @@ fn doTheTest() void {
8435 </p>8445 </p>
8436 {#header_close#}8446 {#header_close#}
84378447
8438 {#header_open|@TagType#}
8439 <pre>{#syntax#}@TagType(T: type) type{#endsyntax#}</pre>
8440 <p>
8441 For an enum, returns the integer type that is used to store the enumeration value.
8442 </p>
8443 <p>
8444 For a union, returns the enum type that is used to store the tag value.
8445 </p>
8446 {#header_close#}
8447
8448 {#header_open|@This#}8448 {#header_open|@This#}
8449 <pre>{#syntax#}@This() type{#endsyntax#}</pre>8449 <pre>{#syntax#}@This() type{#endsyntax#}</pre>
8450 <p>8450 <p>
lib/libc/include/aarch64-linux-musl/bits/alltypes.h+6
...@@ -365,6 +365,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -365,6 +365,12 @@ struct iovec { void *iov_base; size_t iov_len; };
365#endif365#endif
366366
367367
368#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
369struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
370#define __DEFINED_struct_winsize
371#endif
372
373
368#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)374#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
369typedef unsigned socklen_t;375typedef unsigned socklen_t;
370#define __DEFINED_socklen_t376#define __DEFINED_socklen_t
lib/libc/include/aarch64-linux-musl/bits/hwcap.h+11-1
...@@ -37,4 +37,14 @@...@@ -37,4 +37,14 @@
37#define HWCAP2_SVEPMULL (1 << 3)37#define HWCAP2_SVEPMULL (1 << 3)
38#define HWCAP2_SVEBITPERM (1 << 4)38#define HWCAP2_SVEBITPERM (1 << 4)
39#define HWCAP2_SVESHA3 (1 << 5)39#define HWCAP2_SVESHA3 (1 << 5)
40#define HWCAP2_SVESM4 (1 << 6)
\ No newline at end of file
40#define HWCAP2_SVESM4 (1 << 6)
41#define HWCAP2_FLAGM2 (1 << 7)
42#define HWCAP2_FRINT (1 << 8)
43#define HWCAP2_SVEI8MM (1 << 9)
44#define HWCAP2_SVEF32MM (1 << 10)
45#define HWCAP2_SVEF64MM (1 << 11)
46#define HWCAP2_SVEBF16 (1 << 12)
47#define HWCAP2_I8MM (1 << 13)
48#define HWCAP2_BF16 (1 << 14)
49#define HWCAP2_DGH (1 << 15)
50#define HWCAP2_RNG (1 << 16)
\ No newline at end of file
lib/libc/include/aarch64-linux-musl/bits/signal.h+2-2
...@@ -11,7 +11,7 @@ typedef unsigned long greg_t;...@@ -11,7 +11,7 @@ typedef unsigned long greg_t;
11typedef unsigned long gregset_t[34];11typedef unsigned long gregset_t[34];
1212
13typedef struct {13typedef struct {
14 long double vregs[32];14 __uint128_t vregs[32];
15 unsigned int fpsr;15 unsigned int fpsr;
16 unsigned int fpcr;16 unsigned int fpcr;
17} fpregset_t;17} fpregset_t;
...@@ -34,7 +34,7 @@ struct fpsimd_context {...@@ -34,7 +34,7 @@ struct fpsimd_context {
34 struct _aarch64_ctx head;34 struct _aarch64_ctx head;
35 unsigned int fpsr;35 unsigned int fpsr;
36 unsigned int fpcr;36 unsigned int fpcr;
37 long double vregs[32];37 __uint128_t vregs[32];
38};38};
39struct esr_context {39struct esr_context {
40 struct _aarch64_ctx head;40 struct _aarch64_ctx head;
lib/libc/include/aarch64-linux-musl/bits/syscall.h+9-1
...@@ -289,6 +289,10 @@...@@ -289,6 +289,10 @@
289#define __NR_fspick 433289#define __NR_fspick 433
290#define __NR_pidfd_open 434290#define __NR_pidfd_open 434
291#define __NR_clone3 435291#define __NR_clone3 435
292#define __NR_close_range 436
293#define __NR_openat2 437
294#define __NR_pidfd_getfd 438
295#define __NR_faccessat2 439
292296
293#define SYS_io_setup 0297#define SYS_io_setup 0
294#define SYS_io_destroy 1298#define SYS_io_destroy 1
...@@ -580,4 +584,8 @@...@@ -580,4 +584,8 @@
580#define SYS_fsmount 432584#define SYS_fsmount 432
581#define SYS_fspick 433585#define SYS_fspick 433
582#define SYS_pidfd_open 434586#define SYS_pidfd_open 434
583#define SYS_clone3 435
\ No newline at end of file
587#define SYS_clone3 435
588#define SYS_close_range 436
589#define SYS_openat2 437
590#define SYS_pidfd_getfd 438
591#define SYS_faccessat2 439
\ No newline at end of file
lib/libc/include/aarch64-linux-musl/bits/user.h+1-1
...@@ -6,7 +6,7 @@ struct user_regs_struct {...@@ -6,7 +6,7 @@ struct user_regs_struct {
6};6};
77
8struct user_fpsimd_struct {8struct user_fpsimd_struct {
9 long double vregs[32];9 __uint128_t vregs[32];
10 unsigned int fpsr;10 unsigned int fpsr;
11 unsigned int fpcr;11 unsigned int fpcr;
12};12};
lib/libc/include/arm-linux-musl/bits/alltypes.h+6
...@@ -350,6 +350,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -350,6 +350,12 @@ struct iovec { void *iov_base; size_t iov_len; };
350#endif350#endif
351351
352352
353#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
354struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
355#define __DEFINED_struct_winsize
356#endif
357
358
353#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)359#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
354typedef unsigned socklen_t;360typedef unsigned socklen_t;
355#define __DEFINED_socklen_t361#define __DEFINED_socklen_t
lib/libc/include/arm-linux-musl/bits/syscall.h+9-1
...@@ -389,6 +389,10 @@...@@ -389,6 +389,10 @@
389#define __NR_fspick 433389#define __NR_fspick 433
390#define __NR_pidfd_open 434390#define __NR_pidfd_open 434
391#define __NR_clone3 435391#define __NR_clone3 435
392#define __NR_close_range 436
393#define __NR_openat2 437
394#define __NR_pidfd_getfd 438
395#define __NR_faccessat2 439
392396
393#define __ARM_NR_breakpoint 0x0f0001397#define __ARM_NR_breakpoint 0x0f0001
394#define __ARM_NR_cacheflush 0x0f0002398#define __ARM_NR_cacheflush 0x0f0002
...@@ -787,4 +791,8 @@...@@ -787,4 +791,8 @@
787#define SYS_fsmount 432791#define SYS_fsmount 432
788#define SYS_fspick 433792#define SYS_fspick 433
789#define SYS_pidfd_open 434793#define SYS_pidfd_open 434
790#define SYS_clone3 435
\ No newline at end of file
794#define SYS_clone3 435
795#define SYS_close_range 436
796#define SYS_openat2 437
797#define SYS_pidfd_getfd 438
798#define SYS_faccessat2 439
\ No newline at end of file
lib/libc/include/generic-musl/bits/fcntl.h created+46
...@@ -0,0 +1,46 @@
1#define O_CREAT 0100
2#define O_EXCL 0200
3#define O_NOCTTY 0400
4#define O_TRUNC 01000
5#define O_APPEND 02000
6#define O_NONBLOCK 04000
7#define O_DSYNC 010000
8#define O_SYNC 04010000
9#define O_RSYNC 04010000
10#define O_DIRECTORY 0200000
11#define O_NOFOLLOW 0400000
12#define O_CLOEXEC 02000000
13
14#define O_ASYNC 020000
15#define O_DIRECT 040000
16#define O_LARGEFILE 0100000
17#define O_NOATIME 01000000
18#define O_PATH 010000000
19#define O_TMPFILE 020200000
20#define O_NDELAY O_NONBLOCK
21
22#define F_DUPFD 0
23#define F_GETFD 1
24#define F_SETFD 2
25#define F_GETFL 3
26#define F_SETFL 4
27
28#define F_SETOWN 8
29#define F_GETOWN 9
30#define F_SETSIG 10
31#define F_GETSIG 11
32
33#if __LONG_MAX == 0x7fffffffL
34#define F_GETLK 12
35#define F_SETLK 13
36#define F_SETLKW 14
37#else
38#define F_GETLK 5
39#define F_SETLK 6
40#define F_SETLKW 7
41#endif
42
43#define F_SETOWN_EX 15
44#define F_GETOWN_EX 16
45
46#define F_GETOWNER_UIDS 17
\ No newline at end of file
lib/libc/include/generic-musl/elf.h+2
...@@ -603,6 +603,7 @@ typedef struct {...@@ -603,6 +603,7 @@ typedef struct {
603#define PT_GNU_EH_FRAME 0x6474e550603#define PT_GNU_EH_FRAME 0x6474e550
604#define PT_GNU_STACK 0x6474e551604#define PT_GNU_STACK 0x6474e551
605#define PT_GNU_RELRO 0x6474e552605#define PT_GNU_RELRO 0x6474e552
606#define PT_GNU_PROPERTY 0x6474e553
606#define PT_LOSUNW 0x6ffffffa607#define PT_LOSUNW 0x6ffffffa
607#define PT_SUNWBSS 0x6ffffffa608#define PT_SUNWBSS 0x6ffffffa
608#define PT_SUNWSTACK 0x6ffffffb609#define PT_SUNWSTACK 0x6ffffffb
...@@ -1085,6 +1086,7 @@ typedef struct {...@@ -1085,6 +1086,7 @@ typedef struct {
10851086
1086#define NT_GNU_BUILD_ID 31087#define NT_GNU_BUILD_ID 3
1087#define NT_GNU_GOLD_VERSION 41088#define NT_GNU_GOLD_VERSION 4
1089#define NT_GNU_PROPERTY_TYPE_0 5
10881090
10891091
10901092
lib/libc/include/generic-musl/netinet/if_ether.h+1
...@@ -59,6 +59,7 @@...@@ -59,6 +59,7 @@
59#define ETH_P_PREAUTH 0x88C759#define ETH_P_PREAUTH 0x88C7
60#define ETH_P_TIPC 0x88CA60#define ETH_P_TIPC 0x88CA
61#define ETH_P_LLDP 0x88CC61#define ETH_P_LLDP 0x88CC
62#define ETH_P_MRP 0x88E3
62#define ETH_P_MACSEC 0x88E563#define ETH_P_MACSEC 0x88E5
63#define ETH_P_8021AH 0x88E764#define ETH_P_8021AH 0x88E7
64#define ETH_P_MVRP 0x88F565#define ETH_P_MVRP 0x88F5
lib/libc/include/generic-musl/netinet/in.h+4-1
...@@ -101,8 +101,10 @@ uint16_t ntohs(uint16_t);...@@ -101,8 +101,10 @@ uint16_t ntohs(uint16_t);
101#define IPPROTO_MH 135101#define IPPROTO_MH 135
102#define IPPROTO_UDPLITE 136102#define IPPROTO_UDPLITE 136
103#define IPPROTO_MPLS 137103#define IPPROTO_MPLS 137
104#define IPPROTO_ETHERNET 143
104#define IPPROTO_RAW 255105#define IPPROTO_RAW 255
105#define IPPROTO_MAX 256106#define IPPROTO_MPTCP 262
107#define IPPROTO_MAX 263
106108
107#define IN6_IS_ADDR_UNSPECIFIED(a) \109#define IN6_IS_ADDR_UNSPECIFIED(a) \
108 (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \110 (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \
...@@ -200,6 +202,7 @@ uint16_t ntohs(uint16_t);...@@ -200,6 +202,7 @@ uint16_t ntohs(uint16_t);
200#define IP_CHECKSUM 23202#define IP_CHECKSUM 23
201#define IP_BIND_ADDRESS_NO_PORT 24203#define IP_BIND_ADDRESS_NO_PORT 24
202#define IP_RECVFRAGSIZE 25204#define IP_RECVFRAGSIZE 25
205#define IP_RECVERR_RFC4884 26
203#define IP_MULTICAST_IF 32206#define IP_MULTICAST_IF 32
204#define IP_MULTICAST_TTL 33207#define IP_MULTICAST_TTL 33
205#define IP_MULTICAST_LOOP 34208#define IP_MULTICAST_LOOP 34
lib/libc/include/generic-musl/netinet/tcp.h+15-3
...@@ -78,6 +78,8 @@ enum {...@@ -78,6 +78,8 @@ enum {
78 TCP_NLA_DSACK_DUPS,78 TCP_NLA_DSACK_DUPS,
79 TCP_NLA_REORD_SEEN,79 TCP_NLA_REORD_SEEN,
80 TCP_NLA_SRTT,80 TCP_NLA_SRTT,
81 TCP_NLA_TIMEOUT_REHASH,
82 TCP_NLA_BYTES_NOTSENT,
81};83};
8284
83#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)85#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
...@@ -181,6 +183,13 @@ struct tcphdr {...@@ -181,6 +183,13 @@ struct tcphdr {
181#define TCP_CA_Recovery 3183#define TCP_CA_Recovery 3
182#define TCP_CA_Loss 4184#define TCP_CA_Loss 4
183185
186enum tcp_fastopen_client_fail {
187 TFO_STATUS_UNSPEC,
188 TFO_COOKIE_UNAVAILABLE,
189 TFO_DATA_NOT_ACKED,
190 TFO_SYN_RETRANSMITTED,
191};
192
184struct tcp_info {193struct tcp_info {
185 uint8_t tcpi_state;194 uint8_t tcpi_state;
186 uint8_t tcpi_ca_state;195 uint8_t tcpi_ca_state;
...@@ -189,7 +198,7 @@ struct tcp_info {...@@ -189,7 +198,7 @@ struct tcp_info {
189 uint8_t tcpi_backoff;198 uint8_t tcpi_backoff;
190 uint8_t tcpi_options;199 uint8_t tcpi_options;
191 uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;200 uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;
192 uint8_t tcpi_delivery_rate_app_limited : 1;201 uint8_t tcpi_delivery_rate_app_limited : 1, tcpi_fastopen_client_fail : 2;
193 uint32_t tcpi_rto;202 uint32_t tcpi_rto;
194 uint32_t tcpi_ato;203 uint32_t tcpi_ato;
195 uint32_t tcpi_snd_mss;204 uint32_t tcpi_snd_mss;
...@@ -240,14 +249,15 @@ struct tcp_info {...@@ -240,14 +249,15 @@ struct tcp_info {
240249
241#define TCP_MD5SIG_MAXKEYLEN 80250#define TCP_MD5SIG_MAXKEYLEN 80
242251
243#define TCP_MD5SIG_FLAG_PREFIX 1252#define TCP_MD5SIG_FLAG_PREFIX 0x1
253#define TCP_MD5SIG_FLAG_IFINDEX 0x2
244254
245struct tcp_md5sig {255struct tcp_md5sig {
246 struct sockaddr_storage tcpm_addr;256 struct sockaddr_storage tcpm_addr;
247 uint8_t tcpm_flags;257 uint8_t tcpm_flags;
248 uint8_t tcpm_prefixlen;258 uint8_t tcpm_prefixlen;
249 uint16_t tcpm_keylen;259 uint16_t tcpm_keylen;
250 uint32_t __tcpm_pad;260 int tcpm_ifindex;
251 uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];261 uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];
252};262};
253263
...@@ -275,6 +285,8 @@ struct tcp_zerocopy_receive {...@@ -275,6 +285,8 @@ struct tcp_zerocopy_receive {
275 uint64_t address;285 uint64_t address;
276 uint32_t length;286 uint32_t length;
277 uint32_t recv_skip_hint;287 uint32_t recv_skip_hint;
288 uint32_t inq;
289 int32_t err;
278};290};
279291
280#endif292#endif
lib/libc/include/generic-musl/netinet/udp.h+1
...@@ -35,6 +35,7 @@ struct udphdr {...@@ -35,6 +35,7 @@ struct udphdr {
35#define UDP_ENCAP_GTP0 435#define UDP_ENCAP_GTP0 4
36#define UDP_ENCAP_GTP1U 536#define UDP_ENCAP_GTP1U 5
37#define UDP_ENCAP_RXRPC 637#define UDP_ENCAP_RXRPC 6
38#define TCP_ENCAP_ESPINTCP 7
3839
39#define SOL_UDP 1740#define SOL_UDP 17
4041
lib/libc/include/generic-musl/sched.h+1
...@@ -49,6 +49,7 @@ int sched_yield(void);...@@ -49,6 +49,7 @@ int sched_yield(void);
4949
50#ifdef _GNU_SOURCE50#ifdef _GNU_SOURCE
51#define CSIGNAL 0x000000ff51#define CSIGNAL 0x000000ff
52#define CLONE_NEWTIME 0x00000080
52#define CLONE_VM 0x0000010053#define CLONE_VM 0x00000100
53#define CLONE_FS 0x0000020054#define CLONE_FS 0x00000200
54#define CLONE_FILES 0x0000040055#define CLONE_FILES 0x00000400
lib/libc/include/generic-musl/signal.h+13-3
...@@ -180,14 +180,24 @@ struct sigevent {...@@ -180,14 +180,24 @@ struct sigevent {
180 union sigval sigev_value;180 union sigval sigev_value;
181 int sigev_signo;181 int sigev_signo;
182 int sigev_notify;182 int sigev_notify;
183 void (*sigev_notify_function)(union sigval);183 union {
184 pthread_attr_t *sigev_notify_attributes;184 char __pad[64 - 2*sizeof(int) - sizeof(union sigval)];
185 char __pad[56-3*sizeof(long)];185 pid_t sigev_notify_thread_id;
186 struct {
187 void (*sigev_notify_function)(union sigval);
188 pthread_attr_t *sigev_notify_attributes;
189 } __sev_thread;
190 } __sev_fields;
186};191};
187192
193#define sigev_notify_thread_id __sev_fields.sigev_notify_thread_id
194#define sigev_notify_function __sev_fields.__sev_thread.sigev_notify_function
195#define sigev_notify_attributes __sev_fields.__sev_thread.sigev_notify_attributes
196
188#define SIGEV_SIGNAL 0197#define SIGEV_SIGNAL 0
189#define SIGEV_NONE 1198#define SIGEV_NONE 1
190#define SIGEV_THREAD 2199#define SIGEV_THREAD 2
200#define SIGEV_THREAD_ID 4
191201
192int __libc_current_sigrtmin(void);202int __libc_current_sigrtmin(void);
193int __libc_current_sigrtmax(void);203int __libc_current_sigrtmax(void);
lib/libc/include/generic-musl/stdlib.h+1
...@@ -145,6 +145,7 @@ int getloadavg(double *, int);...@@ -145,6 +145,7 @@ int getloadavg(double *, int);
145int clearenv(void);145int clearenv(void);
146#define WCOREDUMP(s) ((s) & 0x80)146#define WCOREDUMP(s) ((s) & 0x80)
147#define WIFCONTINUED(s) ((s) == 0xffff)147#define WIFCONTINUED(s) ((s) == 0xffff)
148void *reallocarray (void *, size_t, size_t);
148#endif149#endif
149150
150#ifdef _GNU_SOURCE151#ifdef _GNU_SOURCE
lib/libc/include/generic-musl/sys/fanotify.h+7-1
...@@ -55,8 +55,9 @@ struct fanotify_response {...@@ -55,8 +55,9 @@ struct fanotify_response {
55#define FAN_OPEN_PERM 0x1000055#define FAN_OPEN_PERM 0x10000
56#define FAN_ACCESS_PERM 0x2000056#define FAN_ACCESS_PERM 0x20000
57#define FAN_OPEN_EXEC_PERM 0x4000057#define FAN_OPEN_EXEC_PERM 0x40000
58#define FAN_ONDIR 0x4000000058#define FAN_DIR_MODIFY 0x00080000
59#define FAN_EVENT_ON_CHILD 0x0800000059#define FAN_EVENT_ON_CHILD 0x08000000
60#define FAN_ONDIR 0x40000000
60#define FAN_CLOSE (FAN_CLOSE_WRITE | FAN_CLOSE_NOWRITE)61#define FAN_CLOSE (FAN_CLOSE_WRITE | FAN_CLOSE_NOWRITE)
61#define FAN_MOVE (FAN_MOVED_FROM | FAN_MOVED_TO)62#define FAN_MOVE (FAN_MOVED_FROM | FAN_MOVED_TO)
62#define FAN_CLOEXEC 0x0163#define FAN_CLOEXEC 0x01
...@@ -70,6 +71,9 @@ struct fanotify_response {...@@ -70,6 +71,9 @@ struct fanotify_response {
70#define FAN_ENABLE_AUDIT 0x4071#define FAN_ENABLE_AUDIT 0x40
71#define FAN_REPORT_TID 0x10072#define FAN_REPORT_TID 0x100
72#define FAN_REPORT_FID 0x20073#define FAN_REPORT_FID 0x200
74#define FAN_REPORT_DIR_FID 0x00000400
75#define FAN_REPORT_NAME 0x00000800
76#define FAN_REPORT_DFID_NAME (FAN_REPORT_DIR_FID | FAN_REPORT_NAME)
73#define FAN_ALL_INIT_FLAGS (FAN_CLOEXEC | FAN_NONBLOCK | FAN_ALL_CLASS_BITS | FAN_UNLIMITED_QUEUE | FAN_UNLIMITED_MARKS)77#define FAN_ALL_INIT_FLAGS (FAN_CLOEXEC | FAN_NONBLOCK | FAN_ALL_CLASS_BITS | FAN_UNLIMITED_QUEUE | FAN_UNLIMITED_MARKS)
74#define FAN_MARK_ADD 0x0178#define FAN_MARK_ADD 0x01
75#define FAN_MARK_REMOVE 0x0279#define FAN_MARK_REMOVE 0x02
...@@ -88,6 +92,8 @@ struct fanotify_response {...@@ -88,6 +92,8 @@ struct fanotify_response {
88#define FAN_ALL_OUTGOING_EVENTS (FAN_ALL_EVENTS | FAN_ALL_PERM_EVENTS | FAN_Q_OVERFLOW)92#define FAN_ALL_OUTGOING_EVENTS (FAN_ALL_EVENTS | FAN_ALL_PERM_EVENTS | FAN_Q_OVERFLOW)
89#define FANOTIFY_METADATA_VERSION 393#define FANOTIFY_METADATA_VERSION 3
90#define FAN_EVENT_INFO_TYPE_FID 194#define FAN_EVENT_INFO_TYPE_FID 1
95#define FAN_EVENT_INFO_TYPE_DFID_NAME 2
96#define FAN_EVENT_INFO_TYPE_DFID 3
91#define FAN_ALLOW 0x0197#define FAN_ALLOW 0x01
92#define FAN_DENY 0x0298#define FAN_DENY 0x02
93#define FAN_AUDIT 0x1099#define FAN_AUDIT 0x10
lib/libc/include/generic-musl/sys/ioctl.h+2-7
...@@ -4,6 +4,8 @@...@@ -4,6 +4,8 @@
4extern "C" {4extern "C" {
5#endif5#endif
66
7#define __NEED_struct_winsize
8
7#include <bits/alltypes.h>9#include <bits/alltypes.h>
8#include <bits/ioctl.h>10#include <bits/ioctl.h>
911
...@@ -47,13 +49,6 @@ extern "C" {...@@ -47,13 +49,6 @@ extern "C" {
4749
48#define TIOCSER_TEMT 150#define TIOCSER_TEMT 1
4951
50struct winsize {
51 unsigned short ws_row;
52 unsigned short ws_col;
53 unsigned short ws_xpixel;
54 unsigned short ws_ypixel;
55};
56
57#define SIOCADDRT 0x890B52#define SIOCADDRT 0x890B
58#define SIOCDELRT 0x890C53#define SIOCDELRT 0x890C
59#define SIOCRTMSG 0x890D54#define SIOCRTMSG 0x890D
lib/libc/include/generic-musl/sys/mman.h+1
...@@ -101,6 +101,7 @@ extern "C" {...@@ -101,6 +101,7 @@ extern "C" {
101#ifdef _GNU_SOURCE101#ifdef _GNU_SOURCE
102#define MREMAP_MAYMOVE 1102#define MREMAP_MAYMOVE 1
103#define MREMAP_FIXED 2103#define MREMAP_FIXED 2
104#define MREMAP_DONTUNMAP 4
104105
105#define MLOCK_ONFAULT 0x01106#define MLOCK_ONFAULT 0x01
106107
lib/libc/include/generic-musl/sys/personality.h+3
...@@ -5,7 +5,9 @@...@@ -5,7 +5,9 @@
5extern "C" {5extern "C" {
6#endif6#endif
77
8#define UNAME26 0x0020000
8#define ADDR_NO_RANDOMIZE 0x00400009#define ADDR_NO_RANDOMIZE 0x0040000
10#define FDPIC_FUNCPTRS 0x0080000
9#define MMAP_PAGE_ZERO 0x010000011#define MMAP_PAGE_ZERO 0x0100000
10#define ADDR_COMPAT_LAYOUT 0x020000012#define ADDR_COMPAT_LAYOUT 0x0200000
11#define READ_IMPLIES_EXEC 0x040000013#define READ_IMPLIES_EXEC 0x0400000
...@@ -17,6 +19,7 @@ extern "C" {...@@ -17,6 +19,7 @@ extern "C" {
1719
18#define PER_LINUX 020#define PER_LINUX 0
19#define PER_LINUX_32BIT ADDR_LIMIT_32BIT21#define PER_LINUX_32BIT ADDR_LIMIT_32BIT
22#define PER_LINUX_FDPIC FDPIC_FUNCPTRS
20#define PER_SVR4 (1 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO)23#define PER_SVR4 (1 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO)
21#define PER_SVR3 (2 | STICKY_TIMEOUTS | SHORT_INODE)24#define PER_SVR3 (2 | STICKY_TIMEOUTS | SHORT_INODE)
22#define PER_SCOSVR3 (3 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE)25#define PER_SCOSVR3 (3 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE)
lib/libc/include/generic-musl/sys/prctl.h+3
...@@ -158,6 +158,9 @@ struct prctl_mm_map {...@@ -158,6 +158,9 @@ struct prctl_mm_map {
158#define PR_GET_TAGGED_ADDR_CTRL 56158#define PR_GET_TAGGED_ADDR_CTRL 56
159#define PR_TAGGED_ADDR_ENABLE (1UL << 0)159#define PR_TAGGED_ADDR_ENABLE (1UL << 0)
160160
161#define PR_SET_IO_FLUSHER 57
162#define PR_GET_IO_FLUSHER 58
163
161int prctl (int, ...);164int prctl (int, ...);
162165
163#ifdef __cplusplus166#ifdef __cplusplus
lib/libc/include/generic-musl/sys/random.h+1
...@@ -10,6 +10,7 @@ extern "C" {...@@ -10,6 +10,7 @@ extern "C" {
1010
11#define GRND_NONBLOCK 0x000111#define GRND_NONBLOCK 0x0001
12#define GRND_RANDOM 0x000212#define GRND_RANDOM 0x0002
13#define GRND_INSECURE 0x0004
1314
14ssize_t getrandom(void *, size_t, unsigned);15ssize_t getrandom(void *, size_t, unsigned);
1516
lib/libc/include/generic-musl/termios.h+4
...@@ -8,6 +8,7 @@ extern "C" {...@@ -8,6 +8,7 @@ extern "C" {
8#include <features.h>8#include <features.h>
99
10#define __NEED_pid_t10#define __NEED_pid_t
11#define __NEED_struct_winsize
1112
12#include <bits/alltypes.h>13#include <bits/alltypes.h>
1314
...@@ -27,6 +28,9 @@ int cfsetispeed (struct termios *, speed_t);...@@ -27,6 +28,9 @@ int cfsetispeed (struct termios *, speed_t);
27int tcgetattr (int, struct termios *);28int tcgetattr (int, struct termios *);
28int tcsetattr (int, int, const struct termios *);29int tcsetattr (int, int, const struct termios *);
2930
31int tcgetwinsize (int, struct winsize *);
32int tcsetwinsize (int, const struct winsize *);
33
30int tcsendbreak (int, int);34int tcsendbreak (int, int);
31int tcdrain (int);35int tcdrain (int);
32int tcflush (int, int);36int tcflush (int, int);
lib/libc/include/generic-musl/unistd.h+2
...@@ -82,6 +82,7 @@ unsigned sleep(unsigned);...@@ -82,6 +82,7 @@ unsigned sleep(unsigned);
82int pause(void);82int pause(void);
8383
84pid_t fork(void);84pid_t fork(void);
85pid_t _Fork(void);
85int execve(const char *, char *const [], char *const []);86int execve(const char *, char *const [], char *const []);
86int execv(const char *, char *const []);87int execv(const char *, char *const []);
87int execle(const char *, const char *, ...);88int execle(const char *, const char *, ...);
...@@ -190,6 +191,7 @@ int syncfs(int);...@@ -190,6 +191,7 @@ int syncfs(int);
190int euidaccess(const char *, int);191int euidaccess(const char *, int);
191int eaccess(const char *, int);192int eaccess(const char *, int);
192ssize_t copy_file_range(int, off_t *, int, off_t *, size_t, unsigned);193ssize_t copy_file_range(int, off_t *, int, off_t *, size_t, unsigned);
194pid_t gettid(void);
193#endif195#endif
194196
195#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)197#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)
lib/libc/include/i386-linux-musl/bits/alltypes.h+6
...@@ -380,6 +380,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -380,6 +380,12 @@ struct iovec { void *iov_base; size_t iov_len; };
380#endif380#endif
381381
382382
383#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
384struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
385#define __DEFINED_struct_winsize
386#endif
387
388
383#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)389#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
384typedef unsigned socklen_t;390typedef unsigned socklen_t;
385#define __DEFINED_socklen_t391#define __DEFINED_socklen_t
lib/libc/include/i386-linux-musl/bits/syscall.h+9-1
...@@ -426,6 +426,10 @@...@@ -426,6 +426,10 @@
426#define __NR_fspick 433426#define __NR_fspick 433
427#define __NR_pidfd_open 434427#define __NR_pidfd_open 434
428#define __NR_clone3 435428#define __NR_clone3 435
429#define __NR_close_range 436
430#define __NR_openat2 437
431#define __NR_pidfd_getfd 438
432#define __NR_faccessat2 439
429433
430#define SYS_restart_syscall 0434#define SYS_restart_syscall 0
431#define SYS_exit 1435#define SYS_exit 1
...@@ -852,4 +856,8 @@...@@ -852,4 +856,8 @@
852#define SYS_fsmount 432856#define SYS_fsmount 432
853#define SYS_fspick 433857#define SYS_fspick 433
854#define SYS_pidfd_open 434858#define SYS_pidfd_open 434
855#define SYS_clone3 435
\ No newline at end of file
859#define SYS_clone3 435
860#define SYS_close_range 436
861#define SYS_openat2 437
862#define SYS_pidfd_getfd 438
863#define SYS_faccessat2 439
\ No newline at end of file
lib/libc/include/mips-linux-musl/bits/alltypes.h+6
...@@ -350,6 +350,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -350,6 +350,12 @@ struct iovec { void *iov_base; size_t iov_len; };
350#endif350#endif
351351
352352
353#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
354struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
355#define __DEFINED_struct_winsize
356#endif
357
358
353#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)359#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
354typedef unsigned socklen_t;360typedef unsigned socklen_t;
355#define __DEFINED_socklen_t361#define __DEFINED_socklen_t
lib/libc/include/mips-linux-musl/bits/syscall.h+9-1
...@@ -408,6 +408,10 @@...@@ -408,6 +408,10 @@
408#define __NR_fspick 4433408#define __NR_fspick 4433
409#define __NR_pidfd_open 4434409#define __NR_pidfd_open 4434
410#define __NR_clone3 4435410#define __NR_clone3 4435
411#define __NR_close_range 4436
412#define __NR_openat2 4437
413#define __NR_pidfd_getfd 4438
414#define __NR_faccessat2 4439
411415
412#define SYS_syscall 4000416#define SYS_syscall 4000
413#define SYS_exit 4001417#define SYS_exit 4001
...@@ -818,4 +822,8 @@...@@ -818,4 +822,8 @@
818#define SYS_fsmount 4432822#define SYS_fsmount 4432
819#define SYS_fspick 4433823#define SYS_fspick 4433
820#define SYS_pidfd_open 4434824#define SYS_pidfd_open 4434
821#define SYS_clone3 4435
\ No newline at end of file
825#define SYS_clone3 4435
826#define SYS_close_range 4436
827#define SYS_openat2 4437
828#define SYS_pidfd_getfd 4438
829#define SYS_faccessat2 4439
\ No newline at end of file
lib/libc/include/mips64-linux-musl/bits/alltypes.h+6
...@@ -355,6 +355,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -355,6 +355,12 @@ struct iovec { void *iov_base; size_t iov_len; };
355#endif355#endif
356356
357357
358#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
359struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
360#define __DEFINED_struct_winsize
361#endif
362
363
358#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)364#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
359typedef unsigned socklen_t;365typedef unsigned socklen_t;
360#define __DEFINED_socklen_t366#define __DEFINED_socklen_t
lib/libc/include/mips64-linux-musl/bits/fcntl.h+1-1
...@@ -13,7 +13,7 @@...@@ -13,7 +13,7 @@
1313
14#define O_ASYNC 01000014#define O_ASYNC 010000
15#define O_DIRECT 010000015#define O_DIRECT 0100000
16#define O_LARGEFILE 016#define O_LARGEFILE 020000
17#define O_NOATIME 0100000017#define O_NOATIME 01000000
18#define O_PATH 01000000018#define O_PATH 010000000
19#define O_TMPFILE 02020000019#define O_TMPFILE 020200000
lib/libc/include/mips64-linux-musl/bits/syscall.h+9-1
...@@ -338,6 +338,10 @@...@@ -338,6 +338,10 @@
338#define __NR_fspick 5433338#define __NR_fspick 5433
339#define __NR_pidfd_open 5434339#define __NR_pidfd_open 5434
340#define __NR_clone3 5435340#define __NR_clone3 5435
341#define __NR_close_range 5436
342#define __NR_openat2 5437
343#define __NR_pidfd_getfd 5438
344#define __NR_faccessat2 5439
341345
342#define SYS_read 5000346#define SYS_read 5000
343#define SYS_write 5001347#define SYS_write 5001
...@@ -678,4 +682,8 @@...@@ -678,4 +682,8 @@
678#define SYS_fsmount 5432682#define SYS_fsmount 5432
679#define SYS_fspick 5433683#define SYS_fspick 5433
680#define SYS_pidfd_open 5434684#define SYS_pidfd_open 5434
681#define SYS_clone3 5435
\ No newline at end of file
685#define SYS_clone3 5435
686#define SYS_close_range 5436
687#define SYS_openat2 5437
688#define SYS_pidfd_getfd 5438
689#define SYS_faccessat2 5439
\ No newline at end of file
lib/libc/include/powerpc-linux-musl/bits/alltypes.h+6
...@@ -353,6 +353,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -353,6 +353,12 @@ struct iovec { void *iov_base; size_t iov_len; };
353#endif353#endif
354354
355355
356#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
357struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
358#define __DEFINED_struct_winsize
359#endif
360
361
356#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)362#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
357typedef unsigned socklen_t;363typedef unsigned socklen_t;
358#define __DEFINED_socklen_t364#define __DEFINED_socklen_t
lib/libc/include/powerpc-linux-musl/bits/syscall.h+9-1
...@@ -415,6 +415,10 @@...@@ -415,6 +415,10 @@
415#define __NR_fspick 433415#define __NR_fspick 433
416#define __NR_pidfd_open 434416#define __NR_pidfd_open 434
417#define __NR_clone3 435417#define __NR_clone3 435
418#define __NR_close_range 436
419#define __NR_openat2 437
420#define __NR_pidfd_getfd 438
421#define __NR_faccessat2 439
418422
419#define SYS_restart_syscall 0423#define SYS_restart_syscall 0
420#define SYS_exit 1424#define SYS_exit 1
...@@ -832,4 +836,8 @@...@@ -832,4 +836,8 @@
832#define SYS_fsmount 432836#define SYS_fsmount 432
833#define SYS_fspick 433837#define SYS_fspick 433
834#define SYS_pidfd_open 434838#define SYS_pidfd_open 434
835#define SYS_clone3 435
\ No newline at end of file
839#define SYS_clone3 435
840#define SYS_close_range 436
841#define SYS_openat2 437
842#define SYS_pidfd_getfd 438
843#define SYS_faccessat2 439
\ No newline at end of file
lib/libc/include/powerpc64-linux-musl/bits/alltypes.h+6
...@@ -349,6 +349,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -349,6 +349,12 @@ struct iovec { void *iov_base; size_t iov_len; };
349#endif349#endif
350350
351351
352#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
353struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
354#define __DEFINED_struct_winsize
355#endif
356
357
352#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)358#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
353typedef unsigned socklen_t;359typedef unsigned socklen_t;
354#define __DEFINED_socklen_t360#define __DEFINED_socklen_t
lib/libc/include/powerpc64-linux-musl/bits/syscall.h+9-1
...@@ -387,6 +387,10 @@...@@ -387,6 +387,10 @@
387#define __NR_fspick 433387#define __NR_fspick 433
388#define __NR_pidfd_open 434388#define __NR_pidfd_open 434
389#define __NR_clone3 435389#define __NR_clone3 435
390#define __NR_close_range 436
391#define __NR_openat2 437
392#define __NR_pidfd_getfd 438
393#define __NR_faccessat2 439
390394
391#define SYS_restart_syscall 0395#define SYS_restart_syscall 0
392#define SYS_exit 1396#define SYS_exit 1
...@@ -776,4 +780,8 @@...@@ -776,4 +780,8 @@
776#define SYS_fsmount 432780#define SYS_fsmount 432
777#define SYS_fspick 433781#define SYS_fspick 433
778#define SYS_pidfd_open 434782#define SYS_pidfd_open 434
779#define SYS_clone3 435
\ No newline at end of file
783#define SYS_clone3 435
784#define SYS_close_range 436
785#define SYS_openat2 437
786#define SYS_pidfd_getfd 438
787#define SYS_faccessat2 439
\ No newline at end of file
lib/libc/include/riscv64-linux-musl/bits/alltypes.h+6
...@@ -355,6 +355,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -355,6 +355,12 @@ struct iovec { void *iov_base; size_t iov_len; };
355#endif355#endif
356356
357357
358#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
359struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
360#define __DEFINED_struct_winsize
361#endif
362
363
358#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)364#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
359typedef unsigned socklen_t;365typedef unsigned socklen_t;
360#define __DEFINED_socklen_t366#define __DEFINED_socklen_t
lib/libc/include/riscv64-linux-musl/bits/signal.h+2-2
...@@ -60,10 +60,10 @@ struct sigaltstack {...@@ -60,10 +60,10 @@ struct sigaltstack {
60 size_t ss_size;60 size_t ss_size;
61};61};
6262
63typedef struct ucontext_t63typedef struct __ucontext
64{64{
65 unsigned long uc_flags;65 unsigned long uc_flags;
66 struct ucontext_t *uc_link;66 struct __ucontext *uc_link;
67 stack_t uc_stack;67 stack_t uc_stack;
68 sigset_t uc_sigmask;68 sigset_t uc_sigmask;
69 mcontext_t uc_mcontext;69 mcontext_t uc_mcontext;
lib/libc/include/riscv64-linux-musl/bits/syscall.h+8
...@@ -289,6 +289,10 @@...@@ -289,6 +289,10 @@
289#define __NR_fspick 433289#define __NR_fspick 433
290#define __NR_pidfd_open 434290#define __NR_pidfd_open 434
291#define __NR_clone3 435291#define __NR_clone3 435
292#define __NR_close_range 436
293#define __NR_openat2 437
294#define __NR_pidfd_getfd 438
295#define __NR_faccessat2 439
292296
293#define __NR_sysriscv __NR_arch_specific_syscall297#define __NR_sysriscv __NR_arch_specific_syscall
294#define __NR_riscv_flush_icache (__NR_sysriscv + 15)298#define __NR_riscv_flush_icache (__NR_sysriscv + 15)
...@@ -583,5 +587,9 @@...@@ -583,5 +587,9 @@
583#define SYS_fspick 433587#define SYS_fspick 433
584#define SYS_pidfd_open 434588#define SYS_pidfd_open 434
585#define SYS_clone3 435589#define SYS_clone3 435
590#define SYS_close_range 436
591#define SYS_openat2 437
592#define SYS_pidfd_getfd 438
593#define SYS_faccessat2 439
586#define SYS_sysriscv __NR_arch_specific_syscall594#define SYS_sysriscv __NR_arch_specific_syscall
587#define SYS_riscv_flush_icache (__NR_sysriscv + 15)595#define SYS_riscv_flush_icache (__NR_sysriscv + 15)
\ No newline at end of file
lib/libc/include/s390x-linux-musl/bits/alltypes.h+14
...@@ -13,11 +13,19 @@ typedef int wchar_t;...@@ -13,11 +13,19 @@ typedef int wchar_t;
1313
14#endif14#endif
1515
16#if defined(__FLT_EVAL_METHOD__) && __FLT_EVAL_METHOD__ == 1
16#if defined(__NEED_float_t) && !defined(__DEFINED_float_t)17#if defined(__NEED_float_t) && !defined(__DEFINED_float_t)
17typedef double float_t;18typedef double float_t;
18#define __DEFINED_float_t19#define __DEFINED_float_t
19#endif20#endif
2021
22#else
23#if defined(__NEED_float_t) && !defined(__DEFINED_float_t)
24typedef float float_t;
25#define __DEFINED_float_t
26#endif
27
28#endif
21#if defined(__NEED_double_t) && !defined(__DEFINED_double_t)29#if defined(__NEED_double_t) && !defined(__DEFINED_double_t)
22typedef double double_t;30typedef double double_t;
23#define __DEFINED_double_t31#define __DEFINED_double_t
...@@ -344,6 +352,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -344,6 +352,12 @@ struct iovec { void *iov_base; size_t iov_len; };
344#endif352#endif
345353
346354
355#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
356struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
357#define __DEFINED_struct_winsize
358#endif
359
360
347#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)361#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
348typedef unsigned socklen_t;362typedef unsigned socklen_t;
349#define __DEFINED_socklen_t363#define __DEFINED_socklen_t
lib/libc/include/s390x-linux-musl/bits/float.h+5-1
...@@ -1,4 +1,8 @@...@@ -1,4 +1,8 @@
1#define FLT_EVAL_METHOD 11#ifdef __FLT_EVAL_METHOD__
2#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__
3#else
4#define FLT_EVAL_METHOD 0
5#endif
26
3#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L7#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L
4#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L8#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L
lib/libc/include/s390x-linux-musl/bits/syscall.h+9-1
...@@ -352,6 +352,10 @@...@@ -352,6 +352,10 @@
352#define __NR_fspick 433352#define __NR_fspick 433
353#define __NR_pidfd_open 434353#define __NR_pidfd_open 434
354#define __NR_clone3 435354#define __NR_clone3 435
355#define __NR_close_range 436
356#define __NR_openat2 437
357#define __NR_pidfd_getfd 438
358#define __NR_faccessat2 439
355359
356#define SYS_exit 1360#define SYS_exit 1
357#define SYS_fork 2361#define SYS_fork 2
...@@ -706,4 +710,8 @@...@@ -706,4 +710,8 @@
706#define SYS_fsmount 432710#define SYS_fsmount 432
707#define SYS_fspick 433711#define SYS_fspick 433
708#define SYS_pidfd_open 434712#define SYS_pidfd_open 434
709#define SYS_clone3 435
\ No newline at end of file
713#define SYS_clone3 435
714#define SYS_close_range 436
715#define SYS_openat2 437
716#define SYS_pidfd_getfd 438
717#define SYS_faccessat2 439
\ No newline at end of file
lib/libc/include/x86_64-linux-musl/bits/alltypes.h+6
...@@ -357,6 +357,12 @@ struct iovec { void *iov_base; size_t iov_len; };...@@ -357,6 +357,12 @@ struct iovec { void *iov_base; size_t iov_len; };
357#endif357#endif
358358
359359
360#if defined(__NEED_struct_winsize) && !defined(__DEFINED_struct_winsize)
361struct winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
362#define __DEFINED_struct_winsize
363#endif
364
365
360#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)366#if defined(__NEED_socklen_t) && !defined(__DEFINED_socklen_t)
361typedef unsigned socklen_t;367typedef unsigned socklen_t;
362#define __DEFINED_socklen_t368#define __DEFINED_socklen_t
lib/libc/include/x86_64-linux-musl/bits/syscall.h+9-1
...@@ -345,6 +345,10 @@...@@ -345,6 +345,10 @@
345#define __NR_fspick 433345#define __NR_fspick 433
346#define __NR_pidfd_open 434346#define __NR_pidfd_open 434
347#define __NR_clone3 435347#define __NR_clone3 435
348#define __NR_close_range 436
349#define __NR_openat2 437
350#define __NR_pidfd_getfd 438
351#define __NR_faccessat2 439
348352
349#define SYS_read 0353#define SYS_read 0
350#define SYS_write 1354#define SYS_write 1
...@@ -692,4 +696,8 @@...@@ -692,4 +696,8 @@
692#define SYS_fsmount 432696#define SYS_fsmount 432
693#define SYS_fspick 433697#define SYS_fspick 433
694#define SYS_pidfd_open 434698#define SYS_pidfd_open 434
695#define SYS_clone3 435
\ No newline at end of file
699#define SYS_clone3 435
700#define SYS_close_range 436
701#define SYS_openat2 437
702#define SYS_pidfd_getfd 438
703#define SYS_faccessat2 439
\ No newline at end of file
lib/libc/mingw/lib-common/activeds.def created+39
...@@ -0,0 +1,39 @@
1;
2; Exports of file ACTIVEDS.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY ACTIVEDS.dll
8EXPORTS
9ADsGetObject
10ADsBuildEnumerator
11ADsFreeEnumerator
12ADsEnumerateNext
13ADsBuildVarArrayStr
14ADsBuildVarArrayInt
15ADsOpenObject
16DllCanUnloadNow
17DllGetClassObject
18ADsSetLastError
19ADsGetLastError
20AllocADsMem
21FreeADsMem
22ReallocADsMem
23AllocADsStr
24FreeADsStr
25ReallocADsStr
26ADsEncodeBinaryData
27PropVariantToAdsType
28AdsTypeToPropVariant
29AdsFreeAdsValues
30ADsDecodeBinaryData
31AdsTypeToPropVariant2
32PropVariantToAdsType2
33ConvertSecDescriptorToVariant
34ConvertSecurityDescriptorToSecDes
35BinarySDToSecurityDescriptor
36SecurityDescriptorToBinarySD
37ConvertTrusteeToSid
38DllRegisterServer
39DllUnregisterServer
lib/libc/mingw/lib-common/advpack.def created+91
...@@ -0,0 +1,91 @@
1LIBRARY "ADVPACK.dll"
2EXPORTS
3DelNodeRunDLL32
4DelNodeRunDLL32A
5DoInfInstall
6DoInfInstallA
7DoInfInstallW
8FileSaveRestore
9FileSaveRestoreA
10LaunchINFSectionA
11LaunchINFSectionEx
12LaunchINFSectionExA
13RegisterOCX
14RegisterOCXW
15AddDelBackupEntry
16AddDelBackupEntryA
17AddDelBackupEntryW
18AdvInstallFile
19AdvInstallFileA
20AdvInstallFileW
21CloseINFEngine
22DelNode
23DelNodeA
24DelNodeRunDLL32
25DelNodeRunDLL32W
26DelNodeW
27DoInfInstall
28ExecuteCab
29ExecuteCabA
30ExecuteCabW
31ExtractFiles
32ExtractFilesA
33ExtractFilesW
34FileSaveMarkNotExist
35FileSaveMarkNotExistA
36FileSaveMarkNotExistW
37FileSaveRestore
38FileSaveRestoreOnINF
39FileSaveRestoreOnINFA
40FileSaveRestoreOnINFW
41FileSaveRestoreW
42GetVersionFromFile
43GetVersionFromFileA
44GetVersionFromFileEx
45GetVersionFromFileExA
46GetVersionFromFileExW
47GetVersionFromFileW
48IsNTAdmin
49LaunchINFSection
50LaunchINFSectionEx
51LaunchINFSectionExW
52LaunchINFSectionW
53NeedReboot
54NeedRebootInit
55OpenINFEngine
56OpenINFEngineA
57OpenINFEngineW
58RebootCheckOnInstall
59RebootCheckOnInstallA
60RebootCheckOnInstallW
61RegInstall
62RegInstallA
63RegInstallW
64RegRestoreAll
65RegRestoreAllA
66RegRestoreAllW
67RegSaveRestore
68RegSaveRestoreA
69RegSaveRestoreOnINF
70RegSaveRestoreOnINFA
71RegSaveRestoreOnINFW
72RegSaveRestoreW
73RegisterOCX
74RunSetupCommand
75RunSetupCommandA
76RunSetupCommandW
77SetPerUserSecValues
78SetPerUserSecValuesA
79SetPerUserSecValuesW
80TranslateInfString
81TranslateInfStringA
82TranslateInfStringEx
83TranslateInfStringExA
84TranslateInfStringExW
85TranslateInfStringW
86UserInstStubWrapper
87UserInstStubWrapperA
88UserInstStubWrapperW
89UserUnInstStubWrapper
90UserUnInstStubWrapperA
91UserUnInstStubWrapperW
lib/libc/mingw/lib-common/api-ms-win-appmodel-runtime-l1-1-1.def created+19
...@@ -0,0 +1,19 @@
1LIBRARY api-ms-win-appmodel-runtime-l1-1-1
2
3EXPORTS
4
5FormatApplicationUserModelId
6GetCurrentApplicationUserModelId
7GetCurrentPackageFamilyName
8GetCurrentPackageId
9PackageFamilyNameFromFullName
10PackageFamilyNameFromId
11PackageFullNameFromId
12PackageIdFromFullName
13PackageNameAndPublisherIdFromFamilyName
14ParseApplicationUserModelId
15VerifyApplicationUserModelId
16VerifyPackageFamilyName
17VerifyPackageFullName
18VerifyPackageId
19VerifyPackageRelativeApplicationId
lib/libc/mingw/lib-common/api-ms-win-core-comm-l1-1-1.def created+23
...@@ -0,0 +1,23 @@
1LIBRARY api-ms-win-core-comm-l1-1-1
2
3EXPORTS
4
5ClearCommBreak
6ClearCommError
7EscapeCommFunction
8GetCommConfig
9GetCommMask
10GetCommModemStatus
11GetCommProperties
12GetCommState
13GetCommTimeouts
14OpenCommPort
15PurgeComm
16SetCommBreak
17SetCommConfig
18SetCommMask
19SetCommState
20SetCommTimeouts
21SetupComm
22TransmitCommChar
23WaitCommEvent
lib/libc/mingw/lib-common/api-ms-win-core-comm-l1-1-2.def created+24
...@@ -0,0 +1,24 @@
1LIBRARY api-ms-win-core-comm-l1-1-2
2
3EXPORTS
4
5ClearCommBreak
6ClearCommError
7EscapeCommFunction
8GetCommConfig
9GetCommMask
10GetCommModemStatus
11GetCommPorts
12GetCommProperties
13GetCommState
14GetCommTimeouts
15OpenCommPort
16PurgeComm
17SetCommBreak
18SetCommConfig
19SetCommMask
20SetCommState
21SetCommTimeouts
22SetupComm
23TransmitCommChar
24WaitCommEvent
lib/libc/mingw/lib-common/api-ms-win-core-errorhandling-l1-1-3.def created+17
...@@ -0,0 +1,17 @@
1LIBRARY api-ms-win-core-errorhandling-l1-1-3
2
3EXPORTS
4
5AddVectoredExceptionHandler
6FatalAppExitA
7FatalAppExitW
8GetLastError
9GetThreadErrorMode
10RaiseException
11RaiseFailFastException
12RemoveVectoredExceptionHandler
13SetErrorMode
14SetLastError
15SetThreadErrorMode
16SetUnhandledExceptionFilter
17UnhandledExceptionFilter
lib/libc/mingw/lib-common/api-ms-win-core-featurestaging-l1-1-0.def created+9
...@@ -0,0 +1,9 @@
1LIBRARY api-ms-win-core-featurestaging-l1-1-0
2
3EXPORTS
4
5GetFeatureEnabledState
6RecordFeatureError
7RecordFeatureUsage
8SubscribeFeatureStateChangeNotification
9UnsubscribeFeatureStateChangeNotification
lib/libc/mingw/lib-common/api-ms-win-core-featurestaging-l1-1-1.def created+10
...@@ -0,0 +1,10 @@
1LIBRARY api-ms-win-core-featurestaging-l1-1-1
2
3EXPORTS
4
5GetFeatureEnabledState
6GetFeatureVariant
7RecordFeatureError
8RecordFeatureUsage
9SubscribeFeatureStateChangeNotification
10UnsubscribeFeatureStateChangeNotification
lib/libc/mingw/lib-common/api-ms-win-core-file-fromapp-l1-1-0.def created+15
...@@ -0,0 +1,15 @@
1LIBRARY api-ms-win-core-file-fromapp-l1-1-0
2
3EXPORTS
4
5CopyFileFromAppW
6CreateDirectoryFromAppW
7CreateFile2FromAppW
8CreateFileFromAppW
9DeleteFileFromAppW
10FindFirstFileExFromAppW
11GetFileAttributesExFromAppW
12MoveFileFromAppW
13RemoveDirectoryFromAppW
14ReplaceFileFromAppW
15SetFileAttributesFromAppW
lib/libc/mingw/lib-common/api-ms-win-core-handle-l1-1-0.def created+9
...@@ -0,0 +1,9 @@
1LIBRARY api-ms-win-core-handle-l1-1-0
2
3EXPORTS
4
5CloseHandle
6CompareObjectHandles
7DuplicateHandle
8GetHandleInformation
9SetHandleInformation
lib/libc/mingw/lib-common/api-ms-win-core-libraryloader-l2-1-0.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-libraryloader-l2-1-0
2
3EXPORTS
4
5LoadPackagedLibrary
6QueryOptionalDelayLoadedAPI
lib/libc/mingw/lib-common/api-ms-win-core-memory-l1-1-3.def created+35
...@@ -0,0 +1,35 @@
1LIBRARY api-ms-win-core-memory-l1-1-3
2
3EXPORTS
4
5CreateFileMappingFromApp
6CreateFileMappingW
7DiscardVirtualMemory
8FlushViewOfFile
9GetLargePageMinimum
10GetProcessWorkingSetSizeEx
11GetWriteWatch
12MapViewOfFile
13MapViewOfFileEx
14MapViewOfFileFromApp
15OfferVirtualMemory
16OpenFileMappingFromApp
17OpenFileMappingW
18ReadProcessMemory
19ReclaimVirtualMemory
20ResetWriteWatch
21SetProcessValidCallTargets
22SetProcessWorkingSetSizeEx
23UnmapViewOfFile
24UnmapViewOfFileEx
25VirtualAlloc
26VirtualAllocFromApp
27VirtualFree
28VirtualFreeEx
29VirtualLock
30VirtualProtect
31VirtualProtectFromApp
32VirtualQuery
33VirtualQueryEx
34VirtualUnlock
35WriteProcessMemory
lib/libc/mingw/lib-common/api-ms-win-core-memory-l1-1-5.def created+37
...@@ -0,0 +1,37 @@
1LIBRARY api-ms-win-core-memory-l1-1-5
2
3EXPORTS
4
5CreateFileMappingFromApp
6CreateFileMappingW
7DiscardVirtualMemory
8FlushViewOfFile
9GetLargePageMinimum
10GetProcessWorkingSetSizeEx
11GetWriteWatch
12MapViewOfFile
13MapViewOfFileEx
14MapViewOfFileFromApp
15OfferVirtualMemory
16OpenFileMappingFromApp
17OpenFileMappingW
18ReadProcessMemory
19ReclaimVirtualMemory
20ResetWriteWatch
21SetProcessValidCallTargets
22SetProcessWorkingSetSizeEx
23UnmapViewOfFile
24UnmapViewOfFile2
25UnmapViewOfFileEx
26VirtualAlloc
27VirtualAllocFromApp
28VirtualFree
29VirtualFreeEx
30VirtualLock
31VirtualProtect
32VirtualProtectFromApp
33VirtualQuery
34VirtualQueryEx
35VirtualUnlock
36VirtualUnlockEx
37WriteProcessMemory
lib/libc/mingw/lib-common/api-ms-win-core-memory-l1-1-6.def created+39
...@@ -0,0 +1,39 @@
1LIBRARY api-ms-win-core-memory-l1-1-6
2
3EXPORTS
4
5CreateFileMappingFromApp
6CreateFileMappingW
7DiscardVirtualMemory
8FlushViewOfFile
9GetLargePageMinimum
10GetProcessWorkingSetSizeEx
11GetWriteWatch
12MapViewOfFile
13MapViewOfFile3FromApp
14MapViewOfFileEx
15MapViewOfFileFromApp
16OfferVirtualMemory
17OpenFileMappingFromApp
18OpenFileMappingW
19ReadProcessMemory
20ReclaimVirtualMemory
21ResetWriteWatch
22SetProcessValidCallTargets
23SetProcessWorkingSetSizeEx
24UnmapViewOfFile
25UnmapViewOfFile2
26UnmapViewOfFileEx
27VirtualAlloc
28VirtualAlloc2FromApp
29VirtualAllocFromApp
30VirtualFree
31VirtualFreeEx
32VirtualLock
33VirtualProtect
34VirtualProtectFromApp
35VirtualQuery
36VirtualQueryEx
37VirtualUnlock
38VirtualUnlockEx
39WriteProcessMemory
lib/libc/mingw/lib-common/api-ms-win-core-memory-l1-1-7.def created+40
...@@ -0,0 +1,40 @@
1LIBRARY api-ms-win-core-memory-l1-1-7
2
3EXPORTS
4
5CreateFileMappingFromApp
6CreateFileMappingW
7DiscardVirtualMemory
8FlushViewOfFile
9GetLargePageMinimum
10GetProcessWorkingSetSizeEx
11GetWriteWatch
12MapViewOfFile
13MapViewOfFile3FromApp
14MapViewOfFileEx
15MapViewOfFileFromApp
16OfferVirtualMemory
17OpenFileMappingFromApp
18OpenFileMappingW
19ReadProcessMemory
20ReclaimVirtualMemory
21ResetWriteWatch
22SetProcessValidCallTargets
23SetProcessValidCallTargetsForMappedView
24SetProcessWorkingSetSizeEx
25UnmapViewOfFile
26UnmapViewOfFile2
27UnmapViewOfFileEx
28VirtualAlloc
29VirtualAlloc2FromApp
30VirtualAllocFromApp
31VirtualFree
32VirtualFreeEx
33VirtualLock
34VirtualProtect
35VirtualProtectFromApp
36VirtualQuery
37VirtualQueryEx
38VirtualUnlock
39VirtualUnlockEx
40WriteProcessMemory
lib/libc/mingw/lib-common/api-ms-win-core-path-l1-1-0.def created+26
...@@ -0,0 +1,26 @@
1LIBRARY api-ms-win-core-path-l1-1-0
2
3EXPORTS
4
5PathAllocCanonicalize
6PathAllocCombine
7PathCchAddBackslash
8PathCchAddBackslashEx
9PathCchAddExtension
10PathCchAppend
11PathCchAppendEx
12PathCchCanonicalize
13PathCchCanonicalizeEx
14PathCchCombine
15PathCchCombineEx
16PathCchFindExtension
17PathCchIsRoot
18PathCchRemoveBackslash
19PathCchRemoveBackslashEx
20PathCchRemoveExtension
21PathCchRemoveFileSpec
22PathCchRenameExtension
23PathCchSkipRoot
24PathCchStripPrefix
25PathCchStripToRoot
26PathIsUNCEx
lib/libc/mingw/lib-common/api-ms-win-core-psm-appnotify-l1-1-0.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-psm-appnotify-l1-1-0
2
3EXPORTS
4
5RegisterAppStateChangeNotification
6UnregisterAppStateChangeNotification
lib/libc/mingw/lib-common/api-ms-win-core-realtime-l1-1-1.def created+9
...@@ -0,0 +1,9 @@
1LIBRARY api-ms-win-core-realtime-l1-1-1
2
3EXPORTS
4
5QueryInterruptTime
6QueryInterruptTimePrecise
7QueryThreadCycleTime
8QueryUnbiasedInterruptTime
9QueryUnbiasedInterruptTimePrecise
lib/libc/mingw/lib-common/api-ms-win-core-realtime-l1-1-2.def created+12
...@@ -0,0 +1,12 @@
1LIBRARY api-ms-win-core-realtime-l1-1-2
2
3EXPORTS
4
5ConvertAuxiliaryCounterToPerformanceCounter
6ConvertPerformanceCounterToAuxiliaryCounter
7QueryAuxiliaryCounterFrequency
8QueryInterruptTime
9QueryInterruptTimePrecise
10QueryThreadCycleTime
11QueryUnbiasedInterruptTime
12QueryUnbiasedInterruptTimePrecise
lib/libc/mingw/lib-common/api-ms-win-core-slapi-l1-1-0.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-slapi-l1-1-0
2
3EXPORTS
4
5SLQueryLicenseValueFromApp
6SLQueryLicenseValueFromApp2
lib/libc/mingw/lib-common/api-ms-win-core-synch-l1-2-0.def created+59
...@@ -0,0 +1,59 @@
1LIBRARY api-ms-win-core-synch-l1-2-0
2
3EXPORTS
4
5AcquireSRWLockExclusive
6AcquireSRWLockShared
7CancelWaitableTimer
8CreateEventA
9CreateEventExA
10CreateEventExW
11CreateEventW
12CreateMutexA
13CreateMutexExA
14CreateMutexExW
15CreateMutexW
16CreateSemaphoreExW
17CreateWaitableTimerExW
18DeleteCriticalSection
19EnterCriticalSection
20InitializeConditionVariable
21InitializeCriticalSection
22InitializeCriticalSectionAndSpinCount
23InitializeCriticalSectionEx
24InitializeSRWLock
25InitOnceBeginInitialize
26InitOnceComplete
27InitOnceExecuteOnce
28InitOnceInitialize
29LeaveCriticalSection
30OpenEventA
31OpenEventW
32OpenMutexW
33OpenSemaphoreW
34OpenWaitableTimerW
35ReleaseMutex
36ReleaseSemaphore
37ReleaseSRWLockExclusive
38ReleaseSRWLockShared
39ResetEvent
40SetCriticalSectionSpinCount
41SetEvent
42SetWaitableTimer
43SetWaitableTimerEx
44SignalObjectAndWait
45Sleep
46SleepConditionVariableCS
47SleepConditionVariableSRW
48SleepEx
49TryAcquireSRWLockExclusive
50TryAcquireSRWLockShared
51TryEnterCriticalSection
52WaitForMultipleObjectsEx
53WaitForSingleObject
54WaitForSingleObjectEx
55WaitOnAddress
56WakeAllConditionVariable
57WakeByAddressAll
58WakeByAddressSingle
59WakeConditionVariable
lib/libc/mingw/lib-common/api-ms-win-core-sysinfo-l1-2-0.def created+31
...@@ -0,0 +1,31 @@
1LIBRARY api-ms-win-core-sysinfo-l1-2-0
2
3EXPORTS
4
5EnumSystemFirmwareTables
6GetComputerNameExA
7GetComputerNameExW
8GetLocalTime
9GetLogicalProcessorInformation
10GetLogicalProcessorInformationEx
11GetNativeSystemInfo
12GetProductInfo
13GetSystemDirectoryA
14GetSystemDirectoryW
15GetSystemFirmwareTable
16GetSystemInfo
17GetSystemTime
18GetSystemTimeAdjustment
19GetSystemTimeAsFileTime
20GetSystemTimePreciseAsFileTime
21GetTickCount
22GetTickCount64
23GetVersion
24GetVersionExA
25GetVersionExW
26GetWindowsDirectoryA
27GetWindowsDirectoryW
28GlobalMemoryStatusEx
29SetLocalTime
30SetSystemTime
31VerSetConditionMask
lib/libc/mingw/lib-common/api-ms-win-core-sysinfo-l1-2-3.def created+33
...@@ -0,0 +1,33 @@
1LIBRARY api-ms-win-core-sysinfo-l1-2-3
2
3EXPORTS
4
5EnumSystemFirmwareTables
6GetComputerNameExA
7GetComputerNameExW
8GetIntegratedDisplaySize
9GetLocalTime
10GetLogicalProcessorInformation
11GetLogicalProcessorInformationEx
12GetNativeSystemInfo
13GetPhysicallyInstalledSystemMemory
14GetProductInfo
15GetSystemDirectoryA
16GetSystemDirectoryW
17GetSystemFirmwareTable
18GetSystemInfo
19GetSystemTime
20GetSystemTimeAdjustment
21GetSystemTimeAsFileTime
22GetSystemTimePreciseAsFileTime
23GetTickCount
24GetTickCount64
25GetVersion
26GetVersionExA
27GetVersionExW
28GetWindowsDirectoryA
29GetWindowsDirectoryW
30GlobalMemoryStatusEx
31SetLocalTime
32SetSystemTime
33VerSetConditionMask
lib/libc/mingw/lib-common/api-ms-win-core-winrt-error-l1-1-0.def created+15
...@@ -0,0 +1,15 @@
1LIBRARY api-ms-win-core-winrt-error-l1-1-0
2
3EXPORTS
4
5GetRestrictedErrorInfo
6RoCaptureErrorContext
7RoFailFastWithErrorContext
8RoGetErrorReportingFlags
9RoOriginateError
10RoOriginateErrorW
11RoResolveRestrictedErrorInfoReference
12RoSetErrorReportingFlags
13RoTransformError
14RoTransformErrorW
15SetRestrictedErrorInfo
lib/libc/mingw/lib-common/api-ms-win-core-winrt-error-l1-1-1.def created+22
...@@ -0,0 +1,22 @@
1LIBRARY api-ms-win-core-winrt-error-l1-1-1
2
3EXPORTS
4
5GetRestrictedErrorInfo
6IsErrorPropagationEnabled
7RoCaptureErrorContext
8RoClearError
9RoFailFastWithErrorContext
10RoGetErrorReportingFlags
11RoGetMatchingRestrictedErrorInfo
12RoInspectCapturedStackBackTrace
13RoInspectThreadErrorInfo
14RoOriginateError
15RoOriginateErrorW
16RoOriginateLanguageException
17RoReportFailedDelegate
18RoReportUnhandledError
19RoSetErrorReportingFlags
20RoTransformError
21RoTransformErrorW
22SetRestrictedErrorInfo
lib/libc/mingw/lib-common/api-ms-win-core-winrt-l1-1-0.def created+13
...@@ -0,0 +1,13 @@
1LIBRARY api-ms-win-core-winrt-l1-1-0
2
3EXPORTS
4
5RoActivateInstance
6RoGetActivationFactory
7RoGetApartmentIdentifier
8RoInitialize
9RoRegisterActivationFactories
10RoRegisterForApartmentShutdown
11RoRevokeActivationFactories
12RoUninitialize
13RoUnregisterForApartmentShutdown
lib/libc/mingw/lib-common/api-ms-win-core-winrt-registration-l1-1-0.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-winrt-registration-l1-1-0
2
3EXPORTS
4
5RoGetActivatableClassRegistration
6RoGetServerActivatableClasses
lib/libc/mingw/lib-common/api-ms-win-core-winrt-robuffer-l1-1-0.def created+5
...@@ -0,0 +1,5 @@
1LIBRARY api-ms-win-core-winrt-robuffer-l1-1-0
2
3EXPORTS
4
5RoGetBufferMarshaler
lib/libc/mingw/lib-common/api-ms-win-core-winrt-roparameterizediid-l1-1-0.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY api-ms-win-core-winrt-roparameterizediid-l1-1-0
2
3EXPORTS
4
5RoFreeParameterizedTypeExtra
6RoGetParameterizedTypeInstanceIID
7RoParameterizedTypeExtraGetTypeSignature
lib/libc/mingw/lib-common/api-ms-win-core-winrt-string-l1-1-0.def created+31
...@@ -0,0 +1,31 @@
1LIBRARY api-ms-win-core-winrt-string-l1-1-0
2
3EXPORTS
4
5HSTRING_UserFree
6HSTRING_UserFree64
7HSTRING_UserMarshal
8HSTRING_UserMarshal64
9HSTRING_UserSize
10HSTRING_UserSize64
11HSTRING_UserUnmarshal
12HSTRING_UserUnmarshal64
13WindowsCompareStringOrdinal
14WindowsConcatString
15WindowsCreateString
16WindowsCreateStringReference
17WindowsDeleteString
18WindowsDeleteStringBuffer
19WindowsDuplicateString
20WindowsGetStringLen
21WindowsGetStringRawBuffer
22WindowsInspectString
23WindowsIsStringEmpty
24WindowsPreallocateStringBuffer
25WindowsPromoteStringBuffer
26WindowsReplaceString
27WindowsStringHasEmbeddedNull
28WindowsSubstring
29WindowsSubstringWithSpecifiedLength
30WindowsTrimStringEnd
31WindowsTrimStringStart
lib/libc/mingw/lib-common/api-ms-win-core-wow64-l1-1-1.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-wow64-l1-1-1
2
3EXPORTS
4
5IsWow64Process
6IsWow64Process2
lib/libc/mingw/lib-common/api-ms-win-devices-config-l1-1-1.def created+17
...@@ -0,0 +1,17 @@
1LIBRARY api-ms-win-devices-config-l1-1-1
2
3EXPORTS
4
5CM_Get_Device_ID_List_SizeW
6CM_Get_Device_ID_ListW
7CM_Get_Device_IDW
8CM_Get_Device_Interface_List_SizeW
9CM_Get_Device_Interface_ListW
10CM_Get_Device_Interface_PropertyW
11CM_Get_DevNode_PropertyW
12CM_Get_DevNode_Status
13CM_Get_Parent
14CM_Locate_DevNodeW
15CM_MapCrToWin32Err
16CM_Register_Notification
17CM_Unregister_Notification
lib/libc/mingw/lib-common/api-ms-win-gaming-deviceinformation-l1-1-0.def created+5
...@@ -0,0 +1,5 @@
1LIBRARY api-ms-win-gaming-deviceinformation-l1-1-0
2
3EXPORTS
4
5GetGamingDeviceModelInformation
lib/libc/mingw/lib-common/api-ms-win-gaming-expandedresources-l1-1-0.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY api-ms-win-gaming-expandedresources-l1-1-0
2
3EXPORTS
4
5GetExpandedResourceExclusiveCpuCount
6HasExpandedResources
7ReleaseExclusiveCpuSets
lib/libc/mingw/lib-common/api-ms-win-gaming-tcui-l1-1-0.def created+11
...@@ -0,0 +1,11 @@
1LIBRARY api-ms-win-gaming-tcui-l1-1-0
2
3EXPORTS
4
5ProcessPendingGameUI
6ShowChangeFriendRelationshipUI
7ShowGameInviteUI
8ShowPlayerPickerUI
9ShowProfileCardUI
10ShowTitleAchievementsUI
11TryCancelPendingGameUI
lib/libc/mingw/lib-common/api-ms-win-gaming-tcui-l1-1-2.def created+20
...@@ -0,0 +1,20 @@
1LIBRARY api-ms-win-gaming-tcui-l1-1-2
2
3EXPORTS
4
5CheckGamingPrivilegeSilently
6CheckGamingPrivilegeSilentlyForUser
7CheckGamingPrivilegeWithUI
8CheckGamingPrivilegeWithUIForUser
9ProcessPendingGameUI
10ShowChangeFriendRelationshipUI
11ShowChangeFriendRelationshipUIForUser
12ShowGameInviteUI
13ShowGameInviteUIForUser
14ShowPlayerPickerUI
15ShowPlayerPickerUIForUser
16ShowProfileCardUI
17ShowProfileCardUIForUser
18ShowTitleAchievementsUI
19ShowTitleAchievementsUIForUser
20TryCancelPendingGameUI
lib/libc/mingw/lib-common/api-ms-win-gaming-tcui-l1-1-3.def created+22
...@@ -0,0 +1,22 @@
1LIBRARY api-ms-win-gaming-tcui-l1-1-3
2
3EXPORTS
4
5CheckGamingPrivilegeSilently
6CheckGamingPrivilegeSilentlyForUser
7CheckGamingPrivilegeWithUI
8CheckGamingPrivilegeWithUIForUser
9ProcessPendingGameUI
10ShowChangeFriendRelationshipUI
11ShowChangeFriendRelationshipUIForUser
12ShowGameInviteUI
13ShowGameInviteUIForUser
14ShowGameInviteUIWithContext
15ShowGameInviteUIWithContextForUser
16ShowPlayerPickerUI
17ShowPlayerPickerUIForUser
18ShowProfileCardUI
19ShowProfileCardUIForUser
20ShowTitleAchievementsUI
21ShowTitleAchievementsUIForUser
22TryCancelPendingGameUI
lib/libc/mingw/lib-common/api-ms-win-gaming-tcui-l1-1-4.def created+30
...@@ -0,0 +1,30 @@
1LIBRARY api-ms-win-gaming-tcui-l1-1-4
2
3EXPORTS
4
5CheckGamingPrivilegeSilently
6CheckGamingPrivilegeSilentlyForUser
7CheckGamingPrivilegeWithUI
8CheckGamingPrivilegeWithUIForUser
9ProcessPendingGameUI
10ShowChangeFriendRelationshipUI
11ShowChangeFriendRelationshipUIForUser
12ShowCustomizeUserProfileUI
13ShowCustomizeUserProfileUIForUser
14ShowFindFriendsUI
15ShowFindFriendsUIForUser
16ShowGameInfoUI
17ShowGameInfoUIForUser
18ShowGameInviteUI
19ShowGameInviteUIForUser
20ShowGameInviteUIWithContext
21ShowGameInviteUIWithContextForUser
22ShowPlayerPickerUI
23ShowPlayerPickerUIForUser
24ShowProfileCardUI
25ShowProfileCardUIForUser
26ShowTitleAchievementsUI
27ShowTitleAchievementsUIForUser
28ShowUserSettingsUI
29ShowUserSettingsUIForUser
30TryCancelPendingGameUI
lib/libc/mingw/lib-common/api-ms-win-security-isolatedcontainer-l1-1-0.def created+5
...@@ -0,0 +1,5 @@
1LIBRARY api-ms-win-security-isolatedcontainer-l1-1-0
2
3EXPORTS
4
5IsProcessInIsolatedContainer
lib/libc/mingw/lib-common/api-ms-win-shcore-stream-winrt-l1-1-0.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY api-ms-win-shcore-stream-winrt-l1-1-0
2
3EXPORTS
4
5CreateRandomAccessStreamOnFile
6CreateRandomAccessStreamOverStream
7CreateStreamOverRandomAccessStream
lib/libc/mingw/lib-common/authz.def created+77
...@@ -0,0 +1,77 @@
1;
2; Definition file of AUTHZ.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "AUTHZ.dll"
7EXPORTS
8AuthzAccessCheck
9AuthzAddSidsToContext
10AuthzCachedAccessCheck
11AuthzComputeEffectivePermission
12AuthzEnumerateSecurityEventSources
13AuthzEvaluateSacl
14AuthzFreeAuditEvent
15AuthzFreeCentralAccessPolicyCache
16AuthzFreeContext
17AuthzFreeHandle
18AuthzFreeResourceManager
19AuthzGetInformationFromContext
20AuthzInitializeCompoundContext
21AuthzInitializeContextFromAuthzContext
22AuthzInitializeContextFromSid
23AuthzInitializeContextFromToken
24AuthzInitializeObjectAccessAuditEvent
25AuthzInitializeObjectAccessAuditEvent2
26AuthzInitializeRemoteAccessCheck
27AuthzInitializeRemoteResourceManager
28AuthzInitializeResourceManager
29AuthzInitializeResourceManagerEx
30AuthzInstallSecurityEventSource
31AuthzModifyClaims
32AuthzModifySecurityAttributes
33AuthzModifySids
34AuthzOpenObjectAudit
35AuthzRegisterCapChangeNotification
36AuthzRegisterSecurityEventSource
37AuthzReportSecurityEvent
38AuthzReportSecurityEventFromParams
39AuthzSetAppContainerInformation
40AuthzShutdownRemoteAccessCheck
41AuthzUninstallSecurityEventSource
42AuthzUnregisterCapChangeNotification
43AuthzUnregisterSecurityEventSource
44AuthziAccessCheckEx
45AuthziAllocateAuditParams
46AuthziCheckContextMembership
47AuthziFreeAuditEventType
48AuthziFreeAuditParams
49AuthziFreeAuditQueue
50AuthziGenerateAdminAlertAuditW
51AuthziInitializeAuditEvent
52AuthziInitializeAuditEventType
53AuthziInitializeAuditParams
54AuthziInitializeAuditParamsFromArray
55AuthziInitializeAuditParamsWithRM
56AuthziInitializeAuditQueue
57AuthziInitializeContextFromSid
58AuthziLogAuditEvent
59AuthziModifyAuditEvent
60AuthziModifyAuditEvent2
61AuthziModifyAuditEventType
62AuthziModifyAuditQueue
63AuthziQueryAuditPolicy
64AuthziSetAuditPolicy
65AuthziModifySecurityAttributes
66AuthziQuerySecurityAttributes
67AuthziSourceAudit
68FreeClaimDefinitions
69FreeClaimDictionary
70GenerateNewCAPID
71GetCentralAccessPoliciesByCapID
72GetCentralAccessPoliciesByDN
73GetClaimDefinitions
74GetClaimDomainInfo
75GetDefaultCAPESecurityDescriptor
76InitializeClaimDictionary
77RefreshClaimDictionary
lib/libc/mingw/lib-common/bluetoothapis.def created+103
...@@ -0,0 +1,103 @@
1;
2; Definition file of BluetoothApis.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "BluetoothApis.dll"
7EXPORTS
8BluetoothAddressToString
9BluetoothDisconnectDevice
10BluetoothEnableDiscovery
11BluetoothEnableIncomingConnections
12BluetoothEnumerateInstalledServices
13BluetoothEnumerateInstalledServicesEx
14BluetoothEnumerateLocalServices
15BluetoothFindBrowseGroupClose
16BluetoothFindClassIdClose
17BluetoothFindDeviceClose
18BluetoothFindFirstBrowseGroup
19BluetoothFindFirstClassId
20BluetoothFindFirstDevice
21BluetoothFindFirstProfileDescriptor
22BluetoothFindFirstProtocolDescriptorStack
23BluetoothFindFirstProtocolEntry
24BluetoothFindFirstRadio
25BluetoothFindFirstService
26BluetoothFindFirstServiceEx
27BluetoothFindNextBrowseGroup
28BluetoothFindNextClassId
29BluetoothFindNextDevice
30BluetoothFindNextProfileDescriptor
31BluetoothFindNextProtocolDescriptorStack
32BluetoothFindNextProtocolEntry
33BluetoothFindNextRadio
34BluetoothFindNextService
35BluetoothFindProfileDescriptorClose
36BluetoothFindProtocolDescriptorStackClose
37BluetoothFindProtocolEntryClose
38BluetoothFindRadioClose
39BluetoothFindServiceClose
40BluetoothGATTAbortReliableWrite
41BluetoothGATTBeginReliableWrite
42BluetoothGATTEndReliableWrite
43BluetoothGATTGetCharacteristicValue
44BluetoothGATTGetCharacteristics
45BluetoothGATTGetDescriptorValue
46BluetoothGATTGetDescriptors
47BluetoothGATTGetIncludedServices
48BluetoothGATTGetServices
49BluetoothGATTRegisterEvent
50BluetoothGATTSetCharacteristicValue
51BluetoothGATTSetDescriptorValue
52BluetoothGATTUnregisterEvent
53BluetoothGetDeviceInfo
54BluetoothGetLocalServiceInfo
55BluetoothGetRadioInfo
56BluetoothGetServicePnpInstance
57BluetoothIsConnectable
58BluetoothIsDiscoverable
59BluetoothIsVersionAvailable
60BluetoothRegisterForAuthentication
61BluetoothRegisterForAuthenticationEx
62BluetoothRemoveDevice
63BluetoothSdpEnumAttributes
64BluetoothSdpGetAttributeValue
65BluetoothSdpGetContainerElementData
66BluetoothSdpGetElementData
67BluetoothSdpGetString
68BluetoothSendAuthenticationResponse
69BluetoothSendAuthenticationResponseEx
70BluetoothSetLocalServiceInfo
71BluetoothSetServiceState
72BluetoothSetServiceStateEx
73BluetoothUnregisterAuthentication
74BluetoothUpdateDeviceRecord
75BthpCheckForUnsupportedGuid
76BthpCleanupBRDeviceNode
77BthpCleanupDeviceLocalServices
78BthpCleanupDeviceRemoteServices
79BthpCleanupLEDeviceNodes
80BthpEnableA2DPIfPresent
81BthpEnableAllServices
82BthpEnableConnectableAndDiscoverable
83BthpEnableRadioSoftware
84BthpFindPnpInfo
85BthpGATTCloseSession
86BthpInnerRecord
87BthpIsBluetoothServiceRunning
88BthpIsConnectableByDefault
89BthpIsDiscoverable
90BthpIsDiscoverableByDefault
91BthpIsRadioSoftwareEnabled
92BthpIsTopOfServiceGroup
93BthpMapStatusToErr
94BthpNextRecord
95BthpRegisterForAuthentication
96BthpSetServiceState
97BthpSetServiceStateEx
98BthpTranspose16Bits
99BthpTranspose32Bits
100BthpTransposeAndExtendBytes
101FindNextOpenVCOMPort
102InstallIncomingComPort
103ShouldForceAuthentication
lib/libc/mingw/lib-common/cabinet.def created+32
...@@ -0,0 +1,32 @@
1;
2; Definition file of Cabinet.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "Cabinet.dll"
7EXPORTS
8GetDllVersion
9Extract
10DeleteExtractedFiles
11FCICreate
12FCIAddFile
13FCIFlushFolder
14FCIFlushCabinet
15FCIDestroy
16FDICreate
17FDIIsCabinet
18FDICopy
19FDIDestroy
20FDITruncateCabinet
21CreateCompressor
22SetCompressorInformation
23QueryCompressorInformation
24Compress
25ResetCompressor
26CloseCompressor
27CreateDecompressor
28SetDecompressorInformation
29QueryDecompressorInformation
30Decompress
31ResetDecompressor
32CloseDecompressor
lib/libc/mingw/lib-common/cfgmgr32.def created+285
...@@ -0,0 +1,285 @@
1;
2; Definition file of CFGMGR32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "CFGMGR32.dll"
7EXPORTS
8CMP_GetBlockedDriverInfo
9CMP_GetServerSideDeviceInstallFlags
10CMP_Init_Detection
11CMP_RegisterNotification
12CMP_RegisterServiceNotification
13CMP_Register_Notification
14CMP_Report_LogOn
15CMP_UnregisterNotification
16CMP_WaitNoPendingInstallEvents
17CMP_WaitServicesAvailable
18CM_Add_Driver_PackageW
19CM_Add_Driver_Package_ExW
20CM_Add_Empty_Log_Conf
21CM_Add_Empty_Log_Conf_Ex
22CM_Add_IDA
23CM_Add_IDW
24CM_Add_ID_ExA
25CM_Add_ID_ExW
26CM_Add_Range
27CM_Add_Res_Des
28CM_Add_Res_Des_Ex
29CM_Apply_PowerScheme
30CM_Connect_MachineA
31CM_Connect_MachineW
32CM_Create_DevNodeA
33CM_Create_DevNodeW
34CM_Create_DevNode_ExA
35CM_Create_DevNode_ExW
36CM_Create_Range_List
37CM_Delete_Class_Key
38CM_Delete_Class_Key_Ex
39CM_Delete_DevNode_Key
40CM_Delete_DevNode_Key_Ex
41CM_Delete_Device_Interface_KeyA
42CM_Delete_Device_Interface_KeyW
43CM_Delete_Device_Interface_Key_ExA
44CM_Delete_Device_Interface_Key_ExW
45CM_Delete_Driver_PackageW
46CM_Delete_Driver_Package_ExW
47CM_Delete_PowerScheme
48CM_Delete_Range
49CM_Detect_Resource_Conflict
50CM_Detect_Resource_Conflict_Ex
51CM_Disable_DevNode
52CM_Disable_DevNode_Ex
53CM_Disconnect_Machine
54CM_Dup_Range_List
55CM_Duplicate_PowerScheme
56CM_Enable_DevNode
57CM_Enable_DevNode_Ex
58CM_Enumerate_Classes
59CM_Enumerate_Classes_Ex
60CM_Enumerate_EnumeratorsA
61CM_Enumerate_EnumeratorsW
62CM_Enumerate_Enumerators_ExA
63CM_Enumerate_Enumerators_ExW
64CM_Find_Range
65CM_First_Range
66CM_Free_Log_Conf
67CM_Free_Log_Conf_Ex
68CM_Free_Log_Conf_Handle
69CM_Free_Range_List
70CM_Free_Res_Des
71CM_Free_Res_Des_Ex
72CM_Free_Res_Des_Handle
73CM_Free_Resource_Conflict_Handle
74CM_Get_Child
75CM_Get_Child_Ex
76CM_Get_Class_Key_NameA
77CM_Get_Class_Key_NameW
78CM_Get_Class_Key_Name_ExA
79CM_Get_Class_Key_Name_ExW
80CM_Get_Class_NameA
81CM_Get_Class_NameW
82CM_Get_Class_Name_ExA
83CM_Get_Class_Name_ExW
84CM_Get_Class_PropertyW
85CM_Get_Class_Property_ExW
86CM_Get_Class_Property_Keys
87CM_Get_Class_Property_Keys_Ex
88CM_Get_Class_Registry_PropertyA
89CM_Get_Class_Registry_PropertyW
90CM_Get_Depth
91CM_Get_Depth_Ex
92CM_Get_DevNode_Custom_PropertyA
93CM_Get_DevNode_Custom_PropertyW
94CM_Get_DevNode_Custom_Property_ExA
95CM_Get_DevNode_Custom_Property_ExW
96CM_Get_DevNode_PropertyW
97CM_Get_DevNode_Property_ExW
98CM_Get_DevNode_Property_Keys
99CM_Get_DevNode_Property_Keys_Ex
100CM_Get_DevNode_Registry_PropertyA
101CM_Get_DevNode_Registry_PropertyW
102CM_Get_DevNode_Registry_Property_ExA
103CM_Get_DevNode_Registry_Property_ExW
104CM_Get_DevNode_Status
105CM_Get_DevNode_Status_Ex
106CM_Get_Device_IDA
107CM_Get_Device_IDW
108CM_Get_Device_ID_ExA
109CM_Get_Device_ID_ExW
110CM_Get_Device_ID_ListA
111CM_Get_Device_ID_ListW
112CM_Get_Device_ID_List_ExA
113CM_Get_Device_ID_List_ExW
114CM_Get_Device_ID_List_SizeA
115CM_Get_Device_ID_List_SizeW
116CM_Get_Device_ID_List_Size_ExA
117CM_Get_Device_ID_List_Size_ExW
118CM_Get_Device_ID_Size
119CM_Get_Device_ID_Size_Ex
120CM_Get_Device_Interface_AliasA
121CM_Get_Device_Interface_AliasW
122CM_Get_Device_Interface_Alias_ExA
123CM_Get_Device_Interface_Alias_ExW
124CM_Get_Device_Interface_ListA
125CM_Get_Device_Interface_ListW
126CM_Get_Device_Interface_List_ExA
127CM_Get_Device_Interface_List_ExW
128CM_Get_Device_Interface_List_SizeA
129CM_Get_Device_Interface_List_SizeW
130CM_Get_Device_Interface_List_Size_ExA
131CM_Get_Device_Interface_List_Size_ExW
132CM_Get_Device_Interface_PropertyW
133CM_Get_Device_Interface_Property_ExW
134CM_Get_Device_Interface_Property_KeysW
135CM_Get_Device_Interface_Property_Keys_ExW
136CM_Get_First_Log_Conf
137CM_Get_First_Log_Conf_Ex
138CM_Get_Global_State
139CM_Get_Global_State_Ex
140CM_Get_HW_Prof_FlagsA
141CM_Get_HW_Prof_FlagsW
142CM_Get_HW_Prof_Flags_ExA
143CM_Get_HW_Prof_Flags_ExW
144CM_Get_Hardware_Profile_InfoA
145CM_Get_Hardware_Profile_InfoW
146CM_Get_Hardware_Profile_Info_ExA
147CM_Get_Hardware_Profile_Info_ExW
148CM_Get_Log_Conf_Priority
149CM_Get_Log_Conf_Priority_Ex
150CM_Get_Next_Log_Conf
151CM_Get_Next_Log_Conf_Ex
152CM_Get_Next_Res_Des
153CM_Get_Next_Res_Des_Ex
154CM_Get_Parent
155CM_Get_Parent_Ex
156CM_Get_Res_Des_Data
157CM_Get_Res_Des_Data_Ex
158CM_Get_Res_Des_Data_Size
159CM_Get_Res_Des_Data_Size_Ex
160CM_Get_Resource_Conflict_Count
161CM_Get_Resource_Conflict_DetailsA
162CM_Get_Resource_Conflict_DetailsW
163CM_Get_Sibling
164CM_Get_Sibling_Ex
165CM_Get_Version
166CM_Get_Version_Ex
167CM_Import_PowerScheme
168CM_Install_DevNodeW
169CM_Install_DevNode_ExW
170CM_Intersect_Range_List
171CM_Invert_Range_List
172CM_Is_Dock_Station_Present
173CM_Is_Dock_Station_Present_Ex
174CM_Is_Version_Available
175CM_Is_Version_Available_Ex
176CM_Locate_DevNodeA
177CM_Locate_DevNodeW
178CM_Locate_DevNode_ExA
179CM_Locate_DevNode_ExW
180CM_MapCrToSpErr
181CM_MapCrToWin32Err
182CM_Merge_Range_List
183CM_Modify_Res_Des
184CM_Modify_Res_Des_Ex
185CM_Move_DevNode
186CM_Move_DevNode_Ex
187CM_Next_Range
188CM_Open_Class_KeyA
189CM_Open_Class_KeyW
190CM_Open_Class_Key_ExA
191CM_Open_Class_Key_ExW
192CM_Open_DevNode_Key
193CM_Open_DevNode_Key_Ex
194CM_Open_Device_Interface_KeyA
195CM_Open_Device_Interface_KeyW
196CM_Open_Device_Interface_Key_ExA
197CM_Open_Device_Interface_Key_ExW
198CM_Query_And_Remove_SubTreeA
199CM_Query_And_Remove_SubTreeW
200CM_Query_And_Remove_SubTree_ExA
201CM_Query_And_Remove_SubTree_ExW
202CM_Query_Arbitrator_Free_Data
203CM_Query_Arbitrator_Free_Data_Ex
204CM_Query_Arbitrator_Free_Size
205CM_Query_Arbitrator_Free_Size_Ex
206CM_Query_Remove_SubTree
207CM_Query_Remove_SubTree_Ex
208CM_Query_Resource_Conflict_List
209CM_Reenumerate_DevNode
210CM_Reenumerate_DevNode_Ex
211CM_Register_Device_Driver
212CM_Register_Device_Driver_Ex
213CM_Register_Device_InterfaceA
214CM_Register_Device_InterfaceW
215CM_Register_Device_Interface_ExA
216CM_Register_Device_Interface_ExW
217CM_Register_Notification
218CM_Remove_SubTree
219CM_Remove_SubTree_Ex
220CM_Request_Device_EjectA
221CM_Request_Device_EjectW
222CM_Request_Device_Eject_ExA
223CM_Request_Device_Eject_ExW
224CM_Request_Eject_PC
225CM_Request_Eject_PC_Ex
226CM_RestoreAll_DefaultPowerSchemes
227CM_Restore_DefaultPowerScheme
228CM_Run_Detection
229CM_Run_Detection_Ex
230CM_Set_ActiveScheme
231CM_Set_Class_PropertyW
232CM_Set_Class_Property_ExW
233CM_Set_Class_Registry_PropertyA
234CM_Set_Class_Registry_PropertyW
235CM_Set_DevNode_Problem
236CM_Set_DevNode_Problem_Ex
237CM_Set_DevNode_PropertyW
238CM_Set_DevNode_Property_ExW
239CM_Set_DevNode_Registry_PropertyA
240CM_Set_DevNode_Registry_PropertyW
241CM_Set_DevNode_Registry_Property_ExA
242CM_Set_DevNode_Registry_Property_ExW
243CM_Set_Device_Interface_PropertyW
244CM_Set_Device_Interface_Property_ExW
245CM_Set_HW_Prof
246CM_Set_HW_Prof_Ex
247CM_Set_HW_Prof_FlagsA
248CM_Set_HW_Prof_FlagsW
249CM_Set_HW_Prof_Flags_ExA
250CM_Set_HW_Prof_Flags_ExW
251CM_Setup_DevNode
252CM_Setup_DevNode_Ex
253CM_Test_Range_Available
254CM_Uninstall_DevNode
255CM_Uninstall_DevNode_Ex
256CM_Unregister_Device_InterfaceA
257CM_Unregister_Device_InterfaceW
258CM_Unregister_Device_Interface_ExA
259CM_Unregister_Device_Interface_ExW
260CM_Unregister_Notification
261CM_Write_UserPowerKey
262DevCloseObjectQuery
263DevCreateObjectQuery
264DevCreateObjectQueryEx
265DevCreateObjectQueryFromId
266DevCreateObjectQueryFromIdEx
267DevCreateObjectQueryFromIds
268DevCreateObjectQueryFromIdsEx
269DevFindProperty
270DevFreeObjectProperties
271DevFreeObjects
272DevGetObjectProperties
273DevGetObjectPropertiesEx
274DevGetObjects
275DevGetObjectsEx
276DevSetObjectProperties
277SwDeviceClose
278SwDeviceCreate
279SwDeviceGetLifetime
280SwDeviceInterfacePropertySet
281SwDeviceInterfaceRegister
282SwDeviceInterfaceSetState
283SwDevicePropertySet
284SwDeviceSetLifetime
285SwMemFree
lib/libc/mingw/lib-common/clusapi.def created+203
...@@ -0,0 +1,203 @@
1;
2; Definition file of CLUSAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "CLUSAPI.dll"
7EXPORTS
8CCHlpAddNodeUpdateCluster
9CCHlpConfigureNode
10CCHlpCreateClusterNameCOIfNotExists
11CCHlpGetClusterServiceSecret
12CCHlpGetDNSHostLabel
13CCHlpRestoreClusterVirtualObjectToInitialState
14AddClusterNode
15AddClusterResourceDependency
16AddClusterResourceNode
17AddResourceToClusterSharedVolumes
18BackupClusterDatabase
19CanResourceBeDependent
20CancelClusterGroupOperation
21ChangeClusterResourceGroup
22CloseCluster
23CloseClusterGroup
24CloseClusterNetInterface
25CloseClusterNetwork
26CloseClusterNode
27CloseClusterNotifyPort
28CloseClusterResource
29ClusterCloseEnum
30ClusterCloseEnumEx
31ClusterControl
32ClusterEnum
33ClusterEnumEx
34ClusterFreeMemory
35ClusterFreeMrrResponse
36ClusterGetEnumCount
37ClusterGetEnumCountEx
38ClusterGroupCloseEnum
39ClusterGroupCloseEnumEx
40ClusterGroupControl
41ClusterGroupEnum
42ClusterGroupEnumEx
43ClusterGroupGetEnumCount
44ClusterGroupGetEnumCountEx
45ClusterGroupOpenEnum
46ClusterGroupOpenEnumEx
47ClusterNetInterfaceControl
48ClusterNetworkCloseEnum
49ClusterNetworkControl
50ClusterNetworkEnum
51ClusterNetworkGetEnumCount
52ClusterNetworkOpenEnum
53ClusterNodeCloseEnum
54ClusterNodeCloseEnumEx
55ClusterNodeControl
56ClusterNodeEnum
57ClusterNodeEnumEx
58ClusterNodeGetEnumCount
59ClusterNodeGetEnumCountEx
60ClusterNodeOpenEnum
61ClusterNodeOpenEnumEx
62ClusterOpenEnum
63ClusterOpenEnumEx
64ClusterRegBatchAddCommand
65ClusterRegBatchCloseNotification
66ClusterRegBatchReadCommand
67ClusterRegCloseBatch
68ClusterRegCloseBatchEx
69ClusterRegCloseBatchNotifyPort
70ClusterRegCloseKey
71ClusterRegCloseReadBatch
72ClusterRegCloseReadBatchReply
73ClusterRegCreateBatch
74ClusterRegCreateBatchNotifyPort
75ClusterRegCreateKey
76ClusterRegCreateKeyForceSync
77ClusterRegCreateReadBatch
78ClusterRegDeleteKey
79ClusterRegDeleteKeyForceSync
80ClusterRegDeleteValue
81ClusterRegDeleteValueForceSync
82ClusterRegEnumKey
83ClusterRegEnumValue
84ClusterRegGetBatchNotification
85ClusterRegGetKeySecurity
86ClusterRegOpenKey
87ClusterRegQueryAllValues
88ClusterRegQueryInfoKey
89ClusterRegQueryValue
90ClusterRegReadBatchAddCommand
91ClusterRegReadBatchReplyNextCommand
92ClusterRegSetKeySecurity
93ClusterRegSetValue
94ClusterRegSetValueForceSync
95ClusterRegSyncDatabase
96ClusterResourceCloseEnum
97ClusterResourceCloseEnumEx
98ClusterResourceControl
99ClusterResourceEnum
100ClusterResourceEnumEx
101ClusterResourceGetEnumCount
102ClusterResourceGetEnumCountEx
103ClusterResourceOpenEnum
104ClusterResourceOpenEnumEx
105ClusterResourceTypeCloseEnum
106ClusterResourceTypeControl
107ClusterResourceTypeEnum
108ClusterResourceTypeGetEnumCount
109ClusterResourceTypeOpenEnum
110ClusterSendReceiveMrr
111ClusterSharedVolumeClearBackupState
112ClusterSharedVolumeSetSnapshotState
113ClusterStmFindDisk
114CreateCluster
115CreateClusterGroup
116CreateClusterGroupEx
117CreateClusterManagementPoint
118CreateClusterNotifyPort
119CreateClusterNotifyPortV2
120CreateClusterResource
121CreateClusterResourceType
122CreateClusterResourceWithId
123DeleteClusterGroup
124DeleteClusterResource
125DeleteClusterResourceType
126DestroyCluster
127DestroyClusterGroup
128EvictClusterNode
129EvictClusterNodeEx
130FailClusterResource
131GetClusterFromGroup
132GetClusterFromNetInterface
133GetClusterFromNetwork
134GetClusterFromNode
135GetClusterFromResource
136GetClusterGroupKey
137GetClusterGroupState
138GetClusterInformation
139GetClusterKey
140GetClusterNetInterface
141GetClusterNetInterfaceKey
142GetClusterNetInterfaceState
143GetClusterNetworkId
144GetClusterNetworkKey
145GetClusterNetworkState
146GetClusterNodeId
147GetClusterNodeKey
148GetClusterNodeState
149GetClusterNotify
150GetClusterNotifyV2
151GetClusterQuorumResource
152GetClusterResourceDependencyExpression
153GetClusterResourceKey
154GetClusterResourceNetworkName
155GetClusterResourceState
156GetClusterResourceTypeKey
157GetClusterSharedVolumeNameForFile
158GetNodeClusterState
159GetNotifyEventHandle
160IsFileOnClusterSharedVolume
161MoveClusterGroup
162MoveClusterGroupEx
163OfflineClusterGroup
164OfflineClusterGroupEx
165OfflineClusterResource
166OfflineClusterResourceEx
167OnlineClusterGroup
168OnlineClusterGroupEx
169OnlineClusterResource
170OnlineClusterResourceEx
171OpenCluster
172OpenClusterEx
173OpenClusterEx2
174OpenClusterGroup
175OpenClusterGroupEx
176OpenClusterNetInterface
177OpenClusterNetInterfaceEx
178OpenClusterNetwork
179OpenClusterNetworkEx
180OpenClusterNode
181OpenClusterNodeEx
182OpenClusterResource
183OpenClusterResourceEx
184PauseClusterNode
185PauseClusterNodeEx
186RegisterClusterNotify
187RegisterClusterNotifyV2
188RemoveClusterResourceDependency
189RemoveClusterResourceNode
190RemoveResourceFromClusterSharedVolumes
191RestartClusterResource
192RestoreClusterDatabase
193ResumeClusterNode
194ResumeClusterNodeEx
195SetClusterGroupName
196SetClusterGroupNodeList
197SetClusterName
198SetClusterNetworkName
199SetClusterNetworkPriorityOrder
200SetClusterQuorumResource
201SetClusterResourceDependencyExpression
202SetClusterResourceName
203SetClusterServiceAccountPassword
lib/libc/mingw/lib-common/credui.def created+33
...@@ -0,0 +1,33 @@
1;
2; Definition file of credui.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "credui.dll"
7EXPORTS
8CredPackAuthenticationBufferA
9CredPackAuthenticationBufferW
10CredUICmdLinePromptForCredentialsA
11CredUICmdLinePromptForCredentialsW
12CredUIConfirmCredentialsA
13CredUIConfirmCredentialsW
14CredUIInitControls
15CredUIParseUserNameA
16CredUIParseUserNameW
17CredUIPromptForCredentialsA
18CredUIPromptForCredentialsW
19CredUIPromptForWindowsCredentialsA
20CredUIPromptForWindowsCredentialsW
21CredUIPromptForWindowsCredentialsWorker
22CredUIReadSSOCredA
23CredUIReadSSOCredW
24CredUIStoreSSOCredA
25CredUIStoreSSOCredW
26CredUnPackAuthenticationBufferA
27CredUnPackAuthenticationBufferW
28SspiGetCredUIContext
29SspiIsPromptingNeeded
30SspiPromptForCredentialsA
31SspiPromptForCredentialsW
32SspiUnmarshalCredUIContext
33SspiUpdateCredentials
lib/libc/mingw/lib-common/cryptui.def created+69
...@@ -0,0 +1,69 @@
1LIBRARY "CRYPTUI.dll"
2EXPORTS
3AddChainToStore
4CertDllProtectedRootMessageBox
5CompareCertificate
6CryptUIDlgAddPolicyServer
7CryptUIDlgAddPolicyServerWithPriority
8CryptUIDlgPropertyPolicy
9DisplayHtmlHelp
10FormatDateStringAutoLayout
11GetUnknownErrorString
12InvokeHelpLink
13MyFormatEnhancedKeyUsageString
14ACUIProviderInvokeUI
15CertSelectionGetSerializedBlob
16CommonInit
17CryptDllProtectPrompt
18CryptUIDlgCertMgr
19CryptUIDlgFreeCAContext
20CryptUIDlgFreePolicyServerContext
21CryptUIDlgSelectCA
22CryptUIDlgSelectCertificateA
23CryptUIDlgSelectCertificateFromStore
24CryptUIDlgSelectCertificateW
25CryptUIDlgSelectPolicyServer
26CryptUIDlgSelectStoreA
27CryptUIDlgSelectStoreW
28CryptUIDlgViewCRLA
29CryptUIDlgViewCRLW
30CryptUIDlgViewCTLA
31CryptUIDlgViewCTLW
32CryptUIDlgViewCertificateA
33CryptUIDlgViewCertificatePropertiesA
34CryptUIDlgViewCertificatePropertiesW
35CryptUIDlgViewCertificateW
36CryptUIDlgViewContext
37CryptUIDlgViewSignerInfoA
38CryptUIDlgViewSignerInfoW
39CryptUIFreeCertificatePropertiesPagesA
40CryptUIFreeCertificatePropertiesPagesW
41CryptUIFreeViewSignaturesPagesA
42CryptUIFreeViewSignaturesPagesW
43CryptUIGetCertificatePropertiesPagesA
44CryptUIGetCertificatePropertiesPagesW
45CryptUIGetViewSignaturesPagesA
46CryptUIGetViewSignaturesPagesW
47CryptUIStartCertMgr
48CryptUIViewExpiringCerts
49CryptUIWizBuildCTL
50CryptUIWizCertRequest
51CryptUIWizCreateCertRequestNoDS
52CryptUIWizDigitalSign
53CryptUIWizExport
54CryptUIWizFreeCertRequestNoDS
55CryptUIWizFreeDigitalSignContext
56CryptUIWizImport
57CryptUIWizImportInternal
58CryptUIWizQueryCertRequestNoDS
59CryptUIWizSubmitCertRequestNoDS
60DllRegisterServer
61DllUnregisterServer
62EnrollmentCOMObjectFactory_getInstance
63I_CryptUIProtect
64I_CryptUIProtectFailure
65IsWizardExtensionAvailable
66LocalEnroll
67LocalEnrollNoDS
68RetrievePKCS7FromCA
69WizardFree
lib/libc/mingw/lib-common/cryptxml.def created+26
...@@ -0,0 +1,26 @@
1;
2; Definition file of CRYPTXML.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "CRYPTXML.dll"
7EXPORTS
8CryptXmlAddObject
9CryptXmlClose
10CryptXmlCreateReference
11CryptXmlDigestReference
12CryptXmlEncode
13CryptXmlEnumAlgorithmInfo
14CryptXmlFindAlgorithmInfo
15CryptXmlGetAlgorithmInfo
16CryptXmlGetDocContext
17CryptXmlGetReference
18CryptXmlGetSignature
19CryptXmlGetStatus
20CryptXmlGetTransforms
21CryptXmlImportPublicKey
22CryptXmlOpenToDecode
23CryptXmlOpenToEncode
24CryptXmlSetHMACSecret
25CryptXmlSign
26CryptXmlVerifySignature
lib/libc/mingw/lib-common/cscapi.def created+14
...@@ -0,0 +1,14 @@
1;
2; Definition file of CSCAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "CSCAPI.dll"
7EXPORTS
8CscNetApiGetInterface
9CscSearchApiGetInterface
10OfflineFilesEnable
11OfflineFilesGetShareCachingMode
12OfflineFilesQueryStatus
13OfflineFilesQueryStatusEx
14OfflineFilesStart
lib/libc/mingw/lib-common/d2d1.def created+19
...@@ -0,0 +1,19 @@
1;
2; Definition file of d2d1.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "d2d1.dll"
7EXPORTS
8D2D1CreateFactory
9D2D1MakeRotateMatrix
10D2D1MakeSkewMatrix
11D2D1IsMatrixInvertible
12D2D1InvertMatrix
13D2D1ConvertColorSpace
14D2D1CreateDevice
15D2D1CreateDeviceContext
16D2D1SinCos
17D2D1Tan
18D2D1Vec3Length
19D2D1ComputeMaximumScaleFactor
lib/libc/mingw/lib-common/d3d10.def created+31
...@@ -0,0 +1,31 @@
1LIBRARY "d3d10.dll"
2EXPORTS
3D3D10CompileEffectFromMemory
4D3D10CompileShader
5D3D10CreateBlob
6D3D10CreateDevice
7D3D10CreateDeviceAndSwapChain
8D3D10CreateEffectFromMemory
9D3D10CreateEffectPoolFromMemory
10D3D10CreateStateBlock
11D3D10DisassembleEffect
12D3D10DisassembleShader
13D3D10GetGeometryShaderProfile
14D3D10GetInputAndOutputSignatureBlob
15D3D10GetInputSignatureBlob
16D3D10GetOutputSignatureBlob
17D3D10GetPixelShaderProfile
18D3D10GetShaderDebugInfo
19D3D10GetVersion
20D3D10GetVertexShaderProfile
21D3D10PreprocessShader
22D3D10ReflectShader
23D3D10RegisterLayers
24D3D10StateBlockMaskDifference
25D3D10StateBlockMaskDisableAll
26D3D10StateBlockMaskDisableCapture
27D3D10StateBlockMaskEnableAll
28D3D10StateBlockMaskEnableCapture
29D3D10StateBlockMaskGetSetting
30D3D10StateBlockMaskIntersect
31D3D10StateBlockMaskUnion
lib/libc/mingw/lib-common/d3d11.def created+58
...@@ -0,0 +1,58 @@
1;
2; Definition file of d3d11.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "d3d11.dll"
7EXPORTS
8D3D11CreateDeviceForD3D12
9D3DKMTCloseAdapter
10D3DKMTDestroyAllocation
11D3DKMTDestroyContext
12D3DKMTDestroyDevice
13D3DKMTDestroySynchronizationObject
14D3DKMTQueryAdapterInfo
15D3DKMTSetDisplayPrivateDriverFormat
16D3DKMTSignalSynchronizationObject
17D3DKMTUnlock
18D3DKMTWaitForSynchronizationObject
19EnableFeatureLevelUpgrade
20OpenAdapter10
21OpenAdapter10_2
22CreateDirect3D11DeviceFromDXGIDevice
23CreateDirect3D11SurfaceFromDXGISurface
24D3D11CoreCreateDevice
25D3D11CoreCreateLayeredDevice
26D3D11CoreGetLayeredDeviceSize
27D3D11CoreRegisterLayers
28D3D11CreateDevice
29D3D11CreateDeviceAndSwapChain
30D3D11On12CreateDevice
31D3DKMTCreateAllocation
32D3DKMTCreateContext
33D3DKMTCreateDevice
34D3DKMTCreateSynchronizationObject
35D3DKMTEscape
36D3DKMTGetContextSchedulingPriority
37D3DKMTGetDeviceState
38D3DKMTGetDisplayModeList
39D3DKMTGetMultisampleMethodList
40D3DKMTGetRuntimeData
41D3DKMTGetSharedPrimaryHandle
42D3DKMTLock
43D3DKMTOpenAdapterFromHdc
44D3DKMTOpenResource
45D3DKMTPresent
46D3DKMTQueryAllocationResidency
47D3DKMTQueryResourceInfo
48D3DKMTRender
49D3DKMTSetAllocationPriority
50D3DKMTSetContextSchedulingPriority
51D3DKMTSetDisplayMode
52D3DKMTSetGammaRamp
53D3DKMTSetVidPnSourceOwner
54D3DKMTWaitForVerticalBlankEvent
55D3DPerformance_BeginEvent
56D3DPerformance_EndEvent
57D3DPerformance_GetStatus
58D3DPerformance_SetMarker
lib/libc/mingw/lib-common/d3d12.def created+19
...@@ -0,0 +1,19 @@
1LIBRARY "d3d12.dll"
2EXPORTS
3GetBehaviorValue
4D3D12CreateDevice
5D3D12GetDebugInterface
6SetAppCompatStringPointer
7D3D12CoreCreateLayeredDevice
8D3D12CoreGetLayeredDeviceSize
9D3D12CoreRegisterLayers
10D3D12CreateRootSignatureDeserializer
11D3D12CreateVersionedRootSignatureDeserializer
12D3D12DeviceRemovedExtendedData DATA
13D3D12EnableExperimentalFeatures
14D3D12PIXEventsReplaceBlock
15D3D12PIXGetThreadInfo
16D3D12PIXNotifyWakeFromFenceSignal
17D3D12PIXReportCounter
18D3D12SerializeRootSignature
19D3D12SerializeVersionedRootSignature
lib/libc/mingw/lib-common/d3d9.def created+23
...@@ -0,0 +1,23 @@
1;
2; Definition file of d3d9.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "d3d9.dll"
7EXPORTS
8ord_16 @16
9Direct3DShaderValidatorCreate9
10PSGPError
11PSGPSampleTexture
12D3DPERF_BeginEvent
13D3DPERF_EndEvent
14D3DPERF_GetStatus
15D3DPERF_QueryRepeatFrame
16D3DPERF_SetMarker
17D3DPERF_SetOptions
18D3DPERF_SetRegion
19DebugSetLevel
20DebugSetMute
21Direct3D9EnableMaximizedWindowedModeShim
22Direct3DCreate9
23Direct3DCreate9Ex
lib/libc/mingw/lib-common/d3dcompiler_47.def created+36
...@@ -0,0 +1,36 @@
1;
2; Definition file of D3DCOMPILER_47.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "D3DCOMPILER_47.dll"
7EXPORTS
8D3DAssemble
9DebugSetMute
10D3DCompile
11D3DCompile2
12D3DCompileFromFile
13D3DCompressShaders
14D3DCreateBlob
15D3DCreateFunctionLinkingGraph
16D3DCreateLinker
17D3DDecompressShaders
18D3DDisassemble
19D3DDisassemble10Effect
20D3DDisassemble11Trace
21D3DDisassembleRegion
22D3DGetBlobPart
23D3DGetDebugInfo
24D3DGetInputAndOutputSignatureBlob
25D3DGetInputSignatureBlob
26D3DGetOutputSignatureBlob
27D3DGetTraceInstructionOffsets
28D3DLoadModule
29D3DPreprocess
30D3DReadFileToBlob
31D3DReflect
32D3DReflectLibrary
33D3DReturnFailure1
34D3DSetBlobPart
35D3DStripShader
36D3DWriteBlobToFile
lib/libc/mingw/lib-common/davclnt.def created+28
...@@ -0,0 +1,28 @@
1;
2; Definition file of davclnt.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "davclnt.dll"
7EXPORTS
8DavCancelConnectionsToServer
9DavFreeUsedDiskSpace
10DavGetDiskSpaceUsage
11DavGetTheLockOwnerOfTheFile
12DavInvalidateCache
13DavRegisterAuthCallback
14DavSetCookieW
15DavUnregisterAuthCallback
16NPAddConnection
17NPAddConnection3
18NPCancelConnection
19NPCloseEnum
20NPEnumResource
21NPFormatNetworkName
22NPGetCaps
23NPGetConnection
24NPGetResourceInformation
25NPGetResourceParent
26NPGetUniversalName
27NPGetUser
28NPOpenEnum
lib/libc/mingw/lib-common/dcomp.def created+19
...@@ -0,0 +1,19 @@
1;
2; Definition file of dcomp.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dcomp.dll"
7EXPORTS
8DCompositionAttachMouseDragToHwnd
9DCompositionAttachMouseWheelToHwnd
10DCompositionCreateDevice
11DCompositionCreateDevice2
12DCompositionCreateDevice3
13DCompositionCreateSurfaceHandle
14DllCanUnloadNow
15DllGetActivationFactory
16DllGetClassObject
17DwmEnableMMCSS
18DwmFlush
19DwmpEnableDDASupport
lib/libc/mingw/lib-common/ddraw.def created+27
...@@ -0,0 +1,27 @@
1;
2; Definition file of DDRAW.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "DDRAW.dll"
7EXPORTS
8AcquireDDThreadLock
9CompleteCreateSysmemSurface
10D3DParseUnknownCommand
11DDGetAttachedSurfaceLcl
12DDInternalLock
13DDInternalUnlock
14DSoundHelp
15DirectDrawCreate
16DirectDrawCreateClipper
17DirectDrawCreateEx
18DirectDrawEnumerateA
19DirectDrawEnumerateExA
20DirectDrawEnumerateExW
21DirectDrawEnumerateW
22GetDDSurfaceLocal
23GetOLEThunkData
24GetSurfaceFromDC
25RegisterSpecialCase
26ReleaseDDThreadLock
27SetAppCompatData
lib/libc/mingw/lib-common/dfscli.def created+36
...@@ -0,0 +1,36 @@
1;
2; Definition file of dfscli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dfscli.dll"
7EXPORTS
8I_NetDfsIsThisADomainName
9NetDfsAdd
10NetDfsAddFtRoot
11NetDfsAddRootTarget
12NetDfsAddStdRoot
13NetDfsAddStdRootForced
14NetDfsEnum
15NetDfsGetClientInfo
16NetDfsGetDcAddress
17NetDfsGetFtContainerSecurity
18NetDfsGetInfo
19NetDfsGetSecurity
20NetDfsGetStdContainerSecurity
21NetDfsGetSupportedNamespaceVersion
22NetDfsManagerGetConfigInfo
23NetDfsManagerInitialize
24NetDfsManagerSendSiteInfo
25NetDfsMove
26NetDfsRemove
27NetDfsRemoveFtRoot
28NetDfsRemoveFtRootForced
29NetDfsRemoveRootTarget
30NetDfsRemoveStdRoot
31NetDfsRename
32NetDfsSetClientInfo
33NetDfsSetFtContainerSecurity
34NetDfsSetInfo
35NetDfsSetSecurity
36NetDfsSetStdContainerSecurity
lib/libc/mingw/lib-common/dhcpcsvc.def created+74
...@@ -0,0 +1,74 @@
1;
2; Definition file of dhcpcsvc.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "dhcpcsvc.DLL"
7EXPORTS
8DhcpAcquireParameters
9DhcpAcquireParametersByBroadcast
10DhcpCApiCleanup
11DhcpCApiInitialize
12DhcpClient_Generalize
13DhcpDeRegisterConnectionStateNotification
14DhcpDeRegisterOptions
15DhcpDeRegisterParamChange
16DhcpDelPersistentRequestParams
17DhcpEnableDhcp
18DhcpEnableTracing
19DhcpEnumClasses
20DhcpEnumInterfaces
21DhcpFallbackRefreshParams
22DhcpFreeEnumeratedInterfaces
23DhcpFreeLeaseInfo
24DhcpFreeLeaseInfoArray
25DhcpFreeMem
26DhcpGetClassId
27DhcpGetClientId
28DhcpGetDhcpServicedConnections
29DhcpGetFallbackParams
30DhcpGetNotificationStatus
31DhcpGetOriginalSubnetMask
32DhcpGetTraceArray
33DhcpGlobalIsShuttingDown DATA
34DhcpGlobalServiceSyncEvent DATA
35DhcpGlobalTerminateEvent DATA
36DhcpHandlePnPEvent
37DhcpIsEnabled
38DhcpLeaseIpAddress
39DhcpLeaseIpAddressEx
40DhcpNotifyConfigChange
41DhcpNotifyConfigChangeEx
42DhcpNotifyMediaReconnected
43DhcpOpenGlobalEvent
44DhcpPersistentRequestParams
45DhcpQueryLeaseInfo
46DhcpQueryLeaseInfoArray
47DhcpQueryLeaseInfoEx
48DhcpRegisterConnectionStateNotification
49DhcpRegisterOptions
50DhcpRegisterParamChange
51DhcpReleaseIpAddressLease
52DhcpReleaseIpAddressLeaseEx
53DhcpReleaseParameters
54DhcpRemoveDNSRegistrations
55DhcpRenewIpAddressLease
56DhcpRenewIpAddressLeaseEx
57DhcpRequestCachedParams
58DhcpRequestOptions
59DhcpRequestParams
60DhcpSetClassId
61DhcpSetClientId
62DhcpSetFallbackParams
63DhcpSetMSFTVendorSpecificOptions
64DhcpStaticRefreshParams
65DhcpUndoRequestParams
66Dhcpv4CheckServerAvailability
67Dhcpv4EnableDhcpEx
68McastApiCleanup
69McastApiStartup
70McastEnumerateScopes
71McastGenUID
72McastReleaseAddress
73McastRenewAddress
74McastRequestAddress
lib/libc/mingw/lib-common/dhcpsapi.def created+216
...@@ -0,0 +1,216 @@
1;
2; Definition file of DHCPSAPI.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "DHCPSAPI.DLL"
7EXPORTS
8DhcpAddFilterV4
9DhcpAddMScopeElement
10DhcpAddSecurityGroup
11DhcpAddServer
12DhcpAddSubnetElement
13DhcpAddSubnetElementV4
14DhcpAddSubnetElementV5
15DhcpAddSubnetElementV6
16DhcpAuditLogGetParams
17DhcpAuditLogSetParams
18DhcpCreateClass
19DhcpCreateClassV6
20DhcpCreateClientInfo
21DhcpCreateClientInfoV4
22DhcpCreateClientInfoVQ
23DhcpCreateOption
24DhcpCreateOptionV5
25DhcpCreateOptionV6
26DhcpCreateSubnet
27DhcpCreateSubnetV6
28DhcpCreateSubnetVQ
29DhcpDeleteClass
30DhcpDeleteClassV6
31DhcpDeleteClientInfo
32DhcpDeleteClientInfoV6
33DhcpDeleteFilterV4
34DhcpDeleteMClientInfo
35DhcpDeleteMScope
36DhcpDeleteServer
37DhcpDeleteSubnet
38DhcpDeleteSubnetV6
39DhcpDeleteSuperScopeV4
40DhcpDsCleanup
41DhcpDsClearHostServerEntries
42DhcpDsInit
43DhcpEnumClasses
44DhcpEnumClassesV6
45DhcpEnumFilterV4
46DhcpEnumMScopeClients
47DhcpEnumMScopeElements
48DhcpEnumMScopes
49DhcpEnumOptionValues
50DhcpEnumOptionValuesV5
51DhcpEnumOptionValuesV6
52DhcpEnumOptions
53DhcpEnumOptionsV5
54DhcpEnumOptionsV6
55DhcpEnumServers
56DhcpEnumSubnetClients
57DhcpEnumSubnetClientsFilterStatusInfo
58DhcpEnumSubnetClientsV4
59DhcpEnumSubnetClientsV5
60DhcpEnumSubnetClientsV6
61DhcpEnumSubnetClientsVQ
62DhcpEnumSubnetElements
63DhcpEnumSubnetElementsV4
64DhcpEnumSubnetElementsV5
65DhcpEnumSubnetElementsV6
66DhcpEnumSubnets
67DhcpEnumSubnetsV6
68DhcpGetAllOptionValues
69DhcpGetAllOptionValuesV6
70DhcpGetAllOptions
71DhcpGetAllOptionsV6
72DhcpGetClassInfo
73DhcpGetClientInfo
74DhcpGetClientInfoV4
75DhcpGetClientInfoV6
76DhcpGetClientInfoVQ
77DhcpGetClientOptions
78DhcpGetFilterV4
79DhcpGetMCastMibInfo
80DhcpGetMScopeInfo
81DhcpGetMibInfo
82DhcpGetMibInfoV5
83DhcpGetMibInfoV6
84DhcpGetMibInfoVQ
85DhcpGetOptionInfo
86DhcpGetOptionInfoV5
87DhcpGetOptionInfoV6
88DhcpGetOptionValue
89DhcpGetOptionValueV5
90DhcpGetOptionValueV6
91DhcpGetServerBindingInfo
92DhcpGetServerBindingInfoV6
93DhcpGetServerSpecificStrings
94DhcpGetSubnetDelayOffer
95DhcpGetSubnetInfo
96DhcpGetSubnetInfoV6
97DhcpGetSubnetInfoVQ
98DhcpGetSuperScopeInfoV4
99DhcpGetThreadOptions
100DhcpGetVersion
101DhcpHlprAddV4PolicyCondition
102DhcpHlprAddV4PolicyExpr
103DhcpHlprAddV4PolicyRange
104DhcpHlprCreateV4Policy
105DhcpHlprCreateV4PolicyEx
106DhcpHlprFindV4DhcpProperty
107DhcpHlprFreeV4DhcpProperty
108DhcpHlprFreeV4DhcpPropertyArray
109DhcpHlprFreeV4Policy
110DhcpHlprFreeV4PolicyArray
111DhcpHlprFreeV4PolicyEx
112DhcpHlprFreeV4PolicyExArray
113DhcpHlprIsV4PolicySingleUC
114DhcpHlprIsV4PolicyValid
115DhcpHlprIsV4PolicyWellFormed
116DhcpHlprModifyV4PolicyExpr
117DhcpHlprResetV4PolicyExpr
118DhcpModifyClass
119DhcpModifyClassV6
120DhcpRemoveMScopeElement
121DhcpRemoveOption
122DhcpRemoveOptionV5
123DhcpRemoveOptionV6
124DhcpRemoveOptionValue
125DhcpRemoveOptionValueV5
126DhcpRemoveOptionValueV6
127DhcpRemoveSubnetElement
128DhcpRemoveSubnetElementV4
129DhcpRemoveSubnetElementV5
130DhcpRemoveSubnetElementV6
131DhcpRpcFreeMemory
132DhcpScanDatabase
133DhcpScanMDatabase
134DhcpServerAuditlogParamsFree
135DhcpServerBackupDatabase
136DhcpServerGetConfig
137DhcpServerGetConfigV4
138DhcpServerGetConfigV6
139DhcpServerGetConfigVQ
140DhcpServerQueryAttribute
141DhcpServerQueryAttributes
142DhcpServerQueryDnsRegCredentials
143DhcpServerRedoAuthorization
144DhcpServerRestoreDatabase
145DhcpServerSetConfig
146DhcpServerSetConfigV4
147DhcpServerSetConfigV6
148DhcpServerSetConfigVQ
149DhcpServerSetDnsRegCredentials
150DhcpServerSetDnsRegCredentialsV5
151DhcpSetClientInfo
152DhcpSetClientInfoV4
153DhcpSetClientInfoV6
154DhcpSetClientInfoVQ
155DhcpSetFilterV4
156DhcpSetMScopeInfo
157DhcpSetOptionInfo
158DhcpSetOptionInfoV5
159DhcpSetOptionInfoV6
160DhcpSetOptionValue
161DhcpSetOptionValueV5
162DhcpSetOptionValueV6
163DhcpSetOptionValues
164DhcpSetOptionValuesV5
165DhcpSetServerBindingInfo
166DhcpSetServerBindingInfoV6
167DhcpSetSubnetDelayOffer
168DhcpSetSubnetInfo
169DhcpSetSubnetInfoV6
170DhcpSetSubnetInfoVQ
171DhcpSetSuperScopeV4
172DhcpSetThreadOptions
173DhcpV4AddPolicyRange
174DhcpV4CreateClientInfo
175DhcpV4CreateClientInfoEx
176DhcpV4CreatePolicy
177DhcpV4CreatePolicyEx
178DhcpV4DeletePolicy
179DhcpV4EnumPolicies
180DhcpV4EnumPoliciesEx
181DhcpV4EnumSubnetClients
182DhcpV4EnumSubnetClientsEx
183DhcpV4EnumSubnetReservations
184DhcpV4FailoverAddScopeToRelationship
185DhcpV4FailoverCreateRelationship
186DhcpV4FailoverDeleteRelationship
187DhcpV4FailoverDeleteScopeFromRelationship
188DhcpV4FailoverEnumRelationship
189DhcpV4FailoverGetAddressStatus
190DhcpV4FailoverGetClientInfo
191DhcpV4FailoverGetRelationship
192DhcpV4FailoverGetScopeRelationship
193DhcpV4FailoverGetScopeStatistics
194DhcpV4FailoverGetSystemTime
195DhcpV4FailoverSetRelationship
196DhcpV4FailoverTriggerAddrAllocation
197DhcpV4GetAllOptionValues
198DhcpV4GetClientInfo
199DhcpV4GetClientInfoEx
200DhcpV4GetFreeIPAddress
201DhcpV4GetOptionValue
202DhcpV4GetPolicy
203DhcpV4GetPolicyEx
204DhcpV4QueryPolicyEnforcement
205DhcpV4RemoveOptionValue
206DhcpV4RemovePolicyRange
207DhcpV4SetOptionValue
208DhcpV4SetOptionValues
209DhcpV4SetPolicy
210DhcpV4SetPolicyEnforcement
211DhcpV4SetPolicyEx
212DhcpV6CreateClientInfo
213DhcpV6GetFreeIPAddress
214DhcpV6GetStatelessStatistics
215DhcpV6GetStatelessStoreParams
216DhcpV6SetStatelessStoreParams
lib/libc/mingw/lib-common/dinput8.def created+13
...@@ -0,0 +1,13 @@
1;
2; Exports of file DINPUT8.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY DINPUT8.dll
8EXPORTS
9DirectInput8Create
10DllCanUnloadNow
11DllGetClassObject
12DllRegisterServer
13DllUnregisterServer
lib/libc/mingw/lib-common/dnsapi.def created+295
...@@ -0,0 +1,295 @@
1;
2; Definition file of DNSAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "DNSAPI.dll"
7EXPORTS
8AdaptiveTimeout_ClearInterfaceSpecificConfiguration
9AdaptiveTimeout_ResetAdaptiveTimeout
10AddRefQueryBlobEx
11BreakRecordsIntoBlob
12Coalesce_UpdateNetVersion
13CombineRecordsInBlob
14DeRefQueryBlobEx
15DelaySortDAServerlist
16DnsAcquireContextHandle_A
17DnsAcquireContextHandle_W
18DnsAllocateRecord
19DnsApiAlloc
20DnsApiAllocZero
21DnsApiFree
22DnsApiHeapReset
23DnsApiRealloc
24DnsApiSetDebugGlobals
25DnsAsyncRegisterHostAddrs
26DnsAsyncRegisterInit
27DnsAsyncRegisterTerm
28DnsCancelQuery
29DnsCheckNrptRuleIntegrity
30DnsCheckNrptRules
31DnsConnectionDeletePolicyEntries
32DnsConnectionDeletePolicyEntriesPrivate
33DnsConnectionDeleteProxyInfo
34DnsConnectionFreeNameList
35DnsConnectionFreeProxyInfo
36DnsConnectionFreeProxyInfoEx
37DnsConnectionFreeProxyList
38DnsConnectionGetHandleForHostUrlPrivate
39DnsConnectionGetNameList
40DnsConnectionGetProxyInfo
41DnsConnectionGetProxyInfoForHostUrl
42DnsConnectionGetProxyList
43DnsConnectionSetPolicyEntries
44DnsConnectionSetPolicyEntriesPrivate
45DnsConnectionSetProxyInfo
46DnsConnectionUpdateIfIndexTable
47DnsCopyStringEx
48DnsCreateReverseNameStringForIpAddress
49DnsCreateStandardDnsNameCopy
50DnsCreateStringCopy
51DnsDeRegisterLocal
52DnsDhcpRegisterAddrs
53DnsDhcpRegisterHostAddrs
54DnsDhcpRegisterInit
55DnsDhcpRegisterTerm
56DnsDhcpRemoveRegistrations
57DnsDhcpSrvRegisterHostAddr
58DnsDhcpSrvRegisterHostAddrEx
59DnsDhcpSrvRegisterHostName
60DnsDhcpSrvRegisterHostNameEx
61DnsDhcpSrvRegisterInit
62DnsDhcpSrvRegisterInitEx
63DnsDhcpSrvRegisterInitialize
64DnsDhcpSrvRegisterTerm
65DnsDisableIdnEncoding
66DnsDowncaseDnsNameLabel
67DnsExtractRecordsFromMessage_UTF8
68DnsExtractRecordsFromMessage_W
69DnsFindAuthoritativeZone
70DnsFlushResolverCache
71DnsFlushResolverCacheEntry_A
72DnsFlushResolverCacheEntry_UTF8
73DnsFlushResolverCacheEntry_W
74DnsFree
75DnsFreeAdaptersInfo
76DnsFreeConfigStructure
77DnsFreeNrptRule
78DnsFreeNrptRuleNamesList
79DnsFreePolicyConfig
80DnsFreeProxyName
81DnsGetAdaptersInfo
82DnsGetApplicationIdentifier
83DnsGetBufferLengthForStringCopy
84DnsGetCacheDataTable
85DnsGetCacheDataTableEx
86DnsGetDnsServerList
87DnsGetDomainName
88DnsGetInterfaceSettings
89DnsGetLastFailedUpdateInfo
90DnsGetNrptRuleNamesList
91DnsGetPolicyTableInfo
92DnsGetPolicyTableInfoPrivate
93DnsGetPrimaryDomainName_A
94DnsGetProxyInfoPrivate
95DnsGetProxyInformation
96DnsGetQueryRetryTimeouts
97DnsGetSettings
98DnsGlobals DATA
99DnsIpv6AddressToString
100DnsIpv6StringToAddress
101DnsIsAMailboxType
102DnsIsNSECType
103DnsIsStatusRcode
104DnsIsStringCountValidForTextType
105DnsLogEvent
106DnsMapRcodeToStatus
107DnsModifyRecordsInSet_A
108DnsModifyRecordsInSet_UTF8
109DnsModifyRecordsInSet_W
110DnsNameCompareEx_A
111DnsNameCompareEx_UTF8
112DnsNameCompareEx_W
113DnsNameCompare_A
114DnsNameCompare_UTF8
115DnsNameCompare_W
116DnsNameCopy
117DnsNameCopyAllocate
118DnsNetworkInfo_CreateFromFAZ
119DnsNetworkInformation_CreateFromFAZ
120DnsNotifyResolver
121DnsNotifyResolverClusterIp
122DnsNotifyResolverEx
123DnsQueryConfig
124DnsQueryConfigAllocEx
125DnsQueryConfigDword
126DnsQueryEx
127DnsQueryExA
128DnsQueryExUTF8
129DnsQueryExW
130DnsQuery_A
131DnsQuery_UTF8
132DnsQuery_W
133DnsRecordBuild_UTF8
134DnsRecordBuild_W
135DnsRecordCompare
136DnsRecordCopyEx
137DnsRecordListFree
138DnsRecordListUnmapV4MappedAAAAInPlace
139DnsRecordSetCompare
140DnsRecordSetCopyEx
141DnsRecordSetDetach
142DnsRecordStringForType
143DnsRecordStringForWritableType
144DnsRecordTypeForName
145DnsRegisterLocal
146DnsReleaseContextHandle
147DnsRemoveNrptRule
148DnsRemoveRegistrations
149DnsReplaceRecordSetA
150DnsReplaceRecordSetUTF8
151DnsReplaceRecordSetW
152DnsResetQueryRetryTimeouts
153DnsResolverOp
154DnsResolverQueryHvsi
155DnsScreenLocalAddrsForRegistration
156DnsServiceBrowse
157DnsServiceBrowseCancel
158DnsServiceConstructInstance
159DnsServiceCopyInstance
160DnsServiceDeRegister
161DnsServiceFreeInstance
162DnsServiceRegister
163DnsServiceRegisterCancel
164DnsServiceResolve
165DnsServiceResolveCancel
166DnsSetConfigDword
167DnsSetConfigValue
168DnsSetInterfaceSettings
169DnsSetNrptRule
170DnsSetNrptRules
171DnsSetQueryRetryTimeouts
172DnsSetSettings
173DnsStartMulticastQuery
174DnsStatusString
175DnsStopMulticastQuery
176DnsStringCopyAllocateEx
177DnsTraceServerConfig
178DnsUnicodeToUtf8
179DnsUpdate
180DnsUpdateMachinePresence
181DnsUpdateTest_A
182DnsUpdateTest_UTF8
183DnsUpdateTest_W
184DnsUtf8ToUnicode
185DnsValidateNameOrIp_TempW
186DnsValidateName_A
187DnsValidateName_UTF8
188DnsValidateName_W
189DnsValidateServerArray_A
190DnsValidateServerArray_W
191DnsValidateServerStatus
192DnsValidateServer_A
193DnsValidateServer_W
194DnsValidateUtf8Byte
195DnsWriteQuestionToBuffer_UTF8
196DnsWriteQuestionToBuffer_W
197DnsWriteReverseNameStringForIpAddress
198Dns_AddRecordsToMessage
199Dns_AllocateMsgBuf
200Dns_BuildPacket
201Dns_CacheServiceCleanup
202Dns_CacheServiceInit
203Dns_CacheServiceStopIssued
204Dns_CleanupWinsock
205Dns_CloseConnection
206Dns_CloseSocket
207Dns_CreateMulticastSocket
208Dns_CreateSocket
209Dns_CreateSocketEx
210Dns_ExtractRecordsFromMessage
211Dns_FindAuthoritativeZoneLib
212Dns_FreeMsgBuf
213Dns_GetRandomXid
214Dns_InitializeMsgBuf
215Dns_InitializeMsgRemoteSockaddr
216Dns_InitializeWinsock
217Dns_OpenTcpConnectionAndSend
218Dns_ParseMessage
219Dns_ParsePacketRecord
220Dns_PingAdapterServers
221Dns_ReadPacketName
222Dns_ReadPacketNameAllocate
223Dns_ReadRecordStructureFromPacket
224Dns_RecvTcp
225Dns_ResetNetworkInfo
226Dns_SendAndRecvUdp
227Dns_SendEx
228Dns_SetRecordDatalength
229Dns_SetRecordsSection
230Dns_SetRecordsTtl
231Dns_SkipPacketName
232Dns_SkipToRecord
233Dns_UpdateLib
234Dns_UpdateLibEx
235Dns_WriteDottedNameToPacket
236Dns_WriteQuestionToMessage
237Dns_WriteRecordStructureToPacketEx
238ExtraInfo_Init
239Faz_AreServerListsInSameNameSpace
240FlushDnsPolicyUnreachableStatus
241GetCurrentTimeInSeconds
242HostsFile_Close
243HostsFile_Open
244HostsFile_ReadLine
245IpHelp_IsAddrOnLink
246Local_GetRecordsForLocalName
247Local_GetRecordsForLocalNameEx
248NetInfo_Build
249NetInfo_Clean
250NetInfo_Copy
251NetInfo_CopyNetworkIndex
252NetInfo_CreatePerNetworkNetinfo
253NetInfo_Free
254NetInfo_GetAdapterByAddress
255NetInfo_GetAdapterByInterfaceIndex
256NetInfo_GetAdapterByName
257NetInfo_IsAddrConfig
258NetInfo_IsForUpdate
259NetInfo_IsTcpipConfigChange
260NetInfo_ResetServerPriorities
261NetInfo_UpdateDnsInterfaceConfigChange
262NetInfo_UpdateNetworkProperties
263NetInfo_UpdateServerReachability
264QueryDirectEx
265Query_Cancel
266Query_Main
267Reg_FreeUpdateInfo
268Reg_GetValueEx
269Reg_ReadGlobalsEx
270Reg_ReadUpdateInfo
271Security_ContextListTimeout
272Send_AndRecvUdpWithParam
273Send_MessagePrivate
274Send_MessagePrivateEx
275Send_OpenTcpConnectionAndSend
276Socket_CacheCleanup
277Socket_CacheInit
278Socket_CleanupWinsock
279Socket_ClearMessageSockets
280Socket_CloseEx
281Socket_CloseMessageSockets
282Socket_Create
283Socket_CreateMulticast
284Socket_InitWinsock
285Socket_JoinMulticast
286Socket_RecvFrom
287Socket_SetMulticastInterface
288Socket_SetMulticastLoopBack
289Socket_SetTtl
290Socket_TcpListen
291Trace_Reset
292Update_ReplaceAddressRecordsW
293Util_IsIp6Running
294Util_IsRunningOnXboxOne
295WriteDnsNrptRulesToRegistry
lib/libc/mingw/lib-common/dsound.def created+20
...@@ -0,0 +1,20 @@
1;
2; Exports of file DSOUND.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY DSOUND.dll
8EXPORTS
9DirectSoundCreate
10DirectSoundEnumerateA
11DirectSoundEnumerateW
12DllCanUnloadNow
13DllGetClassObject
14DirectSoundCaptureCreate
15DirectSoundCaptureEnumerateA
16DirectSoundCaptureEnumerateW
17GetDeviceID
18DirectSoundFullDuplexCreate
19DirectSoundCreate8
20DirectSoundCaptureCreate8
lib/libc/mingw/lib-common/dsprop.def created+31
...@@ -0,0 +1,31 @@
1;
2; Exports of file dsprop.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY dsprop.dll
8EXPORTS
9CheckADsError
10CrackName
11DSPROP_GetGCSearchOnDomain
12ErrMsg
13ErrMsgParam
14FindSheet
15MsgBox
16ReportError
17Smart_PADS_ATTR_INFO__Empty
18ADsPropCheckIfWritable
19ADsPropCreateNotifyObj
20ADsPropGetInitInfo
21ADsPropSendErrorMessage
22ADsPropSetHwnd
23ADsPropSetHwndWithTitle
24ADsPropShowErrorDialog
25BringSheetToForeground
26DllCanUnloadNow
27DllGetClassObject
28DllRegisterServer
29DllUnregisterServer
30IsSheetAlreadyUp
31PostADsPropSheet
lib/libc/mingw/lib-common/dsrole.def created+21
...@@ -0,0 +1,21 @@
1;
2; Definition file of dsrole.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dsrole.dll"
7EXPORTS
8DsRoleAbortDownlevelServerUpgrade
9DsRoleCancel
10DsRoleDcAsDc
11DsRoleDcAsReplica
12DsRoleDemoteDc
13DsRoleDnsNameToFlatName
14DsRoleFreeMemory
15DsRoleGetDatabaseFacts
16DsRoleGetDcOperationProgress
17DsRoleGetDcOperationResults
18DsRoleGetPrimaryDomainInformation
19DsRoleIfmHandleFree
20DsRoleServerSaveStateForUpgrade
21DsRoleUpgradeDownlevelServer
lib/libc/mingw/lib-common/dssec.def created+14
...@@ -0,0 +1,14 @@
1;
2; Exports of file DSSEC.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY DSSEC.dll
8EXPORTS
9DSCreateISecurityInfoObject
10DSCreateSecurityPage
11DSEditSecurity
12DSCreateISecurityInfoObjectEx
13DllCanUnloadNow
14DllGetClassObject
lib/libc/mingw/lib-common/dsuiext.def created+17
...@@ -0,0 +1,17 @@
1;
2; Exports of file dsuiext.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY dsuiext.dll
8EXPORTS
9DsBrowseForContainerA
10DsBrowseForContainerW
11DllCanUnloadNow
12DllGetClassObject
13DllInstall
14DllRegisterServer
15DllUnregisterServer
16DsGetIcon
17DsGetFriendlyClassName
lib/libc/mingw/lib-common/dwmapi.def created+48
...@@ -0,0 +1,48 @@
1;
2; Definition file of dwmapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "dwmapi.dll"
7EXPORTS
8DwmpDxGetWindowSharedSurface
9DwmpDxUpdateWindowSharedSurface
10DwmEnableComposition
11DwmAttachMilContent
12DwmDefWindowProc
13DwmDetachMilContent
14DwmEnableBlurBehindWindow
15DwmEnableMMCSS
16DwmExtendFrameIntoClientArea
17DwmFlush
18DwmGetColorizationColor
19DwmpDxBindSwapChain
20DwmpDxUnbindSwapChain
21DwmpDxgiIsThreadDesktopComposited
22DwmGetCompositionTimingInfo
23DwmGetGraphicsStreamClient
24DwmpDxUpdateWindowRedirectionBltSurface
25DwmpRenderFlick
26DwmpAllocateSecurityDescriptor
27DwmpFreeSecurityDescriptor
28DwmpEnableDDASupport
29DwmGetGraphicsStreamTransformHint
30DwmTetherTextContact
31DwmGetTransportAttributes
32DwmGetWindowAttribute
33DwmInvalidateIconicBitmaps
34DwmIsCompositionEnabled
35DwmModifyPreviousDxFrameDuration
36DwmQueryThumbnailSourceSize
37DwmRegisterThumbnail
38DwmRenderGesture
39DwmSetDxFrameDuration
40DwmSetIconicLivePreviewBitmap
41DwmSetIconicThumbnail
42DwmSetPresentParameters
43DwmSetWindowAttribute
44DwmShowContact
45DwmTetherContact
46DwmTransitionOwnedWindow
47DwmUnregisterThumbnail
48DwmUpdateThumbnailProperties
lib/libc/mingw/lib-common/dwrite.def created+8
...@@ -0,0 +1,8 @@
1;
2; Definition file of DWrite.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "DWrite.dll"
7EXPORTS
8DWriteCreateFactory
lib/libc/mingw/lib-common/dxgi.def created+54
...@@ -0,0 +1,54 @@
1LIBRARY "dxgi.dll"
2EXPORTS
3CompatString
4CompatValue
5D3DKMTCloseAdapter
6D3DKMTDestroyAllocation
7D3DKMTDestroyContext
8D3DKMTDestroyDevice
9D3DKMTDestroySynchronizationObject
10D3DKMTQueryAdapterInfo
11D3DKMTSetDisplayPrivateDriverFormat
12D3DKMTSignalSynchronizationObject
13D3DKMTUnlock
14D3DKMTWaitForSynchronizationObject
15DXGIDumpJournal
16DXGIRevertToSxS
17OpenAdapter10
18OpenAdapter10_2
19SetAppCompatStringPointer
20CreateDXGIFactory
21CreateDXGIFactory1
22CreateDXGIFactory2
23D3DKMTCreateAllocation
24D3DKMTCreateContext
25D3DKMTCreateDevice
26D3DKMTCreateSynchronizationObject
27D3DKMTEscape
28D3DKMTGetContextSchedulingPriority
29D3DKMTGetDeviceState
30D3DKMTGetDisplayModeList
31D3DKMTGetMultisampleMethodList
32D3DKMTGetRuntimeData
33D3DKMTGetSharedPrimaryHandle
34D3DKMTLock
35D3DKMTOpenAdapterFromHdc
36D3DKMTOpenResource
37D3DKMTPresent
38D3DKMTQueryAllocationResidency
39D3DKMTQueryResourceInfo
40D3DKMTRender
41D3DKMTSetAllocationPriority
42D3DKMTSetContextSchedulingPriority
43D3DKMTSetDisplayMode
44D3DKMTSetGammaRamp
45D3DKMTSetVidPnSourceOwner
46D3DKMTWaitForSynchronizationObject
47D3DKMTWaitForVerticalBlankEvent
48DXGID3D10CreateDevice
49DXGID3D10CreateLayeredDevice
50DXGID3D10ETWRundown
51DXGID3D10GetLayeredDeviceSize
52DXGID3D10RegisterLayers
53DXGIGetDebugInterface1
54DXGIReportAdapterConfiguration
lib/libc/mingw/lib-common/dxva2.def created+40
...@@ -0,0 +1,40 @@
1LIBRARY "dxva2.dll"
2EXPORTS
3CapabilitiesRequestAndCapabilitiesReply
4DXVA2CreateDirect3DDeviceManager9
5DXVA2CreateVideoService
6DXVAHD_CreateDevice
7DegaussMonitor
8DestroyPhysicalMonitor
9DestroyPhysicalMonitors
10GetCapabilitiesStringLength
11GetMonitorBrightness
12GetMonitorCapabilities
13GetMonitorColorTemperature
14GetMonitorContrast
15GetMonitorDisplayAreaPosition
16GetMonitorDisplayAreaSize
17GetMonitorRedGreenOrBlueDrive
18GetMonitorRedGreenOrBlueGain
19GetMonitorTechnologyType
20GetNumberOfPhysicalMonitorsFromHMONITOR
21GetNumberOfPhysicalMonitorsFromIDirect3DDevice9
22GetPhysicalMonitorsFromHMONITOR
23GetPhysicalMonitorsFromIDirect3DDevice9
24GetTimingReport
25GetVCPFeatureAndVCPFeatureReply
26OPMGetVideoOutputsFromHMONITOR
27OPMGetVideoOutputsFromIDirect3DDevice9Object
28RestoreMonitorFactoryColorDefaults
29RestoreMonitorFactoryDefaults
30SaveCurrentMonitorSettings
31SaveCurrentSettings
32SetMonitorBrightness
33SetMonitorColorTemperature
34SetMonitorContrast
35SetMonitorDisplayAreaPosition
36SetMonitorDisplayAreaSize
37SetMonitorRedGreenOrBlueDrive
38SetMonitorRedGreenOrBlueGain
39SetVCPFeature
40UABGetCertificate
lib/libc/mingw/lib-common/eappcfg.def created+22
...@@ -0,0 +1,22 @@
1;
2; Definition file of eappcfg.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "eappcfg.dll"
7EXPORTS
8EapHostPeerConfigBlob2Xml
9EapHostPeerConfigXml2Blob
10EapHostPeerCreateMethodConfiguration
11EapHostPeerCredentialsXml2Blob
12EapHostPeerFreeErrorMemory
13EapHostPeerFreeMemory
14EapHostPeerGetMethodProperties
15EapHostPeerGetMethods
16EapHostPeerInvokeConfigUI
17EapHostPeerInvokeIdentityUI
18EapHostPeerInvokeInteractiveUI
19EapHostPeerQueryCredentialInputFields
20EapHostPeerQueryInteractiveUIInputFields
21EapHostPeerQueryUIBlobFromInteractiveUIInputFields
22EapHostPeerQueryUserBlobFromCredentialInputFields
lib/libc/mingw/lib-common/eappprxy.def created+23
...@@ -0,0 +1,23 @@
1;
2; Definition file of eappprxy.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "eappprxy.dll"
7EXPORTS
8EapHostPeerBeginSession
9EapHostPeerClearConnection
10EapHostPeerEndSession
11EapHostPeerFreeEapError
12EapHostPeerFreeRuntimeMemory
13EapHostPeerGetAuthStatus
14EapHostPeerGetIdentity
15EapHostPeerGetResponseAttributes
16EapHostPeerGetResult
17EapHostPeerGetSendPacket
18EapHostPeerGetUIContext
19EapHostPeerInitialize
20EapHostPeerProcessReceivedPacket
21EapHostPeerSetResponseAttributes
22EapHostPeerSetUIContext
23EapHostPeerUninitialize
lib/libc/mingw/lib-common/elscore.def created+12
...@@ -0,0 +1,12 @@
1;
2; Definition file of elscore.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "elscore.dll"
7EXPORTS
8MappingDoAction
9MappingFreePropertyBag
10MappingFreeServices
11MappingGetServices
12MappingRecognizeText
lib/libc/mingw/lib-common/evr.def created+31
...@@ -0,0 +1,31 @@
1;
2; Definition file of EVR.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "EVR.dll"
7EXPORTS
8MFConvertColorInfoFromDXVA
9MFConvertColorInfoToDXVA
10MFConvertFromFP16Array
11MFConvertToFP16Array
12MFCopyImage
13MFCreateDXSurfaceBuffer
14MFCreateVideoMediaType
15MFCreateVideoMediaTypeFromBitMapInfoHeader
16MFCreateVideoMediaTypeFromSubtype
17MFCreateVideoMediaTypeFromVideoInfoHeader
18MFCreateVideoMediaTypeFromVideoInfoHeader2
19MFCreateVideoMixer
20MFCreateVideoMixerAndPresenter
21MFCreateVideoOTA
22MFCreateVideoPresenter
23MFCreateVideoPresenter2
24MFCreateVideoSampleAllocator
25MFCreateVideoSampleFromSurface
26MFGetPlaneSize
27MFGetStrideForBitmapInfoHeader
28MFGetUncompressedVideoFormat
29MFInitVideoFormat
30MFInitVideoFormat_RGB
31MFIsFormatYUV
lib/libc/mingw/lib-common/fltlib.def created+37
...@@ -0,0 +1,37 @@
1;
2; Exports of file FLTLIB.DLL
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY FLTLIB.DLL
8EXPORTS
9FilterAttach
10FilterAttachAtAltitude
11FilterClose
12FilterConnectCommunicationPort
13FilterCreate
14FilterDetach
15FilterFindClose
16FilterFindFirst
17FilterFindNext
18FilterGetDosName
19FilterGetInformation
20FilterGetMessage
21FilterInstanceClose
22FilterInstanceCreate
23FilterInstanceFindClose
24FilterInstanceFindFirst
25FilterInstanceFindNext
26FilterInstanceGetInformation
27FilterLoad
28FilterReplyMessage
29FilterSendMessage
30FilterUnload
31FilterVolumeClose
32FilterVolumeFindClose
33FilterVolumeFindFirst
34FilterVolumeFindNext
35FilterVolumeInstanceFindClose
36FilterVolumeInstanceFindFirst
37FilterVolumeInstanceFindNext
lib/libc/mingw/lib-common/fontsub.def created+10
...@@ -0,0 +1,10 @@
1;
2; Exports of file FONTSUB.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY FONTSUB.dll
8EXPORTS
9CreateFontPackage
10MergeFontPackage
lib/libc/mingw/lib-common/gpedit.def created+18
...@@ -0,0 +1,18 @@
1;
2; Exports of file GPEDIT.DLL
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY GPEDIT.DLL
8EXPORTS
9BrowseForGPO
10CreateGPOLink
11DeleteAllGPOLinks
12DeleteGPOLink
13DllCanUnloadNow
14DllGetClassObject
15DllRegisterServer
16DllUnregisterServer
17ExportRSoPData
18ImportRSoPData
lib/libc/mingw/lib-common/hid.def created+52
...@@ -0,0 +1,52 @@
1;
2; Exports of file HID.DLL
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY HID.DLL
8EXPORTS
9HidD_FlushQueue
10HidD_FreePreparsedData
11HidD_GetAttributes
12HidD_GetConfiguration
13HidD_GetFeature
14HidD_GetHidGuid
15HidD_GetIndexedString
16HidD_GetInputReport
17HidD_GetManufacturerString
18HidD_GetMsGenreDescriptor
19HidD_GetNumInputBuffers
20HidD_GetPhysicalDescriptor
21HidD_GetPreparsedData
22HidD_GetProductString
23HidD_GetSerialNumberString
24HidD_Hello
25HidD_SetConfiguration
26HidD_SetFeature
27HidD_SetNumInputBuffers
28HidD_SetOutputReport
29HidP_GetButtonCaps
30HidP_GetCaps
31HidP_GetData
32HidP_GetExtendedAttributes
33HidP_GetLinkCollectionNodes
34HidP_GetScaledUsageValue
35HidP_GetSpecificButtonCaps
36HidP_GetSpecificValueCaps
37HidP_GetUsageValue
38HidP_GetUsageValueArray
39HidP_GetUsages
40HidP_GetUsagesEx
41HidP_GetValueCaps
42HidP_InitializeReportForID
43HidP_MaxDataListLength
44HidP_MaxUsageListLength
45HidP_SetData
46HidP_SetScaledUsageValue
47HidP_SetUsageValue
48HidP_SetUsageValueArray
49HidP_SetUsages
50HidP_TranslateUsagesToI8042ScanCodes
51HidP_UnsetUsages
52HidP_UsageListDifference
lib/libc/mingw/lib-common/hlink.def created+40
...@@ -0,0 +1,40 @@
1;
2; Exports of file hlink.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY hlink.dll
8EXPORTS
9HlinkCreateFromMoniker
10HlinkCreateFromString
11HlinkCreateFromData
12HlinkCreateBrowseContext
13HlinkClone
14HlinkNavigateToStringReference
15HlinkOnNavigate
16HlinkNavigate
17HlinkUpdateStackItem
18HlinkOnRenameDocument
19DllCanUnloadNow
20HlinkResolveMonikerForData
21HlinkResolveStringForData
22OleSaveToStreamEx
23DllGetClassObject
24HlinkParseDisplayName
25DllRegisterServer
26HlinkQueryCreateFromData
27HlinkSetSpecialReference
28HlinkGetSpecialReference
29HlinkCreateShortcut
30HlinkResolveShortcut
31HlinkIsShortcut
32HlinkResolveShortcutToString
33HlinkCreateShortcutFromString
34HlinkGetValueFromParams
35HlinkCreateShortcutFromMoniker
36HlinkResolveShortcutToMoniker
37HlinkTranslateURL
38HlinkCreateExtensionServices
39HlinkPreprocessMoniker
40DllUnregisterServer
lib/libc/mingw/lib-common/icm32.def created+29
...@@ -0,0 +1,29 @@
1;
2; Exports of file ICM32.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY ICM32.dll
8EXPORTS
9CMCheckColors
10CMCheckColorsInGamut
11CMCheckRGBs
12CMCreateDeviceLinkProfile
13CMCreateMultiProfileTransform
14CMCreateProfile
15CMCreateProfileW
16CMCreateTransform
17CMCreateTransformExt
18CMCreateTransformExtW
19CMCreateTransformW
20CMDeleteTransform
21CMGetInfo
22CMIsProfileValid
23CMTranslateColors
24CMTranslateRGB
25CMTranslateRGBs
26CMTranslateRGBsExt
27CMConvertColorNameToIndex
28CMConvertIndexToColorName
29CMGetNamedProfileInfo
lib/libc/mingw/lib-common/icmui.def created+12
...@@ -0,0 +1,12 @@
1;
2; Exports of file ICMUI.DLL
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY ICMUI.DLL
8EXPORTS
9DllCanUnloadNow
10DllGetClassObject
11SetupColorMatchingA
12SetupColorMatchingW
lib/libc/mingw/lib-common/ksuser.def created+15
...@@ -0,0 +1,15 @@
1;
2; Definition file of ksuser.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "ksuser.dll"
7EXPORTS
8KsCreateAllocator
9KsCreateAllocator2
10KsCreateClock
11KsCreateClock2
12KsCreatePin
13KsCreatePin2
14KsCreateTopologyNode
15KsCreateTopologyNode2
lib/libc/mingw/lib-common/ktmw32.def created+51
...@@ -0,0 +1,51 @@
1;
2; Definition file of ktmw32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ktmw32.dll"
7EXPORTS
8CommitComplete
9CommitEnlistment
10CommitTransaction
11CommitTransactionAsync
12CreateEnlistment
13CreateResourceManager
14CreateTransaction
15CreateTransactionManager
16GetCurrentClockTransactionManager
17GetEnlistmentId
18GetEnlistmentRecoveryInformation
19GetNotificationResourceManager
20GetNotificationResourceManagerAsync
21GetTransactionId
22GetTransactionInformation
23GetTransactionManagerId
24OpenEnlistment
25OpenResourceManager
26OpenTransaction
27OpenTransactionManager
28OpenTransactionManagerById
29PrePrepareComplete
30PrePrepareEnlistment
31PrepareComplete
32PrepareEnlistment
33PrivCreateTransaction
34PrivIsLogWritableTransactionManager
35PrivPropagationComplete
36PrivPropagationFailed
37PrivRegisterProtocolAddressInformation
38ReadOnlyEnlistment
39RecoverEnlistment
40RecoverResourceManager
41RecoverTransactionManager
42RenameTransactionManager
43RollbackComplete
44RollbackEnlistment
45RollbackTransaction
46RollbackTransactionAsync
47RollforwardTransactionManager
48SetEnlistmentRecoveryInformation
49SetResourceManagerCompletionPort
50SetTransactionInformation
51SinglePhaseReject
lib/libc/mingw/lib-common/loadperf.def created+21
...@@ -0,0 +1,21 @@
1;
2; Definition file of loadperf.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "loadperf.dll"
7EXPORTS
8BackupPerfRegistryToFileW
9InstallPerfDllA
10InstallPerfDllW
11LoadPerfCounterTextStringsA
12LoadPerfCounterTextStringsW
13LpAcquireInstallationMutex
14LpReleaseInstallationMutex
15RestorePerfRegistryFromFileW
16SetServiceAsTrustedA
17SetServiceAsTrustedW
18UnloadPerfCounterTextStringsA
19UnloadPerfCounterTextStringsW
20UpdatePerfNameFilesA
21UpdatePerfNameFilesW
lib/libc/mingw/lib-common/logoncli.def created+91
...@@ -0,0 +1,91 @@
1;
2; Definition file of logoncli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "logoncli.dll"
7EXPORTS
8AuthzrExtAccessCheck
9AuthzrExtFreeContext
10AuthzrExtFreeResourceManager
11AuthzrExtGetInformationFromContext
12AuthzrExtInitializeCompoundContext
13AuthzrExtInitializeContextFromSid
14AuthzrExtInitializeRemoteResourceManager
15AuthzrExtModifyClaims
16DsAddressToSiteNamesA
17DsAddressToSiteNamesExA
18DsAddressToSiteNamesExW
19DsAddressToSiteNamesW
20DsDeregisterDnsHostRecordsA
21DsDeregisterDnsHostRecordsW
22DsEnumerateDomainTrustsA
23DsEnumerateDomainTrustsW
24DsGetDcCloseW
25DsGetDcNameA
26DsGetDcNameW
27DsGetDcNameWithAccountA
28DsGetDcNameWithAccountW
29DsGetDcNextA
30DsGetDcNextW
31DsGetDcOpenA
32DsGetDcOpenW
33DsGetDcSiteCoverageA
34DsGetDcSiteCoverageW
35DsGetForestTrustInformationW
36DsGetSiteNameA
37DsGetSiteNameW
38DsMergeForestTrustInformationW
39DsValidateSubnetNameA
40DsValidateSubnetNameW
41I_DsUpdateReadOnlyServerDnsRecords
42I_NetAccountDeltas
43I_NetAccountSync
44I_NetChainSetClientAttributes
45I_NetChainSetClientAttributes2
46I_NetDatabaseDeltas
47I_NetDatabaseRedo
48I_NetDatabaseSync
49I_NetDatabaseSync2
50I_NetGetDCList
51I_NetGetForestTrustInformation
52I_NetLogonControl
53I_NetLogonControl2
54I_NetLogonGetCapabilities
55I_NetLogonGetDomainInfo
56I_NetLogonSamLogoff
57I_NetLogonSamLogon
58I_NetLogonSamLogonEx
59I_NetLogonSamLogonWithFlags
60I_NetLogonSendToSam
61I_NetLogonUasLogoff
62I_NetLogonUasLogon
63I_NetServerAuthenticate
64I_NetServerAuthenticate2
65I_NetServerAuthenticate3
66I_NetServerGetTrustInfo
67I_NetServerPasswordGet
68I_NetServerPasswordSet
69I_NetServerPasswordSet2
70I_NetServerReqChallenge
71I_NetServerTrustPasswordsGet
72I_NetlogonComputeClientDigest
73I_NetlogonComputeClientSignature
74I_NetlogonComputeServerDigest
75I_NetlogonComputeServerSignature
76I_NetlogonGetTrustRid
77I_RpcExtInitializeExtensionPoint
78NetAddServiceAccount
79NetEnumerateServiceAccounts
80NetEnumerateTrustedDomains
81NetGetAnyDCName
82NetGetDCName
83NetIsServiceAccount
84NetLogonGetTimeServiceParentDomain
85NetLogonSetServiceBits
86NetQueryServiceAccount
87NetRemoveServiceAccount
88NlBindingAddServerToCache
89NlBindingRemoveServerFromCache
90NlBindingSetAuthInfo
91NlSetDsIsCloningPDC
lib/libc/mingw/lib-common/mapi32.def created+177
...@@ -0,0 +1,177 @@
1;
2; Definition file of MAPI32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MAPI32.dll"
7EXPORTS
8ord_8 @8
9MAPILogonEx
10MAPIAllocateBuffer
11MAPIAllocateMore
12MAPIFreeBuffer
13MAPIAdminProfiles
14MAPIInitialize
15MAPIUninitialize
16PRProviderInit
17LAUNCHWIZARD
18LaunchWizard
19MAPIOpenFormMgr
20MAPIOpenLocalFormContainer
21ScInitMapiUtil
22DeinitMapiUtil
23ScGenerateMuid
24HrAllocAdviseSink
25WrapProgress
26HrThisThreadAdviseSink
27ScBinFromHexBounded
28FBinFromHex
29HexFromBin
30BuildDisplayTable
31SwapPlong
32SwapPword
33MAPIInitIdle
34MAPIDeinitIdle
35InstallFilterHook
36FtgRegisterIdleRoutine
37EnableIdleRoutine
38DeregisterIdleRoutine
39ChangeIdleRoutine
40MAPIGetDefaultMalloc
41CreateIProp
42CreateTable
43MNLS_lstrlenW
44MNLS_lstrcmpW
45MNLS_lstrcpyW
46MNLS_CompareStringW
47MNLS_MultiByteToWideChar
48MNLS_WideCharToMultiByte
49MNLS_IsBadStringPtrW
50FEqualNames
51WrapStoreEntryID
52IsBadBoundedStringPtr
53HrQueryAllRows
54PropCopyMore
55UlPropSize
56FPropContainsProp
57FPropCompareProp
58LPropCompareProp
59HrAddColumns
60HrAddColumnsEx
61FtAddFt
62FtAdcFt
63FtSubFt
64FtMulDw
65FtMulDwDw
66FtNegFt
67FtDivFtBogus
68UlAddRef
69UlRelease
70SzFindCh
71SzFindLastCh
72SzFindSz
73UFromSz
74HrGetOneProp
75HrSetOneProp
76FPropExists
77PpropFindProp
78FreePadrlist
79FreeProws
80HrSzFromEntryID
81HrEntryIDFromSz
82HrComposeEID
83HrDecomposeEID
84HrComposeMsgID
85HrDecomposeMsgID
86OpenStreamOnFile
87OpenTnefStream
88OpenTnefStreamEx
89GetTnefStreamCodepage
90UlFromSzHex
91UNKOBJ_ScAllocate
92UNKOBJ_ScAllocateMore
93UNKOBJ_Free
94UNKOBJ_FreeRows
95UNKOBJ_ScCOAllocate
96UNKOBJ_ScCOReallocate
97UNKOBJ_COFree
98UNKOBJ_ScSzFromIdsAlloc
99ScCountNotifications
100ScCopyNotifications
101ScRelocNotifications
102ScCountProps
103ScCopyProps
104ScRelocProps
105LpValFindProp
106ScDupPropset
107FBadRglpszA
108FBadRglpszW
109FBadRowSet
110FBadRglpNameID
111FBadPropTag
112FBadRow
113FBadProp
114FBadColumnSet
115RTFSync
116WrapCompressedRTFStream
117__ValidateParameters
118__CPPValidateParameters
119FBadSortOrderSet
120FBadEntryList
121FBadRestriction
122ScUNCFromLocalPath
123ScLocalPathFromUNC
124HrIStorageFromStream
125HrValidateIPMSubtree
126OpenIMsgSession
127CloseIMsgSession
128OpenIMsgOnIStg
129SetAttribIMsgOnIStg
130GetAttribIMsgOnIStg
131MapStorageSCode
132ScMAPIXFromCMC
133ScMAPIXFromSMAPI
134EncodeID
135FDecodeID
136CchOfEncoding
137CbOfEncoded
138MAPISendDocuments
139MAPILogon
140MAPILogoff
141MAPISendMail
142MAPISaveMail
143MAPIReadMail
144MAPIFindNext
145MAPIDeleteMail
146MAPIAddress
147MAPIDetails
148MAPIResolveName
149BMAPISendMail
150BMAPISaveMail
151BMAPIReadMail
152BMAPIGetReadMail
153BMAPIFindNext
154BMAPIAddress
155BMAPIGetAddress
156BMAPIDetails
157BMAPIResolveName
158cmc_act_on
159cmc_free
160cmc_list
161cmc_logoff
162cmc_logon
163cmc_look_up
164cmc_query_configuration
165cmc_read
166cmc_send
167cmc_send_documents
168HrDispatchNotifications
169HrValidateParametersV
170HrValidateParametersValist
171ScCreateConversationIndex
172HrGetOmiProvidersFlags
173HrSetOmiProvidersFlagsInvalid
174GetOutlookVersion
175FixMAPI
176FGetComponentPath
177MAPISendMailW
lib/libc/mingw/lib-common/mf.def created+97
...@@ -0,0 +1,97 @@
1;
2; Definition file of MF.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MF.dll"
7EXPORTS
8AppendPropVariant
9ConvertPropVariant
10CopyPropertyStore
11CreateNamedPropertyStore
12ExtractPropVariant
13MFCreate3GPMediaSink
14MFCreateAC3MediaSink
15MFCreateADTSMediaSink
16MFCreateASFByteStreamPlugin
17MFCreateASFContentInfo
18MFCreateASFIndexer
19MFCreateASFIndexerByteStream
20MFCreateASFMediaSink
21MFCreateASFMediaSinkActivate
22MFCreateASFMultiplexer
23MFCreateASFProfile
24MFCreateASFProfileFromPresentationDescriptor
25MFCreateASFSplitter
26MFCreateASFStreamSelector
27MFCreateASFStreamingMediaSink
28MFCreateASFStreamingMediaSinkActivate
29MFCreateAggregateSource
30MFCreateAppSourceProxy
31MFCreateAudioRenderer
32MFCreateAudioRendererActivate
33MFCreateByteCacheFile
34MFCreateCacheManager
35MFCreateCredentialCache
36MFCreateDeviceSource
37MFCreateDeviceSourceActivate
38MFCreateDrmNetNDSchemePlugin
39MFCreateFMPEG4MediaSink
40MFCreateFileBlockMap
41MFCreateFileSchemePlugin
42MFCreateHttpSchemePlugin
43MFCreateLPCMByteStreamPlugin
44MFCreateMP3ByteStreamPlugin
45MFCreateMP3MediaSink
46MFCreateMPEG4MediaSink
47MFCreateMediaProcessor
48MFCreateMediaSession
49MFCreateMuxSink
50MFCreateNSCByteStreamPlugin
51MFCreateNetSchemePlugin
52MFCreatePMPHost
53MFCreatePMPMediaSession
54MFCreatePMPServer
55MFCreatePresentationClock
56MFCreatePresentationDescriptorFromASFProfile
57MFCreateProtectedEnvironmentAccess
58MFCreateProxyLocator
59MFCreateRemoteDesktopPlugin
60MFCreateSAMIByteStreamPlugin
61MFCreateSampleCopierMFT
62MFCreateSampleGrabberSinkActivate
63MFCreateSecureHttpSchemePlugin
64MFCreateSequencerSegmentOffset
65MFCreateSequencerSource
66MFCreateSequencerSourceRemoteStream
67MFCreateSimpleTypeHandler
68MFCreateSoundEventSchemePlugin
69MFCreateSourceResolver
70MFCreateStandardQualityManager
71MFCreateTopoLoader
72MFCreateTopology
73MFCreateTopologyNode
74MFCreateTranscodeProfile
75MFCreateTranscodeSinkActivate
76MFCreateTranscodeTopology
77MFCreateTranscodeTopologyFromByteStream
78MFCreateUrlmonSchemePlugin
79MFCreateVideoRenderer
80MFCreateVideoRendererActivate
81MFCreateWMAEncoderActivate
82MFCreateWMVEncoderActivate
83MFEnumDeviceSources
84MFGetLocalId
85MFGetMultipleServiceProviders
86MFGetService
87MFGetSupportedMimeTypes
88MFGetSupportedSchemes
89MFGetSystemId
90MFGetTopoNodeCurrentType
91MFLoadSignedLibrary
92MFRR_CreateActivate
93MFReadSequencerSegmentOffset
94MFRequireProtectedEnvironment
95MFShutdownObject
96MFTranscodeGetAudioOutputAvailableTypes
97MergePropertyStore
lib/libc/mingw/lib-common/mfplat.def created+205
...@@ -0,0 +1,205 @@
1LIBRARY "MFPlat.DLL"
2EXPORTS
3FormatTagFromWfx
4MFCreateGuid
5MFGetIoPortHandle
6MFEnumLocalMFTRegistrations
7MFGetPlatformFlags
8MFGetPlatformVersion
9MFGetRandomNumber
10MFIsFeatureEnabled
11MFIsQueueThread
12MFPlatformBigEndian
13MFPlatformLittleEndian
14MFTraceError
15MFllMulDiv
16ValidateWaveFormat
17CopyPropVariant
18CreatePropVariant
19CreatePropertyStore
20DestroyPropVariant
21GetAMSubtypeFromD3DFormat
22GetD3DFormatFromMFSubtype
23LFGetGlobalPool
24MFAddPeriodicCallback
25MFAllocateSerialWorkQueue
26MFAllocateWorkQueue
27MFAllocateWorkQueueEx
28MFAppendCollection
29MFAverageTimePerFrameToFrameRate
30MFBeginCreateFile
31MFBeginGetHostByName
32MFBeginRegisterWorkQueueWithMMCSS
33MFBeginRegisterWorkQueueWithMMCSSEx
34MFBeginUnregisterWorkQueueWithMMCSS
35MFBlockThread
36MFCalculateBitmapImageSize
37MFCalculateImageSize
38MFCancelCreateFile
39MFCancelWorkItem
40MFClearLocalMFTs
41MFCompareFullToPartialMediaType
42MFCompareSockaddrAddresses
43MFConvertColorInfoFromDXVA
44MFConvertColorInfoToDXVA
45MFConvertFromFP16Array
46MFConvertToFP16Array
47MFCopyImage
48MFCreate2DMediaBuffer
49MFCreateAMMediaTypeFromMFMediaType
50MFCreateAlignedMemoryBuffer
51MFCreateAsyncResult
52MFCreateAttributes
53MFCreateAudioMediaType
54MFCreateCollection
55MFCreateDXGIDeviceManager
56MFCreateDXGISurfaceBuffer
57MFCreateDXSurfaceBuffer
58MFCreateEventQueue
59MFCreateFile
60MFCreateFileFromHandle
61MFCreateLegacyMediaBufferOnMFMediaBuffer
62MFCreateMFByteStreamOnStream
63MFCreateMFByteStreamOnStreamEx
64MFCreateMFByteStreamWrapper
65MFCreateMFVideoFormatFromMFMediaType
66MFCreateMediaBufferFromMediaType
67MFCreateMediaBufferWrapper
68MFCreateMediaEvent
69MFCreateMediaEventResult
70MFCreateMediaExtensionActivate
71MFCreateMediaExtensionActivateNoInit
72MFCreateMediaType
73MFCreateMediaTypeFromProperties
74MFCreateMediaTypeFromRepresentation
75MFCreateMemoryBuffer
76MFCreateMemoryStream
77MFCreatePathFromURL
78MFCreatePresentationDescriptor
79MFCreatePropertiesFromMediaType
80MFCreateReusableByteStream
81MFCreateSample
82MFCreateSocket
83MFCreateSocketListener
84MFCreateSourceResolver
85MFCreateSourceResolverInternal
86MFCreateStreamDescriptor
87MFCreateStreamOnMFByteStream
88MFCreateStreamOnMFByteStreamEx
89MFCreateSystemTimeSource
90MFCreateSystemUnderlyingClock
91MFCreateTempFile
92MFCreateTrackedSample
93MFCreateTransformActivate
94MFCreateURLFromPath
95MFCreateUdpSockets
96MFCreateVideoMediaType
97MFCreateVideoMediaTypeFromBitMapInfoHeader
98MFCreateVideoMediaTypeFromBitMapInfoHeaderEx
99MFCreateVideoMediaTypeFromSubtype
100MFCreateVideoMediaTypeFromVideoInfoHeader
101MFCreateVideoMediaTypeFromVideoInfoHeader2
102MFCreateVideoSampleAllocatorEx
103MFCreateWICBitmapBuffer
104MFCreateWaveFormatExFromMFMediaType
105MFDeserializeAttributesFromStream
106MFDeserializeEvent
107MFDeserializeMediaTypeFromStream
108MFDeserializePresentationDescriptor
109MFEndCreateFile
110MFEndGetHostByName
111MFEndRegisterWorkQueueWithMMCSS
112MFEndUnregisterWorkQueueWithMMCSS
113MFFrameRateToAverageTimePerFrame
114MFFreeAdaptersAddresses
115MFGetAdaptersAddresses
116MFGetAttributesAsBlob
117MFGetAttributesAsBlobSize
118MFGetConfigurationDWORD
119MFGetConfigurationPolicy
120MFGetConfigurationStore
121MFGetConfigurationString
122MFGetContentProtectionSystemCLSID
123MFGetMFTMerit
124MFGetNumericNameFromSockaddr
125MFGetPlaneSize
126MFGetPlatform
127MFGetPluginControl
128MFGetPrivateWorkqueues
129MFGetSockaddrFromNumericName
130MFGetStrideForBitmapInfoHeader
131MFGetSupportedMimeTypes
132MFGetSupportedSchemes
133MFGetSystemTime
134MFGetTimerPeriodicity
135MFGetUncompressedVideoFormat
136MFGetWorkQueueMMCSSClass
137MFGetWorkQueueMMCSSPriority
138MFGetWorkQueueMMCSSTaskId
139MFHeapAlloc
140MFHeapFree
141MFInitAMMediaTypeFromMFMediaType
142MFInitAttributesFromBlob
143MFInitMediaTypeFromAMMediaType
144MFInitMediaTypeFromMFVideoFormat
145MFInitMediaTypeFromMPEG1VideoInfo
146MFInitMediaTypeFromMPEG2VideoInfo
147MFInitMediaTypeFromVideoInfoHeader
148MFInitMediaTypeFromVideoInfoHeader2
149MFInitMediaTypeFromWaveFormatEx
150MFInitVideoFormat
151MFInitVideoFormat_RGB
152MFInvokeCallback
153MFJoinIoPort
154MFIsBottomUpFormat
155MFIsLocallyRegisteredMimeType
156MFJoinWorkQueue
157MFLockDXGIDeviceManager
158MFLockPlatform
159MFLockSharedWorkQueue
160MFLockWorkQueue
161MFMapDX9FormatToDXGIFormat
162MFMapDXGIFormatToDX9Format
163MFPutWaitingWorkItem
164MFPutWorkItem
165MFPutWorkItem2
166MFPutWorkItemEx
167MFPutWorkItemEx2
168MFRecordError
169MFRegisterLocalByteStreamHandler
170MFRegisterLocalSchemeHandler
171MFRegisterPlatformWithMMCSS
172MFRemovePeriodicCallback
173MFScheduleWorkItem
174MFScheduleWorkItemEx
175MFSerializeAttributesToStream
176MFSerializeEvent
177MFSerializeMediaTypeToStream
178MFSerializePresentationDescriptor
179MFSetSockaddrAny
180MFShutdown
181MFStartup
182MFStreamDescriptorProtectMediaType
183MFTEnum
184MFTEnumEx
185MFTGetInfo
186MFTRegister
187MFTRegisterLocal
188MFTRegisterLocalByCLSID
189MFTUnregister
190MFTUnregisterLocal
191MFTUnregisterLocalByCLSID
192MFTraceError
193MFTraceFuncEnter
194MFUnblockThread
195MFUnjoinWorkQueue
196MFUnlockDXGIDeviceManager
197MFUnlockPlatform
198MFUnlockWorkQueue
199MFUnregisterPlatformFromMMCSS
200MFUnwrapMediaType
201MFValidateMediaTypeSize
202MFWrapMediaType
203MFllMulDiv
204PropVariantFromStream
205PropVariantToStream
lib/libc/mingw/lib-common/mfreadwrite.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY "MFReadWrite.dll"
2EXPORTS
3MFCreateSinkWriterFromMediaSink
4MFCreateSinkWriterFromURL
5MFCreateSourceReaderFromByteStream
6MFCreateSourceReaderFromMediaSource
7MFCreateSourceReaderFromURL
lib/libc/mingw/lib-common/mgmtapi.def created+17
...@@ -0,0 +1,17 @@
1;
2; Exports of file mgmtapi.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY mgmtapi.dll
8EXPORTS
9SnmpMgrClose
10SnmpMgrCtl
11SnmpMgrGetTrap
12SnmpMgrGetTrapEx
13SnmpMgrOidToStr
14SnmpMgrOpen
15SnmpMgrRequest
16SnmpMgrStrToOid
17SnmpMgrTrapListen
lib/libc/mingw/lib-common/mmdevapi.def created+3
...@@ -0,0 +1,3 @@
1LIBRARY "mmdevapi.dll"
2EXPORTS
3ActivateAudioInterfaceAsync
lib/libc/mingw/lib-common/msacm32.def created+51
...@@ -0,0 +1,51 @@
1;
2; Definition file of MSACM32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MSACM32.dll"
7EXPORTS
8XRegThunkEntry
9acmDriverAddA
10acmDriverAddW
11acmDriverClose
12acmDriverDetailsA
13acmDriverDetailsW
14acmDriverEnum
15acmDriverID
16acmDriverMessage
17acmDriverOpen
18acmDriverPriority
19acmDriverRemove
20acmFilterChooseA
21acmFilterChooseW
22acmFilterDetailsA
23acmFilterDetailsW
24acmFilterEnumA
25acmFilterEnumW
26acmFilterTagDetailsA
27acmFilterTagDetailsW
28acmFilterTagEnumA
29acmFilterTagEnumW
30acmFormatChooseA
31acmFormatChooseW
32acmFormatDetailsA
33acmFormatDetailsW
34acmFormatEnumA
35acmFormatEnumW
36acmFormatSuggest
37acmFormatTagDetailsA
38acmFormatTagDetailsW
39acmFormatTagEnumA
40acmFormatTagEnumW
41acmGetVersion
42acmMessage32
43acmMetrics
44acmStreamClose
45acmStreamConvert
46acmStreamMessage
47acmStreamOpen
48acmStreamPrepareHeader
49acmStreamReset
50acmStreamSize
51acmStreamUnprepareHeader
lib/libc/mingw/lib-common/msdmo.def created+23
...@@ -0,0 +1,23 @@
1;
2; Exports of file msdmo.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY msdmo.dll
8EXPORTS
9DMOEnum
10DMOGetName
11DMOGetTypes
12DMOGuidToStrA
13DMOGuidToStrW
14DMORegister
15DMOStrToGuidA
16DMOStrToGuidW
17DMOUnregister
18MoCopyMediaType
19MoCreateMediaType
20MoDeleteMediaType
21MoDuplicateMediaType
22MoFreeMediaType
23MoInitMediaType
lib/libc/mingw/lib-common/msdrm.def created+98
...@@ -0,0 +1,98 @@
1;
2; Definition file of msdrm.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "msdrm.dll"
7EXPORTS
8DRMAcquireAdvisories
9DRMAcquireIssuanceLicenseTemplate
10DRMAcquireLicense
11DRMActivate
12DRMAddLicense
13DRMAddRightWithUser
14DRMAttest
15DRMCheckSecurity
16DRMClearAllRights
17DRMCloseEnvironmentHandle
18DRMCloseHandle
19DRMClosePubHandle
20DRMCloseQueryHandle
21DRMCloseSession
22DRMConstructCertificateChain
23DRMCreateBoundLicense
24DRMCreateClientSession
25DRMCreateEnablingBitsDecryptor
26DRMCreateEnablingBitsEncryptor
27DRMCreateEnablingPrincipal
28DRMCreateIssuanceLicense
29DRMCreateLicenseStorageSession
30DRMCreateRight
31DRMCreateUser
32DRMDecode
33DRMDeconstructCertificateChain
34DRMDecrypt
35DRMDeleteLicense
36DRMDuplicateEnvironmentHandle
37DRMDuplicateHandle
38DRMDuplicatePubHandle
39DRMDuplicateSession
40DRMEncode
41DRMEncrypt
42DRMEnumerateLicense
43DRMGetApplicationSpecificData
44DRMGetBoundLicenseAttribute
45DRMGetBoundLicenseAttributeCount
46DRMGetBoundLicenseObject
47DRMGetBoundLicenseObjectCount
48DRMGetCertificateChainCount
49DRMGetClientVersion
50DRMGetEnvironmentInfo
51DRMGetInfo
52DRMGetIntervalTime
53DRMGetIssuanceLicenseInfo
54DRMGetIssuanceLicenseTemplate
55DRMGetMetaData
56DRMGetNameAndDescription
57DRMGetOwnerLicense
58DRMGetProcAddress
59DRMGetRevocationPoint
60DRMGetRightExtendedInfo
61DRMGetRightInfo
62DRMGetSecurityProvider
63DRMGetServiceLocation
64DRMGetSignedIssuanceLicense
65DRMGetSignedIssuanceLicenseEx
66DRMGetTime
67DRMGetUnboundLicenseAttribute
68DRMGetUnboundLicenseAttributeCount
69DRMGetUnboundLicenseObject
70DRMGetUnboundLicenseObjectCount
71DRMGetUsagePolicy
72DRMGetUserInfo
73DRMGetUserRights
74DRMGetUsers
75DRMInitEnvironment
76DRMIsActivated
77DRMIsWindowProtected
78DRMLoadLibrary
79DRMParseUnboundLicense
80DRMRegisterContent
81DRMRegisterProtectedWindow
82DRMRegisterRevocationList
83DRMRepair
84DRMSetApplicationSpecificData
85DRMSetGlobalOptions
86DRMSetIntervalTime
87DRMSetMetaData
88DRMSetNameAndDescription
89DRMSetRevocationPoint
90DRMSetUsagePolicy
91DRMVerify
92DRMpCloseFile
93DRMpFileInitialize
94DRMpFileIsProtected
95DRMpFileProtect
96DRMpFileUnprotect
97DRMpFreeMemory
98__AddMachineCertToLicenseStore
lib/libc/mingw/lib-common/msi.def created+297
...@@ -0,0 +1,297 @@
1;
2; Definition file of msi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "msi.dll"
7EXPORTS
8MsiAdvertiseProductA
9MsiAdvertiseProductW
10MsiCloseAllHandles
11MsiCloseHandle
12MsiCollectUserInfoA
13MsiCollectUserInfoW
14MsiConfigureFeatureA
15MsiConfigureFeatureFromDescriptorA
16MsiConfigureFeatureFromDescriptorW
17MsiConfigureFeatureW
18MsiConfigureProductA
19MsiConfigureProductW
20MsiCreateRecord
21MsiDatabaseApplyTransformA
22MsiDatabaseApplyTransformW
23MsiDatabaseCommit
24MsiDatabaseExportA
25MsiDatabaseExportW
26MsiDatabaseGenerateTransformA
27MsiDatabaseGenerateTransformW
28MsiDatabaseGetPrimaryKeysA
29MsiDatabaseGetPrimaryKeysW
30MsiDatabaseImportA
31MsiDatabaseImportW
32MsiDatabaseMergeA
33MsiDatabaseMergeW
34MsiDatabaseOpenViewA
35MsiDatabaseOpenViewW
36MsiDoActionA
37MsiDoActionW
38MsiEnableUIPreview
39MsiEnumClientsA
40MsiEnumClientsW
41MsiEnumComponentQualifiersA
42MsiEnumComponentQualifiersW
43MsiEnumComponentsA
44MsiEnumComponentsW
45MsiEnumFeaturesA
46MsiEnumFeaturesW
47MsiEnumProductsA
48MsiEnumProductsW
49MsiEvaluateConditionA
50MsiEvaluateConditionW
51MsiGetLastErrorRecord
52MsiGetActiveDatabase
53MsiGetComponentStateA
54MsiGetComponentStateW
55MsiGetDatabaseState
56MsiGetFeatureCostA
57MsiGetFeatureCostW
58MsiGetFeatureInfoA
59MsiGetFeatureInfoW
60MsiGetFeatureStateA
61MsiGetFeatureStateW
62MsiGetFeatureUsageA
63MsiGetFeatureUsageW
64MsiGetFeatureValidStatesA
65MsiGetFeatureValidStatesW
66MsiGetLanguage
67MsiGetMode
68MsiGetProductCodeA
69MsiGetProductCodeW
70MsiGetProductInfoA
71MsiGetProductInfoFromScriptA
72MsiGetProductInfoFromScriptW
73MsiGetProductInfoW
74MsiGetProductPropertyA
75MsiGetProductPropertyW
76MsiGetPropertyA
77MsiGetPropertyW
78MsiGetSourcePathA
79MsiGetSourcePathW
80MsiGetSummaryInformationA
81MsiGetSummaryInformationW
82MsiGetTargetPathA
83MsiGetTargetPathW
84MsiGetUserInfoA
85MsiGetUserInfoW
86MsiInstallMissingComponentA
87MsiInstallMissingComponentW
88MsiInstallMissingFileA
89MsiInstallMissingFileW
90MsiInstallProductA
91MsiInstallProductW
92MsiLocateComponentA
93MsiLocateComponentW
94MsiOpenDatabaseA
95MsiOpenDatabaseW
96MsiOpenPackageA
97MsiOpenPackageW
98MsiOpenProductA
99MsiOpenProductW
100MsiPreviewBillboardA
101MsiPreviewBillboardW
102MsiPreviewDialogA
103MsiPreviewDialogW
104MsiProcessAdvertiseScriptA
105MsiProcessAdvertiseScriptW
106MsiProcessMessage
107MsiProvideComponentA
108MsiProvideComponentFromDescriptorA
109MsiProvideComponentFromDescriptorW
110MsiProvideComponentW
111MsiProvideQualifiedComponentA
112MsiProvideQualifiedComponentW
113MsiQueryFeatureStateA
114MsiQueryFeatureStateW
115MsiQueryProductStateA
116MsiQueryProductStateW
117MsiRecordDataSize
118MsiRecordGetFieldCount
119MsiRecordGetInteger
120MsiRecordGetStringA
121MsiRecordGetStringW
122MsiRecordIsNull
123MsiRecordReadStream
124MsiRecordSetInteger
125MsiRecordSetStreamA
126MsiRecordSetStreamW
127MsiRecordSetStringA
128MsiRecordSetStringW
129MsiReinstallFeatureA
130MsiReinstallFeatureFromDescriptorA
131MsiReinstallFeatureFromDescriptorW
132MsiReinstallFeatureW
133MsiReinstallProductA
134MsiReinstallProductW
135MsiSequenceA
136MsiSequenceW
137MsiSetComponentStateA
138MsiSetComponentStateW
139MsiSetExternalUIA
140MsiSetExternalUIW
141MsiSetFeatureStateA
142MsiSetFeatureStateW
143MsiSetInstallLevel
144MsiSetInternalUI
145MsiVerifyDiskSpace
146MsiSetMode
147MsiSetPropertyA
148MsiSetPropertyW
149MsiSetTargetPathA
150MsiSetTargetPathW
151MsiSummaryInfoGetPropertyA
152MsiSummaryInfoGetPropertyCount
153MsiSummaryInfoGetPropertyW
154MsiSummaryInfoPersist
155MsiSummaryInfoSetPropertyA
156MsiSummaryInfoSetPropertyW
157MsiUseFeatureA
158MsiUseFeatureW
159MsiVerifyPackageA
160MsiVerifyPackageW
161MsiViewClose
162MsiViewExecute
163MsiViewFetch
164MsiViewGetErrorA
165MsiViewGetErrorW
166MsiViewModify
167MsiDatabaseIsTablePersistentA
168MsiDatabaseIsTablePersistentW
169MsiViewGetColumnInfo
170MsiRecordClearData
171MsiEnableLogA
172MsiEnableLogW
173MsiFormatRecordA
174MsiFormatRecordW
175MsiGetComponentPathA
176MsiGetComponentPathW
177MsiApplyPatchA
178MsiApplyPatchW
179MsiAdvertiseScriptA
180MsiAdvertiseScriptW
181MsiGetPatchInfoA
182MsiGetPatchInfoW
183MsiEnumPatchesA
184MsiEnumPatchesW
185MsiGetProductCodeFromPackageCodeA
186MsiGetProductCodeFromPackageCodeW
187MsiCreateTransformSummaryInfoA
188MsiCreateTransformSummaryInfoW
189MsiQueryFeatureStateFromDescriptorA
190MsiQueryFeatureStateFromDescriptorW
191MsiConfigureProductExA
192MsiConfigureProductExW
193MsiInvalidateFeatureCache
194MsiUseFeatureExA
195MsiUseFeatureExW
196MsiGetFileVersionA
197MsiGetFileVersionW
198MsiLoadStringA
199MsiLoadStringW
200MsiMessageBoxA
201MsiMessageBoxW
202MsiDecomposeDescriptorA
203MsiDecomposeDescriptorW
204MsiProvideQualifiedComponentExA
205MsiProvideQualifiedComponentExW
206MsiEnumRelatedProductsA
207MsiEnumRelatedProductsW
208MsiSetFeatureAttributesA
209MsiSetFeatureAttributesW
210MsiSourceListClearAllA
211MsiSourceListClearAllW
212MsiSourceListAddSourceA
213MsiSourceListAddSourceW
214MsiSourceListForceResolutionA
215MsiSourceListForceResolutionW
216MsiIsProductElevatedA
217MsiIsProductElevatedW
218MsiGetShortcutTargetA
219MsiGetShortcutTargetW
220MsiGetFileHashA
221MsiGetFileHashW
222MsiEnumComponentCostsA
223MsiEnumComponentCostsW
224MsiCreateAndVerifyInstallerDirectory
225MsiGetFileSignatureInformationA
226MsiGetFileSignatureInformationW
227MsiProvideAssemblyA
228MsiProvideAssemblyW
229MsiAdvertiseProductExA
230MsiAdvertiseProductExW
231MsiNotifySidChangeA
232MsiNotifySidChangeW
233MsiOpenPackageExA
234MsiOpenPackageExW
235MsiDeleteUserDataA
236MsiDeleteUserDataW
237Migrate10CachedPackagesA
238Migrate10CachedPackagesW
239MsiRemovePatchesA
240MsiRemovePatchesW
241MsiApplyMultiplePatchesA
242MsiApplyMultiplePatchesW
243MsiExtractPatchXMLDataA
244MsiExtractPatchXMLDataW
245MsiGetPatchInfoExA
246MsiGetPatchInfoExW
247MsiEnumProductsExA
248MsiEnumProductsExW
249MsiGetProductInfoExA
250MsiGetProductInfoExW
251MsiQueryComponentStateA
252MsiQueryComponentStateW
253MsiQueryFeatureStateExA
254MsiQueryFeatureStateExW
255MsiDeterminePatchSequenceA
256MsiDeterminePatchSequenceW
257MsiSourceListAddSourceExA
258MsiSourceListAddSourceExW
259MsiSourceListClearSourceA
260MsiSourceListClearSourceW
261MsiSourceListClearAllExA
262MsiSourceListClearAllExW
263MsiSourceListForceResolutionExA
264MsiSourceListForceResolutionExW
265MsiSourceListEnumSourcesA
266MsiSourceListEnumSourcesW
267MsiSourceListGetInfoA
268MsiSourceListGetInfoW
269MsiSourceListSetInfoA
270MsiSourceListSetInfoW
271MsiEnumPatchesExA
272MsiEnumPatchesExW
273MsiSourceListEnumMediaDisksA
274MsiSourceListEnumMediaDisksW
275MsiSourceListAddMediaDiskA
276MsiSourceListAddMediaDiskW
277MsiSourceListClearMediaDiskA
278MsiSourceListClearMediaDiskW
279MsiDetermineApplicablePatchesA
280MsiDetermineApplicablePatchesW
281MsiMessageBoxExA
282MsiMessageBoxExW
283MsiSetExternalUIRecord
284MsiGetPatchFileListA
285MsiGetPatchFileListW
286MsiBeginTransactionA
287MsiBeginTransactionW
288MsiEndTransaction
289MsiJoinTransaction
290MsiSetOfflineContextW
291MsiEnumComponentsExA
292MsiEnumComponentsExW
293MsiEnumClientsExA
294MsiEnumClientsExW
295MsiGetComponentPathExA
296MsiGetComponentPathExW
297QueryInstanceCount
lib/libc/mingw/lib-common/msimg32.def created+13
...@@ -0,0 +1,13 @@
1;
2; Exports of file MSIMG32.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY MSIMG32.dll
8EXPORTS
9vSetDdrawflag
10AlphaBlend
11DllInitialize
12GradientFill
13TransparentBlt
lib/libc/mingw/lib-common/msports.def created+19
...@@ -0,0 +1,19 @@
1;
2; Exports of file MSPORTS.DLL
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY MSPORTS.DLL
8EXPORTS
9ComDBClaimNextFreePort
10ComDBClaimPort
11ComDBClose
12ComDBGetCurrentPortUsage
13ComDBOpen
14ComDBReleasePort
15ComDBResizeDatabase
16ParallelPortPropPageProvider
17PortsClassInstaller
18SerialDisplayAdvancedSettings
19SerialPortPropPageProvider
lib/libc/mingw/lib-common/mstask.def created+21
...@@ -0,0 +1,21 @@
1;
2; Exports of file mstask.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY mstask.dll
8EXPORTS
9ConvertAtJobsToTasks
10DllCanUnloadNow
11DllGetClassObject
12GetNetScheduleAccountInformation
13NetrJobAdd
14NetrJobDel
15NetrJobEnum
16NetrJobGetInfo
17SAGetAccountInformation
18SAGetNSAccountInformation
19SASetAccountInformation
20SASetNSAccountInformation
21SetNetScheduleAccountInformation
lib/libc/mingw/lib-common/mtxdm.def created+9
...@@ -0,0 +1,9 @@
1;
2; Exports of file MTxDM.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY MTxDM.dll
8EXPORTS
9GetDispenserManager
lib/libc/mingw/lib-common/ndfapi.def created+31
...@@ -0,0 +1,31 @@
1;
2; Definition file of NDFAPI.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "NDFAPI.DLL"
7EXPORTS
8NdfRunDllDiagnoseIncident
9NdfRunDllDiagnoseNetConnectionIncident
10NdfRunDllDiagnoseWithAnswerFile
11NdfRunDllDuplicateIPDefendingSystem
12NdfRunDllDuplicateIPOffendingSystem
13NdfRunDllHelpTopic
14NdfCancelIncident
15NdfCloseIncident
16NdfCreateConnectivityIncident
17NdfCreateDNSIncident
18NdfCreateGroupingIncident
19NdfCreateInboundIncident
20NdfCreateIncident
21NdfCreateNetConnectionIncident
22NdfCreatePnrpIncident
23NdfCreateSharingIncident
24NdfCreateWebIncident
25NdfCreateWebIncidentEx
26NdfCreateWinSockIncident
27NdfDiagnoseIncident
28NdfExecuteDiagnosis
29NdfGetTraceFile
30NdfRepairIncident
31NdfRepairIncidentEx
lib/libc/mingw/lib-common/netutils.def created+29
...@@ -0,0 +1,29 @@
1;
2; Definition file of netutils.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "netutils.dll"
7EXPORTS
8NetApiBufferAllocate
9NetApiBufferFree
10NetApiBufferReallocate
11NetApiBufferSize
12NetRemoteComputerSupports
13NetapipBufferAllocate
14NetpIsComputerNameValid
15NetpIsDomainNameValid
16NetpIsGroupNameValid
17NetpIsRemote
18NetpIsRemoteNameValid
19NetpIsShareNameValid
20NetpIsUncComputerNameValid
21NetpIsUserNameValid
22NetpwListCanonicalize
23NetpwListTraverse
24NetpwNameCanonicalize
25NetpwNameCompare
26NetpwNameValidate
27NetpwPathCanonicalize
28NetpwPathCompare
29NetpwPathType
lib/libc/mingw/lib-common/normaliz.def created+12
...@@ -0,0 +1,12 @@
1;
2; Definition file of Normaliz.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "Normaliz.dll"
7EXPORTS
8IdnToAscii
9IdnToNameprepUnicode
10IdnToUnicode
11IsNormalizedString
12NormalizeString
lib/libc/mingw/lib-common/ntdsapi.def created+130
...@@ -0,0 +1,130 @@
1;
2; Definition file of NTDSAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "NTDSAPI.dll"
7EXPORTS
8DsAddCloneDCW
9DsAddSidHistoryA
10DsAddSidHistoryW
11DsBindA
12DsBindByInstanceA
13DsBindByInstanceW
14DsBindToISTGA
15DsBindToISTGW
16DsBindW
17DsBindWithCredA
18DsBindWithCredW
19DsBindWithSpnA
20DsBindWithSpnExA
21DsBindWithSpnExW
22DsBindWithSpnExWWorker
23DsBindWithSpnW
24DsBindingSetTimeout
25DsClientMakeSpnForTargetServerA
26DsClientMakeSpnForTargetServerW
27DsCrackNamesA
28DsCrackNamesW
29DsCrackNamesWWorker
30DsCrackSpn2A
31DsCrackSpn2W
32DsCrackSpn3W
33DsCrackSpn4W
34DsCrackSpnA
35DsCrackSpnW
36DsCrackUnquotedMangledRdnA
37DsCrackUnquotedMangledRdnW
38DsFinishDemotionW
39DsFreeCloneDcResult
40DsFreeDomainControllerInfoA
41DsFreeDomainControllerInfoW
42DsFreeDomainControllerInfoWWorker
43DsFreeNameResultA
44DsFreeNameResultW
45DsFreeNameResultWWorker
46DsFreePasswordCredentials
47DsFreePasswordCredentialsWorker
48DsFreeSchemaGuidMapA
49DsFreeSchemaGuidMapW
50DsFreeSpnArrayA
51DsFreeSpnArrayW
52DsGetBindAddrW
53DsGetBindAnnotW
54DsGetBindInstGuid
55DsGetDomainControllerInfoA
56DsGetDomainControllerInfoW
57DsGetDomainControllerInfoWWorker
58DsGetRdnW
59DsGetSpnA
60DsGetSpnW
61DsInheritSecurityIdentityA
62DsInheritSecurityIdentityW
63DsInitDemotionW
64DsIsMangledDnA
65DsIsMangledDnW
66DsIsMangledRdnValueA
67DsIsMangledRdnValueW
68DsListDomainsInSiteA
69DsListDomainsInSiteW
70DsListInfoForServerA
71DsListInfoForServerW
72DsListRolesA
73DsListRolesW
74DsListServersForDomainInSiteA
75DsListServersForDomainInSiteW
76DsListServersInSiteA
77DsListServersInSiteW
78DsListSitesA
79DsListSitesW
80DsLogEntry
81DsMakePasswordCredentialsA
82DsMakePasswordCredentialsW
83DsMakePasswordCredentialsWWorker
84DsMakeSpnA
85DsMakeSpnW
86DsMapSchemaGuidsA
87DsMapSchemaGuidsW
88DsQuerySitesByCostA
89DsQuerySitesByCostW
90DsQuerySitesFree
91DsQuoteRdnValueA
92DsQuoteRdnValueW
93DsRemoveDsDomainA
94DsRemoveDsDomainW
95DsRemoveDsServerA
96DsRemoveDsServerW
97DsReplicaAddA
98DsReplicaAddW
99DsReplicaConsistencyCheck
100DsReplicaDelA
101DsReplicaDelW
102DsReplicaDemotionW
103DsReplicaFreeInfo
104DsReplicaGetInfo2W
105DsReplicaGetInfoW
106DsReplicaModifyA
107DsReplicaModifyW
108DsReplicaSyncA
109DsReplicaSyncAllA
110DsReplicaSyncAllW
111DsReplicaSyncW
112DsReplicaUpdateRefsA
113DsReplicaUpdateRefsW
114DsReplicaVerifyObjectsA
115DsReplicaVerifyObjectsW
116DsServerRegisterSpnA
117DsServerRegisterSpnW
118DsUnBindA
119DsUnBindW
120DsUnBindWWorker
121DsUnquoteRdnValueA
122DsUnquoteRdnValueW
123DsWriteAccountSpnA
124DsWriteAccountSpnW
125DsaopBind
126DsaopBindWithCred
127DsaopBindWithSpn
128DsaopExecuteScript
129DsaopPrepareScript
130DsaopUnBind
lib/libc/mingw/lib-common/oleacc.def created+31
...@@ -0,0 +1,31 @@
1;
2; Definition file of OLEACC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "OLEACC.dll"
7EXPORTS
8AccGetRunningUtilityState
9AccNotifyTouchInteraction
10AccSetRunningUtilityState
11AccessibleChildren
12AccessibleObjectFromEvent
13AccessibleObjectFromPoint
14AccessibleObjectFromWindow
15AccessibleObjectFromWindowTimeout
16CreateStdAccessibleObject
17CreateStdAccessibleProxyA
18CreateStdAccessibleProxyW
19GetOleaccVersionInfo
20GetProcessHandleFromHwnd
21GetRoleTextA
22GetRoleTextW
23GetStateTextA
24GetStateTextW
25IID_IAccessible
26IID_IAccessibleHandler
27LIBID_Accessibility
28LresultFromObject
29ObjectFromLresult
30PropMgrClient_LookupProp
31WindowFromAccessibleObject
lib/libc/mingw/lib-common/oledlg.def created+30
...@@ -0,0 +1,30 @@
1;
2; Definition file of oledlg.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "oledlg.dll"
7EXPORTS
8OleUIAddVerbMenuA
9OleUICanConvertOrActivateAs
10OleUIInsertObjectA
11OleUIPasteSpecialA
12OleUIEditLinksA
13OleUIChangeIconA
14OleUIConvertA
15OleUIBusyA
16OleUIUpdateLinksA
17OleUIPromptUserA
18OleUIObjectPropertiesA
19OleUIChangeSourceA
20OleUIAddVerbMenuW
21OleUIBusyW
22OleUIChangeIconW
23OleUIChangeSourceW
24OleUIConvertW
25OleUIEditLinksW
26OleUIInsertObjectW
27OleUIObjectPropertiesW
28OleUIPasteSpecialW
29OleUIPromptUserW
30OleUIUpdateLinksW
lib/libc/mingw/lib-common/p2p.def created+119
...@@ -0,0 +1,119 @@
1;
2; Definition file of P2P.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "P2P.dll"
7EXPORTS
8PeerGroupHandlePowerEvent
9PeerCollabAddContact
10PeerCollabAsyncInviteContact
11PeerCollabAsyncInviteEndpoint
12PeerCollabCancelInvitation
13PeerCollabCloseHandle
14PeerCollabDeleteContact
15PeerCollabDeleteEndpointData
16PeerCollabDeleteObject
17PeerCollabEnumApplicationRegistrationInfo
18PeerCollabEnumApplications
19PeerCollabEnumContacts
20PeerCollabEnumEndpoints
21PeerCollabEnumObjects
22PeerCollabEnumPeopleNearMe
23PeerCollabExportContact
24PeerCollabGetAppLaunchInfo
25PeerCollabGetApplicationRegistrationInfo
26PeerCollabGetContact
27PeerCollabGetEndpointName
28PeerCollabGetEventData
29PeerCollabGetInvitationResponse
30PeerCollabGetPresenceInfo
31PeerCollabGetSigninOptions
32PeerCollabInviteContact
33PeerCollabInviteEndpoint
34PeerCollabParseContact
35PeerCollabQueryContactData
36PeerCollabRefreshEndpointData
37PeerCollabRegisterApplication
38PeerCollabRegisterEvent
39PeerCollabSetEndpointName
40PeerCollabSetObject
41PeerCollabSetPresenceInfo
42PeerCollabShutdown
43PeerCollabSignin
44PeerCollabSignout
45PeerCollabStartup
46PeerCollabSubscribeEndpointData
47PeerCollabUnregisterApplication
48PeerCollabUnregisterEvent
49PeerCollabUnsubscribeEndpointData
50PeerCollabUpdateContact
51PeerCreatePeerName
52PeerEndEnumeration
53PeerEnumGroups
54PeerEnumIdentities
55PeerFreeData
56PeerGetItemCount
57PeerGetNextItem
58PeerGroupAddRecord
59PeerGroupClose
60PeerGroupCloseDirectConnection
61PeerGroupConnect
62PeerGroupConnectByAddress
63PeerGroupCreate
64PeerGroupCreateInvitation
65PeerGroupCreatePasswordInvitation
66PeerGroupDelete
67PeerGroupDeleteRecord
68PeerGroupEnumConnections
69PeerGroupEnumMembers
70PeerGroupEnumRecords
71PeerGroupExportConfig
72PeerGroupExportDatabase
73PeerGroupGetEventData
74PeerGroupGetProperties
75PeerGroupGetRecord
76PeerGroupGetStatus
77PeerGroupImportConfig
78PeerGroupImportDatabase
79PeerGroupIssueCredentials
80PeerGroupJoin
81PeerGroupOpen
82PeerGroupOpenDirectConnection
83PeerGroupParseInvitation
84PeerGroupPasswordJoin
85PeerGroupPeerTimeToUniversalTime
86PeerGroupRegisterEvent
87PeerGroupResumePasswordAuthentication
88PeerGroupSearchRecords
89PeerGroupSendData
90PeerGroupSetProperties
91PeerGroupShutdown
92PeerGroupStartup
93PeerGroupUniversalTimeToPeerTime
94PeerGroupUnregisterEvent
95PeerGroupUpdateRecord
96PeerHostNameToPeerName
97PeerIdentityCreate
98PeerIdentityDelete
99PeerIdentityExport
100PeerIdentityGetCert
101PeerIdentityGetCryptKey
102PeerIdentityGetDefault
103PeerIdentityGetFriendlyName
104PeerIdentityGetXML
105PeerIdentityImport
106PeerIdentitySetFriendlyName
107PeerNameToPeerHostName
108PeerPnrpEndResolve
109PeerPnrpGetCloudInfo
110PeerPnrpGetEndpoint
111PeerPnrpRegister
112PeerPnrpResolve
113PeerPnrpShutdown
114PeerPnrpStartResolve
115PeerPnrpStartup
116PeerPnrpUnregister
117PeerPnrpUpdateRegistration
118PeerSSPAddCredentials
119PeerSSPRemoveCredentials
lib/libc/mingw/lib-common/p2pgraph.def created+47
...@@ -0,0 +1,47 @@
1;
2; Definition file of P2PGRAPH.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "P2PGRAPH.dll"
7EXPORTS
8PeerGraphForceStopPresencePrivate
9pMemoryHelper DATA
10PeerGraphAddRecord
11PeerGraphClose
12PeerGraphCloseDirectConnection
13PeerGraphConnect
14PeerGraphCreate
15PeerGraphDelete
16PeerGraphDeleteRecord
17PeerGraphEndEnumeration
18PeerGraphEnumConnections
19PeerGraphEnumNodes
20PeerGraphEnumRecords
21PeerGraphExportDatabase
22PeerGraphFreeData
23PeerGraphGetEventData
24PeerGraphGetItemCount
25PeerGraphGetNextItem
26PeerGraphGetNodeInfo
27PeerGraphGetProperties
28PeerGraphGetRecord
29PeerGraphGetStatus
30PeerGraphImportDatabase
31PeerGraphListen
32PeerGraphOpen
33PeerGraphOpenDirectConnection
34PeerGraphPeerTimeToUniversalTime
35PeerGraphRegisterEvent
36PeerGraphSearchRecords
37PeerGraphSendData
38PeerGraphSetNodeAttributes
39PeerGraphSetPresence
40PeerGraphSetProperties
41PeerGraphShutdown
42PeerGraphStartup
43PeerGraphSuspendTimers
44PeerGraphUniversalTimeToPeerTime
45PeerGraphUnregisterEvent
46PeerGraphUpdateRecord
47PeerGraphValidateDeferredRecords
lib/libc/mingw/lib-common/powrprof.def created+116
...@@ -0,0 +1,116 @@
1;
2; Definition file of POWRPROF.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "POWRPROF.dll"
7EXPORTS
8CallNtPowerInformation
9CanUserWritePwrScheme
10DeletePwrScheme
11DevicePowerClose
12DevicePowerEnumDevices
13DevicePowerOpen
14DevicePowerSetDeviceState
15EnumPwrSchemes
16GUIDFormatToGlobalPowerPolicy
17GUIDFormatToPowerPolicy
18GetActivePwrScheme
19GetCurrentPowerPolicies
20GetPwrCapabilities
21GetPwrDiskSpindownRange
22IsAdminOverrideActive
23IsPwrHibernateAllowed
24IsPwrShutdownAllowed
25IsPwrSuspendAllowed
26LoadCurrentPwrScheme
27MergeLegacyPwrScheme
28PowerApplyPowerRequestOverride
29PowerApplySettingChanges
30PowerCanRestoreIndividualDefaultPowerScheme
31PowerCreatePossibleSetting
32PowerCreateSetting
33PowerCustomizePlatformPowerSettings
34PowerDebugDifPowerPolicies
35PowerDebugDifSystemPowerPolicies
36PowerDebugDumpPowerPolicy
37PowerDebugDumpPowerScheme
38PowerDebugDumpSystemPowerCapabilities
39PowerDebugDumpSystemPowerPolicy
40PowerDeleteScheme
41PowerDeterminePlatformRole
42PowerDeterminePlatformRoleEx
43PowerDuplicateScheme
44PowerEnumerate
45PowerGetActiveScheme
46PowerImportPowerScheme
47PowerInternalDeleteScheme
48PowerInternalDuplicateScheme
49PowerInternalImportPowerScheme
50PowerInternalRestoreDefaultPowerSchemes
51PowerInternalRestoreIndividualDefaultPowerScheme
52PowerInternalSetActiveScheme
53PowerInternalWriteToUserPowerKey
54PowerInformationWithPrivileges
55PowerIsSettingRangeDefined
56PowerOpenSystemPowerKey
57PowerOpenUserPowerKey
58PowerPolicyToGUIDFormat
59PowerReadACDefaultIndex
60PowerReadACValue
61PowerReadACValueIndex
62PowerReadDCDefaultIndex
63PowerReadDCValue
64PowerReadDCValueIndex
65PowerReadDescription
66PowerReadFriendlyName
67PowerReadIconResourceSpecifier
68PowerReadPossibleDescription
69PowerReadPossibleFriendlyName
70PowerReadPossibleValue
71PowerReadSecurityDescriptor
72PowerReadSettingAttributes
73PowerReadValueIncrement
74PowerReadValueMax
75PowerReadValueMin
76PowerReadValueUnitsSpecifier
77PowerRegisterSuspendResumeNotification
78PowerRemovePowerSetting
79PowerReplaceDefaultPowerSchemes
80PowerReportThermalEvent
81PowerRestoreDefaultPowerSchemes
82PowerRestoreIndividualDefaultPowerScheme
83PowerSetActiveScheme
84PowerSetAlsBrightnessOffset
85PowerSettingAccessCheck
86PowerSettingAccessCheckEx
87PowerSettingRegisterNotification
88PowerSettingRegisterNotificationEx
89PowerSettingUnregisterNotification
90PowerUnregisterSuspendResumeNotification
91PowerWriteACDefaultIndex
92PowerWriteACValueIndex
93PowerWriteDCDefaultIndex
94PowerWriteDCValueIndex
95PowerWriteDescription
96PowerWriteFriendlyName
97PowerWriteIconResourceSpecifier
98PowerWritePossibleDescription
99PowerWritePossibleFriendlyName
100PowerWritePossibleValue
101PowerWriteSecurityDescriptor
102PowerWriteSettingAttributes
103PowerWriteValueIncrement
104PowerWriteValueMax
105PowerWriteValueMin
106PowerWriteValueUnitsSpecifier
107ReadGlobalPwrPolicy
108ReadProcessorPwrScheme
109ReadPwrScheme
110SetActivePwrScheme
111SetSuspendState
112Sysprep_Generalize_Power
113ValidatePowerPolicies
114WriteGlobalPwrPolicy
115WriteProcessorPwrScheme
116WritePwrScheme
lib/libc/mingw/lib-common/prntvpt.def created+35
...@@ -0,0 +1,35 @@
1LIBRARY "prntvpt.dll"
2EXPORTS
3PTQuerySchemaVersionSupport
4PTOpenProvider
5PTOpenProviderEx
6PTCloseProvider
7BindPTProviderThunk
8PTGetPrintCapabilities
9PTMergeAndValidatePrintTicket
10PTConvertPrintTicketToDevMode
11PTConvertDevModeToPrintTicket
12PTReleaseMemory
13PTGetPrintDeviceCapabilities
14PTGetPrintDeviceResources
15ConvertDevModeToPrintTicketThunk
16ConvertDevModeToPrintTicketThunk2
17ConvertPrintTicketToDevModeThunk
18ConvertPrintTicketToDevModeThunk2
19DllCanUnloadNow
20DllGetClassObject
21DllMain
22DllRegisterServer
23DllUnregisterServer
24GetDeviceDefaultPrintTicketThunk
25GetDeviceNamespacesThunk
26GetPrintCapabilitiesThunk
27GetPrintCapabilitiesThunk2
28GetPrintDeviceCapabilitiesThunk
29GetPrintDeviceCapabilitiesThunk2
30GetPrintDeviceResourcesThunk
31GetPrintDeviceResourcesThunk2
32GetSchemaVersionThunk
33MergeAndValidatePrintTicketThunk
34MergeAndValidatePrintTicketThunk2
35UnbindPTProviderThunk
lib/libc/mingw/lib-common/propsys.def created+226
...@@ -0,0 +1,226 @@
1LIBRARY "PROPSYS.dll"
2EXPORTS
3SHGetPropertyStoreForWindow
4ClearPropVariantArray
5ClearVariantArray
6DllCanUnloadNow
7DllGetClassObject
8DllRegisterServer
9DllUnregisterServer
10GetProxyDllInfo
11InitPropVariantFromBooleanVector
12InitPropVariantFromBuffer
13InitPropVariantFromCLSID
14InitPropVariantFromDoubleVector
15InitPropVariantFromFileTime
16InitPropVariantFromFileTimeVector
17InitPropVariantFromGUIDAsString
18InitPropVariantFromInt16Vector
19InitPropVariantFromInt32Vector
20InitPropVariantFromInt64Vector
21InitPropVariantFromPropVariantVectorElem
22InitPropVariantFromResource
23InitPropVariantFromStrRet
24InitPropVariantFromStringAsVector
25InitPropVariantFromStringVector
26InitPropVariantFromUInt16Vector
27InitPropVariantFromUInt32Vector
28InitPropVariantFromUInt64Vector
29InitPropVariantVectorFromPropVariant
30InitVariantFromBooleanArray
31InitVariantFromBuffer
32InitVariantFromDoubleArray
33InitVariantFromFileTime
34InitVariantFromFileTimeArray
35InitVariantFromGUIDAsString
36InitVariantFromInt16Array
37InitVariantFromInt32Array
38InitVariantFromInt64Array
39InitVariantFromResource
40InitVariantFromStrRet
41InitVariantFromStringArray
42InitVariantFromUInt16Array
43InitVariantFromUInt32Array
44InitVariantFromUInt64Array
45InitVariantFromVariantArrayElem
46PSCoerceToCanonicalValue
47PSCreateAdapterFromPropertyStore
48PSCreateDelayedMultiplexPropertyStore
49PSCreateMemoryPropertyStore
50PSCreateMultiplexPropertyStore
51PSCreatePropertyChangeArray
52PSCreatePropertyStoreFromObject
53PSCreatePropertyStoreFromPropertySetStorage
54PSCreateSimplePropertyChange
55PSEnumeratePropertyDescriptions
56PSFormatForDisplay
57PSFormatForDisplayAlloc
58PSFormatPropertyValue
59PSGetImageReferenceForValue
60PSGetItemPropertyHandler
61PSGetItemPropertyHandlerWithCreateObject
62PSGetNameFromPropertyKey
63PSGetNamedPropertyFromPropertyStorage
64PSGetPropertyDescription
65PSGetPropertyDescriptionByName
66PSGetPropertyDescriptionListFromString
67PSGetPropertyFromPropertyStorage
68PSGetPropertyKeyFromName
69PSGetPropertySystem
70PSGetPropertyValue
71PSLookupPropertyHandlerCLSID
72PSPropertyBag_Delete
73PSPropertyBag_ReadBOOL
74PSPropertyBag_ReadBSTR
75PSPropertyBag_ReadDWORD
76PSPropertyBag_ReadGUID
77PSPropertyBag_ReadInt
78PSPropertyBag_ReadLONG
79PSPropertyBag_ReadPOINTL
80PSPropertyBag_ReadPOINTS
81PSPropertyBag_ReadPropertyKey
82PSPropertyBag_ReadRECTL
83PSPropertyBag_ReadSHORT
84PSPropertyBag_ReadStr
85PSPropertyBag_ReadStrAlloc
86PSPropertyBag_ReadStream
87PSPropertyBag_ReadType
88PSPropertyBag_ReadULONGLONG
89PSPropertyBag_ReadUnknown
90PSPropertyBag_WriteBOOL
91PSPropertyBag_WriteBSTR
92PSPropertyBag_WriteDWORD
93PSPropertyBag_WriteGUID
94PSPropertyBag_WriteInt
95PSPropertyBag_WriteLONG
96PSPropertyBag_WritePOINTL
97PSPropertyBag_WritePOINTS
98PSPropertyBag_WritePropertyKey
99PSPropertyBag_WriteRECTL
100PSPropertyBag_WriteSHORT
101PSPropertyBag_WriteStr
102PSPropertyBag_WriteStream
103PSPropertyBag_WriteULONGLONG
104PSPropertyBag_WriteUnknown
105PSPropertyKeyFromString
106PSRefreshPropertySchema
107PSRegisterPropertySchema
108PSSetPropertyValue
109PSStringFromPropertyKey
110PSUnregisterPropertySchema
111PropVariantChangeType
112PropVariantCompareEx
113PropVariantGetBooleanElem
114PropVariantGetDoubleElem
115PropVariantGetElementCount
116PropVariantGetFileTimeElem
117PropVariantGetInt16Elem
118PropVariantGetInt32Elem
119PropVariantGetInt64Elem
120PropVariantGetStringElem
121PropVariantGetUInt16Elem
122PropVariantGetUInt32Elem
123PropVariantGetUInt64Elem
124PropVariantToBSTR
125PropVariantToBoolean
126PropVariantToBooleanVector
127PropVariantToBooleanVectorAlloc
128PropVariantToBooleanWithDefault
129PropVariantToBuffer
130PropVariantToDouble
131PropVariantToDoubleVector
132PropVariantToDoubleVectorAlloc
133PropVariantToDoubleWithDefault
134PropVariantToFileTime
135PropVariantToFileTimeVector
136PropVariantToFileTimeVectorAlloc
137PropVariantToGUID
138PropVariantToInt16
139PropVariantToInt16Vector
140PropVariantToInt16VectorAlloc
141PropVariantToInt16WithDefault
142PropVariantToInt32
143PropVariantToInt32Vector
144PropVariantToInt32VectorAlloc
145PropVariantToInt32WithDefault
146PropVariantToInt64
147PropVariantToInt64Vector
148PropVariantToInt64VectorAlloc
149PropVariantToInt64WithDefault
150PropVariantToStrRet
151PropVariantToString
152PropVariantToStringAlloc
153PropVariantToStringVector
154PropVariantToStringVectorAlloc
155PropVariantToStringWithDefault
156PropVariantToUInt16
157PropVariantToUInt16Vector
158PropVariantToUInt16VectorAlloc
159PropVariantToUInt16WithDefault
160PropVariantToUInt32
161PropVariantToUInt32Vector
162PropVariantToUInt32VectorAlloc
163PropVariantToUInt32WithDefault
164PropVariantToUInt64
165PropVariantToUInt64Vector
166PropVariantToUInt64VectorAlloc
167PropVariantToUInt64WithDefault
168PropVariantToVariant
169PropVariantToWinRTPropertyValue
170StgDeserializePropVariant
171StgSerializePropVariant
172VariantCompare
173VariantGetBooleanElem
174VariantGetDoubleElem
175VariantGetElementCount
176VariantGetInt16Elem
177VariantGetInt32Elem
178VariantGetInt64Elem
179VariantGetStringElem
180VariantGetUInt16Elem
181VariantGetUInt32Elem
182VariantGetUInt64Elem
183VariantToBoolean
184VariantToBooleanArray
185VariantToBooleanArrayAlloc
186VariantToBooleanWithDefault
187VariantToBuffer
188VariantToDosDateTime
189VariantToDouble
190VariantToDoubleArray
191VariantToDoubleArrayAlloc
192VariantToDoubleWithDefault
193VariantToFileTime
194VariantToGUID
195VariantToInt16
196VariantToInt16Array
197VariantToInt16ArrayAlloc
198VariantToInt16WithDefault
199VariantToInt32
200VariantToInt32Array
201VariantToInt32ArrayAlloc
202VariantToInt32WithDefault
203VariantToInt64
204VariantToInt64Array
205VariantToInt64ArrayAlloc
206VariantToInt64WithDefault
207VariantToPropVariant
208VariantToStrRet
209VariantToString
210VariantToStringAlloc
211VariantToStringArray
212VariantToStringArrayAlloc
213VariantToStringWithDefault
214VariantToUInt16
215VariantToUInt16Array
216VariantToUInt16ArrayAlloc
217VariantToUInt16WithDefault
218VariantToUInt32
219VariantToUInt32Array
220VariantToUInt32ArrayAlloc
221VariantToUInt32WithDefault
222VariantToUInt64
223VariantToUInt64Array
224VariantToUInt64ArrayAlloc
225VariantToUInt64WithDefault
226WinRTPropertyValueToPropVariant
lib/libc/mingw/lib-common/qwave.def created+21
...@@ -0,0 +1,21 @@
1;
2; Definition file of qwave.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "qwave.dll"
7EXPORTS
8QDLHPathDiagnostics
9QDLHStartDiagnosingPath
10QOSAddSocketToFlow
11QOSCancel
12QOSCloseHandle
13QOSCreateHandle
14QOSEnumerateFlows
15QOSNotifyFlow
16QOSQueryFlow
17QOSRemoveSocketFromFlow
18QOSSetFlow
19QOSStartTrackingClient
20QOSStopTrackingClient
21ServiceMain
lib/libc/mingw/lib-common/resutils.def created+128
...@@ -0,0 +1,128 @@
1;
2; Definition file of RESUTILS.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "RESUTILS.dll"
7EXPORTS
8CloseClusterCryptProvider
9ClusWorkerCheckTerminate
10ClusWorkerCreate
11ClusWorkerStart
12ClusWorkerTerminate
13ClusterClearBackupStateForSharedVolume
14ClusterDecrypt
15ClusterEncrypt
16ClusterEnumTasks
17ClusterFileShareCreate
18ClusterFileShareDelete
19ClusterFileShareUpdate
20ClusterFreeTaskInfo
21ClusterFreeTaskList
22ClusterGetTaskNode
23ClusterGetVolumeNameForVolumeMountPoint
24ClusterGetVolumePathName
25ClusterIsClusterDisk
26ClusterIsPathOnSharedVolume
27ClusterPrepareSharedVolumeForBackup
28ClusterSharedVolumeCheckSnapshotPresence
29ClusterSharedVolumeCreateSnapshot
30ClusterSharedVolumeReleaseSnapshot
31ClusterTaskChangeFromXML
32ClusterTaskChangeFromXMLFile
33ClusterTaskChange_TS_V1
34ClusterTaskCreateFromXML
35ClusterTaskCreateFromXMLFile
36ClusterTaskCreate_TS_V1
37ClusterTaskDelete
38ClusterTaskDelete_TS_V1
39ClusterTaskExists_TS_V1
40ClusterTaskQuery
41CreateClusterStorageSpacesClustering
42CreateClusterStorageSpacesResourceLocator
43CreateClusterStorageSpacesSubProvider
44FreeClusterCrypt
45OpenClusterCryptProvider
46ResUtilAddUnknownProperties
47ResUtilCreateDirectoryTree
48ResUtilDupParameterBlock
49ResUtilDupString
50ResUtilEnumPrivateProperties
51ResUtilEnumProperties
52ResUtilEnumResources
53ResUtilEnumResourcesEx
54ResUtilEnumResourcesEx2
55ResUtilExpandEnvironmentStrings
56ResUtilFindBinaryProperty
57ResUtilFindDependentDiskResourceDriveLetter
58ResUtilFindDwordProperty
59ResUtilFindExpandSzProperty
60ResUtilFindExpandedSzProperty
61ResUtilFindFileTimeProperty
62ResUtilFindLongProperty
63ResUtilFindMultiSzProperty
64ResUtilFindSzProperty
65ResUtilFreeEnvironment
66ResUtilFreeParameterBlock
67ResUtilGetAllProperties
68ResUtilGetBinaryProperty
69ResUtilGetBinaryValue
70ResUtilGetClusterRoleState
71ResUtilGetCoreClusterResources
72ResUtilGetCoreClusterResourcesEx
73ResUtilGetDwordProperty
74ResUtilGetDwordValue
75ResUtilGetEnvironmentWithNetName
76ResUtilGetFileTimeProperty
77ResUtilGetLongProperty
78ResUtilGetMultiSzProperty
79ResUtilGetPrivateProperties
80ResUtilGetProperties
81ResUtilGetPropertiesToParameterBlock
82ResUtilGetProperty
83ResUtilGetPropertyFormats
84ResUtilGetPropertySize
85ResUtilGetQwordValue
86ResUtilGetResourceDependency
87ResUtilGetResourceDependencyByClass
88ResUtilGetResourceDependencyByClassEx
89ResUtilGetResourceDependencyByName
90ResUtilGetResourceDependencyByNameAndClass
91ResUtilGetResourceDependencyByNameEx
92ResUtilGetResourceDependencyEx
93ResUtilGetResourceDependentIPAddressProps
94ResUtilGetResourceName
95ResUtilGetResourceNameDependency
96ResUtilGetResourceNameDependencyEx
97ResUtilGetSzProperty
98ResUtilGetSzValue
99ResUtilIsPathValid
100ResUtilIsResourceClassEqual
101ResUtilPropertyListFromParameterBlock
102ResUtilRemoveResourceServiceEnvironment
103ResUtilResourceTypesEqual
104ResUtilResourcesEqual
105ResUtilSetBinaryValue
106ResUtilSetDwordValue
107ResUtilSetExpandSzValue
108ResUtilSetMultiSzValue
109ResUtilSetPrivatePropertyList
110ResUtilSetPropertyParameterBlock
111ResUtilSetPropertyParameterBlockEx
112ResUtilSetPropertyTable
113ResUtilSetPropertyTableEx
114ResUtilSetQwordValue
115ResUtilSetResourceServiceEnvironment
116ResUtilSetResourceServiceStartParameters
117ResUtilSetResourceServiceStartParametersEx
118ResUtilSetSzValue
119ResUtilSetUnknownProperties
120ResUtilSetValueEx
121ResUtilStartResourceService
122ResUtilStopResourceService
123ResUtilStopService
124ResUtilTerminateServiceProcessFromResDll
125ResUtilVerifyPrivatePropertyList
126ResUtilVerifyPropertyTable
127ResUtilVerifyResourceService
128ResUtilVerifyService
lib/libc/mingw/lib-common/rstrtmgr.def created+19
...@@ -0,0 +1,19 @@
1;
2; Definition file of RstrtMgr.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "RstrtMgr.DLL"
7EXPORTS
8RmAddFilter
9RmCancelCurrentTask
10RmEndSession
11RmGetFilterList
12RmGetList
13RmJoinSession
14RmRegisterResources
15RmRemoveFilter
16RmReserveHeap
17RmRestart
18RmShutdown
19RmStartSession
lib/libc/mingw/lib-common/samcli.def created+43
...@@ -0,0 +1,43 @@
1;
2; Definition file of samcli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "samcli.dll"
7EXPORTS
8NetGetDisplayInformationIndex
9NetGroupAdd
10NetGroupAddUser
11NetGroupDel
12NetGroupDelUser
13NetGroupEnum
14NetGroupGetInfo
15NetGroupGetUsers
16NetGroupSetInfo
17NetGroupSetUsers
18NetLocalGroupAdd
19NetLocalGroupAddMember
20NetLocalGroupAddMembers
21NetLocalGroupDel
22NetLocalGroupDelMember
23NetLocalGroupDelMembers
24NetLocalGroupEnum
25NetLocalGroupGetInfo
26NetLocalGroupGetMembers
27NetLocalGroupSetInfo
28NetLocalGroupSetMembers
29NetQueryDisplayInformation
30NetUserAdd
31NetUserChangePassword
32NetUserDel
33NetUserEnum
34NetUserGetGroups
35NetUserGetInfo
36NetUserGetInternetIdentityInfo
37NetUserGetLocalGroups
38NetUserModalsGet
39NetUserModalsSet
40NetUserSetGroups
41NetUserSetInfo
42NetValidatePasswordPolicy
43NetValidatePasswordPolicyFree
lib/libc/mingw/lib-common/schannel.def created+42
...@@ -0,0 +1,42 @@
1LIBRARY SCHANNEL.dll
2EXPORTS
3SpLsaModeInitialize
4AcceptSecurityContext
5AcquireCredentialsHandleA
6AcquireCredentialsHandleW
7ApplyControlToken
8CloseSslPerformanceData
9CollectSslPerformanceData
10CompleteAuthToken
11DeleteSecurityContext
12EnumerateSecurityPackagesA
13EnumerateSecurityPackagesW
14FreeContextBuffer
15FreeCredentialsHandle
16ImpersonateSecurityContext
17InitSecurityInterfaceA
18InitSecurityInterfaceW
19InitializeSecurityContextA
20InitializeSecurityContextW
21MakeSignature
22OpenSslPerformanceData
23QueryContextAttributesA
24QueryContextAttributesW
25QuerySecurityPackageInfoA
26QuerySecurityPackageInfoW
27RevertSecurityContext
28SealMessage
29SpLsaModeInitialize
30SpUserModeInitialize
31SslCrackCertificate
32SslEmptyCacheA
33SslEmptyCacheW
34SslFreeCertificate
35SslFreeCustomBuffer
36SslGenerateKeyPair
37SslGenerateRandomBits
38SslGetMaximumKeySize
39SslGetServerIdentity
40SslLoadCertificate
41UnsealMessage
42VerifySignature
lib/libc/mingw/lib-common/schedcli.def created+11
...@@ -0,0 +1,11 @@
1;
2; Definition file of schedcli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "schedcli.dll"
7EXPORTS
8NetScheduleJobAdd
9NetScheduleJobDel
10NetScheduleJobEnum
11NetScheduleJobGetInfo
lib/libc/mingw/lib-common/secur32.def created+113
...@@ -0,0 +1,113 @@
1;
2; Definition file of Secur32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "Secur32.dll"
7EXPORTS
8SecDeleteUserModeContext
9SecInitUserModeContext
10CloseLsaPerformanceData
11CollectLsaPerformanceData
12OpenLsaPerformanceData
13AcceptSecurityContext
14AcquireCredentialsHandleA
15AcquireCredentialsHandleW
16AddCredentialsA
17AddCredentialsW
18AddSecurityPackageA
19AddSecurityPackageW
20ApplyControlToken
21ChangeAccountPasswordA
22ChangeAccountPasswordW
23CompleteAuthToken
24CredMarshalTargetInfo
25CredParseUserNameWithType
26CredUnmarshalTargetInfo
27DecryptMessage
28DeleteSecurityContext
29DeleteSecurityPackageA
30DeleteSecurityPackageW
31EncryptMessage
32EnumerateSecurityPackagesA
33EnumerateSecurityPackagesW
34ExportSecurityContext
35FreeContextBuffer
36FreeCredentialsHandle
37GetComputerObjectNameA
38GetComputerObjectNameW
39GetSecurityUserInfo
40GetUserNameExA
41GetUserNameExW
42ImpersonateSecurityContext
43ImportSecurityContextA
44ImportSecurityContextW
45InitSecurityInterfaceA
46InitSecurityInterfaceW
47InitializeSecurityContextA
48InitializeSecurityContextW
49LsaCallAuthenticationPackage
50LsaConnectUntrusted
51LsaDeregisterLogonProcess
52LsaEnumerateLogonSessions
53LsaFreeReturnBuffer
54LsaGetLogonSessionData
55LsaLogonUser
56LsaLookupAuthenticationPackage
57LsaRegisterLogonProcess
58LsaRegisterPolicyChangeNotification
59LsaUnregisterPolicyChangeNotification
60MakeSignature
61QueryContextAttributesA
62QueryContextAttributesW
63QueryCredentialsAttributesA
64QueryCredentialsAttributesW
65QuerySecurityContextToken
66QuerySecurityPackageInfoA
67QuerySecurityPackageInfoW
68RevertSecurityContext
69SaslAcceptSecurityContext
70SaslEnumerateProfilesA
71SaslEnumerateProfilesW
72SaslGetContextOption
73SaslGetProfilePackageA
74SaslGetProfilePackageW
75SaslIdentifyPackageA
76SaslIdentifyPackageW
77SaslInitializeSecurityContextA
78SaslInitializeSecurityContextW
79SaslSetContextOption
80SealMessage
81SecCacheSspiPackages
82SeciAllocateAndSetCallFlags
83SeciAllocateAndSetIPAddress
84SeciFreeCallContext
85SecpFreeMemory
86SecpSetIPAddress
87SecpTranslateName
88SecpTranslateNameEx
89SetContextAttributesA
90SetContextAttributesW
91SetCredentialsAttributesA
92SetCredentialsAttributesW
93SspiCompareAuthIdentities
94SspiCopyAuthIdentity
95SspiDecryptAuthIdentity
96SspiEncodeAuthIdentityAsStrings
97SspiEncodeStringsAsAuthIdentity
98SspiEncryptAuthIdentity
99SspiExcludePackage
100SspiFreeAuthIdentity
101SspiGetTargetHostName
102SspiIsAuthIdentityEncrypted
103SspiLocalFree
104SspiMarshalAuthIdentity
105SspiPrepareForCredRead
106SspiPrepareForCredWrite
107SspiUnmarshalAuthIdentity
108SspiValidateAuthIdentity
109SspiZeroAuthIdentity
110TranslateNameA
111TranslateNameW
112UnsealMessage
113VerifySignature
lib/libc/mingw/lib-common/sensapi.def created+11
...@@ -0,0 +1,11 @@
1;
2; Exports of file SensApi.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY SensApi.dll
8EXPORTS
9IsDestinationReachableA
10IsDestinationReachableW
11IsNetworkAlive
lib/libc/mingw/lib-common/setupapi.def created+766
...@@ -0,0 +1,766 @@
1;
2; Definition file of SETUPAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "SETUPAPI.dll"
7EXPORTS
8CMP_GetBlockedDriverInfo
9CMP_GetServerSideDeviceInstallFlags
10CMP_Init_Detection
11CMP_RegisterNotification
12CMP_Report_LogOn
13CMP_UnregisterNotification
14CMP_WaitNoPendingInstallEvents
15CMP_WaitServicesAvailable
16CM_Add_Driver_PackageW
17CM_Add_Empty_Log_Conf
18CM_Add_Empty_Log_Conf_Ex
19CM_Add_IDA
20CM_Add_IDW
21CM_Add_ID_ExA
22CM_Add_ID_ExW
23CM_Add_Range
24CM_Add_Res_Des
25CM_Add_Res_Des_Ex
26CM_Apply_PowerScheme
27CM_Connect_MachineA
28CM_Connect_MachineW
29CM_Create_DevNodeA
30CM_Create_DevNodeW
31CM_Create_DevNode_ExA
32CM_Create_DevNode_ExW
33CM_Create_Range_List
34CM_Delete_Class_Key
35CM_Delete_Class_Key_Ex
36CM_Delete_DevNode_Key
37CM_Delete_DevNode_Key_Ex
38CM_Delete_Device_Interface_KeyA
39CM_Delete_Device_Interface_KeyW
40CM_Delete_Device_Interface_Key_ExA
41CM_Delete_Device_Interface_Key_ExW
42CM_Delete_Driver_PackageW
43CM_Delete_PowerScheme
44CM_Delete_Range
45CM_Detect_Resource_Conflict
46CM_Detect_Resource_Conflict_Ex
47CM_Disable_DevNode
48CM_Disable_DevNode_Ex
49CM_Disconnect_Machine
50CM_Dup_Range_List
51CM_Duplicate_PowerScheme
52CM_Enable_DevNode
53CM_Enable_DevNode_Ex
54CM_Enumerate_Classes
55CM_Enumerate_Classes_Ex
56CM_Enumerate_EnumeratorsA
57CM_Enumerate_EnumeratorsW
58CM_Enumerate_Enumerators_ExA
59CM_Enumerate_Enumerators_ExW
60CM_Find_Range
61CM_First_Range
62CM_Free_Log_Conf
63CM_Free_Log_Conf_Ex
64CM_Free_Log_Conf_Handle
65CM_Free_Range_List
66CM_Free_Res_Des
67CM_Free_Res_Des_Ex
68CM_Free_Res_Des_Handle
69CM_Free_Resource_Conflict_Handle
70CM_Get_Child
71CM_Get_Child_Ex
72CM_Get_Class_Key_NameA
73CM_Get_Class_Key_NameW
74CM_Get_Class_Key_Name_ExA
75CM_Get_Class_Key_Name_ExW
76CM_Get_Class_NameA
77CM_Get_Class_NameW
78CM_Get_Class_Name_ExA
79CM_Get_Class_Name_ExW
80CM_Get_Class_Registry_PropertyA
81CM_Get_Class_Registry_PropertyW
82CM_Get_Depth
83CM_Get_Depth_Ex
84CM_Get_DevNode_Custom_PropertyA
85CM_Get_DevNode_Custom_PropertyW
86CM_Get_DevNode_Custom_Property_ExA
87CM_Get_DevNode_Custom_Property_ExW
88CM_Get_DevNode_Registry_PropertyA
89CM_Get_DevNode_Registry_PropertyW
90CM_Get_DevNode_Registry_Property_ExA
91CM_Get_DevNode_Registry_Property_ExW
92CM_Get_DevNode_Status
93CM_Get_DevNode_Status_Ex
94CM_Get_Device_IDA
95CM_Get_Device_IDW
96CM_Get_Device_ID_ExA
97CM_Get_Device_ID_ExW
98CM_Get_Device_ID_ListA
99CM_Get_Device_ID_ListW
100CM_Get_Device_ID_List_ExA
101CM_Get_Device_ID_List_ExW
102CM_Get_Device_ID_List_SizeA
103CM_Get_Device_ID_List_SizeW
104CM_Get_Device_ID_List_Size_ExA
105CM_Get_Device_ID_List_Size_ExW
106CM_Get_Device_ID_Size
107CM_Get_Device_ID_Size_Ex
108CM_Get_Device_Interface_AliasA
109CM_Get_Device_Interface_AliasW
110CM_Get_Device_Interface_Alias_ExA
111CM_Get_Device_Interface_Alias_ExW
112CM_Get_Device_Interface_ListA
113CM_Get_Device_Interface_ListW
114CM_Get_Device_Interface_List_ExA
115CM_Get_Device_Interface_List_ExW
116CM_Get_Device_Interface_List_SizeA
117CM_Get_Device_Interface_List_SizeW
118CM_Get_Device_Interface_List_Size_ExA
119CM_Get_Device_Interface_List_Size_ExW
120CM_Get_First_Log_Conf
121CM_Get_First_Log_Conf_Ex
122CM_Get_Global_State
123CM_Get_Global_State_Ex
124CM_Get_HW_Prof_FlagsA
125CM_Get_HW_Prof_FlagsW
126CM_Get_HW_Prof_Flags_ExA
127CM_Get_HW_Prof_Flags_ExW
128CM_Get_Hardware_Profile_InfoA
129CM_Get_Hardware_Profile_InfoW
130CM_Get_Hardware_Profile_Info_ExA
131CM_Get_Hardware_Profile_Info_ExW
132CM_Get_Log_Conf_Priority
133CM_Get_Log_Conf_Priority_Ex
134CM_Get_Next_Log_Conf
135CM_Get_Next_Log_Conf_Ex
136CM_Get_Next_Res_Des
137CM_Get_Next_Res_Des_Ex
138CM_Get_Parent
139CM_Get_Parent_Ex
140CM_Get_Res_Des_Data
141CM_Get_Res_Des_Data_Ex
142CM_Get_Res_Des_Data_Size
143CM_Get_Res_Des_Data_Size_Ex
144CM_Get_Resource_Conflict_Count
145CM_Get_Resource_Conflict_DetailsA
146CM_Get_Resource_Conflict_DetailsW
147CM_Get_Sibling
148CM_Get_Sibling_Ex
149CM_Get_Version
150CM_Get_Version_Ex
151CM_Import_PowerScheme
152CM_Install_DevNodeW
153CM_Install_DevNode_ExW
154CM_Intersect_Range_List
155CM_Invert_Range_List
156CM_Is_Dock_Station_Present
157CM_Is_Dock_Station_Present_Ex
158CM_Is_Version_Available
159CM_Is_Version_Available_Ex
160CM_Locate_DevNodeA
161CM_Locate_DevNodeW
162CM_Locate_DevNode_ExA
163CM_Locate_DevNode_ExW
164CM_Merge_Range_List
165CM_Modify_Res_Des
166CM_Modify_Res_Des_Ex
167CM_Move_DevNode
168CM_Move_DevNode_Ex
169CM_Next_Range
170CM_Open_Class_KeyA
171CM_Open_Class_KeyW
172CM_Open_Class_Key_ExA
173CM_Open_Class_Key_ExW
174CM_Open_DevNode_Key
175CM_Open_DevNode_Key_Ex
176CM_Open_Device_Interface_KeyA
177CM_Open_Device_Interface_KeyW
178CM_Open_Device_Interface_Key_ExA
179CM_Open_Device_Interface_Key_ExW
180CM_Query_And_Remove_SubTreeA
181CM_Query_And_Remove_SubTreeW
182CM_Query_And_Remove_SubTree_ExA
183CM_Query_And_Remove_SubTree_ExW
184CM_Query_Arbitrator_Free_Data
185CM_Query_Arbitrator_Free_Data_Ex
186CM_Query_Arbitrator_Free_Size
187CM_Query_Arbitrator_Free_Size_Ex
188CM_Query_Remove_SubTree
189CM_Query_Remove_SubTree_Ex
190CM_Query_Resource_Conflict_List
191CM_Reenumerate_DevNode
192CM_Reenumerate_DevNode_Ex
193CM_Register_Device_Driver
194CM_Register_Device_Driver_Ex
195CM_Register_Device_InterfaceA
196CM_Register_Device_InterfaceW
197CM_Register_Device_Interface_ExA
198CM_Register_Device_Interface_ExW
199CM_Remove_SubTree
200CM_Remove_SubTree_Ex
201CM_Request_Device_EjectA
202CM_Request_Device_EjectW
203CM_Request_Device_Eject_ExA
204CM_Request_Device_Eject_ExW
205CM_Request_Eject_PC
206CM_Request_Eject_PC_Ex
207CM_RestoreAll_DefaultPowerSchemes
208CM_Restore_DefaultPowerScheme
209CM_Run_Detection
210CM_Run_Detection_Ex
211CM_Set_ActiveScheme
212CM_Set_Class_Registry_PropertyA
213CM_Set_Class_Registry_PropertyW
214CM_Set_DevNode_Problem
215CM_Set_DevNode_Problem_Ex
216CM_Set_DevNode_Registry_PropertyA
217CM_Set_DevNode_Registry_PropertyW
218CM_Set_DevNode_Registry_Property_ExA
219CM_Set_DevNode_Registry_Property_ExW
220CM_Set_HW_Prof
221CM_Set_HW_Prof_Ex
222CM_Set_HW_Prof_FlagsA
223CM_Set_HW_Prof_FlagsW
224CM_Set_HW_Prof_Flags_ExA
225CM_Set_HW_Prof_Flags_ExW
226CM_Setup_DevNode
227CM_Setup_DevNode_Ex
228CM_Test_Range_Available
229CM_Uninstall_DevNode
230CM_Uninstall_DevNode_Ex
231CM_Unregister_Device_InterfaceA
232CM_Unregister_Device_InterfaceW
233CM_Unregister_Device_Interface_ExA
234CM_Unregister_Device_Interface_ExW
235CM_Write_UserPowerKey
236DoesUserHavePrivilege
237DriverStoreAddDriverPackageA
238DriverStoreAddDriverPackageW
239DriverStoreDeleteDriverPackageA
240DriverStoreDeleteDriverPackageW
241DriverStoreEnumDriverPackageA
242DriverStoreEnumDriverPackageW
243DriverStoreFindDriverPackageA
244DriverStoreFindDriverPackageW
245ExtensionPropSheetPageProc
246InstallCatalog
247InstallHinfSection
248InstallHinfSectionA
249InstallHinfSectionW
250IsUserAdmin
251MyFree
252MyMalloc
253MyRealloc
254PnpEnumDrpFile
255PnpIsFileAclIntact
256PnpIsFileContentIntact
257PnpIsFilePnpDriver
258PnpRepairWindowsProtectedDriver
259Remote_CMP_GetServerSideDeviceInstallFlags
260Remote_CMP_WaitServicesAvailable
261Remote_CM_Add_Empty_Log_Conf
262Remote_CM_Add_ID
263Remote_CM_Add_Res_Des
264Remote_CM_Connect_Machine_Worker
265Remote_CM_Create_DevNode
266Remote_CM_Delete_Class_Key
267Remote_CM_Delete_DevNode_Key
268Remote_CM_Delete_Device_Interface_Key
269Remote_CM_Disable_DevNode
270Remote_CM_Disconnect_Machine_Worker
271Remote_CM_Enable_DevNode
272Remote_CM_Enumerate_Classes
273Remote_CM_Enumerate_Enumerators
274Remote_CM_Free_Log_Conf
275Remote_CM_Free_Res_Des
276Remote_CM_Get_Child
277Remote_CM_Get_Class_Name
278Remote_CM_Get_Class_Property
279Remote_CM_Get_Class_Property_Keys
280Remote_CM_Get_Class_Registry_Property
281Remote_CM_Get_Depth
282Remote_CM_Get_DevNode_Custom_Property
283Remote_CM_Get_DevNode_Property
284Remote_CM_Get_DevNode_Property_Keys
285Remote_CM_Get_DevNode_Registry_Property
286Remote_CM_Get_DevNode_Status
287Remote_CM_Get_Device_ID_List
288Remote_CM_Get_Device_ID_List_Size
289Remote_CM_Get_Device_Interface_Alias
290Remote_CM_Get_Device_Interface_List
291Remote_CM_Get_Device_Interface_List_Size
292Remote_CM_Get_Device_Interface_Property
293Remote_CM_Get_Device_Interface_Property_Keys
294Remote_CM_Get_First_Log_Conf
295Remote_CM_Get_Global_State
296Remote_CM_Get_HW_Prof_Flags
297Remote_CM_Get_Hardware_Profile_Info
298Remote_CM_Get_Log_Conf_Priority
299Remote_CM_Get_Next_Log_Conf
300Remote_CM_Get_Next_Res_Des
301Remote_CM_Get_Parent
302Remote_CM_Get_Res_Des_Data
303Remote_CM_Get_Res_Des_Data_Size
304Remote_CM_Get_Sibling
305Remote_CM_Get_Version
306Remote_CM_Install_DevNode
307Remote_CM_Is_Dock_Station_Present
308Remote_CM_Is_Version_Available
309Remote_CM_Locate_DevNode_Worker
310Remote_CM_Modify_Res_Des
311Remote_CM_Open_Class_Key
312Remote_CM_Open_DevNode_Key
313Remote_CM_Open_Device_Interface_Key
314Remote_CM_Query_And_Remove_SubTree
315Remote_CM_Query_Arbitrator_Free_Data
316Remote_CM_Query_Arbitrator_Free_Size
317Remote_CM_Query_Resource_Conflict_List_Worker
318Remote_CM_Reenumerate_DevNode
319Remote_CM_Register_Device_Driver
320Remote_CM_Register_Device_Interface
321Remote_CM_Request_Device_Eject
322Remote_CM_Request_Eject_PC
323Remote_CM_Run_Detection
324Remote_CM_Set_Class_Property
325Remote_CM_Set_Class_Registry_Property
326Remote_CM_Set_DevNode_Problem
327Remote_CM_Set_DevNode_Property
328Remote_CM_Set_DevNode_Registry_Property
329Remote_CM_Set_Device_Interface_Property
330Remote_CM_Set_HW_Prof
331Remote_CM_Set_HW_Prof_Flags
332Remote_CM_Setup_DevNode
333Remote_CM_Uninstall_DevNode
334Remote_CM_Unregister_Device_Interface
335SetupAddInstallSectionToDiskSpaceListA
336SetupAddInstallSectionToDiskSpaceListW
337SetupAddSectionToDiskSpaceListA
338SetupAddSectionToDiskSpaceListW
339SetupAddToDiskSpaceListA
340SetupAddToDiskSpaceListW
341SetupAddToSourceListA
342SetupAddToSourceListW
343SetupAdjustDiskSpaceListA
344SetupAdjustDiskSpaceListW
345SetupBackupErrorA
346SetupBackupErrorW
347SetupCancelTemporarySourceList
348SetupCloseFileQueue
349SetupCloseInfFile
350SetupCloseLog
351SetupCommitFileQueue
352SetupCommitFileQueueA
353SetupCommitFileQueueW
354SetupConfigureWmiFromInfSectionA
355SetupConfigureWmiFromInfSectionW
356SetupCopyErrorA
357SetupCopyErrorW
358SetupCopyOEMInfA
359SetupCopyOEMInfW
360SetupCreateDiskSpaceListA
361SetupCreateDiskSpaceListW
362SetupDecompressOrCopyFileA
363SetupDecompressOrCopyFileW
364SetupDefaultQueueCallback
365SetupDefaultQueueCallbackA
366SetupDefaultQueueCallbackW
367SetupDeleteErrorA
368SetupDeleteErrorW
369SetupDestroyDiskSpaceList
370SetupDiApplyPowerScheme
371SetupDiAskForOEMDisk
372SetupDiBuildClassInfoList
373SetupDiBuildClassInfoListExA
374SetupDiBuildClassInfoListExW
375SetupDiBuildDriverInfoList
376SetupDiCallClassInstaller
377SetupDiCancelDriverInfoSearch
378SetupDiChangeState
379SetupDiClassGuidsFromNameA
380SetupDiClassGuidsFromNameExA
381SetupDiClassGuidsFromNameExW
382SetupDiClassGuidsFromNameW
383SetupDiClassNameFromGuidA
384SetupDiClassNameFromGuidExA
385SetupDiClassNameFromGuidExW
386SetupDiClassNameFromGuidW
387SetupDiCreateDevRegKeyA
388SetupDiCreateDevRegKeyW
389SetupDiCreateDeviceInfoA
390SetupDiCreateDeviceInfoList
391SetupDiCreateDeviceInfoListExA
392SetupDiCreateDeviceInfoListExW
393SetupDiCreateDeviceInfoW
394SetupDiCreateDeviceInterfaceA
395SetupDiCreateDeviceInterfaceRegKeyA
396SetupDiCreateDeviceInterfaceRegKeyW
397SetupDiCreateDeviceInterfaceW
398SetupDiDeleteDevRegKey
399SetupDiDeleteDeviceInfo
400SetupDiDeleteDeviceInterfaceData
401SetupDiDeleteDeviceInterfaceRegKey
402SetupDiDestroyClassImageList
403SetupDiDestroyDeviceInfoList
404SetupDiDestroyDriverInfoList
405SetupDiDrawMiniIcon
406SetupDiEnumDeviceInfo
407SetupDiEnumDeviceInterfaces
408SetupDiEnumDriverInfoA
409SetupDiEnumDriverInfoW
410SetupDiGetActualModelsSectionA
411SetupDiGetActualModelsSectionW
412SetupDiGetActualSectionToInstallA
413SetupDiGetActualSectionToInstallExA
414SetupDiGetActualSectionToInstallExW
415SetupDiGetActualSectionToInstallW
416SetupDiGetClassBitmapIndex
417SetupDiGetClassDescriptionA
418SetupDiGetClassDescriptionExA
419SetupDiGetClassDescriptionExW
420SetupDiGetClassDescriptionW
421SetupDiGetClassDevPropertySheetsA
422SetupDiGetClassDevPropertySheetsW
423SetupDiGetClassDevsA
424SetupDiGetClassDevsExA
425SetupDiGetClassDevsExW
426SetupDiGetClassDevsW
427SetupDiGetClassImageIndex
428SetupDiGetClassImageList
429SetupDiGetClassImageListExA
430SetupDiGetClassImageListExW
431SetupDiGetClassInstallParamsA
432SetupDiGetClassInstallParamsW
433SetupDiGetClassPropertyExW
434SetupDiGetClassPropertyKeys
435SetupDiGetClassPropertyKeysExW
436SetupDiGetClassPropertyW
437SetupDiGetClassRegistryPropertyA
438SetupDiGetClassRegistryPropertyW
439SetupDiGetCustomDevicePropertyA
440SetupDiGetCustomDevicePropertyW
441SetupDiGetDeviceInfoListClass
442SetupDiGetDeviceInfoListDetailA
443SetupDiGetDeviceInfoListDetailW
444SetupDiGetDeviceInstallParamsA
445SetupDiGetDeviceInstallParamsW
446SetupDiGetDeviceInstanceIdA
447SetupDiGetDeviceInstanceIdW
448SetupDiGetDeviceInterfaceAlias
449SetupDiGetDeviceInterfaceDetailA
450SetupDiGetDeviceInterfaceDetailW
451SetupDiGetDeviceInterfacePropertyKeys
452SetupDiGetDeviceInterfacePropertyW
453SetupDiGetDevicePropertyKeys
454SetupDiGetDevicePropertyW
455SetupDiGetDeviceRegistryPropertyA
456SetupDiGetDeviceRegistryPropertyW
457SetupDiGetDriverInfoDetailA
458SetupDiGetDriverInfoDetailW
459SetupDiGetDriverInstallParamsA
460SetupDiGetDriverInstallParamsW
461SetupDiGetHwProfileFriendlyNameA
462SetupDiGetHwProfileFriendlyNameExA
463SetupDiGetHwProfileFriendlyNameExW
464SetupDiGetHwProfileFriendlyNameW
465SetupDiGetHwProfileList
466SetupDiGetHwProfileListExA
467SetupDiGetHwProfileListExW
468SetupDiGetINFClassA
469SetupDiGetINFClassW
470SetupDiGetSelectedDevice
471SetupDiGetSelectedDriverA
472SetupDiGetSelectedDriverW
473SetupDiGetWizardPage
474SetupDiInstallClassA
475SetupDiInstallClassExA
476SetupDiInstallClassExW
477SetupDiInstallClassW
478SetupDiInstallDevice
479SetupDiInstallDeviceInterfaces
480SetupDiInstallDriverFiles
481SetupDiLoadClassIcon
482SetupDiLoadDeviceIcon
483SetupDiMoveDuplicateDevice
484SetupDiOpenClassRegKey
485SetupDiOpenClassRegKeyExA
486SetupDiOpenClassRegKeyExW
487SetupDiOpenDevRegKey
488SetupDiOpenDeviceInfoA
489SetupDiOpenDeviceInfoW
490SetupDiOpenDeviceInterfaceA
491SetupDiOpenDeviceInterfaceRegKey
492SetupDiOpenDeviceInterfaceW
493SetupDiRegisterCoDeviceInstallers
494SetupDiRegisterDeviceInfo
495SetupDiRemoveDevice
496SetupDiRemoveDeviceInterface
497SetupDiReportAdditionalSoftwareRequested
498SetupDiReportDeviceInstallError
499SetupDiReportDriverNotFoundError
500SetupDiReportDriverPackageImportationError
501SetupDiReportGenericDriverInstalled
502SetupDiReportPnPDeviceProblem
503SetupDiRestartDevices
504SetupDiSelectBestCompatDrv
505SetupDiSelectDevice
506SetupDiSelectOEMDrv
507SetupDiSetClassInstallParamsA
508SetupDiSetClassInstallParamsW
509SetupDiSetClassPropertyExW
510SetupDiSetClassPropertyW
511SetupDiSetClassRegistryPropertyA
512SetupDiSetClassRegistryPropertyW
513SetupDiSetDeviceInstallParamsA
514SetupDiSetDeviceInstallParamsW
515SetupDiSetDeviceInterfaceDefault
516SetupDiSetDeviceInterfacePropertyW
517SetupDiSetDevicePropertyW
518SetupDiSetDeviceRegistryPropertyA
519SetupDiSetDeviceRegistryPropertyW
520SetupDiSetDriverInstallParamsA
521SetupDiSetDriverInstallParamsW
522SetupDiSetSelectedDevice
523SetupDiSetSelectedDriverA
524SetupDiSetSelectedDriverW
525SetupDiUnremoveDevice
526SetupDuplicateDiskSpaceListA
527SetupDuplicateDiskSpaceListW
528SetupEnumInfSectionsA
529SetupEnumInfSectionsW
530SetupEnumPublishedInfA
531SetupEnumPublishedInfW
532SetupFindFirstLineA
533SetupFindFirstLineW
534SetupFindNextLine
535SetupFindNextMatchLineA
536SetupFindNextMatchLineW
537SetupFreeSourceListA
538SetupFreeSourceListW
539SetupGetBackupInformationA
540SetupGetBackupInformationW
541SetupGetBinaryField
542SetupGetFieldCount
543SetupGetFileCompressionInfoA
544SetupGetFileCompressionInfoExA
545SetupGetFileCompressionInfoExW
546SetupGetFileCompressionInfoW
547SetupGetFileQueueCount
548SetupGetFileQueueFlags
549SetupGetInfDriverStoreLocationA
550SetupGetInfDriverStoreLocationW
551SetupGetInfFileListA
552SetupGetInfFileListW
553SetupGetInfInformationA
554SetupGetInfInformationW
555SetupGetInfPublishedNameA
556SetupGetInfPublishedNameW
557SetupGetInfSections
558SetupGetIntField
559SetupGetLineByIndexA
560SetupGetLineByIndexW
561SetupGetLineCountA
562SetupGetLineCountW
563SetupGetLineTextA
564SetupGetLineTextW
565SetupGetMultiSzFieldA
566SetupGetMultiSzFieldW
567SetupGetNonInteractiveMode
568SetupGetSourceFileLocationA
569SetupGetSourceFileLocationW
570SetupGetSourceFileSizeA
571SetupGetSourceFileSizeW
572SetupGetSourceInfoA
573SetupGetSourceInfoW
574SetupGetStringFieldA
575SetupGetStringFieldW
576SetupGetTargetPathA
577SetupGetTargetPathW
578SetupGetThreadLogToken
579SetupInitDefaultQueueCallback
580SetupInitDefaultQueueCallbackEx
581SetupInitializeFileLogA
582SetupInitializeFileLogW
583SetupInstallFileA
584SetupInstallFileExA
585SetupInstallFileExW
586SetupInstallFileW
587SetupInstallFilesFromInfSectionA
588SetupInstallFilesFromInfSectionW
589SetupInstallFromInfSectionA
590SetupInstallFromInfSectionW
591SetupInstallLogCloseEventGroup
592SetupInstallLogCreateEventGroup
593SetupInstallServicesFromInfSectionA
594SetupInstallServicesFromInfSectionExA
595SetupInstallServicesFromInfSectionExW
596SetupInstallServicesFromInfSectionW
597SetupIterateCabinetA
598SetupIterateCabinetW
599SetupLogErrorA
600SetupLogErrorW
601SetupLogFileA
602SetupLogFileW
603SetupOpenAppendInfFileA
604SetupOpenAppendInfFileW
605SetupOpenFileQueue
606SetupOpenInfFileA
607SetupOpenInfFileW
608SetupOpenLog
609SetupOpenMasterInf
610SetupPrepareQueueForRestoreA
611SetupPrepareQueueForRestoreW
612SetupPromptForDiskA
613SetupPromptForDiskW
614SetupPromptReboot
615SetupQueryDrivesInDiskSpaceListA
616SetupQueryDrivesInDiskSpaceListW
617SetupQueryFileLogA
618SetupQueryFileLogW
619SetupQueryInfFileInformationA
620SetupQueryInfFileInformationW
621SetupQueryInfOriginalFileInformationA
622SetupQueryInfOriginalFileInformationW
623SetupQueryInfVersionInformationA
624SetupQueryInfVersionInformationW
625SetupQuerySourceListA
626SetupQuerySourceListW
627SetupQuerySpaceRequiredOnDriveA
628SetupQuerySpaceRequiredOnDriveW
629SetupQueueCopyA
630SetupQueueCopyIndirectA
631SetupQueueCopyIndirectW
632SetupQueueCopySectionA
633SetupQueueCopySectionW
634SetupQueueCopyW
635SetupQueueDefaultCopyA
636SetupQueueDefaultCopyW
637SetupQueueDeleteA
638SetupQueueDeleteSectionA
639SetupQueueDeleteSectionW
640SetupQueueDeleteW
641SetupQueueRenameA
642SetupQueueRenameSectionA
643SetupQueueRenameSectionW
644SetupQueueRenameW
645SetupRemoveFileLogEntryA
646SetupRemoveFileLogEntryW
647SetupRemoveFromDiskSpaceListA
648SetupRemoveFromDiskSpaceListW
649SetupRemoveFromSourceListA
650SetupRemoveFromSourceListW
651SetupRemoveInstallSectionFromDiskSpaceListA
652SetupRemoveInstallSectionFromDiskSpaceListW
653SetupRemoveSectionFromDiskSpaceListA
654SetupRemoveSectionFromDiskSpaceListW
655SetupRenameErrorA
656SetupRenameErrorW
657SetupScanFileQueue
658SetupScanFileQueueA
659SetupScanFileQueueW
660SetupSetDirectoryIdA
661SetupSetDirectoryIdExA
662SetupSetDirectoryIdExW
663SetupSetDirectoryIdW
664SetupSetFileQueueAlternatePlatformA
665SetupSetFileQueueAlternatePlatformW
666SetupSetFileQueueFlags
667SetupSetNonInteractiveMode
668SetupSetPlatformPathOverrideA
669SetupSetPlatformPathOverrideW
670SetupSetSourceListA
671SetupSetSourceListW
672SetupSetThreadLogToken
673SetupTermDefaultQueueCallback
674SetupTerminateFileLog
675SetupUninstallNewlyCopiedInfs
676SetupUninstallOEMInfA
677SetupUninstallOEMInfW
678SetupVerifyInfFileA
679SetupVerifyInfFileW
680SetupWriteTextLog
681SetupWriteTextLogError
682SetupWriteTextLogInfLine
683UnicodeToMultiByte
684VerifyCatalogFile
685pGetDriverPackageHash
686pSetupAccessRunOnceNodeList
687pSetupAddMiniIconToList
688pSetupAddTagToGroupOrderListEntry
689pSetupAppendPath
690pSetupCaptureAndConvertAnsiArg
691pSetupCenterWindowRelativeToParent
692pSetupCloseTextLogSection
693pSetupConcatenatePaths
694pSetupCreateTextLogSectionA
695pSetupCreateTextLogSectionW
696pSetupDestroyRunOnceNodeList
697pSetupDiBuildInfoDataFromStrongName
698pSetupDiCrimsonLogDeviceInstall
699pSetupDiEnumSelectedDrivers
700pSetupDiGetDriverInfoExtensionId
701pSetupDiGetStrongNameForDriverNode
702pSetupDiInvalidateHelperModules
703pSetupDoLastKnownGoodBackup
704pSetupDoesUserHavePrivilege
705pSetupDuplicateString
706pSetupEnablePrivilege
707pSetupFree
708pSetupGetCurrentDriverSigningPolicy
709pSetupGetDriverDate
710pSetupGetDriverVersion
711pSetupGetField
712pSetupGetFileTitle
713pSetupGetGlobalFlags
714pSetupGetIndirectStringsFromDriverInfo
715pSetupGetInfSections
716pSetupGetQueueFlags
717pSetupGetRealSystemTime
718pSetupGuidFromString
719pSetupHandleFailedVerification
720pSetupInfGetDigitalSignatureInfo
721pSetupInfIsInbox
722pSetupInfSetDigitalSignatureInfo
723pSetupInstallCatalog
724pSetupIsBiDiLocalizedSystemEx
725pSetupIsGuidNull
726pSetupIsLocalSystem
727pSetupIsUserAdmin
728pSetupIsUserTrustedInstaller
729pSetupLoadIndirectString
730pSetupMakeSurePathExists
731pSetupMalloc
732pSetupModifyGlobalFlags
733pSetupMultiByteToUnicode
734pSetupOpenAndMapFileForRead
735pSetupOutOfMemory
736pSetupQueryMultiSzValueToArray
737pSetupRealloc
738pSetupRegistryDelnode
739pSetupRetrieveServiceConfig
740pSetupSetArrayToMultiSzValue
741pSetupSetDriverPackageRestorePoint
742pSetupSetGlobalFlags
743pSetupSetQueueFlags
744pSetupShouldDeviceBeExcluded
745pSetupStringFromGuid
746pSetupStringTableAddString
747pSetupStringTableAddStringEx
748pSetupStringTableDestroy
749pSetupStringTableDuplicate
750pSetupStringTableEnum
751pSetupStringTableGetExtraData
752pSetupStringTableInitialize
753pSetupStringTableInitializeEx
754pSetupStringTableLookUpString
755pSetupStringTableLookUpStringEx
756pSetupStringTableSetExtraData
757pSetupStringTableStringFromId
758pSetupStringTableStringFromIdEx
759pSetupUnicodeToMultiByte
760pSetupUninstallCatalog
761pSetupUnmapAndCloseFile
762pSetupValidateDriverPackage
763pSetupVerifyCatalogFile
764pSetupVerifyQueuedCatalogs
765pSetupWriteLogEntry
766pSetupWriteLogError
lib/libc/mingw/lib-common/slcext.def created+28
...@@ -0,0 +1,28 @@
1;
2; Definition file of slcext.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "slcext.dll"
7EXPORTS
8;ord_300 @300
9;ord_301 @301
10;ord_302 @302
11;ord_303 @303
12;ord_304 @304
13SLAcquireGenuineTicket
14SLActivateProduct
15SLDepositTokenActivationResponse
16SLFreeTokenActivationCertificates
17SLFreeTokenActivationGrants
18SLGenerateTokenActivationChallenge
19SLGetPackageProductKey
20SLGetPackageProperties
21SLGetPackageToken
22SLGetReferralInformation
23SLGetServerStatus
24SLGetTokenActivationCertificates
25SLGetTokenActivationGrants
26SLInstallPackage
27SLSignTokenActivationChallenge
28SLUninstallPackage
lib/libc/mingw/lib-common/slwga.def created+9
...@@ -0,0 +1,9 @@
1;
2; Definition file of SLWGA.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "SLWGA.dll"
7EXPORTS
8;ord_227 @227
9SLIsGenuineLocal
lib/libc/mingw/lib-common/snmpapi.def created+46
...@@ -0,0 +1,46 @@
1;
2; Exports of file snmpapi.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY snmpapi.dll
8EXPORTS
9SnmpSvcAddrIsIpx
10SnmpSvcAddrToSocket
11SnmpSvcGetEnterpriseOID
12SnmpSvcGetUptime
13SnmpSvcGetUptimeFromTime
14SnmpSvcInitUptime
15SnmpSvcSetLogLevel
16SnmpSvcSetLogType
17SnmpTfxClose
18SnmpTfxOpen
19SnmpTfxQuery
20SnmpUtilAnsiToUnicode
21SnmpUtilAsnAnyCpy
22SnmpUtilAsnAnyFree
23SnmpUtilDbgPrint
24SnmpUtilIdsToA
25SnmpUtilMemAlloc
26SnmpUtilMemFree
27SnmpUtilMemReAlloc
28SnmpUtilOctetsCmp
29SnmpUtilOctetsCpy
30SnmpUtilOctetsFree
31SnmpUtilOctetsNCmp
32SnmpUtilOidAppend
33SnmpUtilOidCmp
34SnmpUtilOidCpy
35SnmpUtilOidFree
36SnmpUtilOidNCmp
37SnmpUtilOidToA
38SnmpUtilPrintAsnAny
39SnmpUtilPrintOid
40SnmpUtilUTF8ToUnicode
41SnmpUtilUnicodeToAnsi
42SnmpUtilUnicodeToUTF8
43SnmpUtilVarBindCpy
44SnmpUtilVarBindFree
45SnmpUtilVarBindListCpy
46SnmpUtilVarBindListFree
lib/libc/mingw/lib-common/srvcli.def created+64
...@@ -0,0 +1,64 @@
1;
2; Definition file of srvcli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "srvcli.dll"
7EXPORTS
8I_NetDfsGetVersion
9I_NetServerSetServiceBits
10I_NetServerSetServiceBitsEx
11LocalAliasGet
12LocalFileClose
13LocalFileEnum
14LocalFileEnumEx
15LocalFileGetInfo
16LocalFileGetInfoEx
17LocalSessionDel
18LocalSessionEnum
19LocalSessionEnumEx
20LocalSessionGetInfo
21LocalSessionGetInfoEx
22LocalShareAdd
23LocalShareDelEx
24LocalShareEnum
25LocalShareEnumEx
26LocalShareGetInfo
27LocalShareGetInfoEx
28LocalShareSetInfo
29NetConnectionEnum
30NetFileClose
31NetFileEnum
32NetFileGetInfo
33NetRemoteTOD
34NetServerAliasAdd
35NetServerAliasDel
36NetServerAliasEnum
37NetServerComputerNameAdd
38NetServerComputerNameDel
39NetServerDiskEnum
40NetServerGetInfo
41NetServerSetInfo
42NetServerStatisticsGet
43NetServerTransportAdd
44NetServerTransportAddEx
45NetServerTransportDel
46NetServerTransportEnum
47NetSessionDel
48NetSessionEnum
49NetSessionGetInfo
50NetShareAdd
51NetShareCheck
52NetShareDel
53NetShareDelEx
54NetShareDelSticky
55NetShareEnum
56NetShareEnumSticky
57NetShareGetInfo
58NetShareSetInfo
59NetpsNameCanonicalize
60NetpsNameCompare
61NetpsNameValidate
62NetpsPathCanonicalize
63NetpsPathCompare
64NetpsPathType
lib/libc/mingw/lib-common/sspicli.def created+107
...@@ -0,0 +1,107 @@
1;
2; Definition file of SspiCli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "SspiCli.dll"
7EXPORTS
8SecDeleteUserModeContext
9SecInitUserModeContext
10SspiUnmarshalAuthIdentityInternal
11AcceptSecurityContext
12AcquireCredentialsHandleA
13AcquireCredentialsHandleW
14AddCredentialsA
15AddCredentialsW
16AddSecurityPackageA
17AddSecurityPackageW
18ApplyControlToken
19ChangeAccountPasswordA
20ChangeAccountPasswordW
21CompleteAuthToken
22CredMarshalTargetInfo
23CredUnmarshalTargetInfo
24DecryptMessage
25DeleteSecurityContext
26DeleteSecurityPackageA
27DeleteSecurityPackageW
28EncryptMessage
29EnumerateSecurityPackagesA
30EnumerateSecurityPackagesW
31ExportSecurityContext
32FreeContextBuffer
33FreeCredentialsHandle
34GetSecurityUserInfo
35GetUserNameExA
36GetUserNameExW
37ImpersonateSecurityContext
38ImportSecurityContextA
39ImportSecurityContextW
40InitSecurityInterfaceA
41InitSecurityInterfaceW
42InitializeSecurityContextA
43InitializeSecurityContextW
44LogonUserExExW
45LsaCallAuthenticationPackage
46LsaConnectUntrusted
47LsaDeregisterLogonProcess
48LsaEnumerateLogonSessions
49LsaFreeReturnBuffer
50LsaGetLogonSessionData
51LsaLogonUser
52LsaLookupAuthenticationPackage
53LsaRegisterLogonProcess
54LsaRegisterPolicyChangeNotification
55LsaUnregisterPolicyChangeNotification
56MakeSignature
57QueryContextAttributesA
58QueryContextAttributesW
59QueryCredentialsAttributesA
60QueryCredentialsAttributesW
61QuerySecurityContextToken
62QuerySecurityPackageInfoA
63QuerySecurityPackageInfoW
64RevertSecurityContext
65SaslAcceptSecurityContext
66SaslEnumerateProfilesA
67SaslEnumerateProfilesW
68SaslGetContextOption
69SaslGetProfilePackageA
70SaslGetProfilePackageW
71SaslIdentifyPackageA
72SaslIdentifyPackageW
73SaslInitializeSecurityContextA
74SaslInitializeSecurityContextW
75SaslSetContextOption
76SealMessage
77SecCacheSspiPackages
78SeciAllocateAndSetCallFlags
79SeciAllocateAndSetIPAddress
80SeciFreeCallContext
81SeciIsProtectedUser
82SetContextAttributesA
83SetContextAttributesW
84SetCredentialsAttributesA
85SetCredentialsAttributesW
86SspiCompareAuthIdentities
87SspiCopyAuthIdentity
88SspiDecryptAuthIdentity
89SspiDecryptAuthIdentityEx
90SspiEncodeAuthIdentityAsStrings
91SspiEncodeStringsAsAuthIdentity
92SspiEncryptAuthIdentity
93SspiEncryptAuthIdentityEx
94SspiExcludePackage
95SspiFreeAuthIdentity
96SspiGetComputerNameForSPN
97SspiGetTargetHostName
98SspiIsAuthIdentityEncrypted
99SspiLocalFree
100SspiMarshalAuthIdentity
101SspiPrepareForCredRead
102SspiPrepareForCredWrite
103SspiUnmarshalAuthIdentity
104SspiValidateAuthIdentity
105SspiZeroAuthIdentity
106UnsealMessage
107VerifySignature
lib/libc/mingw/lib-common/t2embed.def created+22
...@@ -0,0 +1,22 @@
1;
2; Exports of file t2embed.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY t2embed.dll
8EXPORTS
9TTCharToUnicode
10TTDeleteEmbeddedFont
11TTEmbedFont
12TTEmbedFontEx
13TTEmbedFontFromFileA
14TTEnableEmbeddingForFacename
15TTGetEmbeddedFontInfo
16TTGetEmbeddingType
17TTGetNewFontName
18TTIsEmbeddingEnabled
19TTIsEmbeddingEnabledForFacename
20TTLoadEmbeddedFont
21TTRunValidationTests
22TTRunValidationTestsEx
lib/libc/mingw/lib-common/tapi32.def created+286
...@@ -0,0 +1,286 @@
1;
2; Exports of file TAPI32.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY TAPI32.dll
8EXPORTS
9GetTapi16CallbackMsg
10LAddrParamsInited
11LOpenDialAsst
12LocWizardDlgProc
13MMCAddProvider
14MMCConfigProvider
15MMCGetAvailableProviders
16MMCGetDeviceFlags
17MMCGetLineInfo
18MMCGetLineStatus
19MMCGetPhoneInfo
20MMCGetPhoneStatus
21MMCGetProviderList
22MMCGetServerConfig
23MMCInitialize
24MMCRemoveProvider
25MMCSetLineInfo
26MMCSetPhoneInfo
27MMCSetServerConfig
28MMCShutdown
29NonAsyncEventThread
30TAPIWndProc
31TUISPIDLLCallback
32internalConfig
33internalCreateDefLocation
34internalNewLocationW
35internalPerformance
36internalRemoveLocation
37internalRenameLocationW
38lineAccept
39lineAddProvider
40lineAddProviderA
41lineAddProviderW
42lineAddToConference
43lineAgentSpecific
44lineAnswer
45lineBlindTransfer
46lineBlindTransferA
47lineBlindTransferW
48lineClose
49lineCompleteCall
50lineCompleteTransfer
51lineConfigDialog
52lineConfigDialogA
53lineConfigDialogEdit
54lineConfigDialogEditA
55lineConfigDialogEditW
56lineConfigDialogW
57lineConfigProvider
58lineCreateAgentA
59lineCreateAgentSessionA
60lineCreateAgentSessionW
61lineCreateAgentW
62lineDeallocateCall
63lineDevSpecific
64lineDevSpecificFeature
65lineDial
66lineDialA
67lineDialW
68lineDrop
69lineForward
70lineForwardA
71lineForwardW
72lineGatherDigits
73lineGatherDigitsA
74lineGatherDigitsW
75lineGenerateDigits
76lineGenerateDigitsA
77lineGenerateDigitsW
78lineGenerateTone
79lineGetAddressCaps
80lineGetAddressCapsA
81lineGetAddressCapsW
82lineGetAddressID
83lineGetAddressIDA
84lineGetAddressIDW
85lineGetAddressStatus
86lineGetAddressStatusA
87lineGetAddressStatusW
88lineGetAgentActivityListA
89lineGetAgentActivityListW
90lineGetAgentCapsA
91lineGetAgentCapsW
92lineGetAgentGroupListA
93lineGetAgentGroupListW
94lineGetAgentInfo
95lineGetAgentSessionInfo
96lineGetAgentSessionList
97lineGetAgentStatusA
98lineGetAgentStatusW
99lineGetAppPriority
100lineGetAppPriorityA
101lineGetAppPriorityW
102lineGetCallInfo
103lineGetCallInfoA
104lineGetCallInfoW
105lineGetCallStatus
106lineGetConfRelatedCalls
107lineGetCountry
108lineGetCountryA
109lineGetCountryW
110lineGetDevCaps
111lineGetDevCapsA
112lineGetDevCapsW
113lineGetDevConfig
114lineGetDevConfigA
115lineGetDevConfigW
116lineGetGroupListA
117lineGetGroupListW
118lineGetID
119lineGetIDA
120lineGetIDW
121lineGetIcon
122lineGetIconA
123lineGetIconW
124lineGetLineDevStatus
125lineGetLineDevStatusA
126lineGetLineDevStatusW
127lineGetMessage
128lineGetNewCalls
129lineGetNumRings
130lineGetProviderList
131lineGetProviderListA
132lineGetProviderListW
133lineGetProxyStatus
134lineGetQueueInfo
135lineGetQueueListA
136lineGetQueueListW
137lineGetRequest
138lineGetRequestA
139lineGetRequestW
140lineGetStatusMessages
141lineGetTranslateCaps
142lineGetTranslateCapsA
143lineGetTranslateCapsW
144lineHandoff
145lineHandoffA
146lineHandoffW
147lineHold
148lineInitialize
149lineInitializeExA
150lineInitializeExW
151lineMakeCall
152lineMakeCallA
153lineMakeCallW
154lineMonitorDigits
155lineMonitorMedia
156lineMonitorTones
157lineNegotiateAPIVersion
158lineNegotiateExtVersion
159lineOpen
160lineOpenA
161lineOpenW
162linePark
163lineParkA
164lineParkW
165linePickup
166linePickupA
167linePickupW
168linePrepareAddToConference
169linePrepareAddToConferenceA
170linePrepareAddToConferenceW
171lineProxyMessage
172lineProxyResponse
173lineRedirect
174lineRedirectA
175lineRedirectW
176lineRegisterRequestRecipient
177lineReleaseUserUserInfo
178lineRemoveFromConference
179lineRemoveProvider
180lineSecureCall
181lineSendUserUserInfo
182lineSetAgentActivity
183lineSetAgentGroup
184lineSetAgentMeasurementPeriod
185lineSetAgentSessionState
186lineSetAgentState
187lineSetAgentStateEx
188lineSetAppPriority
189lineSetAppPriorityA
190lineSetAppPriorityW
191lineSetAppSpecific
192lineSetCallData
193lineSetCallParams
194lineSetCallPrivilege
195lineSetCallQualityOfService
196lineSetCallTreatment
197lineSetCurrentLocation
198lineSetDevConfig
199lineSetDevConfigA
200lineSetDevConfigW
201lineSetLineDevStatus
202lineSetMediaControl
203lineSetMediaMode
204lineSetNumRings
205lineSetQueueMeasurementPeriod
206lineSetStatusMessages
207lineSetTerminal
208lineSetTollList
209lineSetTollListA
210lineSetTollListW
211lineSetupConference
212lineSetupConferenceA
213lineSetupConferenceW
214lineSetupTransfer
215lineSetupTransferA
216lineSetupTransferW
217lineShutdown
218lineSwapHold
219lineTranslateAddress
220lineTranslateAddressA
221lineTranslateAddressW
222lineTranslateDialog
223lineTranslateDialogA
224lineTranslateDialogW
225lineUncompleteCall
226lineUnhold
227lineUnpark
228lineUnparkA
229lineUnparkW
230phoneClose
231phoneConfigDialog
232phoneConfigDialogA
233phoneConfigDialogW
234phoneDevSpecific
235phoneGetButtonInfo
236phoneGetButtonInfoA
237phoneGetButtonInfoW
238phoneGetData
239phoneGetDevCaps
240phoneGetDevCapsA
241phoneGetDevCapsW
242phoneGetDisplay
243phoneGetGain
244phoneGetHookSwitch
245phoneGetID
246phoneGetIDA
247phoneGetIDW
248phoneGetIcon
249phoneGetIconA
250phoneGetIconW
251phoneGetLamp
252phoneGetMessage
253phoneGetRing
254phoneGetStatus
255phoneGetStatusA
256phoneGetStatusMessages
257phoneGetStatusW
258phoneGetVolume
259phoneInitialize
260phoneInitializeExA
261phoneInitializeExW
262phoneNegotiateAPIVersion
263phoneNegotiateExtVersion
264phoneOpen
265phoneSetButtonInfo
266phoneSetButtonInfoA
267phoneSetButtonInfoW
268phoneSetData
269phoneSetDisplay
270phoneSetGain
271phoneSetHookSwitch
272phoneSetLamp
273phoneSetRing
274phoneSetStatusMessages
275phoneSetVolume
276phoneShutdown
277tapiGetLocationInfo
278tapiGetLocationInfoA
279tapiGetLocationInfoW
280tapiRequestDrop
281tapiRequestMakeCall
282tapiRequestMakeCallA
283tapiRequestMakeCallW
284tapiRequestMediaCall
285tapiRequestMediaCallA
286tapiRequestMediaCallW
lib/libc/mingw/lib-common/tbs.def created+25
...@@ -0,0 +1,25 @@
1;
2; Definition file of tbs.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "tbs.dll"
7EXPORTS
8Tbsi_Create_Attestation_From_Log
9Tbsi_Get_TCG_Logs
10GetDeviceID
11GetDeviceIDString
12GetDeviceIDWithTimeout
13Tbsi_Context_Create
14Tbsi_FilterLog
15Tbsi_GetDeviceInfo
16Tbsi_Get_OwnerAuth
17Tbsi_Get_TCG_Log
18Tbsi_Physical_Presence_Command
19Tbsi_Revoke_Attestation
20Tbsi_ShaHash
21Tbsip_Cancel_Commands
22Tbsip_Context_Close
23Tbsip_Submit_Command
24Tbsip_Submit_Command_NonBlocking
25Tbsip_TestMorBit
lib/libc/mingw/lib-common/tdh.def created+43
...@@ -0,0 +1,43 @@
1;
2; Definition file of tdh.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "tdh.dll"
7EXPORTS
8TdhAggregatePayloadFilters
9TdhApplyPayloadFilter
10TdhCleanupPayloadEventFilterDescriptor
11TdhCloseDecodingHandle
12TdhCreatePayloadFilter
13TdhDeletePayloadFilter
14TdhEnumerateManifestProviderEvents
15TdhEnumerateProviderFieldInformation
16TdhEnumerateProviderFilters
17TdhEnumerateProviders
18TdhEnumerateRemoteWBEMProviderFieldInformation
19TdhEnumerateRemoteWBEMProviders
20TdhFormatProperty
21TdhGetAllEventsInformation
22TdhGetDecodingParameter
23TdhGetEventInformation
24TdhGetEventMapInformation
25TdhGetManifestEventInformation
26TdhGetProperty
27TdhGetPropertyOffsetAndSize
28TdhGetPropertySize
29TdhGetWppMessage
30TdhGetWppProperty
31TdhLoadManifest
32TdhLoadManifestFromBinary
33TdhLoadManifestFromMemory
34TdhOpenDecodingHandle
35TdhQueryProviderFieldInformation
36TdhQueryRemoteWBEMProviderFieldInformation
37TdhSetDecodingParameter
38TdhUnloadManifest
39TdhUnloadManifestFromMemory
40TdhValidatePayloadFilter
41TdhpFindMatchClassFromWBEM
42TdhpGetBestTraceEventInfoWBEM
43TdhpGetEventMapInfoWBEM
lib/libc/mingw/lib-common/traffic.def created+29
...@@ -0,0 +1,29 @@
1;
2; Definition file of TRAFFIC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "TRAFFIC.dll"
7EXPORTS
8TcAddFilter
9TcAddFlow
10TcCloseInterface
11TcDeleteFilter
12TcDeleteFlow
13TcDeregisterClient
14TcEnumerateFlows
15TcEnumerateInterfaces
16TcGetFlowNameA
17TcGetFlowNameW
18TcGetInterfaceList
19TcModifyFlow
20TcOpenInterfaceA
21TcOpenInterfaceW
22TcQueryFlowA
23TcQueryFlowW
24TcQueryInterface
25TcRegisterClient
26TcSetFlowA
27TcSetFlowW
28TcSetInterface
29TcSetSocketFlow
lib/libc/mingw/lib-common/txfw32.def created+16
...@@ -0,0 +1,16 @@
1;
2; Definition file of txfw32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "txfw32.dll"
7EXPORTS
8TxfGetThreadMiniVersionForCreate
9TxfLogCreateFileReadContext
10TxfLogCreateRangeReadContext
11TxfLogDestroyReadContext
12TxfLogReadRecords
13TxfLogRecordGetFileName
14TxfLogRecordGetGenericType
15TxfReadMetadataInfo
16TxfSetThreadMiniVersionForCreate
lib/libc/mingw/lib-common/usp10.def created+51
...@@ -0,0 +1,51 @@
1;
2; Definition file of USP10.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "USP10.dll"
7EXPORTS
8LpkPresent
9ScriptApplyDigitSubstitution
10ScriptApplyLogicalWidth
11ScriptBreak
12ScriptCPtoX
13ScriptCacheGetHeight
14ScriptFreeCache
15ScriptGetCMap
16ScriptGetFontAlternateGlyphs
17ScriptGetFontFeatureTags
18ScriptGetFontLanguageTags
19ScriptGetFontProperties
20ScriptGetFontScriptTags
21ScriptGetGlyphABCWidth
22ScriptGetLogicalWidths
23ScriptGetProperties
24ScriptIsComplex
25ScriptItemize
26ScriptItemizeOpenType
27ScriptJustify
28ScriptLayout
29ScriptPlace
30ScriptPlaceOpenType
31ScriptPositionSingleGlyph
32ScriptRecordDigitSubstitution
33ScriptShape
34ScriptShapeOpenType
35ScriptStringAnalyse
36ScriptStringCPtoX
37ScriptStringFree
38ScriptStringGetLogicalWidths
39ScriptStringGetOrder
40ScriptStringOut
41ScriptStringValidate
42ScriptStringXtoCP
43ScriptString_pLogAttr
44ScriptString_pSize
45ScriptString_pcOutChars
46ScriptSubstituteSingleGlyph
47ScriptTextOut
48ScriptXtoCP
49UspAllocCache
50UspAllocTemp
51UspFreeMem
lib/libc/mingw/lib-common/uxtheme.def created+88
...@@ -0,0 +1,88 @@
1;
2; Definition file of UxTheme.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "UxTheme.dll"
7EXPORTS
8BeginPanningFeedback
9EndPanningFeedback
10UpdatePanningFeedback
11BeginBufferedAnimation
12BeginBufferedPaint
13BufferedPaintClear
14BufferedPaintInit
15BufferedPaintRenderAnimation
16BufferedPaintSetAlpha
17DrawThemeBackgroundEx
18BufferedPaintStopAllAnimations
19BufferedPaintUnInit
20CloseThemeData
21DrawThemeBackground
22DrawThemeEdge
23DrawThemeIcon
24OpenThemeDataEx
25DrawThemeParentBackground
26DrawThemeParentBackgroundEx
27DrawThemeText
28GetImmersiveColorFromColorSetEx
29GetImmersiveUserColorSetPreference
30DrawThemeTextEx
31GetUserColorPreference
32GetColorFromPreference
33EnableThemeDialogTexture
34EnableTheming
35EndBufferedAnimation
36EndBufferedPaint
37GetBufferedPaintBits
38GetBufferedPaintDC
39GetBufferedPaintTargetDC
40GetBufferedPaintTargetRect
41GetCurrentThemeName
42GetThemeAnimationProperty
43GetThemeAnimationTransform
44GetThemeAppProperties
45GetThemeBackgroundContentRect
46GetThemeBackgroundExtent
47GetThemeBackgroundRegion
48GetThemeBitmap
49GetThemeBool
50GetThemeColor
51GetThemeDocumentationProperty
52GetThemeEnumValue
53GetThemeFilename
54GetThemeFont
55GetThemeInt
56GetThemeIntList
57GetThemeMargins
58GetThemeMetric
59GetThemePartSize
60GetThemePosition
61GetThemePropertyOrigin
62GetThemeRect
63GetThemeStream
64GetThemeString
65GetThemeSysBool
66GetThemeSysColor
67GetThemeSysColorBrush
68GetThemeSysFont
69GetThemeSysInt
70GetThemeSysSize
71GetThemeSysString
72GetThemeTextExtent
73GetThemeTextMetrics
74GetThemeTimingFunction
75GetThemeTransitionDuration
76GetWindowTheme
77HitTestThemeBackground
78IsAppThemed
79IsCompositionActive
80IsThemeActive
81IsThemeBackgroundPartiallyTransparent
82IsThemeDialogTextureEnabled
83IsThemePartDefined
84OpenThemeData
85SetThemeAppProperties
86SetWindowTheme
87SetWindowThemeAttribute
88ThemeInitApiHook
lib/libc/mingw/lib-common/virtdisk.def created+33
...@@ -0,0 +1,33 @@
1;
2; Definition file of VirtDisk.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "VirtDisk.dll"
7EXPORTS
8AddVirtualDiskParent
9ApplySnapshotVhdSet
10AttachVirtualDisk
11BreakMirrorVirtualDisk
12CompactVirtualDisk
13CreateVirtualDisk
14DeleteSnapshotVhdSet
15DeleteVirtualDiskMetadata
16DetachVirtualDisk
17EnumerateVirtualDiskMetadata
18ExpandVirtualDisk
19GetAllAttachedVirtualDiskPhysicalPaths
20GetStorageDependencyInformation
21GetVirtualDiskInformation
22GetVirtualDiskMetadata
23GetVirtualDiskOperationProgress
24GetVirtualDiskPhysicalPath
25MergeVirtualDisk
26MirrorVirtualDisk
27ModifyVhdSet
28OpenVirtualDisk
29QueryChangesVirtualDisk
30ResizeVirtualDisk
31SetVirtualDiskInformation
32SetVirtualDiskMetadata
33TakeSnapshotVhdSet
lib/libc/mingw/lib-common/websocket.def created+15
...@@ -0,0 +1,15 @@
1LIBRARY "websocket.dll"
2EXPORTS
3WebSocketAbortHandle
4WebSocketBeginClientHandshake
5WebSocketBeginServerHandshake
6WebSocketCompleteAction
7WebSocketCreateClientHandle
8WebSocketCreateServerHandle
9WebSocketDeleteHandle
10WebSocketEndClientHandshake
11WebSocketEndServerHandshake
12WebSocketGetAction
13WebSocketGetGlobalProperty
14WebSocketReceive
15WebSocketSend
lib/libc/mingw/lib-common/wecapi.def created+26
...@@ -0,0 +1,26 @@
1;
2; Definition file of WecApi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WecApi.dll"
7EXPORTS
8pszDbgAllocMsgA
9vDbgLogError
10EcIsConfigRequired
11EcQuickConfig
12EcClose
13EcDeleteSubscription
14EcEnumNextSubscription
15EcGetObjectArrayProperty
16EcGetObjectArraySize
17EcGetSubscriptionProperty
18EcGetSubscriptionRunTimeStatus
19EcInsertObjectArrayElement
20EcOpenSubscription
21EcOpenSubscriptionEnum
22EcRemoveObjectArrayElement
23EcRetrySubscription
24EcSaveSubscription
25EcSetObjectArrayProperty
26EcSetSubscriptionProperty
lib/libc/mingw/lib-common/wevtapi.def created+53
...@@ -0,0 +1,53 @@
1;
2; Definition file of wevtapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "wevtapi.dll"
7EXPORTS
8EvtIntSysprepCleanup
9EvtSetObjectArrayProperty
10EvtArchiveExportedLog
11EvtCancel
12EvtClearLog
13EvtClose
14EvtCreateBookmark
15EvtCreateRenderContext
16EvtExportLog
17EvtFormatMessage
18EvtGetChannelConfigProperty
19EvtGetEventInfo
20EvtGetEventMetadataProperty
21EvtGetExtendedStatus
22EvtGetLogInfo
23EvtGetObjectArrayProperty
24EvtGetObjectArraySize
25EvtGetPublisherMetadataProperty
26EvtGetQueryInfo
27EvtIntAssertConfig
28EvtIntCreateBinXMLFromCustomXML
29EvtIntCreateLocalLogfile
30EvtIntGetClassicLogDisplayName
31EvtIntRenderResourceEventTemplate
32EvtIntReportAuthzEventAndSourceAsync
33EvtIntReportEventAndSourceAsync
34EvtIntRetractConfig
35EvtIntWriteXmlEventToLocalLogfile
36EvtNext
37EvtNextChannelPath
38EvtNextEventMetadata
39EvtNextPublisherId
40EvtOpenChannelConfig
41EvtOpenChannelEnum
42EvtOpenEventMetadataEnum
43EvtOpenLog
44EvtOpenPublisherEnum
45EvtOpenPublisherMetadata
46EvtOpenSession
47EvtQuery
48EvtRender
49EvtSaveChannelConfig
50EvtSeek
51EvtSetChannelConfigProperty
52EvtSubscribe
53EvtUpdateBookmark
lib/libc/mingw/lib-common/windowscodecs.def created+116
...@@ -0,0 +1,116 @@
1LIBRARY "WindowsCodecs.dll"
2EXPORTS
3IEnumString_Next_WIC_Proxy
4IEnumString_Reset_WIC_Proxy
5IPropertyBag2_Write_Proxy
6IWICBitmapClipper_Initialize_Proxy
7IWICBitmapCodecInfo_DoesSupportAnimation_Proxy
8IWICBitmapCodecInfo_DoesSupportLossless_Proxy
9IWICBitmapCodecInfo_DoesSupportMultiframe_Proxy
10IWICBitmapCodecInfo_GetContainerFormat_Proxy
11IWICBitmapCodecInfo_GetDeviceManufacturer_Proxy
12IWICBitmapCodecInfo_GetDeviceModels_Proxy
13IWICBitmapCodecInfo_GetFileExtensions_Proxy
14IWICBitmapCodecInfo_GetMimeTypes_Proxy
15IWICBitmapDecoder_CopyPalette_Proxy
16IWICBitmapDecoder_GetColorContexts_Proxy
17IWICBitmapDecoder_GetDecoderInfo_Proxy
18IWICBitmapDecoder_GetFrameCount_Proxy
19IWICBitmapDecoder_GetFrame_Proxy
20IWICBitmapDecoder_GetMetadataQueryReader_Proxy
21IWICBitmapDecoder_GetPreview_Proxy
22IWICBitmapDecoder_GetThumbnail_Proxy
23IWICBitmapEncoder_Commit_Proxy
24IWICBitmapEncoder_CreateNewFrame_Proxy
25IWICBitmapEncoder_GetEncoderInfo_Proxy
26IWICBitmapEncoder_GetMetadataQueryWriter_Proxy
27IWICBitmapEncoder_Initialize_Proxy
28IWICBitmapEncoder_SetPalette_Proxy
29IWICBitmapEncoder_SetThumbnail_Proxy
30IWICBitmapFlipRotator_Initialize_Proxy
31IWICBitmapFrameDecode_GetColorContexts_Proxy
32IWICBitmapFrameDecode_GetMetadataQueryReader_Proxy
33IWICBitmapFrameDecode_GetThumbnail_Proxy
34IWICBitmapFrameEncode_Commit_Proxy
35IWICBitmapFrameEncode_GetMetadataQueryWriter_Proxy
36IWICBitmapFrameEncode_Initialize_Proxy
37IWICBitmapFrameEncode_SetColorContexts_Proxy
38IWICBitmapFrameEncode_SetResolution_Proxy
39IWICBitmapFrameEncode_SetSize_Proxy
40IWICBitmapFrameEncode_SetThumbnail_Proxy
41IWICBitmapFrameEncode_WriteSource_Proxy
42IWICBitmapLock_GetDataPointer_STA_Proxy
43IWICBitmapLock_GetStride_Proxy
44IWICBitmapScaler_Initialize_Proxy
45IWICBitmapSource_CopyPalette_Proxy
46IWICBitmapSource_CopyPixels_Proxy
47IWICBitmapSource_GetPixelFormat_Proxy
48IWICBitmapSource_GetResolution_Proxy
49IWICBitmapSource_GetSize_Proxy
50IWICBitmap_Lock_Proxy
51IWICBitmap_SetPalette_Proxy
52IWICBitmap_SetResolution_Proxy
53IWICColorContext_InitializeFromMemory_Proxy
54IWICComponentFactory_CreateMetadataWriterFromReader_Proxy
55IWICComponentFactory_CreateQueryWriterFromBlockWriter_Proxy
56IWICComponentInfo_GetAuthor_Proxy
57IWICComponentInfo_GetCLSID_Proxy
58IWICComponentInfo_GetFriendlyName_Proxy
59IWICComponentInfo_GetSpecVersion_Proxy
60IWICComponentInfo_GetVersion_Proxy
61IWICFastMetadataEncoder_Commit_Proxy
62IWICFastMetadataEncoder_GetMetadataQueryWriter_Proxy
63IWICFormatConverter_Initialize_Proxy
64IWICImagingFactory_CreateBitmapClipper_Proxy
65IWICImagingFactory_CreateBitmapFlipRotator_Proxy
66IWICImagingFactory_CreateBitmapFromHBITMAP_Proxy
67IWICImagingFactory_CreateBitmapFromHICON_Proxy
68IWICImagingFactory_CreateBitmapFromMemory_Proxy
69IWICImagingFactory_CreateBitmapFromSource_Proxy
70IWICImagingFactory_CreateBitmapScaler_Proxy
71IWICImagingFactory_CreateBitmap_Proxy
72IWICImagingFactory_CreateComponentInfo_Proxy
73IWICImagingFactory_CreateDecoderFromFileHandle_Proxy
74IWICImagingFactory_CreateDecoderFromFilename_Proxy
75IWICImagingFactory_CreateDecoderFromStream_Proxy
76IWICImagingFactory_CreateEncoder_Proxy
77IWICImagingFactory_CreateFastMetadataEncoderFromDecoder_Proxy
78IWICImagingFactory_CreateFastMetadataEncoderFromFrameDecode_Proxy
79IWICImagingFactory_CreateFormatConverter_Proxy
80IWICImagingFactory_CreatePalette_Proxy
81IWICImagingFactory_CreateQueryWriterFromReader_Proxy
82IWICImagingFactory_CreateQueryWriter_Proxy
83IWICImagingFactory_CreateStream_Proxy
84IWICMetadataBlockReader_GetCount_Proxy
85IWICMetadataBlockReader_GetReaderByIndex_Proxy
86IWICMetadataQueryReader_GetContainerFormat_Proxy
87IWICMetadataQueryReader_GetEnumerator_Proxy
88IWICMetadataQueryReader_GetLocation_Proxy
89IWICMetadataQueryReader_GetMetadataByName_Proxy
90IWICMetadataQueryWriter_RemoveMetadataByName_Proxy
91IWICMetadataQueryWriter_SetMetadataByName_Proxy
92IWICPalette_GetColorCount_Proxy
93IWICPalette_GetColors_Proxy
94IWICPalette_GetType_Proxy
95IWICPalette_HasAlpha_Proxy
96IWICPalette_InitializeCustom_Proxy
97IWICPalette_InitializeFromBitmap_Proxy
98IWICPalette_InitializeFromPalette_Proxy
99IWICPalette_InitializePredefined_Proxy
100IWICPixelFormatInfo_GetBitsPerPixel_Proxy
101IWICPixelFormatInfo_GetChannelCount_Proxy
102IWICPixelFormatInfo_GetChannelMask_Proxy
103IWICStream_InitializeFromIStream_Proxy
104IWICStream_InitializeFromMemory_Proxy
105WICConvertBitmapSource
106WICCreateBitmapFromSection
107WICCreateBitmapFromSectionEx
108WICCreateColorContext_Proxy
109WICCreateImagingFactory_Proxy
110WICGetMetadataContentSize
111WICMapGuidToShortName
112WICMapSchemaToName
113WICMapShortNameToGuid
114WICMatchMetadataContent
115WICSerializeMetadataContent
116WICSetEncoderFormat_Proxy
lib/libc/mingw/lib-common/winhttp.def created+89
...@@ -0,0 +1,89 @@
1;
2; Definition file of WINHTTP.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "WINHTTP.dll"
7EXPORTS
8WinHttpPacJsWorkerMain
9DllCanUnloadNow
10DllGetClassObject
11Private1
12SvchostPushServiceGlobals
13WinHttpAddRequestHeaders
14WinHttpAddRequestHeadersEx
15WinHttpAutoProxySvcMain
16WinHttpCheckPlatform
17WinHttpCloseHandle
18WinHttpConnect
19WinHttpConnectionDeletePolicyEntries
20WinHttpConnectionDeleteProxyInfo
21WinHttpConnectionFreeNameList
22WinHttpConnectionFreeProxyInfo
23WinHttpConnectionFreeProxyList
24WinHttpConnectionGetNameList
25WinHttpConnectionGetProxyInfo
26WinHttpConnectionGetProxyList
27WinHttpConnectionSetPolicyEntries
28WinHttpConnectionSetProxyInfo
29WinHttpConnectionUpdateIfIndexTable
30WinHttpCrackUrl
31WinHttpCreateProxyResolver
32WinHttpCreateUrl
33WinHttpDetectAutoProxyConfigUrl
34WinHttpFreeProxyResult
35WinHttpFreeProxyResultEx
36WinHttpFreeProxySettings
37WinHttpGetDefaultProxyConfiguration
38WinHttpGetIEProxyConfigForCurrentUser
39WinHttpGetProxyForUrl
40WinHttpGetProxyForUrlEx
41WinHttpGetProxyForUrlEx2
42WinHttpGetProxyForUrlHvsi
43WinHttpGetProxyResult
44WinHttpGetProxyResultEx
45WinHttpGetProxySettingsVersion
46WinHttpGetTunnelSocket
47WinHttpOpen
48WinHttpOpenRequest
49WinHttpPalAcquireNextInterface
50WinHttpPalAcquireNextInterfaceAsync
51WinHttpPalCancelRequest
52WinHttpPalCreateCmSessionReference
53WinHttpPalCreateRequestCtx
54WinHttpPalDllInit
55WinHttpPalDllUnload
56WinHttpPalFreeProxyInfo
57WinHttpPalFreeRequestCtx
58WinHttpPalGetProxyCreds
59WinHttpPalGetProxyForCurrentInterface
60WinHttpPalIsImplemented
61WinHttpPalOnSendRequestComplete
62WinHttpProbeConnectivity
63WinHttpQueryAuthSchemes
64WinHttpQueryDataAvailable
65WinHttpQueryHeaders
66WinHttpQueryOption
67WinHttpReadData
68WinHttpReadProxySettings
69WinHttpReadProxySettingsHvsi
70WinHttpReceiveResponse
71WinHttpResetAutoProxy
72WinHttpSaveProxyCredentials
73WinHttpSendRequest
74WinHttpSetCredentials
75WinHttpSetDefaultProxyConfiguration
76WinHttpSetOption
77WinHttpSetProxySettingsPerUser
78WinHttpSetStatusCallback
79WinHttpSetTimeouts
80WinHttpTimeFromSystemTime
81WinHttpTimeToSystemTime
82WinHttpWebSocketClose
83WinHttpWebSocketCompleteUpgrade
84WinHttpWebSocketQueryCloseStatus
85WinHttpWebSocketReceive
86WinHttpWebSocketSend
87WinHttpWebSocketShutdown
88WinHttpWriteData
89WinHttpWriteProxySettings
lib/libc/mingw/lib-common/wininet.def created+300
...@@ -0,0 +1,300 @@
1;
2; Definition file of WININET.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "WININET.dll"
7EXPORTS
8DispatchAPICall
9AppCacheCheckManifest
10AppCacheCloseHandle
11AppCacheCreateAndCommitFile
12AppCacheDeleteGroup
13AppCacheDeleteIEGroup
14AppCacheDuplicateHandle
15AppCacheFinalize
16AppCacheFreeDownloadList
17AppCacheFreeGroupList
18AppCacheFreeIESpace
19AppCacheFreeSpace
20AppCacheGetDownloadList
21AppCacheGetFallbackUrl
22AppCacheGetGroupList
23AppCacheGetIEGroupList
24AppCacheGetInfo
25AppCacheGetManifestUrl
26AppCacheLookup
27CommitUrlCacheEntryA
28CommitUrlCacheEntryBinaryBlob
29CommitUrlCacheEntryW
30CreateMD5SSOHash
31CreateUrlCacheContainerA
32CreateUrlCacheContainerW
33CreateUrlCacheEntryA
34CreateUrlCacheEntryExW
35CreateUrlCacheEntryW
36CreateUrlCacheGroup
37DeleteIE3Cache
38DeleteUrlCacheContainerA
39DeleteUrlCacheContainerW
40DeleteUrlCacheEntry
41DeleteUrlCacheEntryA
42DeleteUrlCacheEntryW
43DeleteUrlCacheGroup
44DeleteWpadCacheForNetworks
45DetectAutoProxyUrl
46FindCloseUrlCache
47FindFirstUrlCacheContainerA
48FindFirstUrlCacheContainerW
49FindFirstUrlCacheEntryA
50FindFirstUrlCacheEntryExA
51FindFirstUrlCacheEntryExW
52FindFirstUrlCacheEntryW
53FindFirstUrlCacheGroup
54FindNextUrlCacheContainerA
55FindNextUrlCacheContainerW
56FindNextUrlCacheEntryA
57FindNextUrlCacheEntryExA
58FindNextUrlCacheEntryExW
59FindNextUrlCacheEntryW
60FindNextUrlCacheGroup
61ForceNexusLookup
62ForceNexusLookupExW
63FreeUrlCacheSpaceA
64FreeUrlCacheSpaceW
65FtpCommandA
66FtpCommandW
67FtpCreateDirectoryA
68FtpCreateDirectoryW
69FtpDeleteFileA
70FtpDeleteFileW
71FtpFindFirstFileA
72FtpFindFirstFileW
73FtpGetCurrentDirectoryA
74FtpGetCurrentDirectoryW
75FtpGetFileA
76FtpGetFileEx
77FtpGetFileSize
78FtpGetFileW
79FtpOpenFileA
80FtpOpenFileW
81FtpPutFileA
82FtpPutFileEx
83FtpPutFileW
84FtpRemoveDirectoryA
85FtpRemoveDirectoryW
86FtpRenameFileA
87FtpRenameFileW
88FtpSetCurrentDirectoryA
89FtpSetCurrentDirectoryW
90GetProxyDllInfo
91GetUrlCacheConfigInfoA
92GetUrlCacheConfigInfoW
93GetUrlCacheEntryBinaryBlob
94GetUrlCacheEntryInfoA
95GetUrlCacheEntryInfoExA
96GetUrlCacheEntryInfoExW
97GetUrlCacheEntryInfoW
98GetUrlCacheGroupAttributeA
99GetUrlCacheGroupAttributeW
100GetUrlCacheHeaderData
101GopherCreateLocatorA
102GopherCreateLocatorW
103GopherFindFirstFileA
104GopherFindFirstFileW
105GopherGetAttributeA
106GopherGetAttributeW
107GopherGetLocatorTypeA
108GopherGetLocatorTypeW
109GopherOpenFileA
110GopherOpenFileW
111HttpAddRequestHeadersA
112HttpAddRequestHeadersW
113HttpCheckDavCompliance
114HttpCloseDependencyHandle
115HttpDuplicateDependencyHandle
116HttpEndRequestA
117HttpEndRequestW
118HttpGetServerCredentials
119HttpGetTunnelSocket
120HttpIndicatePageLoadComplete
121HttpIsHostHstsEnabled
122HttpOpenDependencyHandle
123HttpOpenRequestA
124HttpOpenRequestW
125HttpPushClose
126HttpPushEnable
127HttpPushWait
128HttpQueryInfoA
129HttpQueryInfoW
130HttpSendRequestA
131HttpSendRequestExA
132HttpSendRequestExW
133HttpSendRequestW
134HttpWebSocketClose
135HttpWebSocketCompleteUpgrade
136HttpWebSocketQueryCloseStatus
137HttpWebSocketReceive
138HttpWebSocketSend
139HttpWebSocketShutdown
140IncrementUrlCacheHeaderData
141InternetAlgIdToStringA
142InternetAlgIdToStringW
143InternetAttemptConnect
144InternetAutodial
145InternetAutodialCallback
146InternetAutodialHangup
147InternetCanonicalizeUrlA
148InternetCanonicalizeUrlW
149InternetCheckConnectionA
150InternetCheckConnectionW
151InternetClearAllPerSiteCookieDecisions
152InternetCloseHandle
153InternetCombineUrlA
154InternetCombineUrlW
155InternetConfirmZoneCrossing
156InternetConfirmZoneCrossingA
157InternetConfirmZoneCrossingW
158InternetConnectA
159InternetConnectW
160InternetConvertUrlFromWireToWideChar
161InternetCrackUrlA
162InternetCrackUrlW
163InternetCreateUrlA
164InternetCreateUrlW
165InternetDial
166InternetDialA
167InternetDialW
168InternetEnumPerSiteCookieDecisionA
169InternetEnumPerSiteCookieDecisionW
170InternetErrorDlg
171InternetFindNextFileA
172InternetFindNextFileW
173InternetFortezzaCommand
174InternetFreeCookies
175InternetFreeProxyInfoList
176InternetGetCertByURL
177InternetGetCertByURLA
178InternetGetConnectedState
179InternetGetConnectedStateEx
180InternetGetConnectedStateExA
181InternetGetConnectedStateExW
182InternetGetCookieA
183InternetGetCookieEx2
184InternetGetCookieExA
185InternetGetCookieExW
186InternetGetCookieW
187InternetGetLastResponseInfoA
188InternetGetLastResponseInfoW
189InternetGetPerSiteCookieDecisionA
190InternetGetPerSiteCookieDecisionW
191InternetGetProxyForUrl
192InternetGetSecurityInfoByURL
193InternetGetSecurityInfoByURLA
194InternetGetSecurityInfoByURLW
195InternetGoOnline
196InternetGoOnlineA
197InternetGoOnlineW
198InternetHangUp
199InternetInitializeAutoProxyDll
200InternetLockRequestFile
201InternetOpenA
202InternetOpenUrlA
203InternetOpenUrlW
204InternetOpenW
205InternetQueryDataAvailable
206InternetQueryFortezzaStatus
207InternetQueryOptionA
208InternetQueryOptionW
209InternetReadFile
210InternetReadFileExA
211InternetReadFileExW
212InternetSecurityProtocolToStringA
213InternetSecurityProtocolToStringW
214InternetSetCookieA
215InternetSetCookieEx2
216InternetSetCookieExA
217InternetSetCookieExW
218InternetSetCookieW
219InternetSetDialState
220InternetSetDialStateA
221InternetSetDialStateW
222InternetSetFilePointer
223InternetSetOptionA
224InternetSetOptionExA
225InternetSetOptionExW
226InternetSetOptionW
227InternetSetPerSiteCookieDecisionA
228InternetSetPerSiteCookieDecisionW
229InternetSetStatusCallback
230InternetSetStatusCallbackA
231InternetSetStatusCallbackW
232InternetShowSecurityInfoByURL
233InternetShowSecurityInfoByURLA
234InternetShowSecurityInfoByURLW
235InternetTimeFromSystemTime
236InternetTimeFromSystemTimeA
237InternetTimeFromSystemTimeW
238InternetTimeToSystemTime
239InternetTimeToSystemTimeA
240InternetTimeToSystemTimeW
241InternetUnlockRequestFile
242InternetWriteFile
243InternetWriteFileExA
244InternetWriteFileExW
245IsHostInProxyBypassList
246IsUrlCacheEntryExpiredA
247IsUrlCacheEntryExpiredW
248LoadUrlCacheContent
249ParseX509EncodedCertificateForListBoxEntry
250PrivacyGetZonePreferenceW
251PrivacySetZonePreferenceW
252ReadUrlCacheEntryStream
253ReadUrlCacheEntryStreamEx
254RegisterUrlCacheNotification
255ResumeSuspendedDownload
256RetrieveUrlCacheEntryFileA
257RetrieveUrlCacheEntryFileW
258RetrieveUrlCacheEntryStreamA
259RetrieveUrlCacheEntryStreamW
260RunOnceUrlCache
261SetUrlCacheConfigInfoA
262SetUrlCacheConfigInfoW
263SetUrlCacheEntryGroup
264SetUrlCacheEntryGroupA
265SetUrlCacheEntryGroupW
266SetUrlCacheEntryInfoA
267SetUrlCacheEntryInfoW
268SetUrlCacheGroupAttributeA
269SetUrlCacheGroupAttributeW
270SetUrlCacheHeaderData
271ShowCertificate
272ShowClientAuthCerts
273ShowSecurityInfo
274ShowX509EncodedCertificate
275UnlockUrlCacheEntryFile
276UnlockUrlCacheEntryFileA
277UnlockUrlCacheEntryFileW
278UnlockUrlCacheEntryStream
279UpdateUrlCacheContentPath
280UrlCacheCheckEntriesExist
281UrlCacheCloseEntryHandle
282UrlCacheContainerSetEntryMaximumAge
283UrlCacheCreateContainer
284UrlCacheFindFirstEntry
285UrlCacheFindNextEntry
286UrlCacheFreeEntryInfo
287UrlCacheFreeGlobalSpace
288UrlCacheGetContentPaths
289UrlCacheGetEntryInfo
290UrlCacheGetGlobalCacheSize
291UrlCacheGetGlobalLimit
292UrlCacheReadEntryStream
293UrlCacheReloadSettings
294UrlCacheRetrieveEntryFile
295UrlCacheRetrieveEntryStream
296UrlCacheServer
297UrlCacheSetGlobalLimit
298UrlCacheUpdateEntryExtraData
299UrlZonesDetach
300_GetFileExtensionFromUrl
lib/libc/mingw/lib-common/winusb.def created+41
...@@ -0,0 +1,41 @@
1;
2; Definition file of WINUSB.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WINUSB.DLL"
7EXPORTS
8WinUsb_AbortPipe
9WinUsb_AbortPipeAsync
10WinUsb_ControlTransfer
11WinUsb_FlushPipe
12WinUsb_Free
13WinUsb_GetAdjustedFrameNumber
14WinUsb_GetAssociatedInterface
15WinUsb_GetCurrentAlternateSetting
16WinUsb_GetCurrentFrameNumber
17WinUsb_GetDescriptor
18WinUsb_GetOverlappedResult
19WinUsb_GetPipePolicy
20WinUsb_GetPowerPolicy
21WinUsb_Initialize
22WinUsb_ParseConfigurationDescriptor
23WinUsb_ParseDescriptors
24WinUsb_QueryDeviceInformation
25WinUsb_QueryInterfaceSettings
26WinUsb_QueryPipe
27WinUsb_QueryPipeEx
28WinUsb_ReadIsochPipe
29WinUsb_ReadIsochPipeAsap
30WinUsb_ReadPipe
31WinUsb_RegisterIsochBuffer
32WinUsb_ResetPipe
33WinUsb_ResetPipeAsync
34WinUsb_SetCurrentAlternateSetting
35WinUsb_SetCurrentAlternateSettingAsync
36WinUsb_SetPipePolicy
37WinUsb_SetPowerPolicy
38WinUsb_UnregisterIsochBuffer
39WinUsb_WriteIsochPipe
40WinUsb_WriteIsochPipeAsap
41WinUsb_WritePipe
lib/libc/mingw/lib-common/wkscli.def created+30
...@@ -0,0 +1,30 @@
1;
2; Definition file of wkscli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "wkscli.dll"
7EXPORTS
8NetAddAlternateComputerName
9NetEnumerateComputerNames
10NetGetJoinInformation
11NetGetJoinableOUs
12NetJoinDomain
13NetRemoveAlternateComputerName
14NetRenameMachineInDomain
15NetSetPrimaryComputerName
16NetUnjoinDomain
17NetUseAdd
18NetUseDel
19NetUseEnum
20NetUseGetInfo
21NetValidateName
22NetWkstaGetInfo
23NetWkstaSetInfo
24NetWkstaStatisticsGet
25NetWkstaTransportAdd
26NetWkstaTransportDel
27NetWkstaTransportEnum
28NetWkstaUserEnum
29NetWkstaUserGetInfo
30NetWkstaUserSetInfo
lib/libc/mingw/lib-common/wlanapi.def created+178
...@@ -0,0 +1,178 @@
1;
2; Definition file of wlanapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "wlanapi.dll"
7EXPORTS
8WFDGetSessionEndpointPairsInt
9QueryNetconStatus
10QueryNetconVirtualCharacteristic
11WFDAcceptConnectRequestAndOpenSessionInt
12WFDAcceptGroupRequestAndOpenSessionInt
13WFDCancelConnectorPairWithOOB
14WFDCancelListenerPairWithOOB
15WFDCancelOpenSession
16WFDCancelOpenSessionInt
17WFDCloseHandle
18WFDCloseHandleInt
19WFDCloseLegacySessionInt
20WFDCloseOOBPairingSession
21WFDCloseSession
22WFDCloseSessionInt
23WFDConfigureFirewallForSessionInt
24WFDDeclineConnectRequestInt
25WFDDeclineGroupRequestInt
26WFDDiscoverDevicesInt
27WFDFlushVisibleDeviceListInt
28WFDForceDisconnectInt
29WFDForceDisconnectLegacyPeerInt
30WFDFreeMemoryInt
31WFDGetDefaultGroupProfileInt
32WFDGetOOBBlob
33WFDGetProfileKeyInfoInt
34WFDGetVisibleDevicesInt
35WFDIsInterfaceWiFiDirect
36WFDIsWiFiDirectRunningOnWiFiAdapter
37WFDLowPrivCancelOpenSessionInt
38WFDLowPrivCloseHandleInt
39WFDLowPrivCloseSessionInt
40WFDLowPrivConfigureFirewallForSessionInt
41WFDLowPrivGetSessionEndpointPairsInt
42WFDLowPrivIsWfdSupportedInt
43WFDLowPrivOpenHandleInt
44WFDLowPrivRegisterNotificationInt
45WFDLowPrivStartOpenSessionByInterfaceIdInt
46WFDOpenHandle
47WFDOpenHandleInt
48WFDOpenLegacySession
49WFDOpenLegacySessionInt
50WFDPairCancelByDeviceAddressInt
51WFDPairCancelInt
52WFDPairEnumerateCeremoniesInt
53WFDPairSelectCeremonyInt
54WFDPairWithDeviceAndOpenSessionExInt
55WFDPairWithDeviceAndOpenSessionInt
56WFDParseOOBBlob
57WFDParseProfileXmlInt
58WFDQueryPropertyInt
59WFDRegisterNotificationInt
60WFDSetAdditionalIEsInt
61WFDSetPropertyInt
62WFDSetSecondaryDeviceTypeListInt
63WFDStartConnectorPairWithOOB
64WFDStartListenerPairWithOOB
65WFDStartOpenSession
66WFDStartOpenSessionInt
67WFDStartUsingGroupInt
68WFDStopDiscoverDevicesInt
69WFDStopUsingGroupInt
70WFDUpdateDeviceVisibility
71WlanAllocateMemory
72WlanCancelPlap
73WlanCloseHandle
74WlanConnect
75WlanConnectEx
76WlanConnectWithInput
77WlanDeinitPlapParams
78WlanDeleteProfile
79WlanDisconnect
80WlanDoPlap
81WlanDoesBssMatchSecurity
82WlanEnumAllInterfaces
83WlanEnumInterfaces
84WlanExtractPsdIEDataList
85WlanFreeMemory
86WlanGenerateProfileXmlBasicSettings
87WlanGetAvailableNetworkList
88WlanGetFilterList
89WlanGetInterfaceCapability
90WlanGetMFPNegotiated
91WlanGetNetworkBssList
92WlanGetProfile
93WlanGetProfileCustomUserData
94WlanGetProfileEapUserDataInfo
95WlanGetProfileIndex
96WlanGetProfileKeyInfo
97WlanGetProfileList
98WlanGetProfileMetadata
99WlanGetProfileSsidList
100WlanGetRadioInformation
101WlanGetSecuritySettings
102WlanGetStoredRadioState
103WlanHostedNetworkForceStart
104WlanHostedNetworkForceStop
105WlanHostedNetworkFreeWCNSettings
106WlanHostedNetworkHlpQueryEverUsed
107WlanHostedNetworkInitSettings
108WlanHostedNetworkQueryProperty
109WlanHostedNetworkQuerySecondaryKey
110WlanHostedNetworkQueryStatus
111WlanHostedNetworkQueryWCNSettings
112WlanHostedNetworkRefreshSecuritySettings
113WlanHostedNetworkSetProperty
114WlanHostedNetworkSetSecondaryKey
115WlanHostedNetworkSetWCNSettings
116WlanHostedNetworkStartUsing
117WlanHostedNetworkStopUsing
118WlanIhvControl
119WlanInitPlapParams
120WlanInternalScan
121WlanIsActiveConsoleUser
122WlanIsNetworkSuppressed
123WlanIsUIRequestPending
124WlanLowPrivCloseHandle
125WlanLowPrivEnumInterfaces
126WlanLowPrivFreeMemory
127WlanLowPrivOpenHandle
128WlanLowPrivQueryInterface
129WlanLowPrivSetInterface
130WlanNotifyVsIeProviderInt
131WlanOpenHandle
132WlanParseProfileXmlBasicSettings
133WlanPrivateGetAvailableNetworkList
134WlanQueryAutoConfigParameter
135WlanQueryCreateAllUserProfileRestricted
136WlanQueryInterface
137WlanQueryPlapCredentials
138WlanQueryPreConnectInput
139WlanQueryVirtualInterfaceType
140WlanReasonCodeToString
141WlanRefreshConnections
142WlanRegisterNotification
143WlanRegisterVirtualStationNotification
144WlanRemoveUIForwardingNetworkList
145WlanRenameProfile
146WlanSaveTemporaryProfile
147WlanScan
148WlanSendUIResponse
149WlanSetAllUserProfileRestricted
150WlanSetAutoConfigParameter
151WlanSetFilterList
152WlanSetInterface
153WlanSetProfile
154WlanSetProfileCustomUserData
155WlanSetProfileEapUserData
156WlanSetProfileEapXmlUserData
157WlanSetProfileList
158WlanSetProfileMetadata
159WlanSetProfilePosition
160WlanSetPsdIEDataList
161WlanSetSecuritySettings
162WlanSetUIForwardingNetworkList
163WlanSignalValueToBar
164WlanSsidToDisplayName
165WlanStartAP
166WlanStopAP
167WlanStoreRadioStateOnEnteringAirPlaneMode
168WlanStringToSsid
169WlanTryUpgradeCurrentConnectionAuthCipher
170WlanUpdateProfileWithAuthCipher
171WlanUtf8SsidToDisplayName
172WlanWcmGetInterface
173WlanWcmGetProfileList
174WlanWcmSetInterface
175WlanWfdGOSetWCNSettings
176WlanWfdGetPeerInfo
177WlanWfdStartGO
178WlanWfdStopGO
lib/libc/mingw/lib-common/wscapi.def created+38
...@@ -0,0 +1,38 @@
1;
2; Definition file of WSCAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "WSCAPI.dll"
7EXPORTS
8wscShowAMSCN
9CLSID_WSCProductList
10IID_IWSCProductList
11IID_IWscProduct
12LIBID_wscAPILib
13WscGetAntiMalwareUri
14WscGetSecurityProviderHealth
15WscQueryAntiMalwareUri
16WscRegisterForChanges
17WscRegisterForUserNotifications
18WscUnRegisterChanges
19wscAntiSpywareGetStatus
20wscAntiVirusExpiredBeyondThreshold
21wscAntiVirusGetStatus
22wscAutoUpdatesEnableScheduledMode
23wscAutoUpdatesGetStatus
24wscFirewallGetStatus
25wscGeneralSecurityGetStatus
26wscGetAlertStatus
27wscIcfEnable
28wscIeSettingsFix
29wscIsDefenderAntivirusSupported
30wscLuaSettingsFix
31wscOverrideComponentStatus
32wscPing
33wscProductInfoFree
34wscRegisterChangeNotification
35wscRegisterSecurityProduct
36wscUnRegisterChangeNotification
37wscUnregisterSecurityProduct
38wscUpdateProductStatus
lib/libc/mingw/lib-common/wtsapi32.def created+75
...@@ -0,0 +1,75 @@
1;
2; Definition file of WTSAPI32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "WTSAPI32.dll"
7EXPORTS
8QueryActiveSession
9QueryUserToken
10RegisterUsertokenForNoWinlogon
11WTSCloseServer
12WTSConnectSessionA
13WTSConnectSessionW
14WTSCreateListenerA
15WTSCreateListenerW
16WTSDisconnectSession
17WTSEnableChildSessions
18WTSEnumerateListenersA
19WTSEnumerateListenersW
20WTSEnumerateProcessesA
21WTSEnumerateProcessesExA
22WTSEnumerateProcessesExW
23WTSEnumerateProcessesW
24WTSEnumerateServersA
25WTSEnumerateServersW
26WTSEnumerateSessionsA
27WTSEnumerateSessionsExA
28WTSEnumerateSessionsExW
29WTSEnumerateSessionsW
30WTSFreeMemory
31WTSFreeMemoryExA
32WTSFreeMemoryExW
33WTSGetChildSessionId
34WTSGetListenerSecurityA
35WTSGetListenerSecurityW
36WTSIsChildSessionsEnabled
37WTSLogoffSession
38WTSOpenServerA
39WTSOpenServerExA
40WTSOpenServerExW
41WTSOpenServerW
42WTSQueryListenerConfigA
43WTSQueryListenerConfigW
44WTSQuerySessionInformationA
45WTSQuerySessionInformationW
46WTSQueryUserConfigA
47WTSQueryUserConfigW
48WTSQueryUserToken
49WTSRegisterSessionNotification
50WTSRegisterSessionNotificationEx
51WTSSendMessageA
52WTSSendMessageW
53WTSSetListenerSecurityA
54WTSSetListenerSecurityW
55WTSSetRenderHint
56WTSSetSessionInformationA
57WTSSetSessionInformationW
58WTSSetUserConfigA
59WTSSetUserConfigW
60WTSShutdownSystem
61WTSStartRemoteControlSessionA
62WTSStartRemoteControlSessionW
63WTSStopRemoteControlSession
64WTSTerminateProcess
65WTSUnRegisterSessionNotification
66WTSUnRegisterSessionNotificationEx
67WTSVirtualChannelClose
68WTSVirtualChannelOpen
69WTSVirtualChannelOpenEx
70WTSVirtualChannelPurgeInput
71WTSVirtualChannelPurgeOutput
72WTSVirtualChannelQuery
73WTSVirtualChannelRead
74WTSVirtualChannelWrite
75WTSWaitSystemEvent
lib/libc/mingw/lib32/aclui.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY ACLUI.dll
2
3EXPORTS
4CreateSecurityPage@4
5EditSecurity@8
6IID_ISecurityInformation DATA
7
lib/libc/mingw/lib32/activeds.def created+36
...@@ -0,0 +1,36 @@
1;
2; Definition file of ACTIVEDS.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ACTIVEDS.dll"
7EXPORTS
8ADsGetObject@12
9ADsBuildEnumerator@8
10ADsFreeEnumerator@4
11ADsEnumerateNext@16
12ADsBuildVarArrayStr@12
13ADsBuildVarArrayInt@12
14ADsOpenObject@24
15DllCanUnloadNow@0
16DllGetClassObject@12
17ADsSetLastError@12
18ADsGetLastError@20
19AllocADsMem@4
20FreeADsMem@4
21ReallocADsMem@12
22AllocADsStr@4
23FreeADsStr@4
24ReallocADsStr@8
25ADsEncodeBinaryData@12
26PropVariantToAdsType@16
27AdsTypeToPropVariant@12
28AdsFreeAdsValues@8
29ADsDecodeBinaryData@12
30AdsTypeToPropVariant2@28
31PropVariantToAdsType2@32
32ConvertSecDescriptorToVariant@24
33ConvertSecurityDescriptorToSecDes@28
34BinarySDToSecurityDescriptor@24
35SecurityDescriptorToBinarySD@40
36ConvertTrusteeToSid@28
lib/libc/mingw/lib32/api-ms-win-appmodel-runtime-l1-1-1.def created+19
...@@ -0,0 +1,19 @@
1LIBRARY api-ms-win-appmodel-runtime-l1-1-1
2
3EXPORTS
4
5FormatApplicationUserModelId@16
6GetCurrentApplicationUserModelId@8
7GetCurrentPackageFamilyName@8
8GetCurrentPackageId@8
9PackageFamilyNameFromFullName@12
10PackageFamilyNameFromId@12
11PackageFullNameFromId@12
12PackageIdFromFullName@16
13PackageNameAndPublisherIdFromFamilyName@20
14ParseApplicationUserModelId@20
15VerifyApplicationUserModelId@
16VerifyPackageFamilyName@
17VerifyPackageFullName@
18VerifyPackageId@
19VerifyPackageRelativeApplicationId@
lib/libc/mingw/lib32/api-ms-win-core-comm-l1-1-1.def created+23
...@@ -0,0 +1,23 @@
1LIBRARY api-ms-win-core-comm-l1-1-1
2
3EXPORTS
4
5ClearCommBreak@4
6ClearCommError@12
7EscapeCommFunction@8
8GetCommConfig@12
9GetCommMask@8
10GetCommModemStatus@8
11GetCommProperties@8
12GetCommState@8
13GetCommTimeouts@8
14OpenCommPort@
15PurgeComm@8
16SetCommBreak@4
17SetCommConfig@12
18SetCommMask@8
19SetCommState@8
20SetCommTimeouts@8
21SetupComm@12
22TransmitCommChar@8
23WaitCommEvent@12
lib/libc/mingw/lib32/api-ms-win-core-comm-l1-1-2.def created+24
...@@ -0,0 +1,24 @@
1LIBRARY api-ms-win-core-comm-l1-1-2
2
3EXPORTS
4
5ClearCommBreak@4
6ClearCommError@12
7EscapeCommFunction@8
8GetCommConfig@12
9GetCommMask@8
10GetCommModemStatus@8
11GetCommPorts@
12GetCommProperties@8
13GetCommState@8
14GetCommTimeouts@8
15OpenCommPort@
16PurgeComm@8
17SetCommBreak@4
18SetCommConfig@12
19SetCommMask@8
20SetCommState@8
21SetCommTimeouts@8
22SetupComm@12
23TransmitCommChar@8
24WaitCommEvent@12
lib/libc/mingw/lib32/api-ms-win-core-errorhandling-l1-1-3.def created+17
...@@ -0,0 +1,17 @@
1LIBRARY api-ms-win-core-errorhandling-l1-1-3
2
3EXPORTS
4
5AddVectoredExceptionHandler@8
6FatalAppExitA@8
7FatalAppExitW@8
8GetLastError@0
9GetThreadErrorMode@0
10RaiseException@16
11RaiseFailFastException@12
12RemoveVectoredExceptionHandler@4
13SetErrorMode@4
14SetLastError@4
15SetThreadErrorMode@8
16SetUnhandledExceptionFilter@4
17UnhandledExceptionFilter@4
lib/libc/mingw/lib32/api-ms-win-core-featurestaging-l1-1-0.def created+9
...@@ -0,0 +1,9 @@
1LIBRARY api-ms-win-core-featurestaging-l1-1-0
2
3EXPORTS
4
5GetFeatureEnabledState@8
6RecordFeatureError@8
7RecordFeatureUsage@16
8SubscribeFeatureStateChangeNotification@12
9UnsubscribeFeatureStateChangeNotification@4
lib/libc/mingw/lib32/api-ms-win-core-featurestaging-l1-1-1.def created+10
...@@ -0,0 +1,10 @@
1LIBRARY api-ms-win-core-featurestaging-l1-1-1
2
3EXPORTS
4
5GetFeatureEnabledState@8
6GetFeatureVariant@16
7RecordFeatureError@8
8RecordFeatureUsage@16
9SubscribeFeatureStateChangeNotification@12
10UnsubscribeFeatureStateChangeNotification@4
lib/libc/mingw/lib32/api-ms-win-core-file-fromapp-l1-1-0.def created+15
...@@ -0,0 +1,15 @@
1LIBRARY api-ms-win-core-file-fromapp-l1-1-0
2
3EXPORTS
4
5CopyFileFromAppW@
6CreateDirectoryFromAppW@
7CreateFile2FromAppW@
8CreateFileFromAppW@
9DeleteFileFromAppW@
10FindFirstFileExFromAppW@
11GetFileAttributesExFromAppW@
12MoveFileFromAppW@
13RemoveDirectoryFromAppW@
14ReplaceFileFromAppW@
15SetFileAttributesFromAppW@
lib/libc/mingw/lib32/api-ms-win-core-handle-l1-1-0.def created+9
...@@ -0,0 +1,9 @@
1LIBRARY api-ms-win-core-handle-l1-1-0
2
3EXPORTS
4
5CloseHandle@4
6CompareObjectHandles@8
7DuplicateHandle@28
8GetHandleInformation@8
9SetHandleInformation@12
lib/libc/mingw/lib32/api-ms-win-core-libraryloader-l2-1-0.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-libraryloader-l2-1-0
2
3EXPORTS
4
5LoadPackagedLibrary@8
6QueryOptionalDelayLoadedAPI@16
lib/libc/mingw/lib32/api-ms-win-core-memory-l1-1-3.def created+35
...@@ -0,0 +1,35 @@
1LIBRARY api-ms-win-core-memory-l1-1-3
2
3EXPORTS
4
5CreateFileMappingFromApp@24
6CreateFileMappingW@24
7DiscardVirtualMemory@8
8FlushViewOfFile@8
9GetLargePageMinimum@0
10GetProcessWorkingSetSizeEx@16
11GetWriteWatch@24
12MapViewOfFile@20
13MapViewOfFileEx@24
14MapViewOfFileFromApp@20
15OfferVirtualMemory@12
16OpenFileMappingFromApp@12
17OpenFileMappingW@12
18ReadProcessMemory@20
19ReclaimVirtualMemory@8
20ResetWriteWatch@8
21SetProcessValidCallTargets
22SetProcessWorkingSetSizeEx@16
23UnmapViewOfFile@4
24UnmapViewOfFileEx@8
25VirtualAlloc@16
26VirtualAllocFromApp@16
27VirtualFree@12
28VirtualFreeEx@16
29VirtualLock@8
30VirtualProtect@16
31VirtualProtectFromApp@16
32VirtualQuery@12
33VirtualQueryEx@16
34VirtualUnlock@8
35WriteProcessMemory@20
lib/libc/mingw/lib32/api-ms-win-core-memory-l1-1-4.def created+35
...@@ -0,0 +1,35 @@
1LIBRARY api-ms-win-core-memory-l1-1-4
2
3EXPORTS
4
5CreateFileMappingFromApp@24
6CreateFileMappingW@24
7DiscardVirtualMemory@8
8FlushViewOfFile@8
9GetLargePageMinimum@0
10GetProcessWorkingSetSizeEx@16
11GetWriteWatch@24
12MapViewOfFile@20
13MapViewOfFileEx@24
14MapViewOfFileFromApp@20
15OfferVirtualMemory@12
16OpenFileMappingFromApp@12
17OpenFileMappingW@12
18ReadProcessMemory@20
19ReclaimVirtualMemory@8
20ResetWriteWatch@8
21SetProcessValidCallTargets
22SetProcessWorkingSetSizeEx@16
23UnmapViewOfFile@4
24UnmapViewOfFileEx@8
25VirtualAlloc@16
26VirtualAllocFromApp@16
27VirtualFree@12
28VirtualFreeEx@16
29VirtualLock@8
30VirtualProtect@16
31VirtualProtectFromApp@16
32VirtualQuery@12
33VirtualQueryEx@16
34VirtualUnlock@8
35WriteProcessMemory@20
lib/libc/mingw/lib32/api-ms-win-core-memory-l1-1-5.def created+37
...@@ -0,0 +1,37 @@
1LIBRARY api-ms-win-core-memory-l1-1-5
2
3EXPORTS
4
5CreateFileMappingFromApp@24
6CreateFileMappingW@24
7DiscardVirtualMemory@8
8FlushViewOfFile@8
9GetLargePageMinimum@0
10GetProcessWorkingSetSizeEx@16
11GetWriteWatch@24
12MapViewOfFile@20
13MapViewOfFileEx@24
14MapViewOfFileFromApp@20
15OfferVirtualMemory@12
16OpenFileMappingFromApp@12
17OpenFileMappingW@12
18ReadProcessMemory@20
19ReclaimVirtualMemory@8
20ResetWriteWatch@8
21SetProcessValidCallTargets
22SetProcessWorkingSetSizeEx@16
23UnmapViewOfFile@4
24UnmapViewOfFile2@
25UnmapViewOfFileEx@8
26VirtualAlloc@16
27VirtualAllocFromApp@16
28VirtualFree@12
29VirtualFreeEx@16
30VirtualLock@8
31VirtualProtect@16
32VirtualProtectFromApp@16
33VirtualQuery@12
34VirtualQueryEx@16
35VirtualUnlock@8
36VirtualUnlockEx@
37WriteProcessMemory@20
lib/libc/mingw/lib32/api-ms-win-core-memory-l1-1-6.def created+39
...@@ -0,0 +1,39 @@
1LIBRARY api-ms-win-core-memory-l1-1-6
2
3EXPORTS
4
5CreateFileMappingFromApp@24
6CreateFileMappingW@24
7DiscardVirtualMemory@8
8FlushViewOfFile@8
9GetLargePageMinimum@0
10GetProcessWorkingSetSizeEx@16
11GetWriteWatch@24
12MapViewOfFile@20
13MapViewOfFile3FromApp@
14MapViewOfFileEx@24
15MapViewOfFileFromApp@20
16OfferVirtualMemory@12
17OpenFileMappingFromApp@12
18OpenFileMappingW@12
19ReadProcessMemory@20
20ReclaimVirtualMemory@8
21ResetWriteWatch@8
22SetProcessValidCallTargets
23SetProcessWorkingSetSizeEx@16
24UnmapViewOfFile@4
25UnmapViewOfFile2@
26UnmapViewOfFileEx@8
27VirtualAlloc@16
28VirtualAlloc2FromApp@
29VirtualAllocFromApp@16
30VirtualFree@12
31VirtualFreeEx@16
32VirtualLock@8
33VirtualProtect@16
34VirtualProtectFromApp@16
35VirtualQuery@12
36VirtualQueryEx@16
37VirtualUnlock@8
38VirtualUnlockEx@
39WriteProcessMemory@20
lib/libc/mingw/lib32/api-ms-win-core-memory-l1-1-7.def created+40
...@@ -0,0 +1,40 @@
1LIBRARY api-ms-win-core-memory-l1-1-7
2
3EXPORTS
4
5CreateFileMappingFromApp@24
6CreateFileMappingW@24
7DiscardVirtualMemory@8
8FlushViewOfFile@8
9GetLargePageMinimum@0
10GetProcessWorkingSetSizeEx@16
11GetWriteWatch@24
12MapViewOfFile@20
13MapViewOfFile3FromApp@
14MapViewOfFileEx@24
15MapViewOfFileFromApp@20
16OfferVirtualMemory@12
17OpenFileMappingFromApp@12
18OpenFileMappingW@12
19ReadProcessMemory@20
20ReclaimVirtualMemory@8
21ResetWriteWatch@8
22SetProcessValidCallTargets
23SetProcessValidCallTargetsForMappedView@
24SetProcessWorkingSetSizeEx@16
25UnmapViewOfFile@4
26UnmapViewOfFile2@
27UnmapViewOfFileEx@8
28VirtualAlloc@16
29VirtualAlloc2FromApp@
30VirtualAllocFromApp@16
31VirtualFree@12
32VirtualFreeEx@16
33VirtualLock@8
34VirtualProtect@16
35VirtualProtectFromApp@16
36VirtualQuery@12
37VirtualQueryEx@16
38VirtualUnlock@8
39VirtualUnlockEx@
40WriteProcessMemory@20
lib/libc/mingw/lib32/api-ms-win-core-path-l1-1-0.def created+26
...@@ -0,0 +1,26 @@
1LIBRARY api-ms-win-core-path-l1-1-0
2
3EXPORTS
4
5PathAllocCanonicalize@
6PathAllocCombine@
7PathCchAddBackslash@
8PathCchAddBackslashEx@
9PathCchAddExtension@
10PathCchAppend@
11PathCchAppendEx@
12PathCchCanonicalize@
13PathCchCanonicalizeEx@
14PathCchCombine@
15PathCchCombineEx@
16PathCchFindExtension@
17PathCchIsRoot@
18PathCchRemoveBackslash@
19PathCchRemoveBackslashEx@
20PathCchRemoveExtension@
21PathCchRemoveFileSpec@
22PathCchRenameExtension@
23PathCchSkipRoot@
24PathCchStripPrefix@
25PathCchStripToRoot@
26PathIsUNCEx@
lib/libc/mingw/lib32/api-ms-win-core-psm-appnotify-l1-1-0.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-psm-appnotify-l1-1-0
2
3EXPORTS
4
5RegisterAppStateChangeNotification@
6UnregisterAppStateChangeNotification@
lib/libc/mingw/lib32/api-ms-win-core-realtime-l1-1-1.def created+9
...@@ -0,0 +1,9 @@
1LIBRARY api-ms-win-core-realtime-l1-1-1
2
3EXPORTS
4
5QueryInterruptTime@4
6QueryInterruptTimePrecise@4
7QueryThreadCycleTime@8
8QueryUnbiasedInterruptTime@4
9QueryUnbiasedInterruptTimePrecise@4
lib/libc/mingw/lib32/api-ms-win-core-realtime-l1-1-2.def created+12
...@@ -0,0 +1,12 @@
1LIBRARY api-ms-win-core-realtime-l1-1-2
2
3EXPORTS
4
5ConvertAuxiliaryCounterToPerformanceCounter@
6ConvertPerformanceCounterToAuxiliaryCounter@
7QueryAuxiliaryCounterFrequency@
8QueryInterruptTime@4
9QueryInterruptTimePrecise@4
10QueryThreadCycleTime@8
11QueryUnbiasedInterruptTime@4
12QueryUnbiasedInterruptTimePrecise@4
lib/libc/mingw/lib32/api-ms-win-core-slapi-l1-1-0.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-slapi-l1-1-0
2
3EXPORTS
4
5SLQueryLicenseValueFromApp@20
6SLQueryLicenseValueFromApp2@4
lib/libc/mingw/lib32/api-ms-win-core-synch-l1-2-0.def created+59
...@@ -0,0 +1,59 @@
1LIBRARY api-ms-win-core-synch-l1-2-0
2
3EXPORTS
4
5AcquireSRWLockExclusive@4
6AcquireSRWLockShared@4
7CancelWaitableTimer@4
8CreateEventA@16
9CreateEventExA@16
10CreateEventExW@16
11CreateEventW@16
12CreateMutexA@12
13CreateMutexExA@16
14CreateMutexExW@16
15CreateMutexW@12
16CreateSemaphoreExW@24
17CreateWaitableTimerExW@16
18DeleteCriticalSection@4
19EnterCriticalSection@4
20InitializeConditionVariable@4
21InitializeCriticalSection@4
22InitializeCriticalSectionAndSpinCount@8
23InitializeCriticalSectionEx@12
24InitializeSRWLock@4
25InitOnceBeginInitialize@16
26InitOnceComplete@12
27InitOnceExecuteOnce@16
28InitOnceInitialize@4
29LeaveCriticalSection@4
30OpenEventA@12
31OpenEventW@12
32OpenMutexW@12
33OpenSemaphoreW@12
34OpenWaitableTimerW@12
35ReleaseMutex@4
36ReleaseSemaphore@12
37ReleaseSRWLockExclusive@4
38ReleaseSRWLockShared@4
39ResetEvent@4
40SetCriticalSectionSpinCount@8
41SetEvent@4
42SetWaitableTimer@24
43SetWaitableTimerEx@28
44SignalObjectAndWait@16
45Sleep@4
46SleepConditionVariableCS@12
47SleepConditionVariableSRW@16
48SleepEx@8
49TryAcquireSRWLockExclusive@4
50TryAcquireSRWLockShared@4
51TryEnterCriticalSection@4
52WaitForMultipleObjectsEx@20
53WaitForSingleObject@8
54WaitForSingleObjectEx@12
55WaitOnAddress@16
56WakeAllConditionVariable@4
57WakeByAddressAll@4
58WakeByAddressSingle@4
59WakeConditionVariable@4
lib/libc/mingw/lib32/api-ms-win-core-sysinfo-l1-2-0.def created+31
...@@ -0,0 +1,31 @@
1LIBRARY api-ms-win-core-sysinfo-l1-2-0
2
3EXPORTS
4
5EnumSystemFirmwareTables@12
6GetComputerNameExA@12
7GetComputerNameExW@12
8GetLocalTime@4
9GetLogicalProcessorInformation@8
10GetLogicalProcessorInformationEx@12
11GetNativeSystemInfo@4
12GetProductInfo@20
13GetSystemDirectoryA@8
14GetSystemDirectoryW@8
15GetSystemFirmwareTable@16
16GetSystemInfo@4
17GetSystemTime@4
18GetSystemTimeAdjustment@12
19GetSystemTimeAsFileTime@4
20GetSystemTimePreciseAsFileTime@4
21GetTickCount@0
22GetTickCount64@0
23GetVersion@0
24GetVersionExA@4
25GetVersionExW@4
26GetWindowsDirectoryA@8
27GetWindowsDirectoryW@8
28GlobalMemoryStatusEx@4
29SetLocalTime@4
30SetSystemTime@4
31VerSetConditionMask@16
lib/libc/mingw/lib32/api-ms-win-core-sysinfo-l1-2-3.def created+33
...@@ -0,0 +1,33 @@
1LIBRARY api-ms-win-core-sysinfo-l1-2-3
2
3EXPORTS
4
5EnumSystemFirmwareTables@12
6GetComputerNameExA@12
7GetComputerNameExW@12
8GetIntegratedDisplaySize@4
9GetLocalTime@4
10GetLogicalProcessorInformation@8
11GetLogicalProcessorInformationEx@12
12GetNativeSystemInfo@4
13GetPhysicallyInstalledSystemMemory@4
14GetProductInfo@20
15GetSystemDirectoryA@8
16GetSystemDirectoryW@8
17GetSystemFirmwareTable@16
18GetSystemInfo@4
19GetSystemTime@4
20GetSystemTimeAdjustment@12
21GetSystemTimeAsFileTime@4
22GetSystemTimePreciseAsFileTime@4
23GetTickCount@0
24GetTickCount64@0
25GetVersion@0
26GetVersionExA@4
27GetVersionExW@4
28GetWindowsDirectoryA@8
29GetWindowsDirectoryW@8
30GlobalMemoryStatusEx@4
31SetLocalTime@4
32SetSystemTime@4
33VerSetConditionMask@16
lib/libc/mingw/lib32/api-ms-win-core-winrt-error-l1-1-0.def created+15
...@@ -0,0 +1,15 @@
1LIBRARY api-ms-win-core-winrt-error-l1-1-0
2
3EXPORTS
4
5GetRestrictedErrorInfo@4
6RoCaptureErrorContext@4
7RoFailFastWithErrorContext@4
8RoGetErrorReportingFlags@4
9RoOriginateError@8
10RoOriginateErrorW@12
11RoResolveRestrictedErrorInfoReference@8
12RoSetErrorReportingFlags@4
13RoTransformError@12
14RoTransformErrorW@16
15SetRestrictedErrorInfo@4
lib/libc/mingw/lib32/api-ms-win-core-winrt-error-l1-1-1.def created+22
...@@ -0,0 +1,22 @@
1LIBRARY api-ms-win-core-winrt-error-l1-1-1
2
3EXPORTS
4
5GetRestrictedErrorInfo@4
6IsErrorPropagationEnabled@0
7RoCaptureErrorContext@4
8RoClearError@0
9RoFailFastWithErrorContext@4
10RoGetErrorReportingFlags@4
11RoGetMatchingRestrictedErrorInfo@8
12RoInspectCapturedStackBackTrace@24
13RoInspectThreadErrorInfo@20
14RoOriginateError@8
15RoOriginateErrorW@12
16RoOriginateLanguageException@12
17RoReportFailedDelegate@8
18RoReportUnhandledError@4
19RoSetErrorReportingFlags@4
20RoTransformError@12
21RoTransformErrorW@16
22SetRestrictedErrorInfo@4
lib/libc/mingw/lib32/api-ms-win-core-winrt-l1-1-0.def created+13
...@@ -0,0 +1,13 @@
1LIBRARY api-ms-win-core-winrt-l1-1-0
2
3EXPORTS
4
5RoActivateInstance@8
6RoGetActivationFactory@12
7RoGetApartmentIdentifier@4
8RoInitialize@4
9RoRegisterActivationFactories@16
10RoRegisterForApartmentShutdown@12
11RoRevokeActivationFactories@4
12RoUninitialize@0
13RoUnregisterForApartmentShutdown@4
lib/libc/mingw/lib32/api-ms-win-core-winrt-registration-l1-1-0.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-winrt-registration-l1-1-0
2
3EXPORTS
4
5RoGetActivatableClassRegistration@8
6RoGetServerActivatableClasses@12
lib/libc/mingw/lib32/api-ms-win-core-winrt-robuffer-l1-1-0.def created+5
...@@ -0,0 +1,5 @@
1LIBRARY api-ms-win-core-winrt-robuffer-l1-1-0
2
3EXPORTS
4
5RoGetBufferMarshaler@4
lib/libc/mingw/lib32/api-ms-win-core-winrt-roparameterizediid-l1-1-0.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY api-ms-win-core-winrt-roparameterizediid-l1-1-0
2
3EXPORTS
4
5RoFreeParameterizedTypeExtra@4
6RoGetParameterizedTypeInstanceIID@20
7RoParameterizedTypeExtraGetTypeSignature@4
lib/libc/mingw/lib32/api-ms-win-core-winrt-string-l1-1-0.def created+30
...@@ -0,0 +1,30 @@
1LIBRARY api-ms-win-core-winrt-string-l1-1-0
2
3EXPORTS
4
5HSTRING_UserFree@8
6HSTRING_UserFree64
7HSTRING_UserMarshal@12
8HSTRING_UserMarshal64
9HSTRING_UserSize@12
10HSTRING_UserSize64
11HSTRING_UserUnmarshal@12
12HSTRING_UserUnmarshal64
13WindowsCompareStringOrdinal@12
14WindowsConcatString@12
15WindowsCreateString@12
16WindowsCreateStringReference@16
17WindowsDeleteString@4
18WindowsDeleteStringBuffer@4
19WindowsDuplicateString@8
20WindowsGetStringLen@4
21WindowsGetStringRawBuffer@8
22WindowsIsStringEmpty@4
23WindowsPreallocateStringBuffer@12
24WindowsPromoteStringBuffer@8
25WindowsReplaceString@16
26WindowsStringHasEmbeddedNull@8
27WindowsSubstring@12
28WindowsSubstringWithSpecifiedLength@16
29WindowsTrimStringEnd@12
30WindowsTrimStringStart@12
lib/libc/mingw/lib32/api-ms-win-core-wow64-l1-1-1.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY api-ms-win-core-wow64-l1-1-1
2
3EXPORTS
4
5IsWow64Process@8
6IsWow64Process2@12
lib/libc/mingw/lib32/api-ms-win-devices-config-l1-1-1.def created+17
...@@ -0,0 +1,17 @@
1LIBRARY api-ms-win-devices-config-l1-1-1
2
3EXPORTS
4
5CM_Get_Device_ID_List_SizeW@
6CM_Get_Device_ID_ListW@
7CM_Get_Device_IDW@
8CM_Get_Device_Interface_List_SizeW@
9CM_Get_Device_Interface_ListW@
10CM_Get_Device_Interface_PropertyW@
11CM_Get_DevNode_PropertyW@
12CM_Get_DevNode_Status@
13CM_Get_Parent@
14CM_Locate_DevNodeW@
15CM_MapCrToWin32Err@
16CM_Register_Notification@
17CM_Unregister_Notification@
lib/libc/mingw/lib32/api-ms-win-gaming-deviceinformation-l1-1-0.def created+5
...@@ -0,0 +1,5 @@
1LIBRARY api-ms-win-gaming-deviceinformation-l1-1-0
2
3EXPORTS
4
5GetGamingDeviceModelInformation@
lib/libc/mingw/lib32/api-ms-win-gaming-expandedresources-l1-1-0.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY api-ms-win-gaming-expandedresources-l1-1-0
2
3EXPORTS
4
5GetExpandedResourceExclusiveCpuCount@
6HasExpandedResources@
7ReleaseExclusiveCpuSets@
lib/libc/mingw/lib32/api-ms-win-gaming-tcui-l1-1-0.def created+11
...@@ -0,0 +1,11 @@
1LIBRARY api-ms-win-gaming-tcui-l1-1-0
2
3EXPORTS
4
5ProcessPendingGameUI@4
6ShowChangeFriendRelationshipUI@12
7ShowGameInviteUI@24
8ShowPlayerPickerUI@36
9ShowProfileCardUI@12
10ShowTitleAchievementsUI@12
11TryCancelPendingGameUI@0
lib/libc/mingw/lib32/api-ms-win-gaming-tcui-l1-1-2.def created+20
...@@ -0,0 +1,20 @@
1LIBRARY api-ms-win-gaming-tcui-l1-1-2
2
3EXPORTS
4
5CheckGamingPrivilegeSilently@16
6CheckGamingPrivilegeSilentlyForUser@20
7CheckGamingPrivilegeWithUI@24
8CheckGamingPrivilegeWithUIForUser@28
9ProcessPendingGameUI@4
10ShowChangeFriendRelationshipUI@12
11ShowChangeFriendRelationshipUIForUser@16
12ShowGameInviteUI@24
13ShowGameInviteUIForUser@28
14ShowPlayerPickerUI@36
15ShowPlayerPickerUIForUser@40
16ShowProfileCardUI@12
17ShowProfileCardUIForUser@16
18ShowTitleAchievementsUI@12
19ShowTitleAchievementsUIForUser@16
20TryCancelPendingGameUI@0
lib/libc/mingw/lib32/api-ms-win-gaming-tcui-l1-1-3.def created+22
...@@ -0,0 +1,22 @@
1LIBRARY api-ms-win-gaming-tcui-l1-1-3
2
3EXPORTS
4
5CheckGamingPrivilegeSilently@16
6CheckGamingPrivilegeSilentlyForUser@20
7CheckGamingPrivilegeWithUI@24
8CheckGamingPrivilegeWithUIForUser@28
9ProcessPendingGameUI@4
10ShowChangeFriendRelationshipUI@12
11ShowChangeFriendRelationshipUIForUser@16
12ShowGameInviteUI@24
13ShowGameInviteUIForUser@28
14ShowGameInviteUIWithContext@
15ShowGameInviteUIWithContextForUser@
16ShowPlayerPickerUI@36
17ShowPlayerPickerUIForUser@40
18ShowProfileCardUI@12
19ShowProfileCardUIForUser@16
20ShowTitleAchievementsUI@12
21ShowTitleAchievementsUIForUser@16
22TryCancelPendingGameUI@0
lib/libc/mingw/lib32/api-ms-win-gaming-tcui-l1-1-4.def created+30
...@@ -0,0 +1,30 @@
1LIBRARY api-ms-win-gaming-tcui-l1-1-4
2
3EXPORTS
4
5CheckGamingPrivilegeSilently@16
6CheckGamingPrivilegeSilentlyForUser@20
7CheckGamingPrivilegeWithUI@24
8CheckGamingPrivilegeWithUIForUser@28
9ProcessPendingGameUI@4
10ShowChangeFriendRelationshipUI@12
11ShowChangeFriendRelationshipUIForUser@16
12ShowCustomizeUserProfileUI@
13ShowCustomizeUserProfileUIForUser@
14ShowFindFriendsUI@
15ShowFindFriendsUIForUser@
16ShowGameInfoUI@
17ShowGameInfoUIForUser@
18ShowGameInviteUI@24
19ShowGameInviteUIForUser@28
20ShowGameInviteUIWithContext@
21ShowGameInviteUIWithContextForUser@
22ShowPlayerPickerUI@36
23ShowPlayerPickerUIForUser@40
24ShowProfileCardUI@12
25ShowProfileCardUIForUser@16
26ShowTitleAchievementsUI@12
27ShowTitleAchievementsUIForUser@16
28ShowUserSettingsUI@
29ShowUserSettingsUIForUser@
30TryCancelPendingGameUI@0
lib/libc/mingw/lib32/api-ms-win-security-isolatedcontainer-l1-1-0.def created+5
...@@ -0,0 +1,5 @@
1LIBRARY api-ms-win-security-isolatedcontainer-l1-1-0
2
3EXPORTS
4
5IsProcessInIsolatedContainer@4
lib/libc/mingw/lib32/api-ms-win-shcore-stream-winrt-l1-1-0.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY api-ms-win-shcore-stream-winrt-l1-1-0
2
3EXPORTS
4
5CreateRandomAccessStreamOnFile@16
6CreateRandomAccessStreamOverStream@16
7CreateStreamOverRandomAccessStream@12
lib/libc/mingw/lib32/authz.def created+53
...@@ -0,0 +1,53 @@
1;
2; Definition file of AUTHZ.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "AUTHZ.dll"
7EXPORTS
8AuthzAccessCheck@36
9AuthzAddSidsToContext@24
10AuthzCachedAccessCheck@20
11AuthzEnumerateSecurityEventSources@16
12AuthzEvaluateSacl@24
13AuthzFreeAuditEvent@4
14AuthzFreeContext@4
15AuthzFreeHandle@4
16AuthzFreeResourceManager@4
17AuthzGetInformationFromContext@20
18AuthzInitializeContextFromAuthzContext@28
19AuthzInitializeContextFromSid@32
20AuthzInitializeContextFromToken@32
21AuthzInitializeObjectAccessAuditEvent
22AuthzInitializeObjectAccessAuditEvent2
23AuthzInitializeResourceManager@24
24AuthzInstallSecurityEventSource@8
25AuthzModifySecurityAttributes@12
26AuthzOpenObjectAudit@32
27AuthzRegisterSecurityEventSource@12
28AuthzReportSecurityEvent
29AuthzReportSecurityEventFromParams@20
30AuthzUninstallSecurityEventSource@8
31AuthzUnregisterSecurityEventSource@8
32AuthziAccessCheckEx@40
33AuthziAllocateAuditParams@8
34AuthziCheckContextMembership@16
35AuthziFreeAuditEventType@4
36AuthziFreeAuditParams@4
37AuthziFreeAuditQueue@4
38AuthziGenerateAdminAlertAuditW@16
39AuthziInitializeAuditEvent@44
40AuthziInitializeAuditEventType@20
41AuthziInitializeAuditParams
42AuthziInitializeAuditParamsFromArray@20
43AuthziInitializeAuditParamsWithRM
44AuthziInitializeAuditQueue@20
45AuthziInitializeContextFromSid@32
46AuthziLogAuditEvent@12
47AuthziModifyAuditEvent2@32
48AuthziModifyAuditEvent@28
49AuthziModifyAuditEventType@20
50AuthziModifyAuditQueue@24
51AuthziModifySecurityAttributes@12
52AuthziQuerySecurityAttributes@24
53AuthziSourceAudit
lib/libc/mingw/lib32/avicap32.def created+8
...@@ -0,0 +1,8 @@
1LIBRARY AVICAP32.DLL
2EXPORTS
3videoThunk32@20
4capGetDriverDescriptionW@20
5capGetDriverDescriptionA@20
6capCreateCaptureWindowW@32
7capCreateCaptureWindowA@32
8AppCleanup@4
lib/libc/mingw/lib32/avifil32.def created+77
...@@ -0,0 +1,77 @@
1LIBRARY AVIFIL32.DLL
2EXPORTS
3IID_IGetFrame
4IID_IAVIStream
5IID_IAVIFile
6IID_IAVIEditStream
7EditStreamSetNameW@8
8EditStreamSetNameA@8
9EditStreamSetName@8
10EditStreamSetInfoW@12
11EditStreamSetInfoA@12
12EditStreamSetInfo@12
13EditStreamPaste@24
14EditStreamCut@16
15EditStreamCopy@16
16EditStreamClone@8
17CreateEditableStream@8
18AVIStreamWriteData@16
19AVIStreamWrite@32
20AVIStreamTimeToSample@8
21AVIStreamStart@4
22AVIStreamSetFormat@16
23AVIStreamSampleToTime@8
24AVIStreamRelease@4
25AVIStreamReadFormat@16
26AVIStreamReadData@16
27AVIStreamRead@28
28AVIStreamOpenFromFileW@24
29AVIStreamOpenFromFileA@24
30AVIStreamOpenFromFile@24
31AVIStreamLength@4
32AVIStreamInfoW@12
33AVIStreamInfoA@12
34AVIStreamInfo@12
35AVIStreamGetFrameOpen@8
36AVIStreamGetFrameClose@4
37AVIStreamGetFrame@8
38AVIStreamFindSample@12
39AVIStreamEndStreaming@4
40AVIStreamCreate@16
41AVIStreamBeginStreaming@16
42AVIStreamAddRef@4
43AVISaveW
44AVISaveVW@24
45AVISaveVA@24
46AVISaveV@24
47AVISaveOptionsFree@8
48AVISaveOptions@20
49AVISaveA
50AVISave
51AVIPutFileOnClipboard@4
52AVIMakeStreamFromClipboard@12
53AVIMakeFileFromStreams@12
54AVIMakeCompressedStream@16
55AVIGetFromClipboard@4
56AVIFileWriteData@16
57AVIFileRelease@4
58AVIFileReadData@16
59AVIFileOpenW@16
60AVIFileOpenA@16
61AVIFileOpen@16
62AVIFileInit@0
63AVIFileInfoW@12
64AVIFileInfoA@12
65AVIFileInfo@12
66AVIFileGetStream@16
67AVIFileExit@0
68AVIFileEndRecord@4
69AVIFileCreateStreamW@12
70AVIFileCreateStreamA@12
71AVIFileCreateStream@12
72AVIFileAddRef@4
73AVIClearClipboard@0
74AVIBuildFilterW@12
75AVIBuildFilterA@12
76AVIBuildFilter@12
77
lib/libc/mingw/lib32/bluetoothapis.def created+103
...@@ -0,0 +1,103 @@
1;
2; Definition file of BluetoothApis.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "BluetoothApis.dll"
7EXPORTS
8BluetoothAddressToString@12
9BluetoothDisconnectDevice@8
10BluetoothEnableDiscovery@8
11BluetoothEnableIncomingConnections@8
12BluetoothEnumerateInstalledServices@16
13BluetoothEnumerateInstalledServicesEx@16
14BluetoothEnumerateLocalServices@12
15BluetoothFindBrowseGroupClose@4
16BluetoothFindClassIdClose@4
17BluetoothFindDeviceClose@4
18BluetoothFindFirstBrowseGroup@8
19BluetoothFindFirstClassId@8
20BluetoothFindFirstDevice@8
21BluetoothFindFirstProfileDescriptor@8
22BluetoothFindFirstProtocolDescriptorStack@8
23BluetoothFindFirstProtocolEntry@8
24BluetoothFindFirstRadio@8
25BluetoothFindFirstService@8
26BluetoothFindFirstServiceEx@12
27BluetoothFindNextBrowseGroup@8
28BluetoothFindNextClassId@8
29BluetoothFindNextDevice@8
30BluetoothFindNextProfileDescriptor@8
31BluetoothFindNextProtocolDescriptorStack@8
32BluetoothFindNextProtocolEntry@8
33BluetoothFindNextRadio@8
34BluetoothFindNextService@8
35BluetoothFindProfileDescriptorClose@4
36BluetoothFindProtocolDescriptorStackClose@4
37BluetoothFindProtocolEntryClose@4
38BluetoothFindRadioClose@4
39BluetoothFindServiceClose@4
40BluetoothGATTAbortReliableWrite@16
41BluetoothGATTBeginReliableWrite@12
42BluetoothGATTEndReliableWrite@16
43BluetoothGATTGetCharacteristicValue@24
44BluetoothGATTGetCharacteristics@24
45BluetoothGATTGetDescriptorValue@24
46BluetoothGATTGetDescriptors@24
47BluetoothGATTGetIncludedServices@24
48BluetoothGATTGetServices@20
49BluetoothGATTRegisterEvent@28
50BluetoothGATTSetCharacteristicValue@24
51BluetoothGATTSetDescriptorValue@16
52BluetoothGATTUnregisterEvent@8
53BluetoothGetDeviceInfo@8
54BluetoothGetLocalServiceInfo@16
55BluetoothGetRadioInfo@8
56BluetoothGetServicePnpInstance@24
57BluetoothIsConnectable@4
58BluetoothIsDiscoverable@4
59BluetoothIsVersionAvailable@8
60BluetoothRegisterForAuthentication@16
61BluetoothRegisterForAuthenticationEx@16
62BluetoothRemoveDevice@4
63BluetoothSdpEnumAttributes@16
64BluetoothSdpGetAttributeValue@16
65BluetoothSdpGetContainerElementData@16
66BluetoothSdpGetElementData@12
67BluetoothSdpGetString@24
68BluetoothSendAuthenticationResponse@12
69BluetoothSendAuthenticationResponseEx@8
70BluetoothSetLocalServiceInfo@16
71BluetoothSetServiceState@16
72BluetoothSetServiceStateEx@20
73BluetoothUnregisterAuthentication@4
74BluetoothUpdateDeviceRecord@4
75BthpCheckForUnsupportedGuid@4
76BthpCleanupBRDeviceNode@8
77BthpCleanupDeviceLocalServices@4
78BthpCleanupDeviceRemoteServices@4
79BthpCleanupLEDeviceNodes@16
80BthpEnableA2DPIfPresent@8
81BthpEnableAllServices@8
82BthpEnableConnectableAndDiscoverable@12
83BthpEnableRadioSoftware@4
84BthpFindPnpInfo@16
85BthpGATTCloseSession@8
86BthpInnerRecord@12
87BthpIsBluetoothServiceRunning@0
88BthpIsConnectableByDefault@0
89BthpIsDiscoverable@4
90BthpIsDiscoverableByDefault@0
91BthpIsRadioSoftwareEnabled@4
92BthpIsTopOfServiceGroup@24
93BthpMapStatusToErr@4
94BthpNextRecord@8
95BthpRegisterForAuthentication@28
96BthpSetServiceState@36
97BthpSetServiceStateEx@40
98BthpTranspose16Bits@4
99BthpTranspose32Bits@4
100BthpTransposeAndExtendBytes@12
101FindNextOpenVCOMPort@4
102InstallIncomingComPort@8
103ShouldForceAuthentication@4
lib/libc/mingw/lib32/bthprops.def created+70
...@@ -0,0 +1,70 @@
1;
2; Definition file of bthprops.cpl
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "bthprops.cpl"
7EXPORTS
8ord_103@4 @103
9BluetoothAddressToString@12
10BluetoothAuthenticateDevice@20
11BluetoothAuthenticateDeviceEx@20
12BluetoothAuthenticateMultipleDevices@16
13BluetoothAuthenticationAgent@16
14BluetoothDisconnectDevice@8
15BluetoothDisplayDeviceProperties@8
16BluetoothEnableDiscovery@8
17BluetoothEnableIncomingConnections@8
18BluetoothEnumerateInstalledServices@16
19BluetoothFindBrowseGroupClose@4
20BluetoothFindClassIdClose@4
21BluetoothFindDeviceClose@4
22BluetoothFindFirstBrowseGroup@8
23BluetoothFindFirstClassId@8
24BluetoothFindFirstDevice@8
25BluetoothFindFirstProfileDescriptor@8
26BluetoothFindFirstProtocolDescriptorStack@8
27BluetoothFindFirstProtocolEntry@8
28BluetoothFindFirstRadio@8
29BluetoothFindFirstService@8
30BluetoothFindFirstServiceEx@12
31BluetoothFindNextBrowseGroup@8
32BluetoothFindNextClassId@8
33BluetoothFindNextDevice@8
34BluetoothFindNextProfileDescriptor@8
35BluetoothFindNextProtocolDescriptorStack@8
36BluetoothFindNextProtocolEntry@8
37BluetoothFindNextRadio@8
38BluetoothFindNextService@8
39BluetoothFindProfileDescriptorClose@4
40BluetoothFindProtocolDescriptorStackClose@4
41BluetoothFindProtocolEntryClose@4
42BluetoothFindRadioClose@4
43BluetoothFindServiceClose@4
44BluetoothGetDeviceInfo@8
45BluetoothGetRadioInfo@8
46BluetoothIsConnectable@4
47BluetoothIsDiscoverable@4
48BluetoothIsVersionAvailable@8
49BluetoothMapClassOfDeviceToImageIndex@4
50BluetoothMapClassOfDeviceToString@4
51BluetoothRegisterForAuthentication@16
52BluetoothRegisterForAuthenticationEx@16
53BluetoothRemoveDevice@4
54BluetoothSdpEnumAttributes@16
55BluetoothSdpGetAttributeValue@16
56BluetoothSdpGetContainerElementData@16
57BluetoothSdpGetElementData@12
58BluetoothSdpGetString@24
59BluetoothSelectDevices@4
60BluetoothSelectDevicesFree@4
61BluetoothSendAuthenticationResponse@12
62BluetoothSendAuthenticationResponseEx@8
63BluetoothSetLocalServiceInfo@16
64BluetoothSetServiceState@16
65BluetoothUnregisterAuthentication@4
66BluetoothUpdateDeviceRecord@4
67BthpEnableAllServices@8
68BthpFindPnpInfo@16
69BthpMapStatusToErr@4
70CPlApplet@16
lib/libc/mingw/lib32/cabinet.def created+21
...@@ -0,0 +1,21 @@
1;
2; Definition file of Cabinet.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "Cabinet.dll"
7EXPORTS
8GetDllVersion@0
9DllGetVersion@4
10Extract@8
11DeleteExtractedFiles@4
12FCICreate
13FCIAddFile
14FCIFlushFolder
15FCIFlushCabinet
16FCIDestroy
17FDICreate
18FDIIsCabinet
19FDICopy
20FDIDestroy
21FDITruncateCabinet
lib/libc/mingw/lib32/cfgmgr32.def created+257
...@@ -0,0 +1,257 @@
1;
2; Definition file of CFGMGR32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "CFGMGR32.dll"
7EXPORTS
8CMP_GetBlockedDriverInfo@16
9CMP_GetServerSideDeviceInstallFlags@12
10CMP_Init_Detection@4
11CMP_RegisterNotification@24
12CMP_Report_LogOn@8
13CMP_UnregisterNotification@4
14CMP_WaitNoPendingInstallEvents@4
15CMP_WaitServicesAvailable@4
16CM_Add_Driver_PackageW@40
17CM_Add_Driver_Package_ExW@44
18CM_Add_Empty_Log_Conf@16
19CM_Add_Empty_Log_Conf_Ex@20
20CM_Add_IDA@12
21CM_Add_IDW@12
22CM_Add_ID_ExA@16
23CM_Add_ID_ExW@16
24CM_Add_Range@24
25CM_Add_Res_Des@24
26CM_Add_Res_Des_Ex@28
27CM_Apply_PowerScheme@0
28CM_Connect_MachineA@8
29CM_Connect_MachineW@8
30CM_Create_DevNodeA@16
31CM_Create_DevNodeW@16
32CM_Create_DevNode_ExA@20
33CM_Create_DevNode_ExW@20
34CM_Create_Range_List@8
35CM_Delete_Class_Key@8
36CM_Delete_Class_Key_Ex@12
37CM_Delete_DevNode_Key@12
38CM_Delete_DevNode_Key_Ex@16
39CM_Delete_Device_Interface_KeyA@8
40CM_Delete_Device_Interface_KeyW@8
41CM_Delete_Device_Interface_Key_ExA@12
42CM_Delete_Device_Interface_Key_ExW@12
43CM_Delete_Driver_PackageW@24
44CM_Delete_Driver_Package_ExW@28
45CM_Delete_PowerScheme@8
46CM_Delete_Range@24
47CM_Detect_Resource_Conflict@24
48CM_Detect_Resource_Conflict_Ex@28
49CM_Disable_DevNode@8
50CM_Disable_DevNode_Ex@12
51CM_Disconnect_Machine@4
52CM_Dup_Range_List@12
53CM_Duplicate_PowerScheme@12
54CM_Enable_DevNode@8
55CM_Enable_DevNode_Ex@12
56CM_Enumerate_Classes@12
57CM_Enumerate_Classes_Ex@16
58CM_Enumerate_EnumeratorsA@16
59CM_Enumerate_EnumeratorsW@16
60CM_Enumerate_Enumerators_ExA@20
61CM_Enumerate_Enumerators_ExW@20
62CM_Find_Range@40
63CM_First_Range@20
64CM_Free_Log_Conf@8
65CM_Free_Log_Conf_Ex@12
66CM_Free_Log_Conf_Handle@4
67CM_Free_Range_List@8
68CM_Free_Res_Des@12
69CM_Free_Res_Des_Ex@16
70CM_Free_Res_Des_Handle@4
71CM_Free_Resource_Conflict_Handle@4
72CM_Get_Child@12
73CM_Get_Child_Ex@16
74CM_Get_Class_Key_NameA@16
75CM_Get_Class_Key_NameW@16
76CM_Get_Class_Key_Name_ExA@20
77CM_Get_Class_Key_Name_ExW@20
78CM_Get_Class_NameA@16
79CM_Get_Class_NameW@16
80CM_Get_Class_Name_ExA@20
81CM_Get_Class_Name_ExW@20
82CM_Get_Class_PropertyW@24
83CM_Get_Class_Property_ExW@28
84CM_Get_Class_Property_Keys@16
85CM_Get_Class_Property_Keys_Ex@20
86CM_Get_Class_Registry_PropertyA@28
87CM_Get_Class_Registry_PropertyW@28
88CM_Get_Depth@12
89CM_Get_Depth_Ex@16
90CM_Get_DevNode_Custom_PropertyA@24
91CM_Get_DevNode_Custom_PropertyW@24
92CM_Get_DevNode_Custom_Property_ExA@28
93CM_Get_DevNode_Custom_Property_ExW@28
94CM_Get_DevNode_PropertyW@24
95CM_Get_DevNode_Property_ExW@28
96CM_Get_DevNode_Property_Keys@16
97CM_Get_DevNode_Property_Keys_Ex@20
98CM_Get_DevNode_Registry_PropertyA@24
99CM_Get_DevNode_Registry_PropertyW@24
100CM_Get_DevNode_Registry_Property_ExA@28
101CM_Get_DevNode_Registry_Property_ExW@28
102CM_Get_DevNode_Status@16
103CM_Get_DevNode_Status_Ex@20
104CM_Get_Device_IDA@16
105CM_Get_Device_IDW@16
106CM_Get_Device_ID_ExA@20
107CM_Get_Device_ID_ExW@20
108CM_Get_Device_ID_ListA@16
109CM_Get_Device_ID_ListW@16
110CM_Get_Device_ID_List_ExA@20
111CM_Get_Device_ID_List_ExW@20
112CM_Get_Device_ID_List_SizeA@12
113CM_Get_Device_ID_List_SizeW@12
114CM_Get_Device_ID_List_Size_ExA@16
115CM_Get_Device_ID_List_Size_ExW@16
116CM_Get_Device_ID_Size@12
117CM_Get_Device_ID_Size_Ex@16
118CM_Get_Device_Interface_AliasA@20
119CM_Get_Device_Interface_AliasW@20
120CM_Get_Device_Interface_Alias_ExA@24
121CM_Get_Device_Interface_Alias_ExW@24
122CM_Get_Device_Interface_ListA@20
123CM_Get_Device_Interface_ListW@20
124CM_Get_Device_Interface_List_ExA@24
125CM_Get_Device_Interface_List_ExW@24
126CM_Get_Device_Interface_List_SizeA@16
127CM_Get_Device_Interface_List_SizeW@16
128CM_Get_Device_Interface_List_Size_ExA@20
129CM_Get_Device_Interface_List_Size_ExW@20
130CM_Get_Device_Interface_PropertyW@24
131CM_Get_Device_Interface_Property_ExW@28
132CM_Get_Device_Interface_Property_KeysW@16
133CM_Get_Device_Interface_Property_Keys_ExW@20
134CM_Get_First_Log_Conf@12
135CM_Get_First_Log_Conf_Ex@16
136CM_Get_Global_State@8
137CM_Get_Global_State_Ex@12
138CM_Get_HW_Prof_FlagsA@16
139CM_Get_HW_Prof_FlagsW@16
140CM_Get_HW_Prof_Flags_ExA@20
141CM_Get_HW_Prof_Flags_ExW@20
142CM_Get_Hardware_Profile_InfoA@12
143CM_Get_Hardware_Profile_InfoW@12
144CM_Get_Hardware_Profile_Info_ExA@16
145CM_Get_Hardware_Profile_Info_ExW@16
146CM_Get_Log_Conf_Priority@12
147CM_Get_Log_Conf_Priority_Ex@16
148CM_Get_Next_Log_Conf@12
149CM_Get_Next_Log_Conf_Ex@16
150CM_Get_Next_Res_Des@20
151CM_Get_Next_Res_Des_Ex@24
152CM_Get_Parent@12
153CM_Get_Parent_Ex@16
154CM_Get_Res_Des_Data@16
155CM_Get_Res_Des_Data_Ex@20
156CM_Get_Res_Des_Data_Size@12
157CM_Get_Res_Des_Data_Size_Ex@16
158CM_Get_Resource_Conflict_Count@8
159CM_Get_Resource_Conflict_DetailsA@12
160CM_Get_Resource_Conflict_DetailsW@12
161CM_Get_Sibling@12
162CM_Get_Sibling_Ex@16
163CM_Get_Version@0
164CM_Get_Version_Ex@4
165CM_Import_PowerScheme@12
166CM_Install_DevNodeW@32
167CM_Install_DevNode_ExW@36
168CM_Intersect_Range_List@16
169CM_Invert_Range_List@20
170CM_Is_Dock_Station_Present@4
171CM_Is_Dock_Station_Present_Ex@8
172CM_Is_Version_Available@4
173CM_Is_Version_Available_Ex@8
174CM_Locate_DevNodeA@12
175CM_Locate_DevNodeW@12
176CM_Locate_DevNode_ExA@16
177CM_Locate_DevNode_ExW@16
178CM_MapCrToSpErr@8
179CM_MapCrToWin32Err@8
180CM_Merge_Range_List@16
181CM_Modify_Res_Des@24
182CM_Modify_Res_Des_Ex@28
183CM_Move_DevNode@12
184CM_Move_DevNode_Ex@16
185CM_Next_Range@16
186CM_Open_Class_KeyA@24
187CM_Open_Class_KeyW@24
188CM_Open_Class_Key_ExA@28
189CM_Open_Class_Key_ExW@28
190CM_Open_DevNode_Key@24
191CM_Open_DevNode_Key_Ex@28
192CM_Open_Device_Interface_KeyA@20
193CM_Open_Device_Interface_KeyW@20
194CM_Open_Device_Interface_Key_ExA@24
195CM_Open_Device_Interface_Key_ExW@24
196CM_Query_And_Remove_SubTreeA@20
197CM_Query_And_Remove_SubTreeW@20
198CM_Query_And_Remove_SubTree_ExA@24
199CM_Query_And_Remove_SubTree_ExW@24
200CM_Query_Arbitrator_Free_Data@20
201CM_Query_Arbitrator_Free_Data_Ex@24
202CM_Query_Arbitrator_Free_Size@16
203CM_Query_Arbitrator_Free_Size_Ex@20
204CM_Query_Remove_SubTree@8
205CM_Query_Remove_SubTree_Ex@12
206CM_Query_Resource_Conflict_List@28
207CM_Reenumerate_DevNode@8
208CM_Reenumerate_DevNode_Ex@12
209CM_Register_Device_Driver@8
210CM_Register_Device_Driver_Ex@12
211CM_Register_Device_InterfaceA@24
212CM_Register_Device_InterfaceW@24
213CM_Register_Device_Interface_ExA@28
214CM_Register_Device_Interface_ExW@28
215CM_Remove_SubTree@8
216CM_Remove_SubTree_Ex@12
217CM_Request_Device_EjectA@20
218CM_Request_Device_EjectW@20
219CM_Request_Device_Eject_ExA@24
220CM_Request_Device_Eject_ExW@24
221CM_Request_Eject_PC@0
222CM_Request_Eject_PC_Ex@4
223CM_RestoreAll_DefaultPowerSchemes@4
224CM_Restore_DefaultPowerScheme@8
225CM_Run_Detection@4
226CM_Run_Detection_Ex@8
227CM_Set_ActiveScheme@8
228CM_Set_Class_PropertyW@24
229CM_Set_Class_Property_ExW@28
230CM_Set_Class_Registry_PropertyA@24
231CM_Set_Class_Registry_PropertyW@24
232CM_Set_DevNode_Problem@12
233CM_Set_DevNode_Problem_Ex@16
234CM_Set_DevNode_PropertyW@24
235CM_Set_DevNode_Property_ExW@28
236CM_Set_DevNode_Registry_PropertyA@20
237CM_Set_DevNode_Registry_PropertyW@20
238CM_Set_DevNode_Registry_Property_ExA@24
239CM_Set_DevNode_Registry_Property_ExW@24
240CM_Set_Device_Interface_PropertyW@24
241CM_Set_Device_Interface_Property_ExW@28
242CM_Set_HW_Prof@8
243CM_Set_HW_Prof_Ex@12
244CM_Set_HW_Prof_FlagsA@16
245CM_Set_HW_Prof_FlagsW@16
246CM_Set_HW_Prof_Flags_ExA@20
247CM_Set_HW_Prof_Flags_ExW@20
248CM_Setup_DevNode@8
249CM_Setup_DevNode_Ex@12
250CM_Test_Range_Available@24
251CM_Uninstall_DevNode@8
252CM_Uninstall_DevNode_Ex@12
253CM_Unregister_Device_InterfaceA@8
254CM_Unregister_Device_InterfaceW@8
255CM_Unregister_Device_Interface_ExA@12
256CM_Unregister_Device_Interface_ExW@12
257CM_Write_UserPowerKey@32
lib/libc/mingw/lib32/clfsw32.def created+69
...@@ -0,0 +1,69 @@
1;
2; Definition file of clfsw32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "clfsw32.dll"
7EXPORTS
8LsnDecrement@4
9AddLogContainer@16
10AddLogContainerSet@20
11AdvanceLogBase@16
12AlignReservedLog@16
13AllocReservedLog@12
14CLFS_LSN_INVALID DATA
15CLFS_LSN_NULL DATA
16CloseAndResetLogFile@4
17CreateLogContainerScanContext@24
18CreateLogFile@24
19CreateLogMarshallingArea@32
20DeleteLogByHandle@4
21DeleteLogFile@8
22DeleteLogMarshallingArea@4
23DeregisterManageableLogClient@4
24DumpLogRecords@44
25FlushLogBuffers@8
26FlushLogToLsn@16
27FreeReservedLog@12
28GetLogContainerName@20
29GetLogFileInformation@12
30GetLogIoStatistics@20
31GetNextLogArchiveExtent@16
32HandleLogFull@4
33InstallLogPolicy@8
34LogTailAdvanceFailure@8
35LsnBlockOffset@4
36LsnContainer@4
37LsnCreate@12
38LsnEqual@8
39LsnGreater@8
40LsnIncrement@4
41LsnInvalid@4
42LsnLess@8
43LsnNull@4
44LsnRecordSequence@4
45PrepareLogArchive@48
46QueryLogPolicy@16
47ReadLogArchiveMetadata@20
48ReadLogNotification@12
49ReadLogRecord@40
50ReadLogRestartArea@24
51ReadNextLogRecord@36
52ReadPreviousLogRestartArea@20
53RegisterForLogWriteNotification@12
54RegisterManageableLogClient@8
55RemoveLogContainer@16
56RemoveLogContainerSet@20
57RemoveLogPolicy@8
58ReserveAndAppendLog@40
59ReserveAndAppendLogAligned@44
60ScanLogContainers@12
61SetEndOfLog@12
62SetLogArchiveMode@8
63SetLogArchiveTail@12
64SetLogFileSizeWithPolicy@12
65TerminateLogArchive@4
66TerminateReadLog@4
67TruncateLog@12
68ValidateLog@16
69WriteLogRestartArea@32
lib/libc/mingw/lib32/clusapi.def created+136
...@@ -0,0 +1,136 @@
1;
2; Definition file of CLUSAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "CLUSAPI.dll"
7EXPORTS
8AddClusterNode@16
9AddClusterResourceDependency@8
10AddClusterResourceNode@8
11BackupClusterDatabase@8
12CanResourceBeDependent@8
13ChangeClusterResourceGroup@8
14CloseCluster@4
15CloseClusterGroup@4
16CloseClusterNetInterface@4
17CloseClusterNetwork@4
18CloseClusterNode@4
19CloseClusterNotifyPort@4
20CloseClusterResource@4
21ClusterCloseEnum@4
22ClusterControl@32
23ClusterEnum@20
24ClusterGetEnumCount@4
25ClusterGroupCloseEnum@4
26ClusterGroupControl@32
27ClusterGroupEnum@20
28ClusterGroupGetEnumCount@4
29ClusterGroupOpenEnum@8
30ClusterNetInterfaceControl@32
31ClusterNetworkCloseEnum@4
32ClusterNetworkControl@32
33ClusterNetworkEnum@20
34ClusterNetworkGetEnumCount@4
35ClusterNetworkOpenEnum@8
36ClusterNodeCloseEnum@4
37ClusterNodeControl@32
38ClusterNodeEnum@20
39ClusterNodeGetEnumCount@4
40ClusterNodeOpenEnum@8
41ClusterOpenEnum@8
42ClusterRegBatchAddCommand@24
43ClusterRegBatchCloseNotification@4
44ClusterRegBatchReadCommand@8
45ClusterRegCloseBatch@12
46ClusterRegCloseBatchNotifyPort@4
47ClusterRegCloseKey@4
48ClusterRegCreateBatch@8
49ClusterRegCreateBatchNotifyPort@8
50ClusterRegCreateKey@28
51ClusterRegDeleteKey@8
52ClusterRegDeleteValue@8
53ClusterRegEnumKey@20
54ClusterRegEnumValue@28
55ClusterRegGetBatchNotification@8
56ClusterRegGetKeySecurity@16
57ClusterRegOpenKey@16
58ClusterRegQueryInfoKey@32
59ClusterRegQueryValue@20
60ClusterRegSetKeySecurity@12
61ClusterRegSetValue@20
62ClusterResourceCloseEnum@4
63ClusterResourceControl@32
64ClusterResourceEnum@20
65ClusterResourceGetEnumCount@4
66ClusterResourceOpenEnum@8
67ClusterResourceTypeCloseEnum@4
68ClusterResourceTypeControl@36
69ClusterResourceTypeEnum@20
70ClusterResourceTypeGetEnumCount@4
71ClusterResourceTypeOpenEnum@12
72CreateCluster@12
73CreateClusterGroup@8
74CreateClusterNotifyPort@16
75CreateClusterResource@16
76CreateClusterResourceType@24
77DeleteClusterGroup@4
78DeleteClusterResource@4
79DeleteClusterResourceType@8
80DestroyCluster@16
81DestroyClusterGroup@4
82EvictClusterNode@4
83EvictClusterNodeEx@12
84FailClusterResource@4
85GetClusterFromGroup@4
86GetClusterFromNetInterface@4
87GetClusterFromNetwork@4
88GetClusterFromNode@4
89GetClusterFromResource@4
90GetClusterGroupKey@8
91GetClusterGroupState@12
92GetClusterInformation@16
93GetClusterKey@8
94GetClusterNetInterface@20
95GetClusterNetInterfaceKey@8
96GetClusterNetInterfaceState@4
97GetClusterNetworkId@12
98GetClusterNetworkKey@8
99GetClusterNetworkState@4
100GetClusterNodeId@12
101GetClusterNodeKey@8
102GetClusterNodeState@4
103GetClusterNotify@24
104GetClusterQuorumResource@24
105GetClusterResourceDependencyExpression@12
106GetClusterResourceKey@8
107GetClusterResourceNetworkName@12
108GetClusterResourceState@20
109GetClusterResourceTypeKey@12
110GetNodeClusterState@8
111MoveClusterGroup@8
112OfflineClusterGroup@4
113OfflineClusterResource@4
114OnlineClusterGroup@8
115OnlineClusterResource@4
116OpenCluster@4
117OpenClusterGroup@8
118OpenClusterNetInterface@8
119OpenClusterNetwork@8
120OpenClusterNode@8
121OpenClusterResource@8
122PauseClusterNode@4
123RegisterClusterNotify@16
124RemoveClusterResourceDependency@8
125RemoveClusterResourceNode@8
126RestoreClusterDatabase@12
127ResumeClusterNode@4
128SetClusterGroupName@8
129SetClusterGroupNodeList@12
130SetClusterName@8
131SetClusterNetworkName@8
132SetClusterNetworkPriorityOrder@12
133SetClusterQuorumResource@12
134SetClusterResourceDependencyExpression@8
135SetClusterResourceName@8
136SetClusterServiceAccountPassword@20
lib/libc/mingw/lib32/credui.def created+31
...@@ -0,0 +1,31 @@
1;
2; Definition file of credui.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "credui.dll"
7EXPORTS
8CredPackAuthenticationBufferA@20
9CredPackAuthenticationBufferW@20
10CredUICmdLinePromptForCredentialsA@36
11CredUICmdLinePromptForCredentialsW@36
12CredUIConfirmCredentialsA@8
13CredUIConfirmCredentialsW@8
14CredUIInitControls
15CredUIParseUserNameA@20
16CredUIParseUserNameW@20
17CredUIPromptForCredentialsA@40
18CredUIPromptForCredentialsW@40
19CredUIPromptForWindowsCredentialsA@36
20CredUIPromptForWindowsCredentialsW@36
21CredUIPromptForWindowsCredentialsWorker@44
22CredUIReadSSOCredA@8
23CredUIReadSSOCredW@8
24CredUIStoreSSOCredA@16
25CredUIStoreSSOCredW@16
26CredUnPackAuthenticationBufferA@36
27CredUnPackAuthenticationBufferW@36
28DllCanUnloadNow
29DllGetClassObject@12
30DllRegisterServer
31DllUnregisterServer
lib/libc/mingw/lib32/cryptxml.def created+26
...@@ -0,0 +1,26 @@
1;
2; Definition file of CRYPTXML.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "CRYPTXML.dll"
7EXPORTS
8CryptXmlAddObject@24
9CryptXmlClose@4
10CryptXmlCreateReference@36
11CryptXmlDigestReference@12
12CryptXmlEncode@24
13CryptXmlEnumAlgorithmInfo@16
14CryptXmlFindAlgorithmInfo@16
15CryptXmlGetAlgorithmInfo@12
16CryptXmlGetDocContext@8
17CryptXmlGetReference@8
18CryptXmlGetSignature@8
19CryptXmlGetStatus@8
20CryptXmlGetTransforms@4
21CryptXmlImportPublicKey@12
22CryptXmlOpenToDecode@24
23CryptXmlOpenToEncode@28
24CryptXmlSetHMACSecret@12
25CryptXmlSign@32
26CryptXmlVerifySignature@12
lib/libc/mingw/lib32/cscapi.def created+11
...@@ -0,0 +1,11 @@
1;
2; Definition file of CSCAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "CSCAPI.dll"
7EXPORTS
8CscNetApiGetInterface@16
9CscSearchApiGetInterface@12
10OfflineFilesEnable@8
11OfflineFilesQueryStatus@8
lib/libc/mingw/lib32/d2d1.def created+12
...@@ -0,0 +1,12 @@
1;
2; Definition file of d2d1.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "d2d1.dll"
7EXPORTS
8D2D1CreateFactory@16
9D2D1MakeRotateMatrix@16
10D2D1MakeSkewMatrix@20
11D2D1IsMatrixInvertible@4
12D2D1InvertMatrix@4
lib/libc/mingw/lib32/d3d10.def created+31
...@@ -0,0 +1,31 @@
1LIBRARY "d3d10.dll"
2EXPORTS
3D3D10CompileEffectFromMemory@36
4D3D10CompileShader@40
5D3D10CreateBlob@8
6D3D10CreateDevice@24
7D3D10CreateDeviceAndSwapChain@32
8D3D10CreateEffectFromMemory@24
9D3D10CreateEffectPoolFromMemory@20
10D3D10CreateStateBlock@12
11D3D10DisassembleEffect@12
12D3D10DisassembleShader@20
13D3D10GetGeometryShaderProfile@4
14D3D10GetInputAndOutputSignatureBlob@12
15D3D10GetInputSignatureBlob@12
16D3D10GetOutputSignatureBlob@12
17D3D10GetPixelShaderProfile@4
18D3D10GetShaderDebugInfo@12
19D3D10GetVersion@0
20D3D10GetVertexShaderProfile@4
21D3D10PreprocessShader@28
22D3D10ReflectShader@12
23D3D10RegisterLayers@0
24D3D10StateBlockMaskDifference@12
25D3D10StateBlockMaskDisableAll@4
26D3D10StateBlockMaskDisableCapture@16
27D3D10StateBlockMaskEnableAll@4
28D3D10StateBlockMaskEnableCapture@16
29D3D10StateBlockMaskGetSetting@12
30D3D10StateBlockMaskIntersect@12
31D3D10StateBlockMaskUnion@12
lib/libc/mingw/lib32/d3d11.def created+59
...@@ -0,0 +1,59 @@
1;
2; Definition file of d3d11.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "d3d11.dll"
7EXPORTS
8D3D11CreateDeviceForD3D12@36
9D3DKMTCloseAdapter@4
10D3DKMTDestroyAllocation@4
11D3DKMTDestroyContext@4
12D3DKMTDestroyDevice@4
13D3DKMTDestroySynchronizationObject@4
14D3DKMTPresent@4
15D3DKMTQueryAdapterInfo@4
16D3DKMTSetDisplayPrivateDriverFormat@4
17D3DKMTSignalSynchronizationObject@4
18D3DKMTUnlock@4
19D3DKMTWaitForSynchronizationObject@4
20EnableFeatureLevelUpgrade
21OpenAdapter10@4
22OpenAdapter10_2@4
23CreateDirect3D11DeviceFromDXGIDevice@8
24CreateDirect3D11SurfaceFromDXGISurface@8
25D3D11CoreCreateDevice@40
26D3D11CoreCreateLayeredDevice@20
27D3D11CoreGetLayeredDeviceSize@8
28D3D11CoreRegisterLayers@8
29D3D11CreateDevice@40
30D3D11CreateDeviceAndSwapChain@48
31D3D11On12CreateDevice@40
32D3DKMTCreateAllocation@4
33D3DKMTCreateContext@4
34D3DKMTCreateDevice@4
35D3DKMTCreateSynchronizationObject@4
36D3DKMTEscape@4
37D3DKMTGetContextSchedulingPriority@4
38D3DKMTGetDeviceState@4
39D3DKMTGetDisplayModeList@4
40D3DKMTGetMultisampleMethodList@4
41D3DKMTGetRuntimeData@4
42D3DKMTGetSharedPrimaryHandle@4
43D3DKMTLock@4
44D3DKMTOpenAdapterFromHdc@4
45D3DKMTOpenResource@4
46D3DKMTPresent@4
47D3DKMTQueryAllocationResidency@4
48D3DKMTQueryResourceInfo@4
49D3DKMTRender@4
50D3DKMTSetAllocationPriority@4
51D3DKMTSetContextSchedulingPriority@4
52D3DKMTSetDisplayMode@4
53D3DKMTSetGammaRamp@4
54D3DKMTSetVidPnSourceOwner@4
55D3DKMTWaitForVerticalBlankEvent@4
56D3DPerformance_BeginEvent@8
57D3DPerformance_EndEvent@4
58D3DPerformance_GetStatus@4
59D3DPerformance_SetMarker@8
lib/libc/mingw/lib32/d3d12.def created+19
...@@ -0,0 +1,19 @@
1LIBRARY "d3d12.dll"
2EXPORTS
3GetBehaviorValue@8
4D3D12CreateDevice@16
5D3D12GetDebugInterface@8
6SetAppCompatStringPointer@8
7D3D12CoreCreateLayeredDevice@20
8D3D12CoreGetLayeredDeviceSize@8
9D3D12CoreRegisterLayers@8
10D3D12CreateRootSignatureDeserializer@16
11D3D12CreateVersionedRootSignatureDeserializer@16
12D3D12DeviceRemovedExtendedData DATA
13D3D12EnableExperimentalFeatures@16
14D3D12PIXEventsReplaceBlock@4
15D3D12PIXGetThreadInfo@0
16D3D12PIXNotifyWakeFromFenceSignal@4
17D3D12PIXReportCounter@8
18D3D12SerializeRootSignature@16
19D3D12SerializeVersionedRootSignature@12
lib/libc/mingw/lib32/d3d9.def created+16
...@@ -0,0 +1,16 @@
1LIBRARY d3d9.dll
2EXPORTS
3Direct3DShaderValidatorCreate9@0
4;PSGPError@12 ;unknown
5;PSGPSampleTexture@20 ;unknown
6D3DPERF_BeginEvent@8
7D3DPERF_EndEvent@0
8D3DPERF_GetStatus@0
9D3DPERF_QueryRepeatFrame@0
10D3DPERF_SetMarker@8
11D3DPERF_SetOptions@4
12D3DPERF_SetRegion@8
13;DebugSetLevel ;unknown
14;DebugSetMute@0
15Direct3DCreate9@4
16Direct3DCreate9Ex@8
lib/libc/mingw/lib32/d3dcompiler_47.def created+36
...@@ -0,0 +1,36 @@
1;
2; Definition file of D3DCOMPILER_47.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "D3DCOMPILER_47.dll"
7EXPORTS
8D3DAssemble@32
9DebugSetMute
10D3DCompile2@56
11D3DCompile@44
12D3DCompileFromFile@36
13D3DCompressShaders@16
14D3DCreateBlob@8
15D3DCreateFunctionLinkingGraph@8
16D3DCreateLinker@4
17D3DDecompressShaders@32
18D3DDisassemble10Effect@12
19D3DDisassemble11Trace@28
20D3DDisassemble@20
21D3DDisassembleRegion@32
22D3DGetBlobPart@20
23D3DGetDebugInfo@12
24D3DGetInputAndOutputSignatureBlob@12
25D3DGetInputSignatureBlob@12
26D3DGetOutputSignatureBlob@12
27D3DGetTraceInstructionOffsets@28
28D3DLoadModule@12
29D3DPreprocess@28
30D3DReadFileToBlob@8
31D3DReflect@16
32D3DReflectLibrary@16
33D3DReturnFailure1@12
34D3DSetBlobPart@28
35D3DStripShader@16
36D3DWriteBlobToFile@12
lib/libc/mingw/lib32/davclnt.def created+30
...@@ -0,0 +1,30 @@
1;
2; Definition file of davclnt.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "davclnt.dll"
7EXPORTS
8DavCancelConnectionsToServer@8
9DavFreeUsedDiskSpace@4
10DavGetDiskSpaceUsage@16
11DavGetTheLockOwnerOfTheFile@12
12DavInvalidateCache@4
13DavRegisterAuthCallback@8
14DavUnregisterAuthCallback@4
15DllCanUnloadNow@0
16DllGetClassObject@12
17DllMain@12
18NPAddConnection3@20
19NPAddConnection@12
20NPCancelConnection@8
21NPCloseEnum@4
22NPEnumResource@16
23NPFormatNetworkName@20
24NPGetCaps@4
25NPGetConnection@12
26NPGetResourceInformation@16
27NPGetResourceParent@12
28NPGetUniversalName@16
29NPGetUser@12
30NPOpenEnum@20
lib/libc/mingw/lib32/dcomp.def created+19
...@@ -0,0 +1,19 @@
1;
2; Definition file of dcomp.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dcomp.dll"
7EXPORTS
8DCompositionAttachMouseDragToHwnd@12
9DCompositionAttachMouseWheelToHwnd@12
10DCompositionCreateDevice2@12
11DCompositionCreateDevice3@12
12DCompositionCreateDevice@12
13DCompositionCreateSurfaceHandle@12
14DllCanUnloadNow
15DllGetActivationFactory@8
16DllGetClassObject@12
17DwmEnableMMCSS@4
18DwmFlush
19DwmpEnableDDASupport
lib/libc/mingw/lib32/ddraw.def created+15
...@@ -0,0 +1,15 @@
1LIBRARY ddraw.dll
2EXPORTS
3DDGetAttachedSurfaceLcl@12
4DDInternalLock@8
5DDInternalUnlock@4
6DSoundHelp@12
7DirectDrawCreate@12
8DirectDrawCreateClipper@12
9DirectDrawCreateEx@16
10DirectDrawEnumerateA@8
11DirectDrawEnumerateExA@12
12DirectDrawEnumerateExW@12
13DirectDrawEnumerateW@8
14GetDDSurfaceLocal@12
15GetSurfaceFromDC@12
lib/libc/mingw/lib32/dfscli.def created+36
...@@ -0,0 +1,36 @@
1;
2; Definition file of dfscli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dfscli.dll"
7EXPORTS
8I_NetDfsIsThisADomainName@4
9NetDfsAdd@20
10NetDfsAddFtRoot@20
11NetDfsAddRootTarget@20
12NetDfsAddStdRoot@16
13NetDfsAddStdRootForced@16
14NetDfsEnum@24
15NetDfsGetClientInfo@20
16NetDfsGetDcAddress@16
17NetDfsGetFtContainerSecurity@16
18NetDfsGetInfo@20
19NetDfsGetSecurity@16
20NetDfsGetStdContainerSecurity@16
21NetDfsGetSupportedNamespaceVersion@12
22NetDfsManagerGetConfigInfo@28
23NetDfsManagerInitialize@8
24NetDfsManagerSendSiteInfo@12
25NetDfsMove@12
26NetDfsRemove@12
27NetDfsRemoveFtRoot@16
28NetDfsRemoveFtRootForced@20
29NetDfsRemoveRootTarget@12
30NetDfsRemoveStdRoot@12
31NetDfsRename@8
32NetDfsSetClientInfo@20
33NetDfsSetFtContainerSecurity@12
34NetDfsSetInfo@20
35NetDfsSetSecurity@12
36NetDfsSetStdContainerSecurity@12
lib/libc/mingw/lib32/dhcpcsvc.def created+71
...@@ -0,0 +1,71 @@
1LIBRARY DHCPCSVC.DLL
2EXPORTS
3DhcpAcquireParameters@4
4DhcpAcquireParametersByBroadcast@4
5DhcpCApiCleanup
6DhcpCApiCleanup@0
7DhcpCApiInitialize@4
8DhcpClient_Generalize
9DhcpDeRegisterConnectionStateNotification@8
10DhcpDeRegisterOptions@4
11DhcpDeRegisterParamChange@12
12DhcpDelPersistentRequestParams@8
13DhcpEnableDhcp@8
14DhcpEnableTracing@4
15DhcpEnumClasses@16
16DhcpEnumInterfaces@4
17DhcpFallbackRefreshParams@4
18DhcpFreeEnumeratedInterfaces@4
19DhcpFreeLeaseInfo@4
20DhcpFreeLeaseInfoArray@8
21DhcpFreeMem@4
22DhcpGetClassId@8
23DhcpGetClientId@8
24DhcpGetDhcpServicedConnections@12
25DhcpGetFallbackParams@8
26DhcpGetNotificationStatus@8
27DhcpGetOriginalSubnetMask@8
28DhcpGetTraceArray@4
29DhcpGlobalIsShuttingDown DATA
30DhcpGlobalServiceSyncEvent DATA
31DhcpGlobalTerminateEvent DATA
32DhcpHandlePnPEvent@20
33DhcpIsEnabled@8
34DhcpLeaseIpAddress@24
35DhcpLeaseIpAddressEx@32
36DhcpNotifyConfigChange@28
37DhcpNotifyConfigChangeEx@32
38DhcpNotifyMediaReconnected@4
39DhcpOpenGlobalEvent
40DhcpPersistentRequestParams@28
41DhcpQueryLeaseInfo@8
42DhcpQueryLeaseInfoArray@12
43DhcpQueryLeaseInfoEx@12
44DhcpRegisterConnectionStateNotification@12
45DhcpRegisterOptions@16
46DhcpRegisterParamChange@28
47DhcpRemoveDNSRegistrations@0
48DhcpReleaseIpAddressLease@8
49DhcpReleaseIpAddressLeaseEx@16
50DhcpReleaseParameters@4
51DhcpRemoveDNSRegistrations
52DhcpRenewIpAddressLease@16
53DhcpRenewIpAddressLeaseEx@24
54DhcpRequestCachedParams@20
55DhcpRequestOptions@28
56DhcpRequestParams@44
57DhcpSetClassId@8
58DhcpSetClientId@8
59DhcpSetFallbackParams@8
60DhcpSetMSFTVendorSpecificOptions@24
61DhcpStaticRefreshParams@4
62DhcpUndoRequestParams@16
63Dhcpv4CheckServerAvailability@8
64Dhcpv4EnableDhcpEx@4
65McastApiCleanup
66McastApiStartup@4
67McastEnumerateScopes@20
68McastGenUID@4
69McastReleaseAddress@12
70McastRenewAddress@16
71McastRequestAddress@20
lib/libc/mingw/lib32/dhcpcsvc6.def created+17
...@@ -0,0 +1,17 @@
1;
2; Definition file of dhcpcsvc6.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dhcpcsvc6.DLL"
7EXPORTS
8Dhcpv6AcquireParameters@4
9Dhcpv6FreeLeaseInfo@4
10Dhcpv6IsEnabled@8
11Dhcpv6Main@4
12Dhcpv6QueryLeaseInfo@8
13Dhcpv6ReleaseParameters@4
14Dhcpv6ReleasePrefix@12
15Dhcpv6RenewPrefix@20
16Dhcpv6RequestParams@32
17Dhcpv6RequestPrefix@16
lib/libc/mingw/lib32/dhcpsapi.def created+144
...@@ -0,0 +1,144 @@
1;
2; Definition file of DHCPSAPI.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "DHCPSAPI.DLL"
7EXPORTS
8DhcpAddMScopeElement@12
9DhcpAddServer@20
10DhcpAddSubnetElement@12
11DhcpAddSubnetElementV4@12
12DhcpAddSubnetElementV5@12
13DhcpAddSubnetElementV6@24
14DhcpAuditLogGetParams@24
15DhcpAuditLogSetParams@24
16DhcpCreateClass@12
17DhcpCreateClassV6@12
18DhcpCreateClientInfo@8
19DhcpCreateClientInfoV4@8
20DhcpCreateClientInfoVQ@8
21DhcpCreateOption@12
22DhcpCreateOptionV5@24
23DhcpCreateOptionV6@24
24DhcpCreateSubnet@12
25DhcpCreateSubnetV6@24
26DhcpCreateSubnetVQ@12
27DhcpDeleteClass@12
28DhcpDeleteClassV6@12
29DhcpDeleteClientInfo@8
30DhcpDeleteClientInfoV6@8
31DhcpDeleteMClientInfo@8
32DhcpDeleteMScope@12
33DhcpDeleteServer@20
34DhcpDeleteSubnet@12
35DhcpDeleteSubnetV6@24
36DhcpDeleteSuperScopeV4@8
37DhcpDsCleanup@0
38DhcpDsClearHostServerEntries@0
39DhcpDsInit@0
40DhcpEnumClasses@28
41DhcpEnumClassesV6@28
42DhcpEnumMScopeClients@28
43DhcpEnumMScopeElements@32
44DhcpEnumMScopes@24
45DhcpEnumOptionValues@28
46DhcpEnumOptionValuesV5@40
47DhcpEnumOptionValuesV6@40
48DhcpEnumOptions@24
49DhcpEnumOptionsV5@36
50DhcpEnumOptionsV6@36
51DhcpEnumServers@20
52DhcpEnumSubnetClients@28
53DhcpEnumSubnetClientsV4@28
54DhcpEnumSubnetClientsV5@28
55DhcpEnumSubnetClientsV6@40
56DhcpEnumSubnetClientsVQ@28
57DhcpEnumSubnetElements@32
58DhcpEnumSubnetElementsV4@32
59DhcpEnumSubnetElementsV5@32
60DhcpEnumSubnetElementsV6@44
61DhcpEnumSubnets@24
62DhcpEnumSubnetsV6@24
63DhcpGetAllOptionValues@16
64DhcpGetAllOptionValuesV6@16
65DhcpGetAllOptions@12
66DhcpGetAllOptionsV6@12
67DhcpGetClassInfo@16
68DhcpGetClientInfo@12
69DhcpGetClientInfoV4@12
70DhcpGetClientInfoV6@12
71DhcpGetClientInfoVQ@12
72DhcpGetClientOptions@16
73DhcpGetMCastMibInfo@8
74DhcpGetMScopeInfo@12
75DhcpGetMibInfo@8
76DhcpGetMibInfoV6@8
77DhcpGetMibInfoVQ@8
78DhcpGetOptionInfo@12
79DhcpGetOptionInfoV5@24
80DhcpGetOptionInfoV6@24
81DhcpGetOptionValue@16
82DhcpGetOptionValueV5@28
83DhcpGetOptionValueV6@28
84DhcpGetServerBindingInfo@12
85DhcpGetServerBindingInfoV6@12
86DhcpGetServerSpecificStrings@8
87DhcpGetSubnetInfo@12
88DhcpGetSubnetInfoV6@24
89DhcpGetSubnetInfoVQ@12
90DhcpGetSuperScopeInfoV4@8
91DhcpGetThreadOptions@8
92DhcpGetVersion@12
93DhcpModifyClass@12
94DhcpModifyClassV6@12
95DhcpRemoveMScopeElement@16
96DhcpRemoveOption@8
97DhcpRemoveOptionV5@20
98DhcpRemoveOptionV6@20
99DhcpRemoveOptionValue@12
100DhcpRemoveOptionValueV5@24
101DhcpRemoveOptionValueV6@24
102DhcpRemoveSubnetElement@16
103DhcpRemoveSubnetElementV4@16
104DhcpRemoveSubnetElementV5@16
105DhcpRemoveSubnetElementV6@28
106DhcpRpcFreeMemory@4
107DhcpScanDatabase@16
108DhcpScanMDatabase@16
109DhcpServerAuditlogParamsFree@4
110DhcpServerBackupDatabase@8
111DhcpServerGetConfig@8
112DhcpServerGetConfigV4@8
113DhcpServerGetConfigV6@12
114DhcpServerGetConfigVQ@8
115DhcpServerQueryAttribute@16
116DhcpServerQueryAttributes@20
117DhcpServerQueryDnsRegCredentials@20
118DhcpServerRedoAuthorization@8
119DhcpServerRestoreDatabase@8
120DhcpServerSetConfig@12
121DhcpServerSetConfigV4@12
122DhcpServerSetConfigV6@16
123DhcpServerSetConfigVQ@12
124DhcpServerSetDnsRegCredentials@16
125DhcpSetClientInfo@8
126DhcpSetClientInfoV4@8
127DhcpSetClientInfoV6@8
128DhcpSetClientInfoVQ@8
129DhcpSetMScopeInfo@16
130DhcpSetOptionInfo@12
131DhcpSetOptionInfoV5@24
132DhcpSetOptionInfoV6@24
133DhcpSetOptionValue@16
134DhcpSetOptionValueV5@28
135DhcpSetOptionValueV6@28
136DhcpSetOptionValues@12
137DhcpSetOptionValuesV5@24
138DhcpSetServerBindingInfo@12
139DhcpSetServerBindingInfoV6@12
140DhcpSetSubnetInfo@12
141DhcpSetSubnetInfoV6@24
142DhcpSetSubnetInfoVQ@12
143DhcpSetSuperScopeV4@16
144DhcpSetThreadOptions@8
lib/libc/mingw/lib32/dinput8.def created+3
...@@ -0,0 +1,3 @@
1LIBRARY dinput8.dll
2EXPORTS
3DirectInput8Create@20
lib/libc/mingw/lib32/dnsapi.def created+295
...@@ -0,0 +1,295 @@
1;
2; Definition file of DNSAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "DNSAPI.dll"
7EXPORTS
8DnsGetDomainName
9DnsIsAMailboxType
10DnsIsNSECType
11DnsIsStatusRcode
12DnsMapRcodeToStatus
13DnsStatusString
14DnsUnicodeToUtf8@8
15DnsUtf8ToUnicode@8
16Dns_ReadPacketName@20
17Dns_ReadPacketNameAllocate@20
18Dns_SkipPacketName
19Dns_WriteDottedNameToPacket@16
20AdaptiveTimeout_ClearInterfaceSpecificConfiguration
21AdaptiveTimeout_ResetAdaptiveTimeout
22AddRefQueryBlobEx@16
23BreakRecordsIntoBlob@12
24Coalesce_UpdateNetVersion
25CombineRecordsInBlob@8
26DeRefQueryBlobEx@16
27DelaySortDAServerlist
28DnsAcquireContextHandle_A@12
29DnsAcquireContextHandle_W@12
30DnsAllocateRecord@4
31DnsApiAlloc@4
32DnsApiAllocZero@4
33DnsApiFree@4
34DnsApiHeapReset@12
35DnsApiRealloc@8
36DnsApiSetDebugGlobals@4
37DnsAsyncRegisterHostAddrs@40
38DnsAsyncRegisterInit@4
39DnsAsyncRegisterTerm
40DnsCancelQuery@4
41DnsCheckNrptRuleIntegrity@4
42DnsCheckNrptRules@12
43DnsConnectionDeletePolicyEntries@4
44DnsConnectionDeletePolicyEntriesPrivate@8
45DnsConnectionDeleteProxyInfo@8
46DnsConnectionFreeNameList@4
47DnsConnectionFreeProxyInfo@4
48DnsConnectionFreeProxyInfoEx@4
49DnsConnectionFreeProxyList@4
50DnsConnectionGetHandleForHostUrlPrivate@24
51DnsConnectionGetNameList@4
52DnsConnectionGetProxyInfo@12
53DnsConnectionGetProxyInfoForHostUrl@20
54DnsConnectionGetProxyList@8
55DnsConnectionSetPolicyEntries@8
56DnsConnectionSetPolicyEntriesPrivate@12
57DnsConnectionSetProxyInfo@12
58DnsConnectionUpdateIfIndexTable@4
59DnsCopyStringEx@20
60DnsCreateReverseNameStringForIpAddress@4
61DnsCreateStandardDnsNameCopy@12
62DnsCreateStringCopy@8
63DnsDeRegisterLocal@8
64DnsDhcpRegisterAddrs@4
65DnsDhcpRegisterHostAddrs@40
66DnsDhcpRegisterInit
67DnsDhcpRegisterTerm
68DnsDhcpRemoveRegistrations
69DnsDhcpSrvRegisterHostAddr@4
70DnsDhcpSrvRegisterHostAddrEx@4
71DnsDhcpSrvRegisterHostName@48
72DnsDhcpSrvRegisterHostNameEx@60
73DnsDhcpSrvRegisterInit@8
74DnsDhcpSrvRegisterInitEx@12
75DnsDhcpSrvRegisterInitialize@4
76DnsDhcpSrvRegisterTerm
77DnsDisableIdnEncoding@8
78DnsDowncaseDnsNameLabel@16
79DnsExtractRecordsFromMessage_UTF8@12
80DnsExtractRecordsFromMessage_W@12
81DnsFindAuthoritativeZone@16
82DnsFlushResolverCache
83DnsFlushResolverCacheEntry_A@4
84DnsFlushResolverCacheEntry_UTF8@4
85DnsFlushResolverCacheEntry_W@4
86DnsFree@8
87DnsFreeAdaptersInfo@8
88DnsFreeConfigStructure@8
89DnsFreeNrptRule@4
90DnsFreeNrptRuleNamesList@8
91DnsFreePolicyConfig@4
92DnsFreeProxyName@4
93DnsGetAdaptersInfo@24
94DnsGetApplicationIdentifier@12
95DnsGetBufferLengthForStringCopy@16
96DnsGetCacheDataTable@4
97DnsGetCacheDataTableEx@12
98DnsGetDnsServerList@4
99DnsGetInterfaceSettings@20
100DnsGetLastFailedUpdateInfo@4
101DnsGetNrptRuleNamesList@8
102DnsGetPolicyTableInfo@16
103DnsGetPolicyTableInfoPrivate@16
104DnsGetPrimaryDomainName_A
105DnsGetProxyInfoPrivate@16
106DnsGetProxyInformation@20
107DnsGetQueryRetryTimeouts@24
108DnsGetSettings@4
109DnsGlobals DATA
110DnsIpv6AddressToString@8
111DnsIpv6StringToAddress@12
112DnsIsStringCountValidForTextType@8
113DnsLogEvent@16
114DnsModifyRecordsInSet_A@24
115DnsModifyRecordsInSet_UTF8@24
116DnsModifyRecordsInSet_W@24
117DnsNameCompareEx_A@12
118DnsNameCompareEx_UTF8@12
119DnsNameCompareEx_W@12
120DnsNameCompare_A@8
121DnsNameCompare_UTF8@8
122DnsNameCompare_W@8
123DnsNameCopy@24
124DnsNameCopyAllocate@16
125DnsNetworkInfo_CreateFromFAZ@20
126DnsNetworkInformation_CreateFromFAZ@16
127DnsNotifyResolver@8
128DnsNotifyResolverClusterIp@8
129DnsNotifyResolverEx@16
130DnsQueryConfig@24
131DnsQueryConfigAllocEx@12
132DnsQueryConfigDword@8
133DnsQueryEx@12
134DnsQueryExA@4
135DnsQueryExUTF8@4
136DnsQueryExW@4
137DnsQuery_A@24
138DnsQuery_UTF8@24
139DnsQuery_W@24
140DnsRecordBuild_UTF8@28
141DnsRecordBuild_W@28
142DnsRecordCompare@8
143DnsRecordCopyEx@12
144DnsRecordListFree@8
145DnsRecordListUnmapV4MappedAAAAInPlace@4
146DnsRecordSetCompare@16
147DnsRecordSetCopyEx@12
148DnsRecordSetDetach@4
149DnsRecordStringForType@4
150DnsRecordStringForWritableType@4
151DnsRecordTypeForName@8
152DnsRegisterLocal@16
153DnsReleaseContextHandle@4
154DnsRemoveNrptRule@4
155DnsRemoveRegistrations
156DnsReplaceRecordSetA@20
157DnsReplaceRecordSetUTF8@20
158DnsReplaceRecordSetW@20
159DnsResetQueryRetryTimeouts@16
160DnsResolverOp@12
161DnsResolverQueryHvsi@32
162DnsScreenLocalAddrsForRegistration@12
163DnsServiceBrowse@8
164DnsServiceBrowseCancel@4
165DnsServiceConstructInstance@40
166DnsServiceCopyInstance@4
167DnsServiceDeRegister@8
168DnsServiceFreeInstance@4
169DnsServiceRegister@8
170DnsServiceRegisterCancel@4
171DnsServiceResolve@8
172DnsServiceResolveCancel@4
173DnsSetConfigDword@12
174DnsSetConfigValue@20
175DnsSetInterfaceSettings@20
176DnsSetNrptRule@12
177DnsSetNrptRules@16
178DnsSetQueryRetryTimeouts@24
179DnsSetSettings@4
180DnsStartMulticastQuery@8
181DnsStopMulticastQuery@4
182DnsStringCopyAllocateEx@16
183DnsTraceServerConfig@12
184DnsUpdate@20
185DnsUpdateMachinePresence
186DnsUpdateTest_A@16
187DnsUpdateTest_UTF8@16
188DnsUpdateTest_W@16
189DnsValidateNameOrIp_TempW@8
190DnsValidateName_A@8
191DnsValidateName_UTF8@8
192DnsValidateName_W@8
193DnsValidateServerArray_A@12
194DnsValidateServerArray_W@12
195DnsValidateServerStatus@12
196DnsValidateServer_A@12
197DnsValidateServer_W@12
198DnsValidateUtf8Byte@8
199DnsWriteQuestionToBuffer_UTF8@24
200DnsWriteQuestionToBuffer_W@24
201DnsWriteReverseNameStringForIpAddress@8
202Dns_AddRecordsToMessage@12
203Dns_AllocateMsgBuf@4
204Dns_BuildPacket@28
205Dns_CacheServiceCleanup
206Dns_CacheServiceInit
207Dns_CacheServiceStopIssued
208Dns_CleanupWinsock@0
209Dns_CloseConnection@4
210Dns_CloseSocket@4
211Dns_CreateMulticastSocket@20
212Dns_CreateSocket@12
213Dns_CreateSocketEx@20
214Dns_ExtractRecordsFromMessage@12
215Dns_FindAuthoritativeZoneLib@16
216Dns_FreeMsgBuf@4
217Dns_GetRandomXid@4
218Dns_InitializeMsgBuf@4
219Dns_InitializeMsgRemoteSockaddr@8
220Dns_InitializeWinsock
221Dns_OpenTcpConnectionAndSend@12
222Dns_ParseMessage@20
223Dns_ParsePacketRecord@12
224Dns_PingAdapterServers@4
225Dns_ReadRecordStructureFromPacket@12
226Dns_RecvTcp@4
227Dns_ResetNetworkInfo@4
228Dns_SendAndRecvUdp@20
229Dns_SendEx@12
230Dns_SetRecordDatalength@8
231Dns_SetRecordsSection@8
232Dns_SetRecordsTtl@8
233Dns_SkipToRecord@12
234Dns_UpdateLib@20
235Dns_UpdateLibEx@28
236Dns_WriteQuestionToMessage@16
237Dns_WriteRecordStructureToPacketEx@20
238ExtraInfo_Init@8
239Faz_AreServerListsInSameNameSpace@12
240FlushDnsPolicyUnreachableStatus
241GetCurrentTimeInSeconds
242HostsFile_Close@4
243HostsFile_Open@4
244HostsFile_ReadLine@4
245IpHelp_IsAddrOnLink@4
246Local_GetRecordsForLocalName@8
247Local_GetRecordsForLocalNameEx@20
248NetInfo_Build@8
249NetInfo_Clean@8
250NetInfo_Copy@4
251NetInfo_CopyNetworkIndex@8
252NetInfo_CreatePerNetworkNetinfo@8
253NetInfo_Free@4
254NetInfo_GetAdapterByAddress@12
255NetInfo_GetAdapterByInterfaceIndex@12
256NetInfo_GetAdapterByName@8
257NetInfo_IsAddrConfig@8
258NetInfo_IsForUpdate@4
259NetInfo_IsTcpipConfigChange@4
260NetInfo_ResetServerPriorities@8
261NetInfo_UpdateDnsInterfaceConfigChange@4
262NetInfo_UpdateNetworkProperties@28
263NetInfo_UpdateServerReachability@12
264QueryDirectEx@40
265Query_Cancel@12
266Query_Main@4
267Reg_FreeUpdateInfo@8
268Reg_GetValueEx@28
269Reg_ReadGlobalsEx@8
270Reg_ReadUpdateInfo@8
271Security_ContextListTimeout@4
272Send_AndRecvUdpWithParam@4
273Send_MessagePrivate@12
274Send_MessagePrivateEx@16
275Send_OpenTcpConnectionAndSend@12
276Socket_CacheCleanup@0
277Socket_CacheInit@4
278Socket_CleanupWinsock@0
279Socket_ClearMessageSockets@4
280Socket_CloseEx@8
281Socket_CloseMessageSockets@4
282Socket_Create@20
283Socket_CreateMulticast@20
284Socket_InitWinsock@4
285Socket_JoinMulticast@20
286Socket_RecvFrom@40
287Socket_SetMulticastInterface@16
288Socket_SetMulticastLoopBack@12
289Socket_SetTtl@20
290Socket_TcpListen@4
291Trace_Reset@0
292Update_ReplaceAddressRecordsW@20
293Util_IsIp6Running@0
294Util_IsRunningOnXboxOne@0
295WriteDnsNrptRulesToRegistry@16
lib/libc/mingw/lib32/dsound.def created+12
...@@ -0,0 +1,12 @@
1LIBRARY dsound.dll
2EXPORTS
3DirectSoundCaptureCreate@12
4DirectSoundCaptureCreate8@12
5DirectSoundCaptureEnumerateA@8
6DirectSoundCaptureEnumerateW@8
7DirectSoundCreate@12
8DirectSoundCreate8@12
9DirectSoundEnumerateA@8
10DirectSoundEnumerateW@8
11DirectSoundFullDuplexCreate@40
12GetDeviceID@8
lib/libc/mingw/lib32/dsrole.def created+21
...@@ -0,0 +1,21 @@
1;
2; Definition file of dsrole.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dsrole.dll"
7EXPORTS
8DsRoleAbortDownlevelServerUpgrade@16
9DsRoleCancel@8
10DsRoleDcAsDc@68
11DsRoleDcAsReplica@12
12DsRoleDemoteDc@44
13DsRoleDnsNameToFlatName@16
14DsRoleFreeMemory@4
15DsRoleGetDatabaseFacts@24
16DsRoleGetDcOperationProgress@12
17DsRoleGetDcOperationResults@12
18DsRoleGetPrimaryDomainInformation@12
19DsRoleIfmHandleFree@8
20DsRoleServerSaveStateForUpgrade@4
21DsRoleUpgradeDownlevelServer@48
lib/libc/mingw/lib32/dssec.def created+13
...@@ -0,0 +1,13 @@
1;
2; Definition file of DSSEC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "DSSEC.dll"
7EXPORTS
8DSCreateISecurityInfoObject@28
9DSCreateSecurityPage@28
10DSEditSecurity@32
11DSCreateISecurityInfoObjectEx@40
12DllCanUnloadNow
13DllGetClassObject@12
lib/libc/mingw/lib32/dwmapi.def created+48
...@@ -0,0 +1,48 @@
1;
2; Definition file of dwmapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dwmapi.dll"
7EXPORTS
8DwmpDxGetWindowSharedSurface@32
9DwmpDxUpdateWindowSharedSurface@24
10DwmEnableComposition@4
11DwmAttachMilContent@4
12DwmDefWindowProc@20
13DwmDetachMilContent@4
14DwmEnableBlurBehindWindow@8
15DwmEnableMMCSS@4
16DwmExtendFrameIntoClientArea@8
17DwmFlush@0
18DwmGetColorizationColor@8
19DwmpDxBindSwapChain@12
20DwmpDxUnbindSwapChain@8
21DwmpDxgiIsThreadDesktopComposited@4
22DwmGetCompositionTimingInfo@8
23DwmGetGraphicsStreamClient@8
24DwmpDxUpdateWindowRedirectionBltSurface@36
25DwmpRenderFlick@12
26DwmpAllocateSecurityDescriptor@8
27DwmpFreeSecurityDescriptor@4
28DwmpEnableDDASupport@0
29DwmGetGraphicsStreamTransformHint@8
30DwmTetherTextContact@20
31DwmGetTransportAttributes@12
32DwmGetWindowAttribute@16
33DwmInvalidateIconicBitmaps@4
34DwmIsCompositionEnabled@4
35DwmModifyPreviousDxFrameDuration@12
36DwmQueryThumbnailSourceSize@8
37DwmRegisterThumbnail@12
38DwmRenderGesture@16
39DwmSetDxFrameDuration@8
40DwmSetIconicLivePreviewBitmap@16
41DwmSetIconicThumbnail@12
42DwmSetPresentParameters@8
43DwmSetWindowAttribute@16
44DwmShowContact@8
45DwmTetherContact@16
46DwmTransitionOwnedWindow@8
47DwmUnregisterThumbnail@4
48DwmUpdateThumbnailProperties@8
lib/libc/mingw/lib32/dwrite.def created+8
...@@ -0,0 +1,8 @@
1;
2; Definition file of DWrite.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "DWrite.dll"
7EXPORTS
8DWriteCreateFactory@12
lib/libc/mingw/lib32/dxgi.def created+51
...@@ -0,0 +1,51 @@
1;
2; Definition file of dxgi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dxgi.dll"
7EXPORTS
8D3DKMTCloseAdapter@4
9D3DKMTDestroyAllocation@4
10D3DKMTDestroyContext@4
11D3DKMTDestroyDevice@4
12D3DKMTDestroySynchronizationObject@4
13D3DKMTQueryAdapterInfo@4
14D3DKMTSetDisplayPrivateDriverFormat@4
15D3DKMTSignalSynchronizationObject@4
16D3DKMTUnlock@4
17DXGIDumpJournal@4
18OpenAdapter10@4
19OpenAdapter10_2@4
20CreateDXGIFactory1@8
21CreateDXGIFactory@8
22D3DKMTCreateAllocation@4
23D3DKMTCreateContext@4
24D3DKMTCreateDevice@4
25D3DKMTCreateSynchronizationObject@4
26D3DKMTEscape@4
27D3DKMTGetContextSchedulingPriority@4
28D3DKMTGetDeviceState@4
29D3DKMTGetDisplayModeList@4
30D3DKMTGetMultisampleMethodList@4
31D3DKMTGetRuntimeData@4
32D3DKMTGetSharedPrimaryHandle@4
33D3DKMTLock@4
34D3DKMTOpenAdapterFromHdc@4
35D3DKMTOpenResource@4
36D3DKMTPresent@4
37D3DKMTQueryAllocationResidency@4
38D3DKMTQueryResourceInfo@4
39D3DKMTRender@4
40D3DKMTSetAllocationPriority@4
41D3DKMTSetContextSchedulingPriority@4
42D3DKMTSetDisplayMode@4
43D3DKMTSetGammaRamp@4
44D3DKMTSetVidPnSourceOwner@4
45D3DKMTWaitForSynchronizationObject@4
46D3DKMTWaitForVerticalBlankEvent@4
47DXGID3D10CreateDevice@24
48DXGID3D10CreateLayeredDevice@20
49DXGID3D10GetLayeredDeviceSize@8
50DXGID3D10RegisterLayers@8
51DXGIReportAdapterConfiguration@4
lib/libc/mingw/lib32/dxva2.def created+44
...@@ -0,0 +1,44 @@
1;
2; Definition file of dxva2.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dxva2.dll"
7EXPORTS
8CapabilitiesRequestAndCapabilitiesReply@12
9DXVA2CreateDirect3DDeviceManager9@8
10DXVA2CreateVideoService@12
11DegaussMonitor@4
12DestroyPhysicalMonitor@4
13DestroyPhysicalMonitors@8
14GetCapabilitiesStringLength@8
15GetMonitorBrightness@16
16GetMonitorCapabilities@12
17GetMonitorColorTemperature@8
18GetMonitorContrast@16
19GetMonitorDisplayAreaPosition@20
20GetMonitorDisplayAreaSize@20
21GetMonitorRedGreenOrBlueDrive@20
22GetMonitorRedGreenOrBlueGain@20
23GetMonitorTechnologyType@8
24GetNumberOfPhysicalMonitorsFromHMONITOR@8
25GetNumberOfPhysicalMonitorsFromIDirect3DDevice9@8
26GetPhysicalMonitorsFromHMONITOR@12
27GetPhysicalMonitorsFromIDirect3DDevice9@12
28GetTimingReport@8
29GetVCPFeatureAndVCPFeatureReply@20
30OPMGetVideoOutputsFromHMONITOR@16
31OPMGetVideoOutputsFromIDirect3DDevice9Object@16
32RestoreMonitorFactoryColorDefaults@4
33RestoreMonitorFactoryDefaults@4
34SaveCurrentMonitorSettings@4
35SaveCurrentSettings@4
36SetMonitorBrightness@8
37SetMonitorColorTemperature@8
38SetMonitorContrast@8
39SetMonitorDisplayAreaPosition@12
40SetMonitorDisplayAreaSize@12
41SetMonitorRedGreenOrBlueDrive@12
42SetMonitorRedGreenOrBlueGain@12
43SetVCPFeature@12
44UABGetCertificate@12
lib/libc/mingw/lib32/eappcfg.def created+20
...@@ -0,0 +1,20 @@
1;
2; Definition file of eappcfg.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "eappcfg.dll"
7EXPORTS
8EapHostPeerConfigBlob2Xml@36
9EapHostPeerConfigXml2Blob@24
10EapHostPeerCredentialsXml2Blob@32
11EapHostPeerFreeErrorMemory@4
12EapHostPeerFreeMemory@4
13EapHostPeerGetMethods@8
14EapHostPeerInvokeConfigUI@44
15EapHostPeerInvokeIdentityUI@64
16EapHostPeerInvokeInteractiveUI@24
17EapHostPeerQueryCredentialInputFields@40
18EapHostPeerQueryInteractiveUIInputFields@28
19EapHostPeerQueryUIBlobFromInteractiveUIInputFields@36
20EapHostPeerQueryUserBlobFromCredentialInputFields@48
lib/libc/mingw/lib32/eappprxy.def created+23
...@@ -0,0 +1,23 @@
1;
2; Definition file of eappprxy.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "eappprxy.dll"
7EXPORTS
8EapHostPeerBeginSession@68
9EapHostPeerClearConnection@8
10EapHostPeerEndSession@8
11EapHostPeerFreeEapError@4
12EapHostPeerFreeRuntimeMemory@4
13EapHostPeerGetAuthStatus@20
14EapHostPeerGetIdentity@68
15EapHostPeerGetResponseAttributes@12
16EapHostPeerGetResult@16
17EapHostPeerGetSendPacket@16
18EapHostPeerGetUIContext@16
19EapHostPeerInitialize@0
20EapHostPeerProcessReceivedPacket@20
21EapHostPeerSetResponseAttributes@16
22EapHostPeerSetUIContext@20
23EapHostPeerUninitialize@0
lib/libc/mingw/lib32/elscore.def created+12
...@@ -0,0 +1,12 @@
1;
2; Definition file of elscore.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "elscore.dll"
7EXPORTS
8MappingDoAction@12
9MappingFreePropertyBag@4
10MappingFreeServices@4
11MappingGetServices@12
12MappingRecognizeText@24
lib/libc/mingw/lib32/esent.def created+557
...@@ -0,0 +1,557 @@
1;
2; Definition file of ESENT.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ESENT.dll"
7EXPORTS
8JetAddColumnA@28@28
9JetAddColumnW@28@28
10JetAttachDatabase2A@16@16
11JetAttachDatabase2W@16@16
12JetAttachDatabaseA@12@12
13JetAttachDatabaseW@12@12
14JetAttachDatabaseWithStreamingA@24@24
15JetAttachDatabaseWithStreamingW@24@24
16JetBackupA@12@12
17JetBackupInstanceA@16@16
18JetBackupInstanceW@16@16
19JetBackupW@12@12
20JetBeginExternalBackup@4@4
21JetBeginExternalBackupInstance@8@8
22JetBeginSessionA@16@16
23JetBeginSessionW@16@16
24JetBeginTransaction2@8@8
25JetBeginTransaction@4@4
26JetCloseDatabase@12@12
27JetCloseFile@4@4
28JetCloseFileInstance@8@8
29JetCloseTable@8@8
30JetCommitTransaction@8@8
31JetCompactA@24@24
32JetCompactW@24@24
33JetComputeStats@8@8
34JetConvertDDLA@20@20
35JetConvertDDLW@20@20
36JetCreateDatabase2A@20@20
37JetCreateDatabase2W@20@20
38JetCreateDatabaseA@20@20
39JetCreateDatabaseW@20@20
40JetCreateDatabaseWithStreamingA@28@28
41JetCreateDatabaseWithStreamingW@28@28
42JetCreateIndex2A@16@16
43JetCreateIndex2W@16@16
44JetCreateIndexA@28@28
45JetCreateIndexW@28@28
46JetCreateInstance2A@16@16
47JetCreateInstance2W@16@16
48JetCreateInstanceA@8@8
49JetCreateInstanceW@8@8
50JetCreateTableA@24@24
51JetCreateTableColumnIndex2A@12@12
52JetCreateTableColumnIndex2W@12@12
53JetCreateTableColumnIndexA@12@12
54JetCreateTableColumnIndexW@12@12
55JetCreateTableW@24@24
56JetDBUtilitiesA@4@4
57JetDBUtilitiesW@4@4
58JetDefragment2A@28@28
59JetDefragment2W@28@28
60JetDefragment3A@32@32
61JetDefragment3W@32@32
62JetDefragmentA@24@24
63JetDefragmentW@24@24
64JetDelete@8@8
65JetDeleteColumn2A@16@16
66JetDeleteColumn2W@16@16
67JetDeleteColumnA@12@12
68JetDeleteColumnW@12@12
69JetDeleteIndexA@12@12
70JetDeleteIndexW@12@12
71JetDeleteTableA@12@12
72JetDeleteTableW@12@12
73JetDetachDatabase2A@12@12
74JetDetachDatabase2W@12@12
75JetDetachDatabaseA@8@8
76JetDetachDatabaseW@8@8
77JetDupCursor@16@16
78JetDupSession@8@8
79JetEnableMultiInstanceA@12@12
80JetEnableMultiInstanceW@12@12
81JetEndExternalBackup@0@0
82JetEndExternalBackupInstance2@8@8
83JetEndExternalBackupInstance@4@4
84JetEndSession@8@8
85JetEnumerateColumns@40@40
86JetEscrowUpdate@36@36
87JetExternalRestore2A@40@40
88JetExternalRestore2W@40@40
89JetExternalRestoreA@32@32
90JetExternalRestoreW@32@32
91JetFreeBuffer@4@4
92JetGetAttachInfoA@12@12
93JetGetAttachInfoInstanceA@16@16
94JetGetAttachInfoInstanceW@16@16
95JetGetAttachInfoW@12@12
96JetGetBookmark@20@20
97JetGetColumnInfoA@28@28
98JetGetColumnInfoW@28@28
99JetGetCounter@12@12
100JetGetCurrentIndexA@16@16
101JetGetCurrentIndexW@16@16
102JetGetCursorInfo@20@20
103JetGetDatabaseFileInfoA@16@16
104JetGetDatabaseFileInfoW@16@16
105JetGetDatabaseInfoA@20@20
106JetGetDatabaseInfoW@20@20
107JetGetDatabasePages@28@28
108JetGetIndexInfoA@28@28
109JetGetIndexInfoW@28@28
110JetGetInstanceInfoA@8@8
111JetGetInstanceInfoW@8@8
112JetGetInstanceMiscInfo@16@16
113JetGetLS@16@16
114JetGetLock@12@12
115JetGetLogFileInfoA@16@16
116JetGetLogFileInfoW@16@16
117JetGetLogInfoA@12@12
118JetGetLogInfoInstance2A@20@20
119JetGetLogInfoInstance2W@20@20
120JetGetLogInfoInstanceA@16@16
121JetGetLogInfoInstanceW@16@16
122JetGetLogInfoW@12@12
123JetGetMaxDatabaseSize@16@16
124JetGetObjectInfoA@32@32
125JetGetObjectInfoW@32@32
126JetGetPageInfo@24@24
127JetGetRecordPosition@16@16
128JetGetRecordSize@16@16
129JetGetResourceParam@16@16
130JetGetSecondaryIndexBookmark@36@36
131JetGetSessionInfo@16@16
132JetGetSystemParameterA@24@24
133JetGetSystemParameterW@24@24
134JetGetTableColumnInfoA@24@24
135JetGetTableColumnInfoW@24@24
136JetGetTableIndexInfoA@24@24
137JetGetTableIndexInfoW@24@24
138JetGetTableInfoA@20@20
139JetGetTableInfoW@20@20
140JetGetThreadStats@8@8
141JetGetTruncateLogInfoInstanceA@16@16
142JetGetTruncateLogInfoInstanceW@16@16
143JetGetVersion@8@8
144JetGotoBookmark@16@16
145JetGotoPosition@12@12
146JetGotoSecondaryIndexBookmark@28@28
147JetGrowDatabase@16@16
148JetIdle@8@8
149JetIndexRecordCount@16@16
150JetInit2@8@8
151JetInit3A@12@12
152JetInit3W@12@12
153JetInit@4@4
154JetIntersectIndexes@20@20
155JetMakeKey@20@20
156JetMove@16@16
157JetOSSnapshotAbort@8@8
158JetOSSnapshotEnd@8@8
159JetOSSnapshotFreezeA@16@16
160JetOSSnapshotFreezeW@16@16
161JetOSSnapshotGetFreezeInfoA@16@16
162JetOSSnapshotGetFreezeInfoW@16@16
163JetOSSnapshotPrepare@8@8
164JetOSSnapshotPrepareInstance@12@12
165JetOSSnapshotThaw@8@8
166JetOSSnapshotTruncateLog@8@8
167JetOSSnapshotTruncateLogInstance@12@12
168JetOpenDatabaseA@20@20
169JetOpenDatabaseW@20@20
170JetOpenFileA@16@16
171JetOpenFileInstanceA@20@20
172JetOpenFileInstanceW@20@20
173JetOpenFileSectionInstanceA@28@28
174JetOpenFileSectionInstanceW@28@28
175JetOpenFileW@16@16
176JetOpenTableA@28@28
177JetOpenTableW@28@28
178JetOpenTempTable2@28@28
179JetOpenTempTable3@28@28
180JetOpenTempTable@24@24
181JetOpenTemporaryTable@8@8
182JetPrepareToCommitTransaction@16@16
183JetPrepareUpdate@12@12
184JetReadFile@16@16
185JetReadFileInstance@20@20
186JetRegisterCallback@24@24
187JetRenameColumnA@20@20
188JetRenameColumnW@20@20
189JetRenameTableA@16@16
190JetRenameTableW@16@16
191JetResetCounter@8@8
192JetResetSessionContext@4@4
193JetResetTableSequential@12@12
194JetRestore2A@12@12
195JetRestore2W@12@12
196JetRestoreA@8@8
197JetRestoreInstanceA@16@16
198JetRestoreInstanceW@16@16
199JetRestoreW@8@8
200JetRetrieveColumn@32@32
201JetRetrieveColumns@16@16
202JetRetrieveKey@24@24
203JetRetrieveTaggedColumnList@28@28
204JetRollback@8@8
205JetSeek@12@12
206JetSetColumn@28@28
207JetSetColumnDefaultValueA@28@28
208JetSetColumnDefaultValueW@28@28
209JetSetColumns@16@16
210JetSetCurrentIndex2A@16@16
211JetSetCurrentIndex2W@16@16
212JetSetCurrentIndex3A@20@20
213JetSetCurrentIndex3W@20@20
214JetSetCurrentIndex4A@24@24
215JetSetCurrentIndex4W@24@24
216JetSetCurrentIndexA@12@12
217JetSetCurrentIndexW@12@12
218JetSetDatabaseSizeA@16@16
219JetSetDatabaseSizeW@16@16
220JetSetIndexRange@12@12
221JetSetLS@16@16
222JetSetMaxDatabaseSize@16@16
223JetSetResourceParam@16@16
224JetSetSessionContext@8@8
225JetSetSystemParameterA@20@20
226JetSetSystemParameterW@20@20
227JetSetTableSequential@12@12
228JetSnapshotStartA@12@12
229JetSnapshotStartW@12@12
230JetSnapshotStop@8@8
231JetStopBackup@0@0
232JetStopBackupInstance@4@4
233JetStopService@0@0
234JetStopServiceInstance@4@4
235JetTerm2@8@8
236JetTerm@4@4
237JetTracing@12@12
238JetTruncateLog@0@0
239JetTruncateLogInstance@4@4
240JetUnregisterCallback@16@16
241JetUpdate2@24@24
242JetUpdate@20@20
243JetUpgradeDatabaseA@16@16
244JetUpgradeDatabaseW@16@16
245JetAddColumn@28
246JetAddColumnA@28
247JetAddColumnW@28
248JetAttachDatabase2@16
249JetAttachDatabase2A@16
250JetAttachDatabase2W@16
251JetAttachDatabase@12
252JetAttachDatabaseA@12
253JetAttachDatabaseW@12
254JetAttachDatabaseWithStreaming@24
255JetAttachDatabaseWithStreamingA@24
256JetAttachDatabaseWithStreamingW@24
257JetBackup@12
258JetBackupA@12
259JetBackupInstance@16
260JetBackupInstanceA@16
261JetBackupInstanceW@16
262JetBackupW@12
263JetBeginExternalBackup@4
264JetBeginExternalBackupInstance@8
265JetBeginSession@16
266JetBeginSessionA@16
267JetBeginSessionW@16
268JetBeginTransaction2@8
269JetBeginTransaction@4
270JetCloseDatabase@12
271JetCloseFile@4
272JetCloseFileInstance@8
273JetCloseTable@8
274JetCommitTransaction@8
275JetCompact@24
276JetCompactA@24
277JetCompactW@24
278JetComputeStats@8
279JetConvertDDL@20
280JetConvertDDLA@20
281JetConvertDDLW@20
282JetCreateDatabase2@20
283JetCreateDatabase2A@20
284JetCreateDatabase2W@20
285JetCreateDatabase@20
286JetCreateDatabaseA@20
287JetCreateDatabaseW@20
288JetCreateDatabaseWithStreaming@28
289JetCreateDatabaseWithStreamingA@28
290JetCreateDatabaseWithStreamingW@28
291JetCreateIndex2@16
292JetCreateIndex2A@16
293JetCreateIndex2W@16
294JetCreateIndex@28
295JetCreateIndexA@28
296JetCreateIndexW@28
297JetCreateInstance2@16
298JetCreateInstance2A@16
299JetCreateInstance2W@16
300JetCreateInstance@8
301JetCreateInstanceA@8
302JetCreateInstanceW@8
303JetCreateTable@24
304JetCreateTableA@24
305JetCreateTableColumnIndex2@12
306JetCreateTableColumnIndex2A@12
307JetCreateTableColumnIndex2W@12
308JetCreateTableColumnIndex@12
309JetCreateTableColumnIndexA@12
310JetCreateTableColumnIndexW@12
311JetCreateTableW@24
312JetDBUtilities@4
313JetDBUtilitiesA@4
314JetDBUtilitiesW@4
315JetDefragment2@28
316JetDefragment2A@28
317JetDefragment2W@28
318JetDefragment3@32
319JetDefragment3A@32
320JetDefragment3W@32
321JetDefragment@24
322JetDefragmentA@24
323JetDefragmentW@24
324JetDelete@8
325JetDeleteColumn2@16
326JetDeleteColumn2A@16
327JetDeleteColumn2W@16
328JetDeleteColumn@12
329JetDeleteColumnA@12
330JetDeleteColumnW@12
331JetDeleteIndex@12
332JetDeleteIndexA@12
333JetDeleteIndexW@12
334JetDeleteTable@12
335JetDeleteTableA@12
336JetDeleteTableW@12
337JetDetachDatabase2@12
338JetDetachDatabase2A@12
339JetDetachDatabase2W@12
340JetDetachDatabase@8
341JetDetachDatabaseA@8
342JetDetachDatabaseW@8
343JetDupCursor@16
344JetDupSession@8
345JetEnableMultiInstance@12
346JetEnableMultiInstanceA@12
347JetEnableMultiInstanceW@12
348JetEndExternalBackup@0
349JetEndExternalBackupInstance2@8
350JetEndExternalBackupInstance@4
351JetEndSession@8
352JetEnumerateColumns@40
353JetEscrowUpdate@36
354JetExternalRestore2@40
355JetExternalRestore2A@40
356JetExternalRestore2W@40
357JetExternalRestore@32
358JetExternalRestoreA@32
359JetExternalRestoreW@32
360JetFreeBuffer@4
361JetGetAttachInfo@12
362JetGetAttachInfoA@12
363JetGetAttachInfoInstance@16
364JetGetAttachInfoInstanceA@16
365JetGetAttachInfoInstanceW@16
366JetGetAttachInfoW@12
367JetGetBookmark@20
368JetGetColumnInfo@28
369JetGetColumnInfoA@28
370JetGetColumnInfoW@28
371JetGetCounter@12
372JetGetCurrentIndex@16
373JetGetCurrentIndexA@16
374JetGetCurrentIndexW@16
375JetGetCursorInfo@20
376JetGetDatabaseFileInfo@16
377JetGetDatabaseFileInfoA@16
378JetGetDatabaseFileInfoW@16
379JetGetDatabaseInfo@20
380JetGetDatabaseInfoA@20
381JetGetDatabaseInfoW@20
382JetGetDatabasePages@28
383JetGetIndexInfo@28
384JetGetIndexInfoA@28
385JetGetIndexInfoW@28
386JetGetInstanceInfo@8
387JetGetInstanceInfoA@8
388JetGetInstanceInfoW@8
389JetGetInstanceMiscInfo@16
390JetGetLS@16
391JetGetLock@12
392JetGetLogFileInfo@16
393JetGetLogFileInfoA@16
394JetGetLogFileInfoW@16
395JetGetLogInfo@12
396JetGetLogInfoA@12
397JetGetLogInfoInstance2@20
398JetGetLogInfoInstance2A@20
399JetGetLogInfoInstance2W@20
400JetGetLogInfoInstance@16
401JetGetLogInfoInstanceA@16
402JetGetLogInfoInstanceW@16
403JetGetLogInfoW@12
404JetGetMaxDatabaseSize@16
405JetGetObjectInfo@32
406JetGetObjectInfoA@32
407JetGetObjectInfoW@32
408JetGetPageInfo@24
409JetGetRecordPosition@16
410JetGetRecordSize@16
411JetGetResourceParam@16
412JetGetSecondaryIndexBookmark@36
413JetGetSessionInfo@16
414JetGetSystemParameter@24
415JetGetSystemParameterA@24
416JetGetSystemParameterW@24
417JetGetTableColumnInfo@24
418JetGetTableColumnInfoA@24
419JetGetTableColumnInfoW@24
420JetGetTableIndexInfo@24
421JetGetTableIndexInfoA@24
422JetGetTableIndexInfoW@24
423JetGetTableInfo@20
424JetGetTableInfoA@20
425JetGetTableInfoW@20
426JetGetThreadStats@8
427JetGetTruncateLogInfoInstance@16
428JetGetTruncateLogInfoInstanceA@16
429JetGetTruncateLogInfoInstanceW@16
430JetGetVersion@8
431JetGotoBookmark@16
432JetGotoPosition@12
433JetGotoSecondaryIndexBookmark@28
434JetGrowDatabase@16
435JetIdle@8
436JetIndexRecordCount@16
437JetInit2@8
438JetInit3@12
439JetInit3A@12
440JetInit3W@12
441JetInit@4
442JetIntersectIndexes@20
443JetMakeKey@20
444JetMove@16
445JetOSSnapshotAbort@8
446JetOSSnapshotEnd@8
447JetOSSnapshotFreeze@16
448JetOSSnapshotFreezeA@16
449JetOSSnapshotFreezeW@16
450JetOSSnapshotGetFreezeInfo@16
451JetOSSnapshotGetFreezeInfoA@16
452JetOSSnapshotGetFreezeInfoW@16
453JetOSSnapshotPrepare@8
454JetOSSnapshotPrepareInstance@12
455JetOSSnapshotThaw@8
456JetOSSnapshotTruncateLog@8
457JetOSSnapshotTruncateLogInstance@12
458JetOpenDatabase@20
459JetOpenDatabaseA@20
460JetOpenDatabaseW@20
461JetOpenFile@16
462JetOpenFileA@16
463JetOpenFileInstance@20
464JetOpenFileInstanceA@20
465JetOpenFileInstanceW@20
466JetOpenFileSectionInstance@28
467JetOpenFileSectionInstanceA@28
468JetOpenFileSectionInstanceW@28
469JetOpenFileW@16
470JetOpenTable@28
471JetOpenTableA@28
472JetOpenTableW@28
473JetOpenTempTable2@28
474JetOpenTempTable3@28
475JetOpenTempTable@24
476JetOpenTemporaryTable@8
477JetPrepareToCommitTransaction@16
478JetPrepareUpdate@12
479JetReadFile@16
480JetReadFileInstance@20
481JetRegisterCallback@24
482JetRenameColumn@20
483JetRenameColumnA@20
484JetRenameColumnW@20
485JetRenameTable@16
486JetRenameTableA@16
487JetRenameTableW@16
488JetResetCounter@8
489JetResetSessionContext@4
490JetResetTableSequential@12
491JetRestore2@12
492JetRestore2A@12
493JetRestore2W@12
494JetRestore@8
495JetRestoreA@8
496JetRestoreInstance@16
497JetRestoreInstanceA@16
498JetRestoreInstanceW@16
499JetRestoreW@8
500JetRetrieveColumn@32
501JetRetrieveColumns@16
502JetRetrieveKey@24
503JetRetrieveTaggedColumnList@28
504JetRollback@8
505JetSeek@12
506JetSetColumn@28
507JetSetColumnDefaultValue@28
508JetSetColumnDefaultValueA@28
509JetSetColumnDefaultValueW@28
510JetSetColumns@16
511JetSetCurrentIndex2@16
512JetSetCurrentIndex2A@16
513JetSetCurrentIndex2W@16
514JetSetCurrentIndex3@20
515JetSetCurrentIndex3A@20
516JetSetCurrentIndex3W@20
517JetSetCurrentIndex4@24
518JetSetCurrentIndex4A@24
519JetSetCurrentIndex4W@24
520JetSetCurrentIndex@12
521JetSetCurrentIndexA@12
522JetSetCurrentIndexW@12
523JetSetDatabaseSize@16
524JetSetDatabaseSizeA@16
525JetSetDatabaseSizeW@16
526JetSetIndexRange@12
527JetSetLS@16
528JetSetMaxDatabaseSize@16
529JetSetResourceParam@16
530JetSetSessionContext@8
531JetSetSystemParameter@20
532JetSetSystemParameterA@20
533JetSetSystemParameterW@20
534JetSetTableSequential@12
535JetSnapshotStart@12
536JetSnapshotStartA@12
537JetSnapshotStartW@12
538JetSnapshotStop@8
539JetStopBackup@0
540JetStopBackupInstance@4
541JetStopService@0
542JetStopServiceInstance@4
543JetTerm2@8
544JetTerm@4
545JetTracing@12
546JetTruncateLog@0
547JetTruncateLogInstance@4
548JetUnregisterCallback@16
549JetUpdate2@24
550JetUpdate@20
551JetUpgradeDatabase@16
552JetUpgradeDatabaseA@16
553JetUpgradeDatabaseW@16
554ese@20
555esent@12
556ese@20@20
557esent@12@12
lib/libc/mingw/lib32/evr.def created+34
...@@ -0,0 +1,34 @@
1;
2; Definition file of EVR.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "EVR.dll"
7EXPORTS
8DllCanUnloadNow@0
9DllGetClassObject@12
10DllRegisterServer@0
11DllUnregisterServer@0
12MFConvertColorInfoFromDXVA@8
13MFConvertColorInfoToDXVA@8
14MFConvertFromFP16Array@12
15MFConvertToFP16Array@12
16MFCopyImage@24
17MFCreateDXSurfaceBuffer@16
18MFCreateVideoMediaType@8
19MFCreateVideoMediaTypeFromBitMapInfoHeader@48
20MFCreateVideoMediaTypeFromSubtype@8
21MFCreateVideoMediaTypeFromVideoInfoHeader2@24
22MFCreateVideoMediaTypeFromVideoInfoHeader@36
23MFCreateVideoMixer@16
24MFCreateVideoMixerAndPresenter@24
25MFCreateVideoOTA@8
26MFCreateVideoPresenter@16
27MFCreateVideoSampleAllocator@8
28MFCreateVideoSampleFromSurface@8
29MFGetPlaneSize@16
30MFGetStrideForBitmapInfoHeader@12
31MFGetUncompressedVideoFormat@4
32MFInitVideoFormat@8
33MFInitVideoFormat_RGB@16
34MFIsFormatYUV@4
lib/libc/mingw/lib32/faultrep.def created+5
...@@ -0,0 +1,5 @@
1LIBRARY faultrep.DLL
2EXPORTS
3AddERExcludedApplicationA@4
4AddERExcludedApplicationW@4
5ReportFault@8
lib/libc/mingw/lib32/fwpuclnt.def created+146
...@@ -0,0 +1,146 @@
1;
2; Definition file of fwpuclnt.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "fwpuclnt.dll"
7EXPORTS
8FwpmCalloutAdd0@16
9FwpmCalloutCreateEnumHandle0@12
10FwpmCalloutDeleteById0@8
11FwpmCalloutDeleteByKey0@8
12FwpmCalloutDestroyEnumHandle0@8
13FwpmCalloutEnum0@20
14FwpmCalloutGetById0@12
15FwpmCalloutGetByKey0@12
16FwpmCalloutGetSecurityInfoByKey0@32
17FwpmCalloutSetSecurityInfoByKey0@28
18FwpmCalloutSubscribeChanges0@20
19FwpmCalloutSubscriptionsGet0@12
20FwpmCalloutUnsubscribeChanges0@8
21FwpmDiagnoseNetFailure0@12
22FwpmEngineClose0@4
23FwpmEngineGetOption0@12
24FwpmEngineGetSecurityInfo0@28
25FwpmEngineOpen0@20
26FwpmEngineSetOption0@12
27FwpmEngineSetSecurityInfo0@24
28FwpmEventProviderCreate0@8
29FwpmEventProviderDestroy0@4
30FwpmEventProviderFireNetEvent0@12
31FwpmEventProviderIsNetEventTypeEnabled0@12
32FwpmFilterAdd0@16
33FwpmFilterCreateEnumHandle0@12
34FwpmFilterDeleteById0@12
35FwpmFilterDeleteByKey0@8
36FwpmFilterDestroyEnumHandle0@8
37FwpmFilterEnum0@20
38FwpmFilterGetById0@16
39FwpmFilterGetByKey0@12
40FwpmFilterGetSecurityInfoByKey0@32
41FwpmFilterSetSecurityInfoByKey0@28
42FwpmFilterSubscribeChanges0@20
43FwpmFilterSubscriptionsGet0@12
44FwpmFilterUnsubscribeChanges0@8
45FwpmFreeMemory0@4
46FwpmGetAppIdFromFileName0@8
47FwpmIPsecTunnelAdd0@28
48FwpmIPsecTunnelDeleteByKey0@8
49FwpmLayerCreateEnumHandle0@12
50FwpmLayerDestroyEnumHandle0@8
51FwpmLayerEnum0@20
52FwpmLayerGetById0@12
53FwpmLayerGetByKey0@12
54FwpmLayerGetSecurityInfoByKey0@32
55FwpmLayerSetSecurityInfoByKey0@28
56FwpmNetEventCreateEnumHandle0@12
57FwpmNetEventDestroyEnumHandle0@8
58FwpmNetEventEnum0@20
59FwpmNetEventsGetSecurityInfo0@28
60FwpmNetEventsSetSecurityInfo0@24
61FwpmProviderAdd0@12
62FwpmProviderContextAdd0@16
63FwpmProviderContextCreateEnumHandle0@12
64FwpmProviderContextDeleteById0@12
65FwpmProviderContextDeleteByKey0@8
66FwpmProviderContextDestroyEnumHandle0@8
67FwpmProviderContextEnum0@20
68FwpmProviderContextGetById0@16
69FwpmProviderContextGetByKey0@12
70FwpmProviderContextGetSecurityInfoByKey0@32
71FwpmProviderContextSetSecurityInfoByKey0@28
72FwpmProviderContextSubscribeChanges0@20
73FwpmProviderContextSubscriptionsGet0@12
74FwpmProviderContextUnsubscribeChanges0@8
75FwpmProviderCreateEnumHandle0@12
76FwpmProviderDeleteByKey0@8
77FwpmProviderDestroyEnumHandle0@8
78FwpmProviderEnum0@20
79FwpmProviderGetByKey0@12
80FwpmProviderGetSecurityInfoByKey0@32
81FwpmProviderSetSecurityInfoByKey0@28
82FwpmProviderSubscribeChanges0@20
83FwpmProviderSubscriptionsGet0@12
84FwpmProviderUnsubscribeChanges0@8
85FwpmSessionCreateEnumHandle0@12
86FwpmSessionDestroyEnumHandle0@8
87FwpmSessionEnum0@20
88FwpmSubLayerAdd0@12
89FwpmSubLayerCreateEnumHandle0@12
90FwpmSubLayerDeleteByKey0@8
91FwpmSubLayerDestroyEnumHandle0@8
92FwpmSubLayerEnum0@20
93FwpmSubLayerGetByKey0@12
94FwpmSubLayerGetSecurityInfoByKey0@32
95FwpmSubLayerSetSecurityInfoByKey0@28
96FwpmSubLayerSubscribeChanges0@20
97FwpmSubLayerSubscriptionsGet0@12
98FwpmSubLayerUnsubscribeChanges0@8
99FwpmTraceRestoreDefaults0@0
100FwpmTransactionAbort0@4
101FwpmTransactionBegin0@8
102FwpmTransactionCommit0@4
103FwpsAleExplicitCredentialsQuery0@16
104FwpsClassifyUser0@28
105FwpsFreeMemory0@4
106FwpsGetInProcReplicaOffset0@4
107FwpsLayerCreateInProcReplica0@8
108FwpsLayerReleaseInProcReplica0@8
109FwpsOpenToken0@20
110IPsecGetStatistics0@8
111IPsecKeyModuleAdd0@12
112IPsecKeyModuleCompleteAcquire0@16
113IPsecKeyModuleDelete0@8
114IPsecSaContextAddInbound0@16
115IPsecSaContextAddOutbound0@16
116IPsecSaContextCreate0@16
117IPsecSaContextCreateEnumHandle0@12
118IPsecSaContextDeleteById0@12
119IPsecSaContextDestroyEnumHandle0@8
120IPsecSaContextEnum0@20
121IPsecSaContextExpire0@12
122IPsecSaContextGetById0@16
123IPsecSaContextGetSpi0@20
124IPsecSaCreateEnumHandle0@12
125IPsecSaDbGetSecurityInfo0@28
126IPsecSaDbSetSecurityInfo0@24
127IPsecSaDestroyEnumHandle0@8
128IPsecSaEnum0@20
129IPsecSaInitiateAsync0@16
130IkeextGetConfigParameters0@4
131IkeextGetStatistics0@8
132IkeextSaCreateEnumHandle0@12
133IkeextSaDbGetSecurityInfo0@28
134IkeextSaDbSetSecurityInfo0@24
135IkeextSaDeleteById0@12
136IkeextSaDestroyEnumHandle0@8
137IkeextSaEnum0@20
138IkeextSaGetById0@16
139IkeextSetConfigParameters0@4
140WSADeleteSocketPeerTargetName@20
141WSAImpersonateSocketPeer@12
142WSAQuerySocketSecurity@28
143WSARevertImpersonation@0
144WSASetSocketPeerTargetName@20
145WSASetSocketSecurity@20
146wfpdiagW@16
lib/libc/mingw/lib32/gpedit.def created+20
...@@ -0,0 +1,20 @@
1;
2; Definition file of GPEDIT.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "GPEDIT.DLL"
7EXPORTS
8ord_100@8 @100
9ord_101@4 @101
10ord_102 @102
11ord_103@12 @103
12ord_104@12 @104
13BrowseForGPO@8
14CreateGPOLink@12
15DeleteAllGPOLinks@4
16DeleteGPOLink@8
17DllCanUnloadNow
18DllGetClassObject@12
19ExportRSoPData@8
20ImportRSoPData@8
lib/libc/mingw/lib32/hid.def created+47
...@@ -0,0 +1,47 @@
1LIBRARY hid.dll
2EXPORTS
3HidD_FlushQueue@4
4HidD_FreePreparsedData@4
5HidD_GetAttributes@8
6HidD_GetConfiguration@12
7HidD_GetFeature@12
8HidD_GetHidGuid@4
9HidD_GetIndexedString@16
10HidD_GetInputReport@12
11HidD_GetManufacturerString@12
12HidD_GetMsGenreDescriptor@12
13HidD_GetNumInputBuffers@8
14HidD_GetPhysicalDescriptor@12
15HidD_GetPreparsedData@8
16HidD_GetProductString@12
17HidD_GetSerialNumberString@12
18HidD_Hello@8
19HidD_SetConfiguration@12
20HidD_SetFeature@12
21HidD_SetNumInputBuffers@8
22HidD_SetOutputReport@12
23HidP_GetButtonCaps@16
24HidP_GetCaps@8
25HidP_GetData@24
26HidP_GetExtendedAttributes@20
27HidP_GetLinkCollectionNodes@12
28HidP_GetScaledUsageValue@32
29HidP_GetSpecificButtonCaps@28
30HidP_GetSpecificValueCaps@28
31HidP_GetUsageValue@32
32HidP_GetUsageValueArray@36
33HidP_GetUsages@32
34HidP_GetUsagesEx@28
35HidP_GetValueCaps@16
36HidP_InitializeReportForID@20
37HidP_MaxDataListLength@8
38HidP_MaxUsageListLength@12
39HidP_SetData@24
40HidP_SetScaledUsageValue@32
41HidP_SetUsageValue@32
42HidP_SetUsageValueArray@36
43HidP_SetUsages@32
44HidP_TranslateUsagesToI8042ScanCodes@24
45HidP_UnsetUsages@32
46HidP_UsageListDifference@20
47;HidservInstaller
lib/libc/mingw/lib32/httpapi.def created+44
...@@ -0,0 +1,44 @@
1;
2; Definition file of HTTPAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "HTTPAPI.dll"
7EXPORTS
8HttpAddFragmentToCache@20
9HttpAddUrl@12
10HttpAddUrlToUrlGroup@24
11HttpCancelHttpRequest@16
12HttpCloseRequestQueue@4
13HttpCloseServerSession@8
14HttpCloseUrlGroup@8
15HttpControlService@20
16HttpCreateHttpHandle@8
17HttpCreateRequestQueue@20
18HttpCreateServerSession@12
19HttpCreateUrlGroup@16
20HttpDeleteServiceConfiguration@20
21HttpFlushResponseCache@16
22HttpGetCounters@24
23HttpInitialize@12
24HttpQueryRequestQueueProperty@28
25HttpQueryServerSessionProperty@24
26HttpQueryServiceConfiguration@32
27HttpQueryUrlGroupProperty@24
28HttpReadFragmentFromCache@28
29HttpReceiveClientCertificate@32
30HttpReceiveHttpRequest@32
31HttpReceiveRequestEntityBody@32
32HttpRemoveUrl@8
33HttpRemoveUrlFromUrlGroup@16
34HttpSendHttpResponse@44
35HttpSendResponseEntityBody@44
36HttpSetRequestQueueProperty@24
37HttpSetServerSessionProperty@20
38HttpSetServiceConfiguration@20
39HttpSetUrlGroupProperty@20
40HttpShutdownRequestQueue@4
41HttpTerminate@8
42HttpWaitForDemandStart@8
43HttpWaitForDisconnect@16
44HttpWaitForDisconnectEx@20
lib/libc/mingw/lib32/icmui.def created+4
...@@ -0,0 +1,4 @@
1LIBRARY ICMUI.DLL
2EXPORTS
3SetupColorMatchingA@4
4SetupColorMatchingW@4
lib/libc/mingw/lib32/iscsidsc.def created+79
...@@ -0,0 +1,79 @@
1;
2; Definition file of ISCSIDSC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ISCSIDSC.dll"
7EXPORTS
8AddISNSServerA@4
9AddISNSServerW@4
10AddIScsiConnectionA@40
11AddIScsiConnectionW@40
12AddIScsiSendTargetPortalA@24
13AddIScsiSendTargetPortalW@24
14AddIScsiStaticTargetA@28
15AddIScsiStaticTargetW@28
16AddPersistentIScsiDeviceA@4
17AddPersistentIScsiDeviceW@4
18ClearPersistentIScsiDevices
19;DllMain@12
20GetDevicesForIScsiSessionA@12
21GetDevicesForIScsiSessionW@12
22GetIScsiIKEInfoA@16
23GetIScsiIKEInfoW@16
24GetIScsiInitiatorNodeNameA@4
25GetIScsiInitiatorNodeNameW@4
26GetIScsiSessionListA@12
27GetIScsiSessionListW@12
28GetIScsiTargetInformationA@20
29GetIScsiTargetInformationW@20
30GetIScsiVersionInformation@4
31LoginIScsiTargetA@56
32LoginIScsiTargetW@56
33LogoutIScsiTarget@4
34RefreshISNSServerA@4
35RefreshISNSServerW@4
36RefreshIScsiSendTargetPortalA@12
37RefreshIScsiSendTargetPortalW@12
38RemoveISNSServerA@4
39RemoveISNSServerW@4
40RemoveIScsiConnection@8
41RemoveIScsiPersistentTargetA@16
42RemoveIScsiPersistentTargetW@16
43RemoveIScsiSendTargetPortalA@12
44RemoveIScsiSendTargetPortalW@12
45RemoveIScsiStaticTargetA@4
46RemoveIScsiStaticTargetW@4
47RemovePersistentIScsiDeviceA@4
48RemovePersistentIScsiDeviceW@4
49ReportActiveIScsiTargetMappingsA@12
50ReportActiveIScsiTargetMappingsW@12
51ReportISNSServerListA@8
52ReportISNSServerListW@8
53ReportIScsiInitiatorListA@8
54ReportIScsiInitiatorListW@8
55ReportIScsiPersistentLoginsA@12
56ReportIScsiPersistentLoginsW@12
57ReportIScsiSendTargetPortalsA@8
58ReportIScsiSendTargetPortalsExA@12
59ReportIScsiSendTargetPortalsExW@12
60ReportIScsiSendTargetPortalsW@8
61ReportIScsiTargetPortalsA@20
62ReportIScsiTargetPortalsW@20
63ReportIScsiTargetsA@12
64ReportIScsiTargetsW@12
65ReportPersistentIScsiDevicesA@8
66ReportPersistentIScsiDevicesW@8
67SendScsiInquiry@40
68SendScsiReadCapacity@32
69SendScsiReportLuns@24
70SetIScsiGroupPresharedKey@12
71SetIScsiIKEInfoA@16
72SetIScsiIKEInfoW@16
73SetIScsiInitiatorCHAPSharedSecret@8
74SetIScsiInitiatorNodeNameA@4
75SetIScsiInitiatorNodeNameW@4
76SetIScsiTunnelModeOuterAddressA@20
77SetIScsiTunnelModeOuterAddressW@20
78SetupPersistentIScsiDevices
79SetupPersistentIScsiVolumes
lib/libc/mingw/lib32/ksuser.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY ksuser.dll
2EXPORTS
3KsCreateAllocator@12
4KsCreateClock@12
5KsCreatePin@16
6KsCreateTopologyNode@16
lib/libc/mingw/lib32/ktmw32.def created+51
...@@ -0,0 +1,51 @@
1;
2; Definition file of ktmw32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ktmw32.dll"
7EXPORTS
8CommitComplete@8
9CommitEnlistment@8
10CommitTransaction@4
11CommitTransactionAsync@4
12CreateEnlistment@24
13CreateResourceManager@20
14CreateTransaction@28
15CreateTransactionManager@16
16GetCurrentClockTransactionManager@8
17GetEnlistmentId@8
18GetEnlistmentRecoveryInformation@16
19GetNotificationResourceManager@20
20GetNotificationResourceManagerAsync@20
21GetTransactionId@8
22GetTransactionInformation@28
23GetTransactionManagerId@8
24OpenEnlistment@12
25OpenResourceManager@12
26OpenTransaction@8
27OpenTransactionManager@12
28OpenTransactionManagerById@12
29PrePrepareComplete@8
30PrePrepareEnlistment@8
31PrepareComplete@8
32PrepareEnlistment@8
33PrivCreateTransaction@28
34PrivIsLogWritableTransactionManager@4
35PrivPropagationComplete@16
36PrivPropagationFailed@8
37PrivRegisterProtocolAddressInformation@20
38ReadOnlyEnlistment@8
39RecoverEnlistment@8
40RecoverResourceManager@4
41RecoverTransactionManager@4
42RenameTransactionManager@8
43RollbackComplete@8
44RollbackEnlistment@8
45RollbackTransaction@4
46RollbackTransactionAsync@4
47RollforwardTransactionManager@8
48SetEnlistmentRecoveryInformation@12
49SetResourceManagerCompletionPort@12
50SetTransactionInformation@20
51SinglePhaseReject@8
lib/libc/mingw/lib32/logoncli.def created+80
...@@ -0,0 +1,80 @@
1;
2; Definition file of logoncli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "logoncli.dll"
7EXPORTS
8DsAddressToSiteNamesA@16
9DsAddressToSiteNamesExA@20
10DsAddressToSiteNamesExW@20
11DsAddressToSiteNamesW@16
12DsDeregisterDnsHostRecordsA@20
13DsDeregisterDnsHostRecordsW@20
14DsEnumerateDomainTrustsA@16
15DsEnumerateDomainTrustsW@16
16DsGetDcCloseW@4
17DsGetDcNameA@24
18DsGetDcNameW@24
19DsGetDcNameWithAccountA@32
20DsGetDcNameWithAccountW@32
21DsGetDcNextA@16
22DsGetDcNextW@16
23DsGetDcOpenA@28
24DsGetDcOpenW@28
25DsGetDcSiteCoverageA@12
26DsGetDcSiteCoverageW@12
27DsGetForestTrustInformationW@16
28DsGetSiteNameA@8
29DsGetSiteNameW@8
30DsMergeForestTrustInformationW@16
31DsValidateSubnetNameA@4
32DsValidateSubnetNameW@4
33I_DsUpdateReadOnlyServerDnsRecords@28
34I_NetAccountDeltas@48
35I_NetAccountSync@48
36I_NetChainSetClientAttributes2@36
37I_NetChainSetClientAttributes@36
38I_NetDatabaseDeltas@32
39I_NetDatabaseRedo@28
40I_NetDatabaseSync2@36
41I_NetDatabaseSync@32
42I_NetGetDCList@16
43I_NetGetForestTrustInformation@24
44I_NetLogonControl2@20
45I_NetLogonControl@16
46I_NetLogonGetCapabilities@24
47I_NetLogonGetDomainInfo@28
48I_NetLogonSamLogoff@24
49I_NetLogonSamLogon@36
50I_NetLogonSamLogonEx@40
51I_NetLogonSamLogonWithFlags@40
52I_NetLogonSendToSam@24
53I_NetLogonUasLogoff@12
54I_NetLogonUasLogon@12
55I_NetServerAuthenticate2@28
56I_NetServerAuthenticate3@32
57I_NetServerAuthenticate@24
58I_NetServerGetTrustInfo@36
59I_NetServerPasswordGet@28
60I_NetServerPasswordSet2@28
61I_NetServerPasswordSet@28
62I_NetServerReqChallenge@16
63I_NetServerTrustPasswordsGet@32
64I_NetlogonComputeClientDigest@24
65I_NetlogonComputeServerDigest@24
66I_NetlogonGetTrustRid@12
67I_RpcExtInitializeExtensionPoint@8
68NetAddServiceAccount@16
69NetEnumerateServiceAccounts@16
70NetEnumerateTrustedDomains@8
71NetGetAnyDCName@12
72NetGetDCName@12
73NetIsServiceAccount@12
74NetLogonGetTimeServiceParentDomain@12
75NetLogonSetServiceBits@12
76NetQueryServiceAccount@16
77NetRemoveServiceAccount@12
78NlBindingAddServerToCache@8
79NlBindingRemoveServerFromCache@8
80NlBindingSetAuthInfo@20
lib/libc/mingw/lib32/mapi32.def created+164
...@@ -0,0 +1,164 @@
1LIBRARY MAPI32.DLL
2EXPORTS
3BuildDisplayTable@40
4CbOfEncoded@4
5CchOfEncoding@4
6ChangeIdleRoutine@28
7CloseIMsgSession@4
8CreateIProp@24
9CreateTable@36
10DeinitMapiUtil@0
11DeregisterIdleRoutine@4
12EnableIdleRoutine@8
13EncodeID@12
14FBadColumnSet@4
15FBadEntryList@4
16FBadProp@4
17FBadPropTag@4
18FBadRestriction@4
19FBadRglpNameID@8
20FBadRglpszA@8
21FBadRglpszW@8
22FBadRow@4
23FBadRowSet@4
24FBadSortOrderSet@4
25FBinFromHex@8
26FDecodeID@12
27FEqualNames@8
28FPropCompareProp@12
29FPropContainsProp@12
30FPropExists@8
31FreePadrlist@4
32FreeProws@4
33FtAdcFt@20
34FtAddFt@16
35FtDivFtBogus@20
36FtMulDw@12
37FtMulDwDw@8
38FtNegFt@8
39FtSubFt@16
40FtgRegisterIdleRoutine@20
41GetAttribIMsgOnIStg@12
42GetTnefStreamCodepage
43GetTnefStreamCodepage@12
44HexFromBin@12
45HrAddColumns@16
46HrAddColumnsEx@20
47HrAllocAdviseSink@12
48HrComposeEID@28
49HrComposeMsgID@24
50HrDecomposeEID@28
51HrDecomposeMsgID@24
52HrDispatchNotifications@4
53HrEntryIDFromSz@12
54HrGetOneProp@12
55HrIStorageFromStream@16
56HrQueryAllRows@24
57HrSetOneProp@8
58HrSzFromEntryID@12
59HrThisThreadAdviseSink@8
60HrValidateIPMSubtree@20
61HrValidateParameters@8
62InstallFilterHook@4
63IsBadBoundedStringPtr@8
64LAUNCHWIZARD
65LPropCompareProp@8
66LaunchWizard@20
67LpValFindProp@12
68MAPI_NSCP_SynchronizeClient@8
69MAPIAddress@44
70MAPIAdminProfiles
71MAPIAdminProfiles@8
72MAPIAllocateBuffer
73MAPIAllocateBuffer@8
74MAPIAllocateMore
75MAPIAllocateMore@12
76MAPIDeinitIdle@0
77MAPIDeleteMail@20
78MAPIDetails@20
79MAPIFindNext@28
80MAPIFreeBuffer
81MAPIFreeBuffer@4
82MAPIGetDefaultMalloc@0
83MAPIGetNetscapeVersion@0
84MAPIInitIdle@4
85MAPIInitialize
86MAPIInitialize@4
87MAPILogoff@16
88MAPILogon@24
89MAPILogonEx
90MAPILogonEx@20
91MAPIOpenFormMgr
92MAPIOpenFormMgr@8
93MAPIOpenLocalFormContainer
94MAPIOpenLocalFormContainer@4
95MAPIReadMail@24
96MAPIResolveName@24
97MAPISaveMail@24
98MAPISendDocuments@20
99MAPISendMail
100MAPISendMail@20
101MAPIUninitialize
102MAPIUninitialize@0
103MNLS_CompareStringW@24
104MNLS_IsBadStringPtrW@8
105MNLS_MultiByteToWideChar@24
106MNLS_WideCharToMultiByte@32
107MNLS_lstrcmpW@8
108MNLS_lstrcpyW@8
109MNLS_lstrlenW@4
110MapStorageSCode@4
111OpenIMsgOnIStg@44
112OpenIMsgSession@12
113OpenStreamOnFile
114OpenStreamOnFile@24
115OpenTnefStream
116OpenTnefStream@28
117OpenTnefStreamEx
118OpenTnefStreamEx@32
119PRProviderInit
120PpropFindProp@12
121PropCopyMore@16
122RTFSync
123RTFSync@12
124ScBinFromHexBounded@12
125ScCopyNotifications@16
126ScCopyProps@16
127ScCountNotifications@12
128ScCountProps@12
129ScCreateConversationIndex@16
130ScDupPropset@16
131ScGenerateMuid@4
132ScInitMapiUtil@4
133ScLocalPathFromUNC@12
134ScMAPIXFromCMC
135ScMAPIXFromSMAPI
136ScRelocNotifications@20
137ScRelocProps@20
138ScSplEntry
139ScUNCFromLocalPath@12
140SetAttribIMsgOnIStg@16
141SwapPlong@8
142SwapPword@8
143SzFindCh@8
144SzFindLastCh@8
145SzFindSz@8
146UFromSz@4
147UNKOBJ_COFree@8
148UNKOBJ_Free@8
149UNKOBJ_FreeRows@8
150UNKOBJ_ScAllocate@12
151UNKOBJ_ScAllocateMore@16
152UNKOBJ_ScCOAllocate@12
153UNKOBJ_ScCOReallocate@12
154UNKOBJ_ScSzFromIdsAlloc@20
155UlAddRef@4
156UlFromSzHex@4
157UlPropSize@4
158UlRelease@4
159WrapCompressedRTFStream
160WrapCompressedRTFStream@12
161WrapProgress@20
162WrapStoreEntryID@24
163__CPPValidateParameters@8
164__ValidateParameters@8
lib/libc/mingw/lib32/mf.def created+73
...@@ -0,0 +1,73 @@
1;
2; Definition file of MF.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "MF.dll"
7EXPORTS
8AppendPropVariant@8
9ConvertPropVariant@8
10CopyPropertyStore@12
11CreateNamedPropertyStore@4
12DllCanUnloadNow@0
13DllGetClassObject@12
14DllRegisterServer@0
15DllUnregisterServer@0
16ExtractPropVariant@12
17MFCreateASFByteStreamPlugin@8
18MFCreateASFContentInfo@4
19MFCreateASFIndexer@4
20MFCreateASFIndexerByteStream@16
21MFCreateASFMediaSink@8
22MFCreateASFMediaSinkActivate@12
23MFCreateASFMultiplexer@4
24MFCreateASFProfile@4
25MFCreateASFProfileFromPresentationDescriptor@8
26MFCreateASFSplitter@4
27MFCreateASFStreamSelector@8
28MFCreateAppSourceProxy@12
29MFCreateAudioRenderer@8
30MFCreateAudioRendererActivate@4
31MFCreateByteCacheFile@8
32MFCreateCacheManager@8
33MFCreateCredentialCache@4
34MFCreateDrmNetNDSchemePlugin@8
35MFCreateFileBlockMap@32
36MFCreateFileSchemePlugin@8
37MFCreateHttpSchemePlugin@8
38MFCreateLPCMByteStreamPlugin@8
39MFCreateMP3ByteStreamPlugin@8
40MFCreateMediaProcessor@4
41MFCreateMediaSession@8
42MFCreateNetSchemePlugin@8
43MFCreatePMPHost@12
44MFCreatePMPMediaSession@16
45MFCreatePMPServer@8
46MFCreatePresentationClock@4
47MFCreatePresentationDescriptorFromASFProfile@8
48MFCreateProxyLocator@12
49MFCreateRemoteDesktopPlugin@4
50MFCreateSAMIByteStreamPlugin@8
51MFCreateSampleGrabberSinkActivate@12
52MFCreateSecureHttpSchemePlugin@8
53MFCreateSequencerSegmentOffset@16
54MFCreateSequencerSource@8
55MFCreateSequencerSourceRemoteStream@12
56MFCreateSimpleTypeHandler@4
57MFCreateSourceResolver@4
58MFCreateStandardQualityManager@4
59MFCreateTopoLoader@4
60MFCreateTopology@4
61MFCreateTopologyNode@8
62MFCreateVideoRenderer@8
63MFCreateVideoRendererActivate@8
64MFCreateWMAEncoderActivate@12
65MFCreateWMVEncoderActivate@12
66MFGetMultipleServiceProviders@16
67MFGetService@16
68MFGetSupportedMimeTypes@4
69MFGetSupportedSchemes@4
70MFReadSequencerSegmentOffset@12
71MFRequireProtectedEnvironment@4
72MFShutdownObject@4
73MergePropertyStore@12
lib/libc/mingw/lib32/mfplat.def created+133
...@@ -0,0 +1,133 @@
1;
2; Definition file of MFPlat.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "MFPlat.DLL"
7EXPORTS
8FormatTagFromWfx@4
9MFCreateGuid@4
10MFGetIoPortHandle@0
11MFGetRandomNumber@8
12MFIsQueueThread@4
13MFPlatformBigEndian@0
14MFPlatformLittleEndian@0
15MFTraceError@20
16MFllMulDiv@32
17ValidateWaveFormat@4
18CopyPropVariant@12
19CreatePropVariant@16
20CreatePropertyStore@4
21DestroyPropVariant@4
22LFGetGlobalPool@8
23MFAddPeriodicCallback@12
24MFAllocateWorkQueue@4
25MFAppendCollection@8
26MFAverageTimePerFrameToFrameRate@16
27MFBeginCreateFile@28
28MFBeginGetHostByName@12
29MFBeginRegisterWorkQueueWithMMCSS@20
30MFBeginUnregisterWorkQueueWithMMCSS@12
31MFBlockThread@0
32MFCalculateBitmapImageSize@16
33MFCalculateImageSize@16
34MFCancelCreateFile@4
35MFCancelWorkItem@8
36MFCompareFullToPartialMediaType@8
37MFCompareSockaddrAddresses@8
38MFCreateAMMediaTypeFromMFMediaType@24
39MFCreateAlignedMemoryBuffer@12
40MFCreateAsyncResult@16
41MFCreateAttributes@8
42MFCreateAudioMediaType@8
43MFCreateCollection@4
44MFCreateEventQueue@4
45MFCreateFile@20
46MFCreateLegacyMediaBufferOnMFMediaBuffer@16
47MFCreateMFVideoFormatFromMFMediaType@12
48MFCreateMediaBufferWrapper@16
49MFCreateMediaEvent@20
50MFCreateMediaType@4
51MFCreateMediaTypeFromRepresentation@24
52MFCreateMemoryBuffer@8
53MFCreateMemoryStream@16
54MFCreatePathFromURL@8
55MFCreatePresentationDescriptor@12
56MFCreateSample@4
57MFCreateSocket@16
58MFCreateSocketListener@12
59MFCreateStreamDescriptor@16
60MFCreateSystemTimeSource@4
61MFCreateSystemUnderlyingClock@4
62MFCreateTempFile@16
63MFCreateURLFromPath@8
64MFCreateUdpSockets@36
65MFCreateWaveFormatExFromMFMediaType@16
66MFDeserializeAttributesFromStream@12
67MFDeserializeEvent@12
68MFDeserializeMediaTypeFromStream@8
69MFDeserializePresentationDescriptor@12
70MFEndCreateFile@8
71MFEndGetHostByName@12
72MFEndRegisterWorkQueueWithMMCSS@8
73MFEndUnregisterWorkQueueWithMMCSS@4
74MFFrameRateToAverageTimePerFrame@12
75MFFreeAdaptersAddresses@4
76MFGetAdaptersAddresses@8
77MFGetAttributesAsBlob@12
78MFGetAttributesAsBlobSize@8
79MFGetConfigurationDWORD@12
80MFGetConfigurationPolicy@16
81MFGetConfigurationStore@16
82MFGetConfigurationString@16
83MFGetNumericNameFromSockaddr@20
84MFGetPlatform@0
85MFGetPrivateWorkqueues@4
86MFGetSockaddrFromNumericName@12
87MFGetSystemTime@0
88MFGetTimerPeriodicity@4
89MFGetWorkQueueMMCSSClass@12
90MFGetWorkQueueMMCSSTaskId@8
91MFHeapAlloc@20
92MFHeapFree@4
93MFInitAMMediaTypeFromMFMediaType@24
94MFInitAttributesFromBlob@12
95MFInitMediaTypeFromAMMediaType@8
96MFInitMediaTypeFromMFVideoFormat@12
97MFInitMediaTypeFromMPEG1VideoInfo@16
98MFInitMediaTypeFromMPEG2VideoInfo@16
99MFInitMediaTypeFromVideoInfoHeader2@16
100MFInitMediaTypeFromVideoInfoHeader@16
101MFInitMediaTypeFromWaveFormatEx@12
102MFInvokeCallback@4
103MFJoinIoPort@4
104MFLockPlatform@0
105MFLockWorkQueue@4
106MFPutWorkItem@12
107MFPutWorkItemEx@8
108MFRecordError@4
109MFRemovePeriodicCallback@4
110MFScheduleWorkItem@20
111MFScheduleWorkItemEx@16
112MFSerializeAttributesToStream@12
113MFSerializeEvent@12
114MFSerializeMediaTypeToStream@8
115MFSerializePresentationDescriptor@12
116MFSetSockaddrAny@8
117MFShutdown@0
118MFStartup@8
119MFStreamDescriptorProtectMediaType@8
120MFTEnum@40
121MFTEnumEx@36
122MFTGetInfo@40
123MFTRegister@60
124MFTUnregister@16
125MFTraceFuncEnter@16
126MFUnblockThread@0
127MFUnlockPlatform@0
128MFUnlockWorkQueue@4
129MFUnwrapMediaType@8
130MFValidateMediaTypeSize@24
131MFWrapMediaType@16
132PropVariantFromStream@8
133PropVariantToStream@8
lib/libc/mingw/lib32/mfreadwrite.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY "MFReadWrite.dll"
2EXPORTS
3MFCreateSinkWriterFromMediaSink@12
4MFCreateSinkWriterFromURL@16
5MFCreateSourceReaderFromByteStream@12
6MFCreateSourceReaderFromMediaSource@12
7MFCreateSourceReaderFromURL@12
lib/libc/mingw/lib32/mgmtapi.def created+14
...@@ -0,0 +1,14 @@
1LIBRARY MGMTAPI.DLL
2EXPORTS
3SnmpMgrClose@4
4SnmpMgrCtl@28
5SnmpMgrGetTrap@24
6SnmpMgrGetTrapEx@32
7;SnmpMgrMIB2Disk@8
8SnmpMgrOidToStr@8
9SnmpMgrOpen@16
10SnmpMgrRequest@20
11SnmpMgrStrToOid@8
12SnmpMgrTrapListen@4
13serverTrapThread@4
14;dbginit@8
lib/libc/mingw/lib32/mmdevapi.def created+3
...@@ -0,0 +1,3 @@
1LIBRARY "mmdevapi.dll"
2EXPORTS
3ActivateAudioInterfaceAsync@20
lib/libc/mingw/lib32/mprapi.def created+141
...@@ -0,0 +1,141 @@
1;
2; Definition file of MPRAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "MPRAPI.dll"
7EXPORTS
8CompressPhoneNumber@8
9MprAdminBufferFree@4
10MprAdminConnectionClearStats@8
11MprAdminConnectionEnum@28
12MprAdminConnectionGetInfo@16
13MprAdminConnectionRemoveQuarantine@12
14MprAdminDeregisterConnectionNotification@8
15MprAdminDeviceEnum@16
16MprAdminEstablishDomainRasServer@12
17MprAdminGetErrorString@8
18MprAdminGetPDCServer@12
19MprAdminInterfaceConnect@16
20MprAdminInterfaceCreate@16
21MprAdminInterfaceDelete@8
22MprAdminInterfaceDeviceGetInfo@20
23MprAdminInterfaceDeviceSetInfo@20
24MprAdminInterfaceDisconnect@8
25MprAdminInterfaceEnum@28
26MprAdminInterfaceGetCredentials@20
27MprAdminInterfaceGetCredentialsEx@16
28MprAdminInterfaceGetHandle@16
29MprAdminInterfaceGetInfo@16
30MprAdminInterfaceQueryUpdateResult@16
31MprAdminInterfaceSetCredentials@20
32MprAdminInterfaceSetCredentialsEx@16
33MprAdminInterfaceSetInfo@16
34MprAdminInterfaceTransportAdd@20
35MprAdminInterfaceTransportGetInfo@20
36MprAdminInterfaceTransportRemove@12
37MprAdminInterfaceTransportSetInfo@20
38MprAdminInterfaceUpdatePhonebookInfo@8
39MprAdminInterfaceUpdateRoutes@16
40MprAdminIsDomainRasServer@12
41MprAdminIsServiceRunning@4
42MprAdminMIBBufferFree@4
43MprAdminMIBEntryCreate@20
44MprAdminMIBEntryDelete@20
45MprAdminMIBEntryGet@28
46MprAdminMIBEntryGetFirst@28
47MprAdminMIBEntryGetNext@28
48MprAdminMIBEntrySet@20
49MprAdminMIBServerConnect@8
50MprAdminMIBServerDisconnect@4
51MprAdminPortClearStats@8
52MprAdminPortDisconnect@8
53MprAdminPortEnum@32
54MprAdminPortGetInfo@16
55MprAdminPortReset@8
56MprAdminRegisterConnectionNotification@8
57MprAdminSendUserMessage@12
58MprAdminServerConnect@8
59MprAdminServerDisconnect@4
60MprAdminServerGetCredentials@12
61MprAdminServerGetInfo@12
62MprAdminServerSetCredentials@12
63MprAdminServerSetInfo@12
64MprAdminTransportCreate@32
65MprAdminTransportGetInfo@24
66MprAdminTransportSetInfo@24
67MprAdminUpgradeUsers@8
68MprAdminUserClose@4
69MprAdminUserGetInfo@16
70MprAdminUserOpen@12
71MprAdminUserRead@12
72MprAdminUserReadProfFlags@8
73MprAdminUserServerConnect@12
74MprAdminUserServerDisconnect@4
75MprAdminUserSetInfo@16
76MprAdminUserWrite@12
77MprAdminUserWriteProfFlags@8
78MprConfigBufferFree@4
79MprConfigFilterGetInfo@16
80MprConfigFilterSetInfo@16
81MprConfigGetFriendlyName@16
82MprConfigGetGuidName@16
83MprConfigInterfaceCreate@16
84MprConfigInterfaceDelete@8
85MprConfigInterfaceEnum@28
86MprConfigInterfaceGetHandle@12
87MprConfigInterfaceGetInfo@20
88MprConfigInterfaceSetInfo@16
89MprConfigInterfaceTransportAdd@28
90MprConfigInterfaceTransportEnum@32
91MprConfigInterfaceTransportGetHandle@16
92MprConfigInterfaceTransportGetInfo@20
93MprConfigInterfaceTransportRemove@12
94MprConfigInterfaceTransportSetInfo@20
95MprConfigServerBackup@8
96MprConfigServerConnect@8
97MprConfigServerDisconnect@4
98MprConfigServerGetInfo@12
99MprConfigServerInstall@8
100MprConfigServerRefresh@4
101MprConfigServerRestore@8
102MprConfigServerSetInfo@12
103MprConfigTransportCreate@36
104MprConfigTransportDelete@8
105MprConfigTransportEnum@28
106MprConfigTransportGetHandle@12
107MprConfigTransportGetInfo@28
108MprConfigTransportSetInfo@28
109MprDomainQueryAccess@8
110MprDomainQueryRasServer@12
111MprDomainRegisterRasServer@12
112MprDomainSetAccess@8
113MprGetUsrParams@12
114MprInfoBlockAdd@24
115MprInfoBlockFind@20
116MprInfoBlockQuerySize@4
117MprInfoBlockRemove@12
118MprInfoBlockSet@24
119MprInfoCreate@8
120MprInfoDelete@4
121MprInfoDuplicate@8
122MprInfoRemoveAll@8
123MprPortSetUsage@4
124MprSetupIpInIpInterfaceFriendlyNameCreate@8
125MprSetupIpInIpInterfaceFriendlyNameDelete@8
126MprSetupIpInIpInterfaceFriendlyNameEnum@12
127MprSetupIpInIpInterfaceFriendlyNameFree@4
128RasAdminConnectionClearStats@8
129RasAdminConnectionEnum@28
130RasAdminConnectionGetInfo@16
131MprAdminConnectionRemoveQuarantine@12
132RasAdminGetErrorString@12
133MprAdminGetPDCServer@12
134RasAdminPortClearStats@8
135RasAdminPortDisconnect@8
136RasAdminPortEnum@32
137RasAdminPortGetInfo@16
138RasAdminPortReset@8
139RasAdminUserGetInfo@12
140RasAdminUserSetInfo@12
141RasPrivilegeAndCallBackNumber@8
lib/libc/mingw/lib32/msacm32.def created+46
...@@ -0,0 +1,46 @@
1LIBRARY MSACM32.DLL
2EXPORTS
3XRegThunkEntry@36
4acmDriverAddA@20
5acmDriverAddW@20
6acmDriverClose@8
7acmDriverDetailsA@12
8acmDriverDetailsW@12
9acmDriverEnum@12
10acmDriverID@12
11acmDriverMessage@16
12acmDriverOpen@12
13acmDriverPriority@12
14acmDriverRemove@8
15acmFilterChooseA@4
16acmFilterChooseW@4
17acmFilterDetailsA@12
18acmFilterDetailsW@12
19acmFilterEnumA@20
20acmFilterEnumW@20
21acmFilterTagDetailsA@12
22acmFilterTagDetailsW@12
23acmFilterTagEnumA@20
24acmFilterTagEnumW@20
25acmFormatChooseA@4
26acmFormatChooseW@4
27acmFormatDetailsA@12
28acmFormatDetailsW@12
29acmFormatEnumA@20
30acmFormatEnumW@20
31acmFormatSuggest@20
32acmFormatTagDetailsA@12
33acmFormatTagDetailsW@12
34acmFormatTagEnumA@20
35acmFormatTagEnumW@20
36acmGetVersion@0
37acmMessage32@24
38acmMetrics@12
39acmStreamClose@8
40acmStreamConvert@12
41acmStreamMessage@16
42acmStreamOpen@32
43acmStreamPrepareHeader@12
44acmStreamReset@8
45acmStreamSize@16
46acmStreamUnprepareHeader@12
lib/libc/mingw/lib32/mscms.def created+100
...@@ -0,0 +1,100 @@
1;
2; Definition file of mscms.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "mscms.dll"
7EXPORTS
8AssociateColorProfileWithDeviceA@12
9AssociateColorProfileWithDeviceW@12
10CheckBitmapBits@36
11CheckColors@20
12CloseColorProfile@4
13ColorCplGetDefaultProfileScope@16
14ColorCplGetDefaultRenderingIntentScope@4
15ColorCplGetProfileProperties@8
16ColorCplHasSystemWideAssociationListChanged@12
17ColorCplInitialize@0
18ColorCplLoadAssociationList@16
19ColorCplMergeAssociationLists@8
20ColorCplOverwritePerUserAssociationList@8
21ColorCplReleaseProfileProperties@4
22ColorCplResetSystemWideAssociationListChangedWarning@8
23ColorCplSaveAssociationList@16
24ColorCplSetUsePerUserProfiles@12
25ColorCplUninitialize@0
26ConvertColorNameToIndex@16
27ConvertIndexToColorName@16
28CreateColorTransformA@16
29CreateColorTransformW@16
30CreateDeviceLinkProfile@28
31CreateMultiProfileTransform@24
32CreateProfileFromLogColorSpaceA@8
33CreateProfileFromLogColorSpaceW@8
34DeleteColorTransform@4
35DeviceRenameEvent@12
36DisassociateColorProfileFromDeviceA@12
37DisassociateColorProfileFromDeviceW@12
38EnumColorProfilesA@20
39EnumColorProfilesW@20
40GenerateCopyFilePaths@36
41GetCMMInfo@8
42GetColorDirectoryA@12
43GetColorDirectoryW@12
44GetColorProfileElement@24
45GetColorProfileElementTag@12
46GetColorProfileFromHandle@12
47GetColorProfileHeader@8
48GetCountColorProfileElements@8
49GetNamedProfileInfo@8
50GetPS2ColorRenderingDictionary@20
51GetPS2ColorRenderingIntent@16
52GetPS2ColorSpaceArray@24
53GetStandardColorSpaceProfileA@16
54GetStandardColorSpaceProfileW@16
55InstallColorProfileA@8
56InstallColorProfileW@8
57InternalGetDeviceConfig@24
58InternalGetPS2CSAFromLCS@16
59InternalGetPS2ColorRenderingDictionary@20
60InternalGetPS2ColorSpaceArray@24
61InternalGetPS2PreviewCRD@24
62InternalSetDeviceConfig@24
63IsColorProfileTagPresent@12
64IsColorProfileValid@8
65OpenColorProfileA@16
66OpenColorProfileW@16
67RegisterCMMA@12
68RegisterCMMW@12
69SelectCMM@4
70SetColorProfileElement@20
71SetColorProfileElementReference@12
72SetColorProfileElementSize@12
73SetColorProfileHeader@8
74SetStandardColorSpaceProfileA@12
75SetStandardColorSpaceProfileW@12
76SpoolerCopyFileEvent@12
77TranslateBitmapBits@44
78TranslateColors@24
79UninstallColorProfileA@12
80UninstallColorProfileW@12
81UnregisterCMMA@8
82UnregisterCMMW@8
83WcsAssociateColorProfileWithDevice@12
84WcsCheckColors@28
85WcsCreateIccProfile@8
86WcsDisassociateColorProfileFromDevice@12
87WcsEnumColorProfiles@20
88WcsEnumColorProfilesSize@12
89WcsGetDefaultColorProfile@28
90WcsGetDefaultColorProfileSize@24
91WcsGetDefaultRenderingIntent@8
92WcsGetUsePerUserProfiles@12
93WcsGpCanInstallOrUninstallProfiles@4
94WcsGpCanModifyDeviceAssociationList@12
95WcsOpenColorProfileA@28
96WcsOpenColorProfileW@28
97WcsSetDefaultColorProfile@24
98WcsSetDefaultRenderingIntent@8
99WcsSetUsePerUserProfiles@12
100WcsTranslateColors@40
lib/libc/mingw/lib32/msctfmonitor.def created+89
...@@ -0,0 +1,89 @@
1;
2; Definition file of MSCTF.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "MSCTF.dll"
7EXPORTS
8TF_GetLangDescriptionFromHKL@12
9TF_GetLangIcon@12
10TF_GetLangIconFromHKL@4
11TF_RunInputCPL@0
12CtfImeAssociateFocus@12
13CtfImeConfigure@16
14CtfImeConversionList@20
15CtfImeCreateInputContext@4
16CtfImeCreateThreadMgr@8
17CtfImeDestroy@4
18CtfImeDestroyInputContext@4
19CtfImeDestroyThreadMgr@0
20CtfImeDispatchDefImeMessage@16
21CtfImeEnumRegisterWord@20
22CtfImeEscape@12
23CtfImeEscapeEx@16
24CtfImeGetGuidAtom@12
25CtfImeGetRegisterWordStyle@8
26CtfImeInquire@12
27CtfImeInquireExW@16
28CtfImeIsGuidMapEnable@4
29CtfImeIsIME@4
30CtfImeProcessCicHotkey@12
31CtfImeProcessKey@16
32CtfImeRegisterWord@12
33CtfImeSelect@8
34CtfImeSelectEx@12
35CtfImeSetActiveContext@8
36CtfImeSetCompositionString@24
37CtfImeSetFocus@8
38CtfImeToAsciiEx@24
39CtfImeUnregisterWord@12
40CtfNotifyIME@16
41DllCanUnloadNow@0
42DllGetClassObject@12
43DllRegisterServer@0
44DllUnregisterServer@0
45SetInputScope@8
46SetInputScopeXML@8
47SetInputScopes2@24
48SetInputScopes@28
49TF_AttachThreadInput@8
50TF_CUASAppFix@4
51TF_CanUninitialize@0
52TF_CheckThreadInputIdle@8
53TF_CleanUpPrivateMessages@4
54TF_ClearLangBarAddIns@4
55TF_CreateCategoryMgr@4
56TF_CreateCicLoadMutex@4
57TF_CreateCicLoadWinStaMutex@0
58TF_CreateDisplayAttributeMgr@4
59TF_CreateInputProcessorProfiles@4
60TF_CreateLangBarItemMgr@4
61TF_CreateLangBarMgr@4
62TF_CreateThreadMgr@4
63TF_DllDetachInOther@0
64TF_GetAppCompatFlags@0
65TF_GetCompatibleKeyboardLayout@4
66TF_GetGlobalCompartment@4
67TF_GetInitSystemFlags@0
68TF_GetInputScope@8
69TF_GetShowFloatingStatus@4
70TF_GetThreadFlags@16
71TF_GetThreadMgr@4
72TF_InitSystem@4
73TF_InvalidAssemblyListCache@0
74TF_InvalidAssemblyListCacheIfExist@0
75TF_IsCtfmonRunning@0
76TF_IsFullScreenWindowActivated@0
77TF_IsThreadWithFlags@4
78TF_MapCompatibleHKL@12
79TF_MapCompatibleKeyboardTip@12
80TF_Notify@12
81TF_PostAllThreadMsg@8
82TF_RegisterLangBarAddIn@12
83TF_SendLangBandMsg@8
84TF_SetDefaultRemoteKeyboardLayout@8
85TF_SetShowFloatingStatus@8
86TF_SetThreadFlags@8
87TF_UninitSystem@0
88TF_UnregisterLangBarAddIn@8
89TF_WaitForInitialized@4
lib/libc/mingw/lib32/msdmo.def created+17
...@@ -0,0 +1,17 @@
1LIBRARY msdmo.dll
2EXPORTS
3DMOEnum@28
4DMOGetName@8
5DMOGetTypes@28
6DMOGuidToStrA@8
7DMOGuidToStrW@8
8DMORegister@32
9DMOStrToGuidA@8
10DMOStrToGuidW@8
11DMOUnregister@8
12MoCopyMediaType@8
13MoCreateMediaType@8
14MoDeleteMediaType@4
15MoDuplicateMediaType@8
16MoFreeMediaType@4
17MoInitMediaType@8
lib/libc/mingw/lib32/msdrm.def created+95
...@@ -0,0 +1,95 @@
1;
2; Definition file of msdrm.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "msdrm.dll"
7EXPORTS
8DRMAcquireAdvisories@16
9DRMAcquireIssuanceLicenseTemplate@28
10DRMAcquireLicense@28
11DRMActivate@24
12DRMAddLicense@12
13DRMAddRightWithUser@12
14DRMAttest@20
15DRMCheckSecurity@8
16DRMClearAllRights@4
17DRMCloseEnvironmentHandle@4
18DRMCloseHandle@4
19DRMClosePubHandle@4
20DRMCloseQueryHandle@4
21DRMCloseSession@4
22DRMConstructCertificateChain@16
23DRMCreateBoundLicense@20
24DRMCreateClientSession@20
25DRMCreateEnablingBitsDecryptor@20
26DRMCreateEnablingBitsEncryptor@20
27DRMCreateEnablingPrincipal@24
28DRMCreateIssuanceLicense@32
29DRMCreateLicenseStorageSession@24
30DRMCreateRight@28
31DRMCreateUser@16
32DRMDecode@16
33DRMDeconstructCertificateChain@16
34DRMDecrypt@24
35DRMDeleteLicense@8
36DRMDuplicateEnvironmentHandle@8
37DRMDuplicateHandle@8
38DRMDuplicatePubHandle@8
39DRMDuplicateSession@8
40DRMEncode@20
41DRMEncrypt@24
42DRMEnumerateLicense@24
43DRMGetApplicationSpecificData@24
44DRMGetBoundLicenseAttribute@24
45DRMGetBoundLicenseAttributeCount@12
46DRMGetBoundLicenseObject@16
47DRMGetBoundLicenseObjectCount@12
48DRMGetCertificateChainCount@8
49DRMGetClientVersion@4
50DRMGetEnvironmentInfo@20
51DRMGetInfo@20
52DRMGetIntervalTime@8
53DRMGetIssuanceLicenseInfo@40
54DRMGetIssuanceLicenseTemplate@12
55DRMGetMetaData@52
56DRMGetNameAndDescription@28
57DRMGetOwnerLicense@12
58DRMGetProcAddress@12
59DRMGetRevocationPoint@48
60DRMGetRightExtendedInfo@24
61DRMGetRightInfo@20
62DRMGetSecurityProvider@20
63DRMGetServiceLocation@24
64DRMGetSignedIssuanceLicense@40
65DRMGetTime@12
66DRMGetUnboundLicenseAttribute@24
67DRMGetUnboundLicenseAttributeCount@12
68DRMGetUnboundLicenseObject@16
69DRMGetUnboundLicenseObjectCount@12
70DRMGetUsagePolicy@64
71DRMGetUserInfo@28
72DRMGetUserRights@16
73DRMGetUsers@12
74DRMInitEnvironment@28
75DRMIsActivated@12
76DRMIsWindowProtected@8
77DRMLoadLibrary@20
78DRMParseUnboundLicense@8
79DRMRegisterContent@4
80DRMRegisterProtectedWindow@8
81DRMRegisterRevocationList@8
82DRMRepair@0
83DRMSetApplicationSpecificData@16
84DRMSetGlobalOptions@12
85DRMSetIntervalTime@8
86DRMSetMetaData@28
87DRMSetNameAndDescription@20
88DRMSetRevocationPoint@32
89DRMSetUsagePolicy@44
90DRMVerify@32
91DllCanUnloadNow@0
92DllGetClassObject@12
93DllRegisterServer@0
94DllUnregisterServer@0
95__AddMachineCertToLicenseStore@12
lib/libc/mingw/lib32/msi.def created+288
...@@ -0,0 +1,288 @@
1;
2; Definition file of msi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "msi.dll"
7EXPORTS
8MsiAdvertiseProductA@16
9MsiAdvertiseProductW@16
10MsiCloseAllHandles@0
11MsiCloseHandle@4
12MsiCollectUserInfoA@4
13MsiCollectUserInfoW@4
14MsiConfigureFeatureA@12
15MsiConfigureFeatureFromDescriptorA@8
16MsiConfigureFeatureFromDescriptorW@8
17MsiConfigureFeatureW@12
18MsiConfigureProductA@12
19MsiConfigureProductW@12
20MsiCreateRecord@4
21MsiDatabaseApplyTransformA@12
22MsiDatabaseApplyTransformW@12
23MsiDatabaseCommit@4
24MsiDatabaseExportA@16
25MsiDatabaseExportW@16
26MsiDatabaseGenerateTransformA@20
27MsiDatabaseGenerateTransformW@20
28MsiDatabaseGetPrimaryKeysA@12
29MsiDatabaseGetPrimaryKeysW@12
30MsiDatabaseImportA@12
31MsiDatabaseImportW@12
32MsiDatabaseMergeA@12
33MsiDatabaseMergeW@12
34MsiDatabaseOpenViewA@12
35MsiDatabaseOpenViewW@12
36MsiDoActionA@8
37MsiDoActionW@8
38MsiEnableUIPreview@8
39MsiEnumClientsA@12
40MsiEnumClientsW@12
41MsiEnumComponentQualifiersA@24
42MsiEnumComponentQualifiersW@24
43MsiEnumComponentsA@8
44MsiEnumComponentsW@8
45MsiEnumFeaturesA@16
46MsiEnumFeaturesW@16
47MsiEnumProductsA@8
48MsiEnumProductsW@8
49MsiEvaluateConditionA@8
50MsiEvaluateConditionW@8
51MsiGetLastErrorRecord@0
52MsiGetActiveDatabase@4
53MsiGetComponentStateA@16
54MsiGetComponentStateW@16
55MsiGetDatabaseState@4
56MsiGetFeatureCostA@20
57MsiGetFeatureCostW@20
58MsiGetFeatureInfoA@28
59MsiGetFeatureInfoW@28
60MsiGetFeatureStateA@16
61MsiGetFeatureStateW@16
62MsiGetFeatureUsageA@16
63MsiGetFeatureUsageW@16
64MsiGetFeatureValidStatesA@12
65MsiGetFeatureValidStatesW@12
66MsiGetLanguage@4
67MsiGetMode@8
68MsiGetProductCodeA@8
69MsiGetProductCodeW@8
70MsiGetProductInfoA@16
71MsiGetProductInfoFromScriptA@32
72MsiGetProductInfoFromScriptW@32
73MsiGetProductInfoW@16
74MsiGetProductPropertyA@16
75MsiGetProductPropertyW@16
76MsiGetPropertyA@16
77MsiGetPropertyW@16
78MsiGetSourcePathA@16
79MsiGetSourcePathW@16
80MsiGetSummaryInformationA@16
81MsiGetSummaryInformationW@16
82MsiGetTargetPathA@16
83MsiGetTargetPathW@16
84MsiGetUserInfoA@28
85MsiGetUserInfoW@28
86MsiInstallMissingComponentA@12
87MsiInstallMissingComponentW@12
88MsiInstallMissingFileA@8
89MsiInstallMissingFileW@8
90MsiInstallProductA@8
91MsiInstallProductW@8
92MsiLocateComponentA@12
93MsiLocateComponentW@12
94MsiOpenDatabaseA@12
95MsiOpenDatabaseW@12
96MsiOpenPackageA@8
97MsiOpenPackageW@8
98MsiOpenProductA@8
99MsiOpenProductW@8
100MsiPreviewBillboardA@12
101MsiPreviewBillboardW@12
102MsiPreviewDialogA@8
103MsiPreviewDialogW@8
104MsiProcessAdvertiseScriptA@20
105MsiProcessAdvertiseScriptW@20
106MsiProcessMessage@12
107MsiProvideComponentA@24
108MsiProvideComponentFromDescriptorA@16
109MsiProvideComponentFromDescriptorW@16
110MsiProvideComponentW@24
111MsiProvideQualifiedComponentA@20
112MsiProvideQualifiedComponentW@20
113MsiQueryFeatureStateA@8
114MsiQueryFeatureStateW@8
115MsiQueryProductStateA@4
116MsiQueryProductStateW@4
117MsiRecordDataSize@8
118MsiRecordGetFieldCount@4
119MsiRecordGetInteger@8
120MsiRecordGetStringA@16
121MsiRecordGetStringW@16
122MsiRecordIsNull@8
123MsiRecordReadStream@16
124MsiRecordSetInteger@12
125MsiRecordSetStreamA@12
126MsiRecordSetStreamW@12
127MsiRecordSetStringA@12
128MsiRecordSetStringW@12
129MsiReinstallFeatureA@12
130MsiReinstallFeatureFromDescriptorA@8
131MsiReinstallFeatureFromDescriptorW@8
132MsiReinstallFeatureW@12
133MsiReinstallProductA@8
134MsiReinstallProductW@8
135MsiSequenceA@12
136MsiSequenceW@12
137MsiSetComponentStateA@12
138MsiSetComponentStateW@12
139MsiSetExternalUIA@12
140MsiSetExternalUIW@12
141MsiSetFeatureStateA@12
142MsiSetFeatureStateW@12
143MsiSetInstallLevel@8
144MsiSetInternalUI@8
145MsiVerifyDiskSpace@4
146MsiSetMode@12
147MsiSetPropertyA@12
148MsiSetPropertyW@12
149MsiSetTargetPathA@12
150MsiSetTargetPathW@12
151MsiSummaryInfoGetPropertyA@28
152MsiSummaryInfoGetPropertyCount@8
153MsiSummaryInfoGetPropertyW@28
154MsiSummaryInfoPersist@4
155MsiSummaryInfoSetPropertyA@24
156MsiSummaryInfoSetPropertyW@24
157MsiUseFeatureA@8
158MsiUseFeatureW@8
159MsiVerifyPackageA@4
160MsiVerifyPackageW@4
161MsiViewClose@4
162MsiViewExecute@8
163MsiViewFetch@8
164MsiViewGetErrorA@12
165MsiViewGetErrorW@12
166MsiViewModify@12
167MsiDatabaseIsTablePersistentA@8
168MsiDatabaseIsTablePersistentW@8
169MsiViewGetColumnInfo@12
170MsiRecordClearData@4
171MsiEnableLogA@12
172MsiEnableLogW@12
173MsiFormatRecordA@16
174MsiFormatRecordW@16
175MsiGetComponentPathA@16
176MsiGetComponentPathW@16
177MsiApplyPatchA@16
178MsiApplyPatchW@16
179MsiAdvertiseScriptA@16
180MsiAdvertiseScriptW@16
181MsiGetPatchInfoA@16
182MsiGetPatchInfoW@16
183MsiEnumPatchesA@20
184MsiEnumPatchesW@20
185DllGetVersion@4
186MsiGetProductCodeFromPackageCodeA@8
187MsiGetProductCodeFromPackageCodeW@8
188MsiCreateTransformSummaryInfoA@20
189MsiCreateTransformSummaryInfoW@20
190MsiQueryFeatureStateFromDescriptorA@4
191MsiQueryFeatureStateFromDescriptorW@4
192MsiConfigureProductExA@16
193MsiConfigureProductExW@16
194;MsiInvalidateFeatureCache
195MsiUseFeatureExA@16
196MsiUseFeatureExW@16
197MsiGetFileVersionA@20
198MsiGetFileVersionW@20
199MsiLoadStringA@20
200MsiLoadStringW@20
201MsiMessageBoxA@24
202MsiMessageBoxW@24
203MsiDecomposeDescriptorA@20
204MsiDecomposeDescriptorW@20
205MsiProvideQualifiedComponentExA@32
206MsiProvideQualifiedComponentExW@32
207MsiEnumRelatedProductsA@16
208MsiEnumRelatedProductsW@16
209MsiSetFeatureAttributesA@12
210MsiSetFeatureAttributesW@12
211MsiSourceListClearAllA@12
212MsiSourceListClearAllW@12
213MsiSourceListAddSourceA@16
214MsiSourceListAddSourceW@16
215MsiSourceListForceResolutionA@12
216MsiSourceListForceResolutionW@12
217MsiIsProductElevatedA@8
218MsiIsProductElevatedW@8
219MsiGetShortcutTargetA@16
220MsiGetShortcutTargetW@16
221MsiGetFileHashA@12
222MsiGetFileHashW@12
223MsiEnumComponentCostsA@32
224MsiEnumComponentCostsW@32
225MsiCreateAndVerifyInstallerDirectory@4
226MsiGetFileSignatureInformationA@20
227MsiGetFileSignatureInformationW@20
228MsiProvideAssemblyA@24
229MsiProvideAssemblyW@24
230MsiAdvertiseProductExA@24
231MsiAdvertiseProductExW@24
232MsiNotifySidChangeA@8
233MsiNotifySidChangeW@8
234MsiOpenPackageExA@12
235MsiOpenPackageExW@12
236MsiDeleteUserDataA@12
237MsiDeleteUserDataW@12
238Migrate10CachedPackagesA@16
239Migrate10CachedPackagesW@16
240MsiRemovePatchesA@16
241MsiRemovePatchesW@16
242MsiApplyMultiplePatchesA@12
243MsiApplyMultiplePatchesW@12
244MsiExtractPatchXMLDataA@16
245MsiExtractPatchXMLDataW@16
246MsiGetPatchInfoExA@28
247MsiGetPatchInfoExW@28
248MsiEnumProductsExA@32
249MsiEnumProductsExW@32
250MsiGetProductInfoExA@24
251MsiGetProductInfoExW@24
252MsiQueryComponentStateA@20
253MsiQueryComponentStateW@20
254MsiQueryFeatureStateExA@20
255MsiQueryFeatureStateExW@20
256MsiDeterminePatchSequenceA@20
257MsiDeterminePatchSequenceW@20
258MsiSourceListAddSourceExA@24
259MsiSourceListAddSourceExW@24
260MsiSourceListClearSourceA@20
261MsiSourceListClearSourceW@20
262MsiSourceListClearAllExA@16
263MsiSourceListClearAllExW@16
264MsiSourceListForceResolutionExA@16
265MsiSourceListForceResolutionExW@16
266MsiSourceListEnumSourcesA@28
267MsiSourceListEnumSourcesW@28
268MsiSourceListGetInfoA@28
269MsiSourceListGetInfoW@28
270MsiSourceListSetInfoA@24
271MsiSourceListSetInfoW@24
272MsiEnumPatchesExA@40
273MsiEnumPatchesExW@40
274MsiSourceListEnumMediaDisksA@40
275MsiSourceListEnumMediaDisksW@40
276MsiSourceListAddMediaDiskA@28
277MsiSourceListAddMediaDiskW@28
278MsiSourceListClearMediaDiskA@20
279MsiSourceListClearMediaDiskW@20
280MsiDetermineApplicablePatchesA@12
281MsiDetermineApplicablePatchesW@12
282MsiMessageBoxExA@28
283MsiMessageBoxExW@28
284MsiSetExternalUIRecord@16
285;DllCanUnloadNow
286;DllGetClassObject@12
287;DllRegisterServer
288;DllUnregisterServer
lib/libc/mingw/lib32/msimg32.def created+5
...@@ -0,0 +1,5 @@
1LIBRARY MSIMG32.DLL
2EXPORTS
3AlphaBlend@44
4GradientFill@24
5TransparentBlt@44
lib/libc/mingw/lib32/mstask.def created+33
...@@ -0,0 +1,33 @@
1;
2; Definition file of mstask.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "mstask.dll"
7EXPORTS
8ConvertAtJobsToTasks@0
9DllCanUnloadNow@0
10DllGetClassObject@12
11GetNetScheduleAccountInformation@12
12NetrJobAdd@12
13NetrJobDel@12
14NetrJobEnum@20
15NetrJobGetInfo@12
16SAGetAccountInformation@16
17SAGetNSAccountInformation@12
18SASetAccountInformation@20
19SASetNSAccountInformation@12
20SetNetScheduleAccountInformation@12
21_ConvertAtJobsToTasks@0@0
22_DllCanUnloadNow@0@0
23_DllGetClassObject@12@12
24_GetNetScheduleAccountInformation@12@12
25_NetrJobAdd@12@12
26_NetrJobDel@12@12
27_NetrJobEnum@20@20
28_NetrJobGetInfo@12@12
29_SAGetAccountInformation@16@16
30_SAGetNSAccountInformation@12@12
31_SASetAccountInformation@20@20
32_SASetNSAccountInformation@12@12
33_SetNetScheduleAccountInformation@12@12
lib/libc/mingw/lib32/msvfw32.def created+49
...@@ -0,0 +1,49 @@
1LIBRARY MSVFW32.DLL
2EXPORTS
3VideoForWindowsVersion@0
4StretchDIB@48
5MCIWndRegisterClass
6MCIWndCreateW
7MCIWndCreateA
8MCIWndCreate
9ICSeqCompressFrameStart@8
10ICSeqCompressFrameEnd@4
11ICSeqCompressFrame@20
12ICSendMessage@16
13ICRemove@12
14ICOpenFunction@16
15ICOpen@12
16ICMThunk32@20
17ICLocate@20
18ICInstall@20
19ICInfo@12
20ICImageDecompress@20
21ICImageCompress@28
22ICGetInfo@12
23ICGetDisplayFormat@24
24ICDrawBegin
25ICDraw
26ICDecompress
27ICCompressorFree@4
28ICCompressorChoose@24
29ICCompress
30ICClose@4
31GetSaveFileNamePreviewW@4
32GetSaveFileNamePreviewA@4
33GetOpenFileNamePreviewW@4
34GetOpenFileNamePreviewA@4
35GetOpenFileNamePreview@4
36DrawDibTime@8
37DrawDibStop@4
38DrawDibStart@8
39DrawDibSetPalette@8
40DrawDibRealize@12
41DrawDibProfileDisplay@4
42DrawDibOpen@0
43DrawDibGetPalette@4
44DrawDibGetBuffer@16
45DrawDibEnd@4
46DrawDibDraw@52
47DrawDibClose@4
48DrawDibChangePalette@16
49DrawDibBegin@32
lib/libc/mingw/lib32/ndfapi.def created+25
...@@ -0,0 +1,25 @@
1;
2; Definition file of NDFAPI.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "NDFAPI.DLL"
7EXPORTS
8NdfRunDllDiagnoseIncident@16
9NdfRunDllDiagnoseNetConnectionIncident@16
10NdfRunDllDuplicateIPDefendingSystem@16
11NdfRunDllDuplicateIPOffendingSystem@16
12NdfRunDllHelpTopic@16
13DllCanUnloadNow@0
14DllGetClassObject@12
15DllRegisterServer@0
16DllUnregisterServer@0
17NdfCloseIncident@4
18NdfCreateConnectivityIncident@4
19NdfCreateDNSIncident@12
20NdfCreateIncident@16
21NdfCreateSharingIncident@8
22NdfCreateWebIncident@8
23NdfCreateWebIncidentEx@16
24NdfCreateWinSockIncident@24
25NdfExecuteDiagnosis@8
lib/libc/mingw/lib32/netutils.def created+29
...@@ -0,0 +1,29 @@
1;
2; Definition file of netutils.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "netutils.dll"
7EXPORTS
8NetApiBufferAllocate@8
9NetApiBufferFree@4
10NetApiBufferReallocate@12
11NetApiBufferSize@8
12NetRemoteComputerSupports@12
13NetapipBufferAllocate@8
14NetpIsComputerNameValid@4
15NetpIsDomainNameValid@4
16NetpIsGroupNameValid@4
17NetpIsRemote@20
18NetpIsRemoteNameValid@4
19NetpIsShareNameValid@4
20NetpIsUncComputerNameValid@4
21NetpIsUserNameValid@4
22NetpwListCanonicalize@32
23NetpwListTraverse@12
24NetpwNameCanonicalize@20
25NetpwNameCompare@16
26NetpwNameValidate@12
27NetpwPathCanonicalize@24
28NetpwPathCompare@16
29NetpwPathType@12
lib/libc/mingw/lib32/newdev.def created+6
...@@ -0,0 +1,6 @@
1LIBRARY newdev.dll
2EXPORTS
3UpdateDriverForPlugAndPlayDevicesA
4UpdateDriverForPlugAndPlayDevicesW
5UpdateDriverForPlugAndPlayDevicesA@20==UpdateDriverForPlugAndPlayDevicesA
6UpdateDriverForPlugAndPlayDevicesW@20==UpdateDriverForPlugAndPlayDevicesW
lib/libc/mingw/lib32/normaliz.def created+12
...@@ -0,0 +1,12 @@
1;
2; Definition file of Normaliz.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "Normaliz.dll"
7EXPORTS
8IdnToAscii@20
9IdnToNameprepUnicode@20
10IdnToUnicode@20
11IsNormalizedString@12
12NormalizeString@20
lib/libc/mingw/lib32/ntdsapi.def created+119
...@@ -0,0 +1,119 @@
1;
2; Definition file of NTDSAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "NTDSAPI.dll"
7EXPORTS
8DsAddSidHistoryA@32
9DsAddSidHistoryW@32
10DsBindA@12
11DsBindByInstanceA@32
12DsBindByInstanceW@32
13DsBindToISTGA@8
14DsBindToISTGW@8
15DsBindW@12
16DsBindWithCredA@16
17DsBindWithCredW@16
18DsBindWithSpnA@20
19DsBindWithSpnExA@24
20DsBindWithSpnExW@24
21DsBindWithSpnW@20
22DsBindingSetTimeout@8
23DsClientMakeSpnForTargetServerA@16
24DsClientMakeSpnForTargetServerW@16
25DsCrackNamesA@28
26DsCrackNamesW@28
27DsCrackSpn2A@36
28DsCrackSpn2W@36
29DsCrackSpn3W@44
30DsCrackSpnA@32
31DsCrackSpnW@32
32DsCrackUnquotedMangledRdnA@16
33DsCrackUnquotedMangledRdnW@16
34DsFinishDemotionW@20
35DsFreeDomainControllerInfoA@12
36DsFreeDomainControllerInfoW@12
37DsFreeNameResultA@4
38DsFreeNameResultW@4
39DsFreePasswordCredentials@4
40DsFreeSchemaGuidMapA@4
41DsFreeSchemaGuidMapW@4
42DsFreeSpnArrayA@8
43DsFreeSpnArrayW@8
44DsGetBindAddrW@4
45DsGetBindAnnotW@4
46DsGetBindInstGuid@4
47DsGetDomainControllerInfoA@20
48DsGetDomainControllerInfoW@20
49DsGetRdnW@24
50DsGetSpnA@36
51DsGetSpnW@36
52DsInheritSecurityIdentityA@16
53DsInheritSecurityIdentityW@16
54DsInitDemotionW@4
55DsIsMangledDnA@8
56DsIsMangledDnW@8
57DsIsMangledRdnValueA@12
58DsIsMangledRdnValueW@12
59DsListDomainsInSiteA@12
60DsListDomainsInSiteW@12
61DsListInfoForServerA@12
62DsListInfoForServerW@12
63DsListRolesA@8
64DsListRolesW@8
65DsListServersForDomainInSiteA@16
66DsListServersForDomainInSiteW@16
67DsListServersInSiteA@12
68DsListServersInSiteW@12
69DsListSitesA@8
70DsListSitesW@8
71DsLogEntry@0
72DsMakePasswordCredentialsA@16
73DsMakePasswordCredentialsW@16
74DsMakeSpnA@28
75DsMakeSpnW@28
76DsMapSchemaGuidsA@16
77DsMapSchemaGuidsW@16
78DsQuerySitesByCostA@24
79DsQuerySitesByCostW@24
80DsQuerySitesFree@4
81DsQuoteRdnValueA@16
82DsQuoteRdnValueW@16
83DsRemoveDsDomainA@8
84DsRemoveDsDomainW@8
85DsRemoveDsServerA@20
86DsRemoveDsServerW@20
87DsReplicaAddA@28
88DsReplicaAddW@28
89DsReplicaConsistencyCheck@12
90DsReplicaDelA@16
91DsReplicaDelW@16
92DsReplicaDemotionW@16
93DsReplicaFreeInfo@8
94DsReplicaGetInfo2W@36
95DsReplicaGetInfoW@20
96DsReplicaModifyA@36
97DsReplicaModifyW@36
98DsReplicaSyncA@16
99DsReplicaSyncAllA@24
100DsReplicaSyncAllW@24
101DsReplicaSyncW@16
102DsReplicaUpdateRefsA@20
103DsReplicaUpdateRefsW@20
104DsReplicaVerifyObjectsA@16
105DsReplicaVerifyObjectsW@16
106DsServerRegisterSpnA@12
107DsServerRegisterSpnW@12
108DsUnBindA@4
109DsUnBindW@4
110DsUnquoteRdnValueA@16
111DsUnquoteRdnValueW@16
112DsWriteAccountSpnA@20
113DsWriteAccountSpnW@20
114DsaopBind@20
115DsaopBindWithCred@24
116DsaopBindWithSpn@28
117DsaopExecuteScript@24
118DsaopPrepareScript@16
119DsaopUnBind@4
lib/libc/mingw/lib32/oleacc.def created+31
...@@ -0,0 +1,31 @@
1;
2; Definition file of OLEACC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "OLEACC.dll"
7EXPORTS
8DllRegisterServer@0
9DllUnregisterServer@0
10AccessibleChildren@20
11AccessibleObjectFromEvent@20
12AccessibleObjectFromPoint@16
13AccessibleObjectFromWindow@16
14CreateStdAccessibleObject@16
15CreateStdAccessibleProxyA@20
16CreateStdAccessibleProxyW@20
17DllCanUnloadNow@0
18DllGetClassObject@12
19GetOleaccVersionInfo@8
20GetProcessHandleFromHwnd@4
21GetRoleTextA@12
22GetRoleTextW@12
23GetStateTextA@12
24GetStateTextW@12
25;IID_IAccessible DATA
26;IID_IAccessibleHandler DATA
27;LIBID_Accessibility DATA
28LresultFromObject@12
29ObjectFromLresult@16
30PropMgrClient_LookupProp@28
31WindowFromAccessibleObject@8
lib/libc/mingw/lib32/oledlg.def created+30
...@@ -0,0 +1,30 @@
1;
2; Definition file of oledlg.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "oledlg.dll"
7EXPORTS
8OleUIAddVerbMenuA@36
9OleUICanConvertOrActivateAs@12
10OleUIInsertObjectA@4
11OleUIPasteSpecialA@4
12OleUIEditLinksA@4
13OleUIChangeIconA@4
14OleUIConvertA@4
15OleUIBusyA@4
16OleUIUpdateLinksA@16
17OleUIPromptUserA
18OleUIObjectPropertiesA@4
19OleUIChangeSourceA@4
20OleUIAddVerbMenuW@36
21OleUIBusyW@4
22OleUIChangeIconW@4
23OleUIChangeSourceW@4
24OleUIConvertW@4
25OleUIEditLinksW@4
26OleUIInsertObjectW@4
27OleUIObjectPropertiesW@4
28OleUIPasteSpecialW@4
29OleUIPromptUserW
30OleUIUpdateLinksW@16
lib/libc/mingw/lib32/p2p.def created+118
...@@ -0,0 +1,118 @@
1;
2; Definition file of P2P.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "P2P.dll"
7EXPORTS
8DllMain@12
9PeerCollabAddContact@8
10PeerCollabAsyncInviteContact@20
11PeerCollabAsyncInviteEndpoint@16
12PeerCollabCancelInvitation@4
13PeerCollabCloseHandle@4
14PeerCollabDeleteContact@4
15PeerCollabDeleteEndpointData@4
16PeerCollabDeleteObject@4
17PeerCollabEnumApplicationRegistrationInfo@8
18PeerCollabEnumApplications@12
19PeerCollabEnumContacts@4
20PeerCollabEnumEndpoints@8
21PeerCollabEnumObjects@12
22PeerCollabEnumPeopleNearMe@4
23PeerCollabExportContact@8
24PeerCollabGetAppLaunchInfo@4
25PeerCollabGetApplicationRegistrationInfo@12
26PeerCollabGetContact@8
27PeerCollabGetEndpointName@4
28PeerCollabGetEventData@8
29PeerCollabGetInvitationResponse@8
30PeerCollabGetPresenceInfo@8
31PeerCollabGetSigninOptions@4
32PeerCollabInviteContact@16
33PeerCollabInviteEndpoint@12
34PeerCollabParseContact@8
35PeerCollabQueryContactData@8
36PeerCollabRefreshEndpointData@4
37PeerCollabRegisterApplication@8
38PeerCollabRegisterEvent@16
39PeerCollabSetEndpointName@4
40PeerCollabSetObject@4
41PeerCollabSetPresenceInfo@4
42PeerCollabShutdown@0
43PeerCollabSignin@8
44PeerCollabSignout@4
45PeerCollabStartup@4
46PeerCollabSubscribeEndpointData@4
47PeerCollabUnregisterApplication@8
48PeerCollabUnregisterEvent@4
49PeerCollabUnsubscribeEndpointData@4
50PeerCollabUpdateContact@4
51PeerCreatePeerName@12
52PeerEndEnumeration@4
53PeerEnumGroups@8
54PeerEnumIdentities@4
55PeerFreeData@4
56PeerGetItemCount@8
57PeerGetNextItem@12
58PeerGroupAddRecord@12
59PeerGroupClose@4
60PeerGroupCloseDirectConnection@12
61PeerGroupConnect@4
62PeerGroupConnectByAddress@12
63PeerGroupCreate@8
64PeerGroupCreateInvitation@24
65PeerGroupCreatePasswordInvitation@8
66PeerGroupDelete@8
67PeerGroupDeleteRecord@8
68PeerGroupEnumConnections@12
69PeerGroupEnumMembers@16
70PeerGroupEnumRecords@12
71PeerGroupExportConfig@12
72PeerGroupExportDatabase@8
73PeerGroupGetEventData@8
74PeerGroupGetProperties@8
75PeerGroupGetRecord@12
76PeerGroupGetStatus@8
77PeerGroupImportConfig@20
78PeerGroupImportDatabase@8
79PeerGroupIssueCredentials@20
80PeerGroupJoin@16
81PeerGroupOpen@16
82PeerGroupOpenDirectConnection@16
83PeerGroupParseInvitation@8
84PeerGroupPasswordJoin@20
85PeerGroupPeerTimeToUniversalTime@12
86PeerGroupRegisterEvent@20
87PeerGroupSearchRecords@12
88PeerGroupSendData@24
89PeerGroupSetProperties@8
90PeerGroupShutdown@0
91PeerGroupStartup@8
92PeerGroupUniversalTimeToPeerTime@12
93PeerGroupUnregisterEvent@4
94PeerGroupUpdateRecord@8
95PeerHostNameToPeerName@8
96PeerIdentityCreate@16
97PeerIdentityDelete@4
98PeerIdentityExport@12
99PeerIdentityGetCert@12
100PeerIdentityGetCryptKey@8
101PeerIdentityGetDefault@4
102PeerIdentityGetFriendlyName@8
103PeerIdentityGetXML@8
104PeerIdentityImport@12
105PeerIdentitySetFriendlyName@8
106PeerNameToPeerHostName@8
107PeerPnrpEndResolve@4
108PeerPnrpGetCloudInfo@8
109PeerPnrpGetEndpoint@8
110PeerPnrpRegister@12
111PeerPnrpResolve@16
112PeerPnrpShutdown@0
113PeerPnrpStartResolve@20
114PeerPnrpStartup@4
115PeerPnrpUnregister@4
116PeerPnrpUpdateRegistration@8
117PeerSSPAddCredentials@12
118PeerSSPRemoveCredentials@4
lib/libc/mingw/lib32/p2pgraph.def created+45
...@@ -0,0 +1,45 @@
1;
2; Definition file of P2PGRAPH.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "P2PGRAPH.dll"
7EXPORTS
8pMemoryHelper DATA
9PeerGraphAddRecord@12
10PeerGraphClose@4
11PeerGraphCloseDirectConnection@12
12PeerGraphConnect@16
13PeerGraphCreate@16
14PeerGraphDelete@12
15PeerGraphDeleteRecord@12
16PeerGraphEndEnumeration@4
17PeerGraphEnumConnections@12
18PeerGraphEnumNodes@12
19PeerGraphEnumRecords@16
20PeerGraphExportDatabase@8
21PeerGraphFreeData@4
22PeerGraphGetEventData@8
23PeerGraphGetItemCount@8
24PeerGraphGetNextItem@12
25PeerGraphGetNodeInfo@16
26PeerGraphGetProperties@8
27PeerGraphGetRecord@12
28PeerGraphGetStatus@8
29PeerGraphImportDatabase@8
30PeerGraphListen@16
31PeerGraphOpen@28
32PeerGraphOpenDirectConnection@16
33PeerGraphPeerTimeToUniversalTime@12
34PeerGraphRegisterEvent@20
35PeerGraphSearchRecords@12
36PeerGraphSendData@24
37PeerGraphSetNodeAttributes@8
38PeerGraphSetPresence@8
39PeerGraphSetProperties@8
40PeerGraphShutdown@0
41PeerGraphStartup@8
42PeerGraphUniversalTimeToPeerTime@12
43PeerGraphUnregisterEvent@4
44PeerGraphUpdateRecord@8
45PeerGraphValidateDeferredRecords@12
lib/libc/mingw/lib32/pdh.def created+135
...@@ -0,0 +1,135 @@
1;
2; Definition file of pdh.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "pdh.dll"
7EXPORTS
8PdhAdd009CounterA@16
9PdhAdd009CounterW@16
10PdhAddCounterA@16
11PdhAddCounterW@16
12PdhAddEnglishCounterA@16
13PdhAddEnglishCounterW@16
14PdhAddRelogCounter@28
15PdhBindInputDataSourceA@8
16PdhBindInputDataSourceW@8
17PdhBrowseCountersA@4
18PdhBrowseCountersHA@4
19PdhBrowseCountersHW@4
20PdhBrowseCountersW@4
21PdhCalculateCounterFromRawValue@20
22PdhCloseLog@8
23PdhCloseQuery@4
24PdhCollectQueryData@4
25PdhCollectQueryDataEx@12
26PdhCollectQueryDataWithTime@8
27PdhComputeCounterStatistics@24
28PdhConnectMachineA@4
29PdhConnectMachineW@4
30PdhCreateSQLTablesA@4
31PdhCreateSQLTablesW@4
32PdhEnumLogSetNamesA@12
33PdhEnumLogSetNamesW@12
34PdhEnumMachinesA@12
35PdhEnumMachinesHA@12
36PdhEnumMachinesHW@12
37PdhEnumMachinesW@12
38PdhEnumObjectItemsA@36
39PdhEnumObjectItemsHA@36
40PdhEnumObjectItemsHW@36
41PdhEnumObjectItemsW@36
42PdhEnumObjectsA@24
43PdhEnumObjectsHA@24
44PdhEnumObjectsHW@24
45PdhEnumObjectsW@24
46PdhExpandCounterPathA@12
47PdhExpandCounterPathW@12
48PdhExpandWildCardPathA@20
49PdhExpandWildCardPathHA@20
50PdhExpandWildCardPathHW@20
51PdhExpandWildCardPathW@20
52PdhFormatFromRawValue@24
53PdhGetCounterInfoA@16
54PdhGetCounterInfoW@16
55PdhGetCounterTimeBase@8
56PdhGetDataSourceTimeRangeA@16
57PdhGetDataSourceTimeRangeH@16
58PdhGetDataSourceTimeRangeW@16
59PdhGetDefaultPerfCounterA@20
60PdhGetDefaultPerfCounterHA@20
61PdhGetDefaultPerfCounterHW@20
62PdhGetDefaultPerfCounterW@20
63PdhGetDefaultPerfObjectA@16
64PdhGetDefaultPerfObjectHA@16
65PdhGetDefaultPerfObjectHW@16
66PdhGetDefaultPerfObjectW@16
67PdhGetDllVersion@4
68PdhGetExplainText@12
69PdhGetFormattedCounterArrayA@20
70PdhGetFormattedCounterArrayW@20
71PdhGetFormattedCounterValue@16
72PdhGetLogFileSize@8
73PdhGetLogFileTypeA@8
74PdhGetLogFileTypeW@8
75PdhGetLogSetGUID@12
76PdhGetRawCounterArrayA@16
77PdhGetRawCounterArrayW@16
78PdhGetRawCounterValue@12
79PdhIsRealTimeQuery@4
80PdhListLogFileHeaderA@12
81PdhListLogFileHeaderW@12
82PdhLookupPerfIndexByNameA@12
83PdhLookupPerfIndexByNameW@12
84PdhLookupPerfNameByIndexA@16
85PdhLookupPerfNameByIndexW@16
86PdhMakeCounterPathA@16
87PdhMakeCounterPathW@16
88PdhOpenLogA@28
89PdhOpenLogW@28
90PdhOpenQuery@12
91PdhOpenQueryA@12
92PdhOpenQueryH@12
93PdhOpenQueryW@12
94PdhParseCounterPathA@16
95PdhParseCounterPathW@16
96PdhParseInstanceNameA@24
97PdhParseInstanceNameW@24
98PdhReadRawLogRecord@20
99PdhRelogA@8
100PdhRelogW@8
101PdhRemoveCounter@4
102PdhResetRelogCounterValues@4
103PdhSelectDataSourceA@16
104PdhSelectDataSourceW@16
105PdhSetCounterScaleFactor@8
106PdhSetCounterValue@12
107PdhSetDefaultRealTimeDataSource@4
108PdhSetLogSetRunID@8
109PdhSetQueryTimeRange@8
110PdhTranslate009CounterA@12
111PdhTranslate009CounterW@12
112PdhTranslateLocaleCounterA@12
113PdhTranslateLocaleCounterW@12
114PdhUpdateLogA@8
115PdhUpdateLogFileCatalog@4
116PdhUpdateLogW@8
117PdhValidatePathA@4
118PdhValidatePathExA@8
119PdhValidatePathExW@8
120PdhValidatePathW@4
121PdhVbAddCounter@12
122PdhVbCreateCounterPathList@8
123PdhVbGetCounterPathElements@28
124PdhVbGetCounterPathFromList@12
125PdhVbGetDoubleCounterValue@8
126PdhVbGetLogFileSize@8
127PdhVbGetOneCounterPath@16
128PdhVbIsGoodStatus@4
129PdhVbOpenLog@28
130PdhVbOpenQuery@4
131PdhVbUpdateLog@8
132PdhVerifySQLDBA@4
133PdhVerifySQLDBW@4
134PdhWriteRelogSample@12
135PdhpGetLoggerName@16
lib/libc/mingw/lib32/powrprof.def created+103
...@@ -0,0 +1,103 @@
1;
2; Definition file of POWRPROF.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "POWRPROF.dll"
7EXPORTS
8CallNtPowerInformation@20
9CanUserWritePwrScheme@0
10DeletePwrScheme@4
11DevicePowerClose
12DevicePowerEnumDevices@20
13DevicePowerOpen@4
14DevicePowerSetDeviceState@12
15EnumPwrSchemes@8
16GUIDFormatToGlobalPowerPolicy@8
17GUIDFormatToPowerPolicy@8
18GetActivePwrScheme@4
19GetCurrentPowerPolicies@8
20GetPwrCapabilities@4
21GetPwrDiskSpindownRange@8
22IsAdminOverrideActive@4
23IsPwrHibernateAllowed@0
24IsPwrShutdownAllowed@0
25IsPwrSuspendAllowed@0
26LoadCurrentPwrScheme@16
27MergeLegacyPwrScheme@16
28PowerCanRestoreIndividualDefaultPowerScheme@4
29PowerCreatePossibleSetting@16
30PowerCreateSetting@12
31PowerCustomizePlatformPowerSettings@0
32PowerDebugDifPowerPolicies@16
33PowerDebugDifSystemPowerPolicies@16
34PowerDebugDumpPowerPolicy@12
35PowerDebugDumpPowerScheme@12
36PowerDebugDumpSystemPowerCapabilities@12
37PowerDebugDumpSystemPowerPolicy@12
38PowerDeleteScheme@8
39PowerDeterminePlatformRole@0
40PowerDuplicateScheme@12
41PowerEnumerate@28
42PowerGetActiveScheme@8
43PowerImportPowerScheme@12
44PowerInternalDeleteScheme@8
45PowerInternalDuplicateScheme@12
46PowerInternalImportPowerScheme@12
47PowerInternalRestoreDefaultPowerSchemes@0
48PowerInternalRestoreIndividualDefaultPowerScheme@4
49PowerInternalSetActiveScheme@8
50PowerInternalWriteToUserPowerKey@32
51PowerOpenSystemPowerKey@12
52PowerOpenUserPowerKey@12
53PowerPolicyToGUIDFormat@8
54PowerReadACDefaultIndex@20
55PowerReadACValue@28
56PowerReadACValueIndex@20
57PowerReadDCDefaultIndex@20
58PowerReadDCValue@28
59PowerReadDCValueIndex@20
60PowerReadDescription@24
61PowerReadFriendlyName@24
62PowerReadIconResourceSpecifier@24
63PowerReadPossibleDescription@24
64PowerReadPossibleFriendlyName@24
65PowerReadPossibleValue@28
66PowerReadSecurityDescriptor@12
67PowerReadSettingAttributes@8
68PowerReadValueIncrement@16
69PowerReadValueMax@16
70PowerReadValueMin@16
71PowerReadValueUnitsSpecifier@20
72PowerRemovePowerSetting@8
73PowerReplaceDefaultPowerSchemes@0
74PowerRestoreDefaultPowerSchemes@0
75PowerRestoreIndividualDefaultPowerScheme@4
76PowerSetActiveScheme@8
77PowerSettingAccessCheck@8
78PowerWriteACDefaultIndex@20
79PowerWriteACValueIndex@20
80PowerWriteDCDefaultIndex@20
81PowerWriteDCValueIndex@20
82PowerWriteDescription@24
83PowerWriteFriendlyName@24
84PowerWriteIconResourceSpecifier@24
85PowerWritePossibleDescription@24
86PowerWritePossibleFriendlyName@24
87PowerWritePossibleValue@28
88PowerWriteSecurityDescriptor@12
89PowerWriteSettingAttributes@12
90PowerWriteValueIncrement@16
91PowerWriteValueMax@16
92PowerWriteValueMin@16
93PowerWriteValueUnitsSpecifier@20
94ReadGlobalPwrPolicy@4
95ReadProcessorPwrScheme@8
96ReadPwrScheme@8
97SetActivePwrScheme@12
98SetSuspendState@12
99Sysprep_Generalize_Power@0
100ValidatePowerPolicies@8
101WriteGlobalPwrPolicy@4
102WriteProcessorPwrScheme@8
103WritePwrScheme@16
lib/libc/mingw/lib32/prntvpt.def created+35
...@@ -0,0 +1,35 @@
1LIBRARY "prntvpt.dll"
2EXPORTS
3PTQuerySchemaVersionSupport@8
4PTOpenProvider@12
5PTOpenProviderEx@20
6PTCloseProvider@4
7BindPTProviderThunk@20
8PTGetPrintCapabilities@16
9PTMergeAndValidatePrintTicket@24
10PTConvertPrintTicketToDevMode@28
11PTConvertDevModeToPrintTicket@20
12PTReleaseMemory@4
13PTGetPrintDeviceCapabilities@16
14PTGetPrintDeviceResources@20
15ConvertDevModeToPrintTicketThunk2@24
16ConvertDevModeToPrintTicketThunk@20
17ConvertPrintTicketToDevModeThunk2@32
18ConvertPrintTicketToDevModeThunk@28
19DllCanUnloadNow@0
20DllGetClassObject@12
21DllMain@12
22DllRegisterServer@0
23DllUnregisterServer@0
24GetDeviceDefaultPrintTicketThunk@12
25GetDeviceNamespacesThunk@12
26GetPrintCapabilitiesThunk2@24
27GetPrintCapabilitiesThunk@20
28GetPrintDeviceCapabilitiesThunk2@24
29GetPrintDeviceCapabilitiesThunk@20
30GetPrintDeviceResourcesThunk2@28
31GetPrintDeviceResourcesThunk@24
32GetSchemaVersionThunk@4
33MergeAndValidatePrintTicketThunk2@36
34MergeAndValidatePrintTicketThunk@28
35UnbindPTProviderThunk@4
lib/libc/mingw/lib32/propsys.def created+226
...@@ -0,0 +1,226 @@
1LIBRARY "PROPSYS.dll"
2EXPORTS
3SHGetPropertyStoreForWindow@12
4ClearPropVariantArray@8
5ClearVariantArray@8
6DllCanUnloadNow@0
7DllGetClassObject@12
8DllRegisterServer@0
9DllUnregisterServer@0
10GetProxyDllInfo@8
11InitPropVariantFromBooleanVector@12
12InitPropVariantFromBuffer@12
13InitPropVariantFromCLSID@8
14InitPropVariantFromDoubleVector@12
15InitPropVariantFromFileTime@8
16InitPropVariantFromFileTimeVector@12
17InitPropVariantFromGUIDAsString@8
18InitPropVariantFromInt16Vector@12
19InitPropVariantFromInt32Vector@12
20InitPropVariantFromInt64Vector@12
21InitPropVariantFromPropVariantVectorElem@12
22InitPropVariantFromResource@12
23InitPropVariantFromStrRet@12
24InitPropVariantFromStringAsVector@8
25InitPropVariantFromStringVector@12
26InitPropVariantFromUInt16Vector@12
27InitPropVariantFromUInt32Vector@12
28InitPropVariantFromUInt64Vector@12
29InitPropVariantVectorFromPropVariant@8
30InitVariantFromBooleanArray@12
31InitVariantFromBuffer@12
32InitVariantFromDoubleArray@12
33InitVariantFromFileTime@8
34InitVariantFromFileTimeArray@12
35InitVariantFromGUIDAsString@8
36InitVariantFromInt16Array@12
37InitVariantFromInt32Array@12
38InitVariantFromInt64Array@12
39InitVariantFromResource@12
40InitVariantFromStrRet@12
41InitVariantFromStringArray@12
42InitVariantFromUInt16Array@12
43InitVariantFromUInt32Array@12
44InitVariantFromUInt64Array@12
45InitVariantFromVariantArrayElem@12
46PSCoerceToCanonicalValue@8
47PSCreateAdapterFromPropertyStore@12
48PSCreateDelayedMultiplexPropertyStore@24
49PSCreateMemoryPropertyStore@8
50PSCreateMultiplexPropertyStore@16
51PSCreatePropertyChangeArray@24
52PSCreatePropertyStoreFromObject@16
53PSCreatePropertyStoreFromPropertySetStorage@16
54PSCreateSimplePropertyChange@20
55PSEnumeratePropertyDescriptions@12
56PSFormatForDisplay@20
57PSFormatForDisplayAlloc@16
58PSFormatPropertyValue@16
59PSGetImageReferenceForValue@12
60PSGetItemPropertyHandler@16
61PSGetItemPropertyHandlerWithCreateObject@20
62PSGetNameFromPropertyKey@8
63PSGetNamedPropertyFromPropertyStorage@16
64PSGetPropertyDescription@12
65PSGetPropertyDescriptionByName@12
66PSGetPropertyDescriptionListFromString@12
67PSGetPropertyFromPropertyStorage@16
68PSGetPropertyKeyFromName@8
69PSGetPropertySystem@8
70PSGetPropertyValue@12
71PSLookupPropertyHandlerCLSID@8
72PSPropertyBag_Delete@8
73PSPropertyBag_ReadBOOL@12
74PSPropertyBag_ReadBSTR@12
75PSPropertyBag_ReadDWORD@12
76PSPropertyBag_ReadGUID@12
77PSPropertyBag_ReadInt@12
78PSPropertyBag_ReadLONG@12
79PSPropertyBag_ReadPOINTL@12
80PSPropertyBag_ReadPOINTS@12
81PSPropertyBag_ReadPropertyKey@12
82PSPropertyBag_ReadRECTL@12
83PSPropertyBag_ReadSHORT@12
84PSPropertyBag_ReadStr@16
85PSPropertyBag_ReadStrAlloc@12
86PSPropertyBag_ReadStream@12
87PSPropertyBag_ReadType@16
88PSPropertyBag_ReadULONGLONG@12
89PSPropertyBag_ReadUnknown@16
90PSPropertyBag_WriteBOOL@12
91PSPropertyBag_WriteBSTR@12
92PSPropertyBag_WriteDWORD@12
93PSPropertyBag_WriteGUID@12
94PSPropertyBag_WriteInt@12
95PSPropertyBag_WriteLONG@12
96PSPropertyBag_WritePOINTL@12
97PSPropertyBag_WritePOINTS@12
98PSPropertyBag_WritePropertyKey@12
99PSPropertyBag_WriteRECTL@12
100PSPropertyBag_WriteSHORT@12
101PSPropertyBag_WriteStr@12
102PSPropertyBag_WriteStream@12
103PSPropertyBag_WriteULONGLONG@16
104PSPropertyBag_WriteUnknown@12
105PSPropertyKeyFromString@8
106PSRefreshPropertySchema@0
107PSRegisterPropertySchema@4
108PSSetPropertyValue@12
109PSStringFromPropertyKey@12
110PSUnregisterPropertySchema@4
111PropVariantChangeType@16
112PropVariantCompareEx@16
113PropVariantGetBooleanElem@12
114PropVariantGetDoubleElem@12
115PropVariantGetElementCount@4
116PropVariantGetFileTimeElem@12
117PropVariantGetInt16Elem@12
118PropVariantGetInt32Elem@12
119PropVariantGetInt64Elem@12
120PropVariantGetStringElem@12
121PropVariantGetUInt16Elem@12
122PropVariantGetUInt32Elem@12
123PropVariantGetUInt64Elem@12
124PropVariantToBSTR@8
125PropVariantToBoolean@8
126PropVariantToBooleanVector@16
127PropVariantToBooleanVectorAlloc@12
128PropVariantToBooleanWithDefault@8
129PropVariantToBuffer@12
130PropVariantToDouble@8
131PropVariantToDoubleVector@16
132PropVariantToDoubleVectorAlloc@12
133PropVariantToDoubleWithDefault@12
134PropVariantToFileTime@12
135PropVariantToFileTimeVector@16
136PropVariantToFileTimeVectorAlloc@12
137PropVariantToGUID@8
138PropVariantToInt16@8
139PropVariantToInt16Vector@16
140PropVariantToInt16VectorAlloc@12
141PropVariantToInt16WithDefault@8
142PropVariantToInt32@8
143PropVariantToInt32Vector@16
144PropVariantToInt32VectorAlloc@12
145PropVariantToInt32WithDefault@8
146PropVariantToInt64@8
147PropVariantToInt64Vector@16
148PropVariantToInt64VectorAlloc@12
149PropVariantToInt64WithDefault@12
150PropVariantToStrRet@8
151PropVariantToString@12
152PropVariantToStringAlloc@8
153PropVariantToStringVector@16
154PropVariantToStringVectorAlloc@12
155PropVariantToStringWithDefault@8
156PropVariantToUInt16@8
157PropVariantToUInt16Vector@16
158PropVariantToUInt16VectorAlloc@12
159PropVariantToUInt16WithDefault@8
160PropVariantToUInt32@8
161PropVariantToUInt32Vector@16
162PropVariantToUInt32VectorAlloc@12
163PropVariantToUInt32WithDefault@8
164PropVariantToUInt64@8
165PropVariantToUInt64Vector@16
166PropVariantToUInt64VectorAlloc@12
167PropVariantToUInt64WithDefault@12
168PropVariantToVariant@8
169PropVariantToWinRTPropertyValue@12
170StgDeserializePropVariant@12
171StgSerializePropVariant@12
172VariantCompare@8
173VariantGetBooleanElem@12
174VariantGetDoubleElem@12
175VariantGetElementCount@4
176VariantGetInt16Elem@12
177VariantGetInt32Elem@12
178VariantGetInt64Elem@12
179VariantGetStringElem@12
180VariantGetUInt16Elem@12
181VariantGetUInt32Elem@12
182VariantGetUInt64Elem@12
183VariantToBoolean@8
184VariantToBooleanArray@16
185VariantToBooleanArrayAlloc@12
186VariantToBooleanWithDefault@8
187VariantToBuffer@12
188VariantToDosDateTime@12
189VariantToDouble@8
190VariantToDoubleArray@16
191VariantToDoubleArrayAlloc@12
192VariantToDoubleWithDefault@12
193VariantToFileTime@12
194VariantToGUID@8
195VariantToInt16@8
196VariantToInt16Array@16
197VariantToInt16ArrayAlloc@12
198VariantToInt16WithDefault@8
199VariantToInt32@8
200VariantToInt32Array@16
201VariantToInt32ArrayAlloc@12
202VariantToInt32WithDefault@8
203VariantToInt64@8
204VariantToInt64Array@16
205VariantToInt64ArrayAlloc@12
206VariantToInt64WithDefault@12
207VariantToPropVariant@8
208VariantToStrRet@8
209VariantToString@12
210VariantToStringAlloc@8
211VariantToStringArray@16
212VariantToStringArrayAlloc@12
213VariantToStringWithDefault@8
214VariantToUInt16@8
215VariantToUInt16Array@16
216VariantToUInt16ArrayAlloc@12
217VariantToUInt16WithDefault@8
218VariantToUInt32@8
219VariantToUInt32Array@16
220VariantToUInt32ArrayAlloc@12
221VariantToUInt32WithDefault@8
222VariantToUInt64@8
223VariantToUInt64Array@16
224VariantToUInt64ArrayAlloc@12
225VariantToUInt64WithDefault@12
226WinRTPropertyValueToPropVariant@8
lib/libc/mingw/lib32/quartz.def created+7
...@@ -0,0 +1,7 @@
1LIBRARY quartz.dll
2EXPORTS
3AMGetErrorTextA@12
4AMGetErrorTextW@12
5AmpFactorToDB@4
6DBToAmpFactor@4
7
lib/libc/mingw/lib32/qwave.def created+21
...@@ -0,0 +1,21 @@
1;
2; Definition file of qwave.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "qwave.dll"
7EXPORTS
8QDLHPathDiagnostics@20
9QDLHStartDiagnosingPath@12
10QOSAddSocketToFlow@24
11QOSCancel@8
12QOSCloseHandle@4
13QOSCreateHandle@8
14QOSEnumerateFlows@12
15QOSNotifyFlow@28
16QOSQueryFlow@28
17QOSRemoveSocketFromFlow@16
18QOSSetFlow@28
19QOSStartTrackingClient@12
20QOSStopTrackingClient@12
21ServiceMain@8
lib/libc/mingw/lib32/rasapi32.def created+146
...@@ -0,0 +1,146 @@
1LIBRARY RASAPI32.DLL
2EXPORTS
3DDMGetPhonebookInfo@32
4DwCloneEntry@12
5DwDeleteSubEntry@12
6DwEnumEntriesForAllUsers@12
7DwEnumEntryDetails@16
8FreeSharedAccessApplication@4
9FreeSharedAccessServer@4
10RasAutoDialSharedConnection@0
11RasAutodialAddressToNetwork@12
12RasAutodialEntryToNetwork@12
13RasClearConnectionStatistics@4
14RasClearLinkStatistics@8
15RasConnectionNotificationA@12
16RasConnectionNotificationW@12
17RasCreatePhonebookEntryA@8
18RasCreatePhonebookEntryW@8
19RasDeleteEntryA@8
20RasDeleteEntryW@8
21RasDialA@24
22RasDialW@24
23RasDialWow@20
24RasEditPhonebookEntryA@12
25RasEditPhonebookEntryW@12
26RasEnumAutodialAddressesA@12
27RasEnumAutodialAddressesW@12
28RasEnumConnectionsA@12
29RasEnumConnectionsW@12
30RasEnumConnectionsWow@12
31RasEnumDevicesA@12
32RasEnumDevicesW@12
33RasEnumEntriesA@20
34RasEnumEntriesW@20
35RasEnumEntriesWow@20
36RasFreeEapUserIdentityA@4
37RasFreeEapUserIdentityW@4
38RasFreeLanConnTable@8
39RasFreeSharedAccessSettings@4
40RasGetAutodialAddressA@20
41RasGetAutodialAddressW@20
42RasGetAutodialEnableA@8
43RasGetAutodialEnableW@8
44RasGetAutodialParamA@12
45RasGetAutodialParamW@12
46RasGetConnectResponse@8
47RasGetConnectStatusA@8
48RasGetConnectStatusW@8
49RasGetConnectStatusWow@8
50RasGetConnectionStatistics@8
51RasGetCountryInfoA@8
52RasGetCountryInfoW@8
53RasGetCredentialsA@12
54RasGetCredentialsW@12
55RasGetCustomAuthDataA@16
56RasGetCustomAuthDataW@16
57RasGetEapUserDataA@20
58RasGetEapUserDataW@20
59RasGetEapUserIdentityA@20
60RasGetEapUserIdentityW@20
61RasGetEntryDialParamsA@12
62RasGetEntryDialParamsW@12
63RasGetEntryHrasconnA@12
64RasGetEntryHrasconnW@12
65RasGetEntryPropertiesA@24
66RasGetEntryPropertiesW@24
67RasGetErrorStringA@12
68RasGetErrorStringW@12
69RasGetErrorStringWow@12
70RasGetHport@4
71RasGetLinkStatistics@12
72RasGetProjectionInfoA@16
73RasGetProjectionInfoW@16
74RasGetSubEntryHandleA@12
75RasGetSubEntryHandleW@12
76RasGetSubEntryPropertiesA@28
77RasGetSubEntryPropertiesW@28
78RasHangUpA@4
79RasHangUpW@4
80RasHangUpWow@4
81RasInvokeEapUI@16
82RasIsRouterConnection@4
83RasIsSharedConnection@8
84RasLoadSharedAccessSettings@4
85RasNameFromSharedConnection@8
86RasQueryLanConnTable@12
87RasQueryRedialOnLinkFailure@12
88RasQuerySharedAutoDial@4
89RasQuerySharedConnection@4
90RasQuerySharedConnectionCredentials@8
91RasQuerySharedPrivateLan@4
92RasQuerySharedPrivateLanAddress@4
93RasRenameEntryA@12
94RasRenameEntryW@12
95RasSaveSharedAccessSettings@4
96RasSetAutodialAddressA@20
97RasSetAutodialAddressW@20
98RasSetAutodialEnableA@8
99RasSetAutodialEnableW@8
100RasSetAutodialParamA@12
101RasSetAutodialParamW@12
102RasSetCredentialsA@16
103RasSetCredentialsW@16
104RasSetCustomAuthDataA@16
105RasSetCustomAuthDataW@16
106RasSetEapUserDataA@20
107RasSetEapUserDataW@20
108RasSetEntryDialParamsA@12
109RasSetEntryDialParamsW@12
110RasSetEntryPropertiesA@24
111RasSetEntryPropertiesW@24
112RasSetOldPassword@8
113RasSetSharedAutoDial@4
114RasSetSharedConnectionCredentials@8
115RasSetSubEntryPropertiesA@28
116RasSetSubEntryPropertiesW@28
117RasShareConnection@8
118RasUnshareConnection@4
119RasValidateEntryNameA@8
120RasValidateEntryNameW@8
121RasfileClose@4
122RasfileDeleteLine@4
123RasfileFindFirstLine@12
124RasfileFindLastLine@12
125RasfileFindMarkedLine@8
126RasfileFindNextKeyLine@12
127RasfileFindNextLine@12
128RasfileFindPrevLine@12
129RasfileFindSectionLine@12
130RasfileGetKeyValueFields@12
131RasfileGetLine@4
132RasfileGetLineMark@4
133RasfileGetLineText@8
134RasfileGetLineType@4
135RasfileGetSectionName@8
136RasfileInsertLine@12
137RasfileLoad@16
138RasfileLoadInfo@8
139RasfilePutKeyValueFields@12
140RasfilePutLineMark@8
141RasfilePutLineText@8
142RasfilePutSectionName@8
143RasfileWrite@8
144SharedAccessResponseListToString@8
145SharedAccessResponseStringToList@12
146UnInitializeRAS@0
lib/libc/mingw/lib32/rasdlg.def created+8
...@@ -0,0 +1,8 @@
1LIBRARY RASDLG.DLL
2EXPORTS
3RasDialDlgA@16
4RasDialDlgW@16
5RasEntryDlgA@12
6RasEntryDlgW@12
7RasPhonebookDlgA@12
8RasPhonebookDlgW@12
lib/libc/mingw/lib32/rstrtmgr.def created+19
...@@ -0,0 +1,19 @@
1;
2; Definition file of RstrtMgr.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "RstrtMgr.DLL"
7EXPORTS
8RmAddFilter@20
9RmCancelCurrentTask@4
10RmEndSession@4
11RmGetFilterList@16
12RmGetList@20
13RmJoinSession@8
14RmRegisterResources@28
15RmRemoveFilter@16
16RmReserveHeap@4
17RmRestart@12
18RmShutdown@12
19RmStartSession@12
lib/libc/mingw/lib32/rtm.def created+18
...@@ -0,0 +1,18 @@
1LIBRARY RTM.DLL
2EXPORTS
3MgmAddGroupMembershipEntry@32
4MgmDeleteGroupMembershipEntry@32
5MgmDeRegisterMProtocol@4
6MgmGetFirstMfe@12
7MgmGetFirstMfeStats@16
8MgmGetMfe@12
9MgmGetMfeStats@16
10MgmGetNextMfe@16
11MgmGetNextMfeStats@20
12MgmGetProtocolOnInterface@16
13MgmGroupEnumerationEnd@4
14MgmGroupEnumerationGetNext@16
15MgmGroupEnumerationStart@12
16MgmRegisterMProtocol@16
17MgmReleaseInterfaceOwnership@12
18MgmTakeInterfaceOwnership@12
lib/libc/mingw/lib32/samcli.def created+42
...@@ -0,0 +1,42 @@
1;
2; Definition file of samcli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "samcli.dll"
7EXPORTS
8NetGetDisplayInformationIndex@16
9NetGroupAdd@16
10NetGroupAddUser@12
11NetGroupDel@8
12NetGroupDelUser@12
13NetGroupEnum@28
14NetGroupGetInfo@16
15NetGroupGetUsers@32
16NetGroupSetInfo@20
17NetGroupSetUsers@20
18NetLocalGroupAdd@16
19NetLocalGroupAddMember@12
20NetLocalGroupAddMembers@20
21NetLocalGroupDel@8
22NetLocalGroupDelMember@12
23NetLocalGroupDelMembers@20
24NetLocalGroupEnum@28
25NetLocalGroupGetInfo@16
26NetLocalGroupGetMembers@32
27NetLocalGroupSetInfo@20
28NetLocalGroupSetMembers@20
29NetQueryDisplayInformation@28
30NetUserAdd@16
31NetUserChangePassword@16
32NetUserDel@8
33NetUserEnum@32
34NetUserGetGroups@28
35NetUserGetInfo@16
36NetUserGetLocalGroups@32
37NetUserModalsGet@12
38NetUserModalsSet@16
39NetUserSetGroups@20
40NetUserSetInfo@20
41NetValidatePasswordPolicy@20
42NetValidatePasswordPolicyFree@4
lib/libc/mingw/lib32/schannel.def created+40
...@@ -0,0 +1,40 @@
1LIBRARY SCHANNEL.dll
2EXPORTS
3AcceptSecurityContext@36
4AcquireCredentialsHandleA@36
5AcquireCredentialsHandleW@36
6ApplyControlToken@8
7CloseSslPerformanceData
8CollectSslPerformanceData@16
9CompleteAuthToken@8
10DeleteSecurityContext@4
11EnumerateSecurityPackagesA@8
12EnumerateSecurityPackagesW@8
13FreeContextBuffer@4
14FreeCredentialsHandle@4
15ImpersonateSecurityContext@4
16InitSecurityInterfaceA@0
17InitSecurityInterfaceW@0
18InitializeSecurityContextA@48
19InitializeSecurityContextW@48
20MakeSignature@16
21OpenSslPerformanceData@4
22QueryContextAttributesA@12
23QueryContextAttributesW@12
24QuerySecurityPackageInfoA@8
25QuerySecurityPackageInfoW@8
26RevertSecurityContext@4
27SealMessage@16
28SpLsaModeInitialize@16
29SpUserModeInitialize@16
30SslCrackCertificate@16
31SslEmptyCacheA@8
32SslEmptyCacheW@8
33SslFreeCertificate@4
34SslGenerateKeyPair@16
35SslGenerateRandomBits@8
36SslGetMaximumKeySize@4
37SslLoadCertificate@12
38SupportsChannelBinding
39UnsealMessage@16
40VerifySignature@16
lib/libc/mingw/lib32/schedcli.def created+11
...@@ -0,0 +1,11 @@
1;
2; Definition file of schedcli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "schedcli.dll"
7EXPORTS
8NetScheduleJobAdd@12
9NetScheduleJobDel@12
10NetScheduleJobEnum@24
11NetScheduleJobGetInfo@12
lib/libc/mingw/lib32/secur32.def created+111
...@@ -0,0 +1,111 @@
1;
2; Definition file of Secur32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "Secur32.dll"
7EXPORTS
8CloseLsaPerformanceData@0
9CollectLsaPerformanceData@16
10OpenLsaPerformanceData@4
11AcceptSecurityContext@36
12AcquireCredentialsHandleA@36
13AcquireCredentialsHandleW@36
14ApplyControlTokenA@8
15ApplyControlTokenW@8
16AddCredentialsA@32
17AddCredentialsW@32
18AddSecurityPackageA@8
19AddSecurityPackageW@8
20ApplyControlToken@8
21ChangeAccountPasswordA@32
22ChangeAccountPasswordW@32
23CompleteAuthToken@8
24CredMarshalTargetInfo@12
25CredParseUserNameWithType@16
26CredUnmarshalTargetInfo@16
27DecryptMessage@16
28DeleteSecurityContext@4
29DeleteSecurityPackageA@4
30DeleteSecurityPackageW@4
31EncryptMessage@16
32EnumerateSecurityPackagesA@8
33EnumerateSecurityPackagesW@8
34ExportSecurityContext@16
35FreeContextBuffer@4
36FreeCredentialsHandle@4
37GetComputerObjectNameA@12
38GetComputerObjectNameW@12
39GetSecurityUserInfo@12
40GetUserNameExA@12
41GetUserNameExW@12
42ImpersonateSecurityContext@4
43ImportSecurityContextA@16
44ImportSecurityContextW@16
45InitSecurityInterfaceA@0
46InitSecurityInterfaceW@0
47InitializeSecurityContextA@48
48InitializeSecurityContextW@48
49LsaCallAuthenticationPackage@28
50LsaConnectUntrusted@4
51LsaDeregisterLogonProcess@4
52LsaEnumerateLogonSessions@8
53LsaFreeReturnBuffer@4
54LsaGetLogonSessionData@8
55LsaLogonUser@56
56LsaLookupAuthenticationPackage@12
57LsaRegisterLogonProcess@12
58LsaRegisterPolicyChangeNotification@8
59LsaUnregisterPolicyChangeNotification@8
60MakeSignature@16
61QueryContextAttributesA@12
62QueryContextAttributesW@12
63QueryCredentialsAttributesA@12
64QueryCredentialsAttributesW@12
65QuerySecurityContextToken@8
66QuerySecurityPackageInfoA@8
67QuerySecurityPackageInfoW@8
68RevertSecurityContext@4
69SaslAcceptSecurityContext@36
70SaslEnumerateProfilesA@8
71SaslEnumerateProfilesW@8
72SaslGetContextOption@20
73SaslGetProfilePackageA@8
74SaslGetProfilePackageW@8
75SaslIdentifyPackageA@8
76SaslIdentifyPackageW@8
77SaslInitializeSecurityContextA@48
78SaslInitializeSecurityContextW@48
79SaslSetContextOption@16
80SealMessage@16
81SeciAllocateAndSetCallFlags@8
82SeciAllocateAndSetIPAddress@12
83SeciFreeCallContext@0
84SecpFreeMemory@4
85SecpTranslateName@24
86SecpTranslateNameEx@24
87SetContextAttributesA@16
88SetContextAttributesW@16
89SetCredentialsAttributesA@16
90SetCredentialsAttributesW@16
91SspiCompareAuthIdentities@16
92SspiCopyAuthIdentity@8
93SspiDecryptAuthIdentity@4
94SspiEncodeAuthIdentityAsStrings@16
95SspiEncodeStringsAsAuthIdentity@16
96SspiEncryptAuthIdentity@4
97SspiExcludePackage@12
98SspiFreeAuthIdentity@4
99SspiGetTargetHostName@8
100SspiIsAuthIdentityEncrypted@4
101SspiLocalFree@4
102SspiMarshalAuthIdentity@12
103SspiPrepareForCredRead@16
104SspiPrepareForCredWrite@28
105SspiUnmarshalAuthIdentity@12
106SspiValidateAuthIdentity@4
107SspiZeroAuthIdentity@4
108TranslateNameA@20
109TranslateNameW@20
110UnsealMessage@16
111VerifySignature@16
lib/libc/mingw/lib32/slc.def created+55
...@@ -0,0 +1,55 @@
1;
2; Definition file of slc.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "slc.dll"
7EXPORTS
8SLpAuthenticateGenuineTicketResponse@4
9SLpBeginGenuineTicketTransaction@4
10SLpCheckProductKey@4
11SLpDepositTokenActivationResponse@4
12SLpGenerateTokenActivationChallenge@4
13SLpGetGenuineBlob@4
14SLpGetGenuineLocal@4
15SLpGetLicenseAcquisitionInfo@4
16SLpGetMachineUGUID@4
17SLpGetTokenActivationGrantInfo@4
18SLpVLActivateProduct@4
19SLClose@4
20SLConsumeRight@4
21SLConsumeWindowsRight@4
22SLDepositOfflineConfirmationId@4
23SLFireEvent@4
24SLGenerateOfflineInstallationId@4
25SLGetGenuineInformation@4
26SLGetInstalledProductKeyIds@4
27SLGetInstalledSAMLicenseApplications@4
28SLGetLicense@4
29SLGetLicenseFileId@4
30SLGetLicenseInformation@24
31SLGetLicensingStatusInformation@4
32SLGetPKeyId@4
33SLGetPKeyInformation@24
34SLGetPolicyInformation@20
35SLGetPolicyInformationDWORD@12
36SLGetProductSkuInformation@24
37SLGetSAMLicense@4
38SLGetSLIDList@4
39SLGetServiceInformation@20
40SLGetWindowsInformation@4
41SLGetWindowsInformationDWORD@4
42SLInstallLicense@4
43SLInstallProofOfPurchase@4
44SLInstallSAMLicense@4
45SLOpen@4
46SLReArmWindows@4
47SLRegisterEvent@4
48SLRegisterWindowsEvent@4
49SLSetCurrentProductKey@4
50SLSetGenuineInformation@4
51SLUninstallLicense@4
52SLUninstallProofOfPurchase@4
53SLUninstallSAMLicense@4
54SLUnregisterEvent@4
55SLUnregisterWindowsEvent@4
lib/libc/mingw/lib32/slcext.def created+28
...@@ -0,0 +1,28 @@
1;
2; Definition file of slcext.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "slcext.dll"
7EXPORTS
8;ord_300@28 @300
9;ord_301@36 @301
10;ord_302@28 @302
11;ord_303@40 @303
12;ord_304@16 @304
13SLAcquireGenuineTicket@4
14SLActivateProduct@4
15SLDepositTokenActivationResponse@4
16SLFreeTokenActivationCertificates@4
17SLFreeTokenActivationGrants@4
18SLGenerateTokenActivationChallenge@4
19SLGetPackageProductKey@12
20SLGetPackageProperties@16
21SLGetPackageToken@16
22SLGetReferralInformation@20
23SLGetServerStatus@4
24SLGetTokenActivationCertificates@4
25SLGetTokenActivationGrants@4
26SLInstallPackage@24
27SLSignTokenActivationChallenge@4
28SLUninstallPackage@20
lib/libc/mingw/lib32/slwga.def created+9
...@@ -0,0 +1,9 @@
1;
2; Definition file of SLWGA.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "SLWGA.dll"
7EXPORTS
8;ord_227@8 @227
9SLIsGenuineLocal@12
lib/libc/mingw/lib32/snmpapi.def created+40
...@@ -0,0 +1,40 @@
1LIBRARY snmpapi.dll
2EXPORTS
3SnmpSvcAddrIsIpx@12
4SnmpSvcAddrToSocket@8
5SnmpSvcBufRevAndCpy@12
6SnmpSvcBufRevInPlace@8
7SnmpSvcDecodeMessage@20
8SnmpSvcEncodeMessage@16
9SnmpSvcGenerateAuthFailTrap@4
10SnmpSvcGenerateColdStartTrap@4
11SnmpSvcGenerateLinkDownTrap@8
12SnmpSvcGenerateLinkUpTrap@8
13SnmpSvcGenerateTrap@20
14SnmpSvcGenerateWarmStartTrap@4
15SnmpSvcGetUptime@0
16SnmpSvcInitUptime@0
17SnmpSvcReleaseMessage@4
18SnmpSvcReportEvent@16
19SnmpSvcSetLogLevel@4
20SnmpSvcSetLogType@4
21SnmpUtilAnsiToUnicode@12
22SnmpUtilDbgPrint
23SnmpUtilIdsToA@8
24SnmpUtilMemAlloc@4
25SnmpUtilMemFree@4
26SnmpUtilMemReAlloc@8
27SnmpUtilOidAppend@8
28SnmpUtilOidCmp@8
29SnmpUtilOidCpy@8
30SnmpUtilOidFree@4
31SnmpUtilOidNCmp@12
32SnmpUtilOidToA@4
33SnmpUtilPrintAsnAny@4
34SnmpUtilPrintOid@4
35SnmpUtilStrlenW@4
36SnmpUtilUnicodeToAnsi@12
37SnmpUtilVarBindCpy@8
38SnmpUtilVarBindFree@4
39SnmpUtilVarBindListCpy@8
40SnmpUtilVarBindListFree@4
lib/libc/mingw/lib32/spoolss.def created+217
...@@ -0,0 +1,217 @@
1;
2; Definition file of SPOOLSS.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "SPOOLSS.DLL"
7EXPORTS
8OpenPrinterExW@16
9RouterCorePrinterDriverInstalled@44
10RouterCreatePrintAsyncNotificationChannel@24
11RouterDeletePrinterDriverPackage@12
12RouterGetCorePrinterDrivers@20
13RouterGetPrintClassObject@12
14RouterGetPrinterDriverPackagePath@28
15RouterInstallPrinterDriverFromPackage@20
16RouterRegisterForPrintAsyncNotifications@24
17RouterUnregisterForPrintAsyncNotifications@4
18RouterUploadPrinterDriverPackage@24
19AbortPrinter@4
20AddFormW@12
21AddJobW@20
22AddMonitorW@12
23AddPerMachineConnectionW@16
24AddPortExW@16
25AddPortW@12
26AddPrintProcessorW@16
27AddPrintProvidorW@12
28AddPrinterConnectionW@4
29AddPrinterDriverExW@16
30AddPrinterDriverW@12
31AddPrinterExW@20
32AddPrinterW@12
33AdjustPointers@12
34AdjustPointersInStructuresArray@20
35AlignKMPtr@8
36AlignRpcPtr@8
37AllocSplStr@4
38AllowRemoteCalls@0
39AppendPrinterNotifyInfoData@12
40BuildOtherNamesFromMachineName@8
41CacheAddName@4
42CacheCreateAndAddNode@8
43CacheCreateAndAddNodeWithIPAddresses@16
44CacheDeleteNode@4
45CacheIsNameCluster@4
46CacheIsNameInNodeList@8
47CallDrvDevModeConversion@28
48CallRouterFindFirstPrinterChangeNotification@20
49CheckLocalCall@0
50ClosePrinter@4
51ClusterSplClose@4
52ClusterSplIsAlive@4
53ClusterSplOpen@20
54ConfigurePortW@12
55CreatePrinterIC@8
56DeleteFormW@8
57DeleteMonitorW@12
58DeletePerMachineConnectionW@8
59DeletePortW@12
60DeletePrintProcessorW@12
61DeletePrintProvidorW@12
62DeletePrinter@4
63DeletePrinterConnectionW@4
64DeletePrinterDataExW@12
65DeletePrinterDataW@8
66DeletePrinterDriverExW@20
67DeletePrinterDriverW@12
68DeletePrinterIC@4
69DeletePrinterKeyW@8
70DllAllocSplMem@4
71DllAllocSplStr@4
72DllCanUnloadNow@0
73DllFreeSplMem@4
74DllFreeSplStr@4
75DllGetClassObject@12
76DllMain@12
77DllReallocSplMem@12
78DllReallocSplStr@8
79DllRegisterServer@0
80DllUnregisterServer@0
81EndDocPrinter@4
82EndPagePrinter@4
83EnumFormsW@24
84EnumJobsW@32
85EnumMonitorsW@24
86EnumPerMachineConnectionsW@20
87EnumPortsW@24
88EnumPrintProcessorDatatypesW@28
89EnumPrintProcessorsW@28
90EnumPrinterDataExW@24
91EnumPrinterDataW@36
92EnumPrinterDriversW@28
93EnumPrinterKeyW@20
94EnumPrintersW@28
95FindClosePrinterChangeNotification@4
96FlushPrinter@20
97FormatPrinterForRegistryKey@12
98FormatRegistryKeyForPrinter@12
99FreeOtherNames@8
100GetBindingHandleIndex@0
101GetFormW@24
102GetJobAttributes@12
103GetJobAttributesEx@24
104GetJobW@24
105GetNetworkId@8
106GetPrintProcessorDirectoryW@24
107GetPrinterDataExW@28
108GetPrinterDataW@24
109GetPrinterDriverDirectoryW@24
110GetPrinterDriverExW@40
111GetPrinterDriverW@24
112GetPrinterW@20
113GetServerPolicy@8
114GetShrinkedSize@8
115ImpersonatePrinterClient@4
116InitializeRouter@4
117IsNameTheLocalMachineOrAClusterSpooler@4
118IsNamedPipeRpcCall@0
119LoadDriver@4
120LoadDriverFiletoConvertDevmode@4
121LoadDriverWithVersion@8
122LogWmiTraceEvent@12
123MIDL_user_allocate1@4
124MIDL_user_free1@4
125MarshallDownStructure@16
126MarshallDownStructuresArray@20
127MarshallUpStructure@20
128MarshallUpStructuresArray@24
129OldGetPrinterDriverW@24
130OpenPrinter2W@16
131OpenPrinterPort2W@16
132OpenPrinterW@12
133PackStrings@16
134PartialReplyPrinterChangeNotification@8
135PlayGdiScriptOnPrinterIC@24
136PrinterHandleRundown@4
137PrinterMessageBoxW@24
138ProvidorFindClosePrinterChangeNotification@4
139ProvidorFindFirstPrinterChangeNotification@24
140ReadPrinter@16
141ReallocSplMem@12
142ReallocSplStr@8
143RemoteFindFirstPrinterChangeNotification@28
144ReplyClosePrinter@4
145ReplyOpenPrinter@20
146ReplyPrinterChangeNotification@16
147ReplyPrinterChangeNotificationEx@20
148ReportJobProcessingProgress@16
149ResetPrinterW@8
150RevertToPrinterSelf@0
151RouterAddPrinterConnection2@12
152RouterAllocBidiMem@4
153RouterAllocBidiResponseContainer@4
154RouterAllocPrinterNotifyInfo@4
155RouterBroadcastMessage@20
156;RouterFindCompatibleDriver ; Check!!! Couldn't determine function argument count. Function doesn't return.
157RouterFindFirstPrinterChangeNotification@24
158RouterFindNextPrinterChangeNotification@20
159RouterFreeBidiMem@4
160RouterFreeBidiResponseContainer@4
161RouterFreePrinterNotifyInfo@4
162RouterInternalGetPrinterDriver@40
163RouterRefreshPrinterChangeNotification@16
164RouterReplyPrinter@24
165RouterSpoolerSetPolicy@12
166ScheduleJob@8
167SeekPrinter@24
168SendRecvBidiData@16
169SetFormW@16
170SetJobW@20
171SetPortW@16
172SetPrinterDataExW@24
173SetPrinterDataW@20
174SetPrinterW@16
175SplCloseSpoolFileHandle@4
176SplCommitSpoolData@28
177SplDriverUnloadComplete@4
178SplGetClientUserHandle@4
179SplGetSpoolFileInfo@24
180SplGetUserSidStringFromToken@16
181SplInitializeWinSpoolDrv@4
182SplIsSessionZero@12
183SplIsUpgrade@0
184SplPowerEvent@4
185SplProcessPnPEvent@12
186SplProcessSessionEvent@12
187SplPromptUIInUsersSession@16
188SplQueryUserInfo@8
189SplReadPrinter@12
190SplRegisterForDeviceEvents@12
191SplRegisterForSessionEvents@8
192SplShutDownRouter@0
193SplUnregisterForDeviceEvents@4
194SplUnregisterForSessionEvents@4
195SplWerNotifyLogger@4
196SpoolerFindClosePrinterChangeNotification@4
197SpoolerFindFirstPrinterChangeNotification@32
198SpoolerFindNextPrinterChangeNotification@16
199SpoolerFreePrinterNotifyInfo@4
200SpoolerHasInitialized@0
201SpoolerInit@0
202SpoolerRefreshPrinterChangeNotification@16
203StartDocPrinterW@12
204StartPagePrinter@4
205UndoAlignKMPtr@8
206UndoAlignRpcPtr@16
207UnloadDriver@4
208UnloadDriverFile@4
209UpdateBufferSize@24
210UpdatePrinterRegAll@16
211UpdatePrinterRegUser@20
212WaitForPrinterChange@8
213WaitForSpoolerInitialization@0
214WritePrinter@16
215XcvDataW@32
216bGetDevModePerUser@12
217bSetDevModePerUser@12
lib/libc/mingw/lib32/srvcli.def created+46
...@@ -0,0 +1,46 @@
1;
2; Definition file of srvcli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "srvcli.dll"
7EXPORTS
8I_NetDfsGetVersion@8
9I_NetServerSetServiceBits@16
10I_NetServerSetServiceBitsEx@24
11NetConnectionEnum@32
12NetFileClose@8
13NetFileEnum@36
14NetFileGetInfo@16
15NetRemoteTOD@8
16NetServerAliasAdd@12
17NetServerAliasDel@12
18NetServerAliasEnum@28
19NetServerComputerNameAdd@12
20NetServerComputerNameDel@8
21NetServerDiskEnum@28
22NetServerGetInfo@12
23NetServerSetInfo@16
24NetServerStatisticsGet@16
25NetServerTransportAdd@12
26NetServerTransportAddEx@12
27NetServerTransportDel@12
28NetServerTransportEnum@28
29NetSessionDel@12
30NetSessionEnum@36
31NetSessionGetInfo@20
32NetShareAdd@16
33NetShareCheck@12
34NetShareDel@12
35NetShareDelEx@12
36NetShareDelSticky@12
37NetShareEnum@28
38NetShareEnumSticky@28
39NetShareGetInfo@16
40NetShareSetInfo@20
41NetpsNameCanonicalize@24
42NetpsNameCompare@20
43NetpsNameValidate@16
44NetpsPathCanonicalize@28
45NetpsPathCompare@20
46NetpsPathType@16
lib/libc/mingw/lib32/sspicli.def created+104
...@@ -0,0 +1,104 @@
1;
2; Definition file of SspiCli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "SspiCli.dll"
7EXPORTS
8SecDeleteUserModeContext@4
9SecInitUserModeContext@8
10SspiUnmarshalAuthIdentityInternal@16
11AcceptSecurityContext@36
12AcquireCredentialsHandleA@36
13AcquireCredentialsHandleW@36
14AddCredentialsA@32
15AddCredentialsW@32
16AddSecurityPackageA@8
17AddSecurityPackageW@8
18ApplyControlToken@8
19ChangeAccountPasswordA@32
20ChangeAccountPasswordW@32
21CompleteAuthToken@8
22CredMarshalTargetInfo@12
23CredUnmarshalTargetInfo@16
24DecryptMessage@16
25DeleteSecurityContext@4
26DeleteSecurityPackageA@4
27DeleteSecurityPackageW@4
28EncryptMessage@16
29EnumerateSecurityPackagesA@8
30EnumerateSecurityPackagesW@8
31ExportSecurityContext@16
32FreeContextBuffer@4
33FreeCredentialsHandle@4
34GetSecurityUserInfo@12
35GetUserNameExA@12
36GetUserNameExW@12
37ImpersonateSecurityContext@4
38ImportSecurityContextA@16
39ImportSecurityContextW@16
40InitSecurityInterfaceA@0
41InitSecurityInterfaceW@0
42InitializeSecurityContextA@48
43InitializeSecurityContextW@48
44LogonUserExExW@44
45LsaCallAuthenticationPackage@28
46LsaConnectUntrusted@4
47LsaDeregisterLogonProcess@4
48LsaEnumerateLogonSessions@8
49LsaFreeReturnBuffer@4
50LsaGetLogonSessionData@8
51LsaLogonUser@56
52LsaLookupAuthenticationPackage@12
53LsaRegisterLogonProcess@12
54LsaRegisterPolicyChangeNotification@8
55LsaUnregisterPolicyChangeNotification@8
56MakeSignature@16
57QueryContextAttributesA@12
58QueryContextAttributesW@12
59QueryCredentialsAttributesA@12
60QueryCredentialsAttributesW@12
61QuerySecurityContextToken@8
62QuerySecurityPackageInfoA@8
63QuerySecurityPackageInfoW@8
64RevertSecurityContext@4
65SaslAcceptSecurityContext@36
66SaslEnumerateProfilesA@8
67SaslEnumerateProfilesW@8
68SaslGetContextOption@20
69SaslGetProfilePackageA@8
70SaslGetProfilePackageW@8
71SaslIdentifyPackageA@8
72SaslIdentifyPackageW@8
73SaslInitializeSecurityContextA@48
74SaslInitializeSecurityContextW@48
75SaslSetContextOption@16
76SealMessage@16
77SecCacheSspiPackages@0
78SeciAllocateAndSetCallFlags@8
79SeciAllocateAndSetIPAddress@12
80SeciFreeCallContext@0
81SetContextAttributesA@16
82SetContextAttributesW@16
83SetCredentialsAttributesA@16
84SetCredentialsAttributesW@16
85SspiCompareAuthIdentities@16
86SspiCopyAuthIdentity@8
87SspiDecryptAuthIdentity@4
88SspiEncodeAuthIdentityAsStrings@16
89SspiEncodeStringsAsAuthIdentity@16
90SspiEncryptAuthIdentity@4
91SspiExcludePackage@12
92SspiFreeAuthIdentity@4
93SspiGetComputerNameForSPN@8
94SspiGetTargetHostName@8
95SspiIsAuthIdentityEncrypted@4
96SspiLocalFree@4
97SspiMarshalAuthIdentity@12
98SspiPrepareForCredRead@16
99SspiPrepareForCredWrite@28
100SspiUnmarshalAuthIdentity@12
101SspiValidateAuthIdentity@4
102SspiZeroAuthIdentity@4
103UnsealMessage@16
104VerifySignature@16
lib/libc/mingw/lib32/t2embed.def created+27
...@@ -0,0 +1,27 @@
1LIBRARY t2embed.dll
2EXPORTS
3TTCharToUnicode@24
4TTDeleteEmbeddedFont@12
5TTEmbedFont@44
6TTEmbedFontFromFileA@52
7TTEnableEmbeddingForFacename@8
8TTGetEmbeddedFontInfo@28
9TTGetEmbeddingType@8
10TTIsEmbeddingEnabled@8
11TTIsEmbeddingEnabledForFacename@8
12TTLoadEmbeddedFont@40
13TTRunValidationTests@8
14_TTCharToUnicode@24@24
15_TTDeleteEmbeddedFont@12@12
16_TTEmbedFont@44@44
17_TTEmbedFontFromFileA@52@52
18_TTEnableEmbeddingForFacename@8@8
19_TTGetEmbeddedFontInfo@28@28
20_TTGetEmbeddingType@8@8
21_TTIsEmbeddingEnabled@8@8
22_TTIsEmbeddingEnabledForFacename@8@8
23_TTLoadEmbeddedFont@40@40
24_TTRunValidationTests@8@8
25TTEmbedFontEx@44
26TTRunValidationTestsEx@8
27TTGetNewFontName@20
lib/libc/mingw/lib32/tapi32.def created+285
...@@ -0,0 +1,285 @@
1;
2; Definition file of TAPI32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "TAPI32.dll"
7EXPORTS
8;GetTapi16CallbackMsg@8
9;LAddrParamsInited@4
10;LOpenDialAsst@16
11;LocWizardDlgProc@16
12;MMCAddProvider@16
13;MMCConfigProvider@12
14;MMCGetAvailableProviders@8
15;MMCGetDeviceFlags@24
16;MMCGetLineInfo@8
17;MMCGetLineStatus@24
18;MMCGetPhoneInfo@8
19;MMCGetPhoneStatus@24
20;MMCGetProviderList@8
21;MMCGetServerConfig@8
22;MMCInitialize@16
23;MMCRemoveProvider@12
24;MMCSetLineInfo@8
25;MMCSetPhoneInfo@8
26;MMCSetServerConfig@8
27;MMCShutdown@4
28;NonAsyncEventThread
29;TAPIWndProc@16
30;TUISPIDLLCallback@16
31;internalConfig@16
32;internalCreateDefLocation@4
33;internalNewLocationW@4
34;internalPerformance@4
35;internalRemoveLocation@4
36;internalRenameLocationW@8
37lineAccept@12
38lineAddProvider@12
39lineAddProviderA@12
40lineAddProviderW@12
41lineAddToConference@8
42lineAgentSpecific@20
43lineAnswer@12
44lineBlindTransfer@12
45lineBlindTransferA@12
46lineBlindTransferW@12
47lineClose@4
48lineCompleteCall@16
49lineCompleteTransfer@16
50lineConfigDialog@12
51lineConfigDialogA@12
52lineConfigDialogEdit@24
53lineConfigDialogEditA@24
54lineConfigDialogEditW@24
55lineConfigDialogW@12
56lineConfigProvider@8
57lineCreateAgentA@16
58lineCreateAgentSessionA@24
59lineCreateAgentSessionW@24
60lineCreateAgentW@16
61lineDeallocateCall@4
62lineDevSpecific@20
63lineDevSpecificFeature@16
64lineDial@12
65lineDialA@12
66lineDialW@12
67lineDrop@12
68lineForward@28
69lineForwardA@28
70lineForwardW@28
71lineGatherDigits@28
72lineGatherDigitsA@28
73lineGatherDigitsW@28
74lineGenerateDigits@16
75lineGenerateDigitsA@16
76lineGenerateDigitsW@16
77lineGenerateTone@20
78lineGetAddressCaps@24
79lineGetAddressCapsA@24
80lineGetAddressCapsW@24
81lineGetAddressID@20
82lineGetAddressIDA@20
83lineGetAddressIDW@20
84lineGetAddressStatus@12
85lineGetAddressStatusA@12
86lineGetAddressStatusW@12
87lineGetAgentActivityListA@12
88lineGetAgentActivityListW@12
89lineGetAgentCapsA@20
90lineGetAgentCapsW@20
91lineGetAgentGroupListA@12
92lineGetAgentGroupListW@12
93lineGetAgentInfo@12
94lineGetAgentSessionInfo@12
95lineGetAgentSessionList@12
96lineGetAgentStatusA@12
97lineGetAgentStatusW@12
98lineGetAppPriority@24
99lineGetAppPriorityA@24
100lineGetAppPriorityW@24
101lineGetCallInfo@8
102lineGetCallInfoA@8
103lineGetCallInfoW@8
104lineGetCallStatus@8
105lineGetConfRelatedCalls@8
106lineGetCountry@12
107lineGetCountryA@12
108lineGetCountryW@12
109lineGetDevCaps@20
110lineGetDevCapsA@20
111lineGetDevCapsW@20
112lineGetDevConfig@12
113lineGetDevConfigA@12
114lineGetDevConfigW@12
115lineGetGroupListA@8
116lineGetGroupListW@8
117lineGetID@24
118lineGetIDA@24
119lineGetIDW@24
120lineGetIcon@12
121lineGetIconA@12
122lineGetIconW@12
123lineGetLineDevStatus@8
124lineGetLineDevStatusA@8
125lineGetLineDevStatusW@8
126lineGetMessage@12
127lineGetNewCalls@16
128lineGetNumRings@12
129lineGetProviderList@8
130lineGetProviderListA@8
131lineGetProviderListW@8
132lineGetProxyStatus@16
133lineGetQueueInfo@12
134lineGetQueueListA@12
135lineGetQueueListW@12
136lineGetRequest@12
137lineGetRequestA@12
138lineGetRequestW@12
139lineGetStatusMessages@12
140lineGetTranslateCaps@12
141lineGetTranslateCapsA@12
142lineGetTranslateCapsW@12
143lineHandoff@12
144lineHandoffA@12
145lineHandoffW@12
146lineHold@4
147lineInitialize@20
148lineInitializeExA@28
149lineInitializeExW@28
150lineMakeCall@20
151lineMakeCallA@20
152lineMakeCallW@20
153lineMonitorDigits@8
154lineMonitorMedia@8
155lineMonitorTones@12
156lineNegotiateAPIVersion@24
157lineNegotiateExtVersion@24
158lineOpen@36
159lineOpenA@36
160lineOpenW@36
161linePark@16
162lineParkA@16
163lineParkW@16
164linePickup@20
165linePickupA@20
166linePickupW@20
167linePrepareAddToConference@12
168linePrepareAddToConferenceA@12
169linePrepareAddToConferenceW@12
170lineProxyMessage@24
171lineProxyResponse@12
172lineRedirect@12
173lineRedirectA@12
174lineRedirectW@12
175lineRegisterRequestRecipient@16
176lineReleaseUserUserInfo@4
177lineRemoveFromConference@4
178lineRemoveProvider@8
179lineSecureCall@4
180lineSendUserUserInfo@12
181lineSetAgentActivity@12
182lineSetAgentGroup@12
183lineSetAgentMeasurementPeriod@12
184lineSetAgentSessionState@16
185lineSetAgentState@16
186lineSetAgentStateEx@16
187lineSetAppPriority@24
188lineSetAppPriorityA@24
189lineSetAppPriorityW@24
190lineSetAppSpecific@8
191lineSetCallData@12
192lineSetCallParams@20
193lineSetCallPrivilege@8
194lineSetCallQualityOfService@20
195lineSetCallTreatment@8
196lineSetCurrentLocation@8
197lineSetDevConfig@16
198lineSetDevConfigA@16
199lineSetDevConfigW@16
200lineSetLineDevStatus@12
201lineSetMediaControl@48
202lineSetMediaMode@8
203lineSetNumRings@12
204lineSetQueueMeasurementPeriod@12
205lineSetStatusMessages@12
206lineSetTerminal@28
207lineSetTollList@16
208lineSetTollListA@16
209lineSetTollListW@16
210lineSetupConference@24
211lineSetupConferenceA@24
212lineSetupConferenceW@24
213lineSetupTransfer@12
214lineSetupTransferA@12
215lineSetupTransferW@12
216lineShutdown@4
217lineSwapHold@8
218lineTranslateAddress@28
219lineTranslateAddressA@28
220lineTranslateAddressW@28
221lineTranslateDialog@20
222lineTranslateDialogA@20
223lineTranslateDialogW@20
224lineUncompleteCall@8
225lineUnhold@4
226lineUnpark@16
227lineUnparkA@16
228lineUnparkW@16
229phoneClose@4
230phoneConfigDialog@12
231phoneConfigDialogA@12
232phoneConfigDialogW@12
233phoneDevSpecific@12
234phoneGetButtonInfo@12
235phoneGetButtonInfoA@12
236phoneGetButtonInfoW@12
237phoneGetData@16
238phoneGetDevCaps@20
239phoneGetDevCapsA@20
240phoneGetDevCapsW@20
241phoneGetDisplay@8
242phoneGetGain@12
243phoneGetHookSwitch@8
244phoneGetID@12
245phoneGetIDA@12
246phoneGetIDW@12
247phoneGetIcon@12
248phoneGetIconA@12
249phoneGetIconW@12
250phoneGetLamp@12
251phoneGetMessage@12
252phoneGetRing@12
253phoneGetStatus@8
254phoneGetStatusA@8
255phoneGetStatusMessages@16
256phoneGetStatusW@8
257phoneGetVolume@12
258phoneInitialize@20
259phoneInitializeExA@28
260phoneInitializeExW@28
261phoneNegotiateAPIVersion@24
262phoneNegotiateExtVersion@24
263phoneOpen@28
264phoneSetButtonInfo@12
265phoneSetButtonInfoA@12
266phoneSetButtonInfoW@12
267phoneSetData@16
268phoneSetDisplay@20
269phoneSetGain@12
270phoneSetHookSwitch@12
271phoneSetLamp@12
272phoneSetRing@12
273phoneSetStatusMessages@16
274phoneSetVolume@12
275phoneShutdown@4
276tapiGetLocationInfo@8
277tapiGetLocationInfoA@8
278tapiGetLocationInfoW@8
279tapiRequestDrop@8
280tapiRequestMakeCall@16
281tapiRequestMakeCallA@16
282tapiRequestMakeCallW@16
283tapiRequestMediaCall@40
284tapiRequestMediaCallA@40
285tapiRequestMediaCallW@40
lib/libc/mingw/lib32/tbs.def created+13
...@@ -0,0 +1,13 @@
1;
2; Definition file of tbs.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "tbs.dll"
7EXPORTS
8Tbsi_Context_Create@8
9Tbsi_Get_TCG_Log@12
10Tbsi_Physical_Presence_Command@20
11Tbsip_Cancel_Commands@4
12Tbsip_Context_Close@4
13Tbsip_Submit_Command@28
lib/libc/mingw/lib32/tdh.def created+43
...@@ -0,0 +1,43 @@
1;
2; Definition file of tdh.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "tdh.dll"
7EXPORTS
8TdhAggregatePayloadFilters@16
9TdhApplyPayloadFilter@28
10TdhCleanupPayloadEventFilterDescriptor@4
11TdhCloseDecodingHandle@4
12TdhCreatePayloadFilter@24
13TdhDeletePayloadFilter@4
14TdhEnumerateManifestProviderEvents@12
15TdhEnumerateProviderFieldInformation@16
16TdhEnumerateProviderFilters@24
17TdhEnumerateProviders@8
18TdhEnumerateRemoteWBEMProviderFieldInformation@20
19TdhEnumerateRemoteWBEMProviders@12
20TdhFormatProperty@44
21TdhGetAllEventsInformation@24
22TdhGetDecodingParameter@8
23TdhGetEventInformation@20
24TdhGetEventMapInformation@16
25TdhGetManifestEventInformation@16
26TdhGetProperty@28
27TdhGetPropertyOffsetAndSize@24
28TdhGetPropertySize@24
29TdhGetWppMessage@16
30TdhGetWppProperty@20
31TdhLoadManifest@4
32TdhLoadManifestFromBinary@4
33TdhLoadManifestFromMemory@8
34TdhOpenDecodingHandle@4
35TdhQueryProviderFieldInformation@24
36TdhQueryRemoteWBEMProviderFieldInformation@28
37TdhSetDecodingParameter@8
38TdhUnloadManifest@4
39TdhUnloadManifestFromMemory@8
40TdhValidatePayloadFilter@12
41TdhpFindMatchClassFromWBEM@28
42TdhpGetBestTraceEventInfoWBEM@12
43TdhpGetEventMapInfoWBEM@16
lib/libc/mingw/lib32/txfw32.def created+16
...@@ -0,0 +1,16 @@
1;
2; Definition file of txfw32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "txfw32.dll"
7EXPORTS
8TxfGetThreadMiniVersionForCreate@4
9TxfLogCreateFileReadContext@28
10TxfLogCreateRangeReadContext@36
11TxfLogDestroyReadContext@4
12TxfLogReadRecords@20
13TxfLogRecordGetFileName@20
14TxfLogRecordGetGenericType@16
15TxfReadMetadataInfo@20
16TxfSetThreadMiniVersionForCreate@4
lib/libc/mingw/lib32/usp10.def created+51
...@@ -0,0 +1,51 @@
1;
2; Definition file of USP10.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "USP10.dll"
7EXPORTS
8LpkPresent@0
9ScriptApplyDigitSubstitution@12
10ScriptApplyLogicalWidth@36
11ScriptBreak@16
12ScriptCPtoX@36
13ScriptCacheGetHeight@12
14ScriptFreeCache@4
15ScriptGetCMap@24
16ScriptGetFontAlternateGlyphs@40
17ScriptGetFontFeatureTags@32
18ScriptGetFontLanguageTags@28
19ScriptGetFontProperties@12
20ScriptGetFontScriptTags@24
21ScriptGetGlyphABCWidth@16
22ScriptGetLogicalWidths@28
23ScriptGetProperties@8
24ScriptIsComplex@12
25ScriptItemize@28
26ScriptItemizeOpenType@32
27ScriptJustify@24
28ScriptLayout@16
29ScriptPlace@36
30ScriptPlaceOpenType@72
31ScriptPositionSingleGlyph@52
32ScriptRecordDigitSubstitution@8
33ScriptShape@40
34ScriptShapeOpenType@64
35ScriptStringAnalyse@52
36ScriptStringCPtoX@16
37ScriptStringFree@4
38ScriptStringGetLogicalWidths@8
39ScriptStringGetOrder@8
40ScriptStringOut@32
41ScriptStringValidate@4
42ScriptStringXtoCP@16
43ScriptString_pLogAttr@4
44ScriptString_pSize@4
45ScriptString_pcOutChars@4
46ScriptSubstituteSingleGlyph@36
47ScriptTextOut@56
48ScriptXtoCP@36
49UspAllocCache@8
50UspAllocTemp@8
51UspFreeMem@4
lib/libc/mingw/lib32/uxtheme.def created+81
...@@ -0,0 +1,81 @@
1;
2; Definition file of UxTheme.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "UxTheme.dll"
7EXPORTS
8BeginPanningFeedback@4
9EndPanningFeedback@8
10UpdatePanningFeedback@16
11BeginBufferedAnimation@32
12BeginBufferedPaint@20
13BufferedPaintClear@8
14BufferedPaintInit@0
15BufferedPaintRenderAnimation@8
16BufferedPaintSetAlpha@12
17DrawThemeBackgroundEx@24
18BufferedPaintStopAllAnimations@4
19BufferedPaintUnInit@0
20CloseThemeData@4
21DrawThemeBackground@24
22DrawThemeEdge@32
23DrawThemeIcon@28
24DrawThemeParentBackground@12
25DrawThemeParentBackgroundEx@16
26DrawThemeText@36
27OpenThemeDataEx@12
28DrawThemeTextEx@36
29EnableThemeDialogTexture@8
30EnableTheming@4
31EndBufferedAnimation@8
32EndBufferedPaint@8
33GetBufferedPaintBits@12
34GetBufferedPaintDC@4
35GetBufferedPaintTargetDC@4
36GetBufferedPaintTargetRect@8
37GetCurrentThemeName@24
38GetThemeAppProperties@0
39GetThemeBackgroundContentRect@24
40GetThemeBackgroundExtent@24
41GetThemeBackgroundRegion@24
42GetThemeBitmap@24
43GetThemeBool@20
44GetThemeColor@20
45GetThemeDocumentationProperty@16
46GetThemeEnumValue@20
47GetThemeFilename@24
48GetThemeFont@24
49GetThemeInt@20
50GetThemeIntList@20
51GetThemeMargins@28
52GetThemeMetric@24
53GetThemePartSize@28
54GetThemePosition@20
55GetThemePropertyOrigin@20
56GetThemeRect@20
57GetThemeStream@28
58GetThemeString@24
59GetThemeSysBool@8
60GetThemeSysColor@8
61GetThemeSysColorBrush@8
62GetThemeSysFont@12
63GetThemeSysInt@12
64GetThemeSysSize@8
65GetThemeSysString@16
66GetThemeTextExtent@36
67GetThemeTextMetrics@20
68GetThemeTransitionDuration@24
69GetWindowTheme@4
70HitTestThemeBackground@40
71IsAppThemed@0
72IsCompositionActive@0
73IsThemeActive@0
74IsThemeBackgroundPartiallyTransparent@12
75IsThemeDialogTextureEnabled@4
76IsThemePartDefined@12
77OpenThemeData@8
78SetThemeAppProperties@4
79SetWindowTheme@12
80SetWindowThemeAttribute@16
81ThemeInitApiHook@8
lib/libc/mingw/lib32/virtdisk.def created+33
...@@ -0,0 +1,33 @@
1;
2; Definition file of VirtDisk.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "VirtDisk.dll"
7EXPORTS
8AddVirtualDiskParent@8
9ApplySnapshotVhdSet@12
10AttachVirtualDisk@24
11BreakMirrorVirtualDisk@4
12CompactVirtualDisk@16
13CreateVirtualDisk@36
14DeleteSnapshotVhdSet@12
15DeleteVirtualDiskMetadata@8
16DetachVirtualDisk@12
17EnumerateVirtualDiskMetadata@12
18ExpandVirtualDisk@16
19GetAllAttachedVirtualDiskPhysicalPaths@8
20GetStorageDependencyInformation@20
21GetVirtualDiskInformation@16
22GetVirtualDiskMetadata@16
23GetVirtualDiskOperationProgress@12
24GetVirtualDiskPhysicalPath@12
25MergeVirtualDisk@16
26MirrorVirtualDisk@16
27ModifyVhdSet@12
28OpenVirtualDisk@24
29QueryChangesVirtualDisk@40
30ResizeVirtualDisk@16
31SetVirtualDiskInformation@8
32SetVirtualDiskMetadata@16
33TakeSnapshotVhdSet@12
lib/libc/mingw/lib32/vssapi.def created+160
...@@ -0,0 +1,160 @@
1;
2; Definition file of VSSAPI.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "VSSAPI.DLL"
7EXPORTS
8IsVolumeSnapshotted@12
9VssFreeSnapshotProperties@4
10ShouldBlockRevert@8
11; public: __thiscall CVssJetWriter::CVssJetWriter(void)
12??0CVssJetWriter@@QAE@XZ ; has WINAPI (@0)
13; public: __thiscall CVssWriter::CVssWriter(void)
14??0CVssWriter@@QAE@XZ ; has WINAPI (@0)
15; public: virtual __thiscall CVssJetWriter::~CVssJetWriter(void)
16??1CVssJetWriter@@UAE@XZ ; has WINAPI (@0)
17; public: virtual __thiscall CVssWriter::~CVssWriter(void)
18??1CVssWriter@@UAE@XZ ; has WINAPI (@0)
19; protected: bool __stdcall CVssJetWriter::AreComponentsSelected(void)const
20?AreComponentsSelected@CVssJetWriter@@IBG_NXZ ; has WINAPI (@4)
21; protected: bool __stdcall CVssWriter::AreComponentsSelected(void)const
22?AreComponentsSelected@CVssWriter@@IBG_NXZ ; has WINAPI (@4)
23; long __stdcall CreateVssBackupComponents(class IVssBackupComponents **)
24?CreateVssBackupComponents@@YGJPAPAVIVssBackupComponents@@@Z ; has WINAPI (@4)
25; long __stdcall CreateVssExamineWriterMetadata(unsigned short *,class IVssExamineWriterMetadata **)
26?CreateVssExamineWriterMetadata@@YGJPAGPAPAVIVssExamineWriterMetadata@@@Z ; has WINAPI (@8)
27; long __stdcall CreateVssSnapshotSetDescription(struct _GUID,long,class IVssSnapshotSetDescription **)
28?CreateVssSnapshotSetDescription@@YGJU_GUID@@JPAPAVIVssSnapshotSetDescription@@@Z ; has WINAPI (@24)
29; protected: enum _VSS_BACKUP_TYPE __stdcall CVssJetWriter::GetBackupType(void)const
30?GetBackupType@CVssJetWriter@@IBG?AW4_VSS_BACKUP_TYPE@@XZ ; has WINAPI (@4)
31; protected: enum _VSS_BACKUP_TYPE __stdcall CVssWriter::GetBackupType(void)const
32?GetBackupType@CVssWriter@@IBG?AW4_VSS_BACKUP_TYPE@@XZ ; has WINAPI (@4)
33; protected: long __stdcall CVssJetWriter::GetContext(void)const
34?GetContext@CVssJetWriter@@IBGJXZ ; has WINAPI (@4)
35; protected: long __stdcall CVssWriter::GetContext(void)const
36?GetContext@CVssWriter@@IBGJXZ ; has WINAPI (@4)
37; protected: enum _VSS_APPLICATION_LEVEL __stdcall CVssJetWriter::GetCurrentLevel(void)const
38?GetCurrentLevel@CVssJetWriter@@IBG?AW4_VSS_APPLICATION_LEVEL@@XZ ; has WINAPI (@4)
39; protected: enum _VSS_APPLICATION_LEVEL __stdcall CVssWriter::GetCurrentLevel(void)const
40?GetCurrentLevel@CVssWriter@@IBG?AW4_VSS_APPLICATION_LEVEL@@XZ ; has WINAPI (@4)
41; protected: struct _GUID __stdcall CVssJetWriter::GetCurrentSnapshotSetId(void)const
42?GetCurrentSnapshotSetId@CVssJetWriter@@IBG?AU_GUID@@XZ ; has WINAPI (@8)
43; protected: struct _GUID __stdcall CVssWriter::GetCurrentSnapshotSetId(void)const
44?GetCurrentSnapshotSetId@CVssWriter@@IBG?AU_GUID@@XZ ; has WINAPI (@8)
45; protected: unsigned short const **__stdcall CVssJetWriter::GetCurrentVolumeArray(void)const
46?GetCurrentVolumeArray@CVssJetWriter@@IBGPAPBGXZ ; has WINAPI (@4)
47; protected: unsigned short const **__stdcall CVssWriter::GetCurrentVolumeArray(void)const
48?GetCurrentVolumeArray@CVssWriter@@IBGPAPBGXZ ; has WINAPI (@4)
49; protected: unsigned int __stdcall CVssJetWriter::GetCurrentVolumeCount(void)const
50?GetCurrentVolumeCount@CVssJetWriter@@IBGIXZ ; has WINAPI (@4)
51; protected: unsigned int __stdcall CVssWriter::GetCurrentVolumeCount(void)const
52?GetCurrentVolumeCount@CVssWriter@@IBGIXZ ; has WINAPI (@4)
53; protected: enum _VSS_RESTORE_TYPE __stdcall CVssJetWriter::GetRestoreType(void)const
54?GetRestoreType@CVssJetWriter@@IBG?AW4_VSS_RESTORE_TYPE@@XZ ; has WINAPI (@4)
55; protected: enum _VSS_RESTORE_TYPE __stdcall CVssWriter::GetRestoreType(void)const
56?GetRestoreType@CVssWriter@@IBG?AW4_VSS_RESTORE_TYPE@@XZ ; has WINAPI (@4)
57; protected: long __stdcall CVssJetWriter::GetSnapshotDeviceName(unsigned short const *,unsigned short const **)const
58?GetSnapshotDeviceName@CVssJetWriter@@IBGJPBGPAPBG@Z ; has WINAPI (@12)
59; protected: long __stdcall CVssWriter::GetSnapshotDeviceName(unsigned short const *,unsigned short const **)const
60?GetSnapshotDeviceName@CVssWriter@@IBGJPBGPAPBG@Z ; has WINAPI (@12)
61; public: long __stdcall CVssJetWriter::Initialize(struct _GUID,unsigned short const *,bool,bool,unsigned short const *,unsigned short const *,unsigned long)
62?Initialize@CVssJetWriter@@QAGJU_GUID@@PBG_N211K@Z ; has WINAPI (@44)
63; public: long __stdcall CVssWriter::Initialize(struct _GUID,unsigned short const *,enum VSS_USAGE_TYPE,enum VSS_SOURCE_TYPE,enum _VSS_APPLICATION_LEVEL,unsigned long,enum VSS_ALTERNATE_WRITER_STATE,bool,unsigned short const *)
64?Initialize@CVssWriter@@QAGJU_GUID@@PBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N1@Z ; has WINAPI (@52)
65; public: long __stdcall CVssWriter::InstallAlternateWriter(struct _GUID,struct _GUID)
66?InstallAlternateWriter@CVssWriter@@QAGJU_GUID@@0@Z ; has WINAPI (@36)
67; protected: bool __stdcall CVssJetWriter::IsBootableSystemStateBackedUp(void)const
68?IsBootableSystemStateBackedUp@CVssJetWriter@@IBG_NXZ ; has WINAPI (@4)
69; protected: bool __stdcall CVssWriter::IsBootableSystemStateBackedUp(void)const
70?IsBootableSystemStateBackedUp@CVssWriter@@IBG_NXZ ; has WINAPI (@4)
71; protected: bool __stdcall CVssJetWriter::IsPartialFileSupportEnabled(void)const
72?IsPartialFileSupportEnabled@CVssJetWriter@@IBG_NXZ ; has WINAPI (@4)
73; protected: bool __stdcall CVssWriter::IsPartialFileSupportEnabled(void)const
74?IsPartialFileSupportEnabled@CVssWriter@@IBG_NXZ ; has WINAPI (@4)
75; protected: bool __stdcall CVssJetWriter::IsPathAffected(unsigned short const *)const
76?IsPathAffected@CVssJetWriter@@IBG_NPBG@Z ; has WINAPI (@8)
77; protected: bool __stdcall CVssWriter::IsPathAffected(unsigned short const *)const
78?IsPathAffected@CVssWriter@@IBG_NPBG@Z ; has WINAPI (@8)
79; long __stdcall LoadVssSnapshotSetDescription(unsigned short const *,class IVssSnapshotSetDescription **,struct _GUID)
80?LoadVssSnapshotSetDescription@@YGJPBGPAPAVIVssSnapshotSetDescription@@U_GUID@@@Z ; has WINAPI (@24)
81; public: virtual void __stdcall CVssJetWriter::OnAbortBegin(void)
82?OnAbortBegin@CVssJetWriter@@UAGXXZ ; has WINAPI (@4)
83; public: virtual void __stdcall CVssJetWriter::OnAbortEnd(void)
84?OnAbortEnd@CVssJetWriter@@UAGXXZ ; has WINAPI (@4)
85; public: virtual bool __stdcall CVssWriter::OnBackOffIOOnVolume(unsigned short *,struct _GUID,struct _GUID)
86?OnBackOffIOOnVolume@CVssWriter@@UAG_NPAGU_GUID@@1@Z ; has WINAPI (@40)
87; public: virtual bool __stdcall CVssWriter::OnBackupComplete(class IVssWriterComponents *)
88?OnBackupComplete@CVssWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
89; public: virtual bool __stdcall CVssJetWriter::OnBackupCompleteBegin(class IVssWriterComponents *)
90?OnBackupCompleteBegin@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
91; public: virtual bool __stdcall CVssJetWriter::OnBackupCompleteEnd(class IVssWriterComponents *,bool)
92?OnBackupCompleteEnd@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@_N@Z ; has WINAPI (@12)
93; public: virtual bool __stdcall CVssWriter::OnBackupShutdown(struct _GUID)
94?OnBackupShutdown@CVssWriter@@UAG_NU_GUID@@@Z ; has WINAPI (@20)
95; public: virtual bool __stdcall CVssWriter::OnContinueIOOnVolume(unsigned short *,struct _GUID,struct _GUID)
96?OnContinueIOOnVolume@CVssWriter@@UAG_NPAGU_GUID@@1@Z ; has WINAPI (@40)
97; public: virtual bool __stdcall CVssJetWriter::OnFreezeBegin(void)
98?OnFreezeBegin@CVssJetWriter@@UAG_NXZ ; has WINAPI (@4)
99; public: virtual bool __stdcall CVssJetWriter::OnFreezeEnd(bool)
100?OnFreezeEnd@CVssJetWriter@@UAG_N_N@Z ; has WINAPI (@8)
101; public: virtual bool __stdcall CVssJetWriter::OnIdentify(class IVssCreateWriterMetadata *)
102?OnIdentify@CVssJetWriter@@UAG_NPAVIVssCreateWriterMetadata@@@Z ; has WINAPI (@8)
103; public: virtual bool __stdcall CVssWriter::OnIdentify(class IVssCreateWriterMetadata *)
104?OnIdentify@CVssWriter@@UAG_NPAVIVssCreateWriterMetadata@@@Z ; has WINAPI (@8)
105; public: virtual bool __stdcall CVssWriter::OnPostRestore(class IVssWriterComponents *)
106?OnPostRestore@CVssWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
107; public: virtual bool __stdcall CVssJetWriter::OnPostRestoreBegin(class IVssWriterComponents *)
108?OnPostRestoreBegin@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
109; public: virtual bool __stdcall CVssJetWriter::OnPostRestoreEnd(class IVssWriterComponents *,bool)
110?OnPostRestoreEnd@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@_N@Z ; has WINAPI (@12)
111; public: virtual bool __stdcall CVssJetWriter::OnPostSnapshot(class IVssWriterComponents *)
112?OnPostSnapshot@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
113; public: virtual bool __stdcall CVssWriter::OnPostSnapshot(class IVssWriterComponents *)
114?OnPostSnapshot@CVssWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
115; public: virtual bool __stdcall CVssWriter::OnPreRestore(class IVssWriterComponents *)
116?OnPreRestore@CVssWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
117; public: virtual bool __stdcall CVssJetWriter::OnPreRestoreBegin(class IVssWriterComponents *)
118?OnPreRestoreBegin@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
119; public: virtual bool __stdcall CVssJetWriter::OnPreRestoreEnd(class IVssWriterComponents *,bool)
120?OnPreRestoreEnd@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@_N@Z ; has WINAPI (@12)
121; public: virtual bool __stdcall CVssWriter::OnPrepareBackup(class IVssWriterComponents *)
122?OnPrepareBackup@CVssWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
123; public: virtual bool __stdcall CVssJetWriter::OnPrepareBackupBegin(class IVssWriterComponents *)
124?OnPrepareBackupBegin@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@@Z ; has WINAPI (@8)
125; public: virtual bool __stdcall CVssJetWriter::OnPrepareBackupEnd(class IVssWriterComponents *,bool)
126?OnPrepareBackupEnd@CVssJetWriter@@UAG_NPAVIVssWriterComponents@@_N@Z ; has WINAPI (@12)
127; public: virtual bool __stdcall CVssJetWriter::OnPrepareSnapshotBegin(void)
128?OnPrepareSnapshotBegin@CVssJetWriter@@UAG_NXZ ; has WINAPI (@4)
129; public: virtual bool __stdcall CVssJetWriter::OnPrepareSnapshotEnd(bool)
130?OnPrepareSnapshotEnd@CVssJetWriter@@UAG_N_N@Z ; has WINAPI (@8)
131; public: virtual bool __stdcall CVssJetWriter::OnThawBegin(void)
132?OnThawBegin@CVssJetWriter@@UAG_NXZ ; has WINAPI (@4)
133; public: virtual bool __stdcall CVssJetWriter::OnThawEnd(bool)
134?OnThawEnd@CVssJetWriter@@UAG_N_N@Z ; has WINAPI (@8)
135; public: virtual bool __stdcall CVssWriter::OnVSSApplicationStartup(void)
136?OnVSSApplicationStartup@CVssWriter@@UAG_NXZ ; has WINAPI (@4)
137; public: virtual bool __stdcall CVssWriter::OnVSSShutdown(void)
138?OnVSSShutdown@CVssWriter@@UAG_NXZ ; has WINAPI (@4)
139; protected: long __stdcall CVssJetWriter::SetWriterFailure(long)
140?SetWriterFailure@CVssJetWriter@@IAGJJ@Z ; has WINAPI (@8)
141; protected: long __stdcall CVssWriter::SetWriterFailure(long)
142?SetWriterFailure@CVssWriter@@IAGJJ@Z ; has WINAPI (@8)
143; public: long __stdcall CVssWriter::Subscribe(unsigned long)
144?Subscribe@CVssWriter@@QAGJK@Z ; has WINAPI (@8)
145; public: void __stdcall CVssJetWriter::Uninitialize(void)
146?Uninitialize@CVssJetWriter@@QAGXXZ ; has WINAPI (@4)
147; public: long __stdcall CVssWriter::Unsubscribe(void)
148?Unsubscribe@CVssWriter@@QAGJXZ ; has WINAPI (@4)
149CreateVssBackupComponentsInternal@4
150CreateVssExamineWriterMetadataInternal@8
151CreateVssExpressWriterInternal@4
152CreateWriter@8
153CreateWriterEx@8
154;DllCanUnloadNow@0
155;DllGetClassObject@12
156GetProviderMgmtInterface@36
157GetProviderMgmtInterfaceInternal@36
158IsVolumeSnapshottedInternal@12
159ShouldBlockRevertInternal@8
160VssFreeSnapshotPropertiesInternal@4
lib/libc/mingw/lib32/wdsclientapi.def created+46
...@@ -0,0 +1,46 @@
1;
2; Definition file of WDSCLIENTAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WDSCLIENTAPI.dll"
7EXPORTS
8WdsCliAuthorizeSession@8
9WdsCliCancelTransfer@4
10WdsCliClose@4
11WdsCliCreateSession@12
12WdsCliFindFirstImage@8
13WdsCliFindNextImage@4
14WdsCliFreeDomainJoinInformation@4
15WdsCliFreeStringArray@8
16WdsCliFreeUnattendVariables@8
17WdsCliGetClientUnattend@20
18WdsCliGetDomainJoinInformation@16
19WdsCliGetEnumerationFlags@8
20WdsCliGetImageArchitecture@8
21WdsCliGetImageDescription@8
22WdsCliGetImageFiles@12
23WdsCliGetImageGroup@8
24WdsCliGetImageHalName@8
25WdsCliGetImageHandleFromFindHandle@8
26WdsCliGetImageHandleFromTransferHandle@8
27WdsCliGetImageIndex@8
28WdsCliGetImageLanguage@8
29WdsCliGetImageLanguages@12
30WdsCliGetImageLastModifiedTime@8
31WdsCliGetImageName@8
32WdsCliGetImageNamespace@8
33WdsCliGetImageParameter@16
34WdsCliGetImagePath@8
35WdsCliGetImageSize@8
36WdsCliGetImageType@8
37WdsCliGetImageVersion@8
38WdsCliGetTransferSize@8
39WdsCliGetUnattendVariables@20
40WdsCliInitializeLog@16
41WdsCliLog
42WdsCliObtainDriverPackages@16
43WdsCliRegisterTrace@4
44WdsCliTransferFile@36
45WdsCliTransferImage@28
46WdsCliWaitForTransfer@4
lib/libc/mingw/lib32/wdstptc.def created+22
...@@ -0,0 +1,22 @@
1;
2; Definition file of WDSTPTC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WDSTPTC.dll"
7EXPORTS
8;WdsTptcDownload@36
9WdsTransportClientRegisterTrace@4
10WdsTransportClientAddRefBuffer@4
11WdsTransportClientCancelSession@4
12WdsTransportClientCancelSessionEx@8
13WdsTransportClientCloseSession@4
14WdsTransportClientCompleteReceive@12
15WdsTransportClientInitialize@0
16WdsTransportClientInitializeSession@12
17WdsTransportClientQueryStatus@12
18WdsTransportClientRegisterCallback@12
19WdsTransportClientReleaseBuffer@4
20WdsTransportClientShutdown@0
21WdsTransportClientStartSession@4
22WdsTransportClientWaitForCompletion@8
lib/libc/mingw/lib32/websocket.def created+15
...@@ -0,0 +1,15 @@
1LIBRARY "websocket.dll"
2EXPORTS
3WebSocketAbortHandle@4
4WebSocketBeginClientHandshake@36
5WebSocketBeginServerHandshake@32
6WebSocketCompleteAction@12
7WebSocketCreateClientHandle@12
8WebSocketCreateServerHandle@12
9WebSocketDeleteHandle@4
10WebSocketEndClientHandshake@24
11WebSocketEndServerHandshake@4
12WebSocketGetAction@32
13WebSocketGetGlobalProperty@12
14WebSocketReceive@12
15WebSocketSend@16
lib/libc/mingw/lib32/wecapi.def created+24
...@@ -0,0 +1,24 @@
1;
2; Definition file of WecApi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WecApi.dll"
7EXPORTS
8EcIsConfigRequired@4
9EcQuickConfig@0
10EcClose@4
11EcDeleteSubscription@8
12EcEnumNextSubscription@16
13EcGetObjectArrayProperty@28
14EcGetObjectArraySize@8
15EcGetSubscriptionProperty@24
16EcGetSubscriptionRunTimeStatus@28
17EcInsertObjectArrayElement@8
18EcOpenSubscription@12
19EcOpenSubscriptionEnum@4
20EcRemoveObjectArrayElement@8
21EcRetrySubscription@12
22EcSaveSubscription@8
23EcSetObjectArrayProperty@20
24EcSetSubscriptionProperty@16
lib/libc/mingw/lib32/wer.def created+84
...@@ -0,0 +1,84 @@
1;
2; Definition file of wer.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "wer.dll"
7EXPORTS
8WerSysprepCleanup@0
9WerSysprepGeneralize@0
10WerSysprepSpecialize@0
11WerUnattendedSetup@0
12WerpAddAppCompatData@12
13WerpAddFile@24
14WerpAddMemoryBlock@12
15WerpAddRegisteredDataToReport@8
16WerpAddSecondaryParameter@12
17WerpAddTextToReport@12
18WerpArchiveReport@20
19WerpCancelResponseDownload@4
20WerpCancelUpload@4
21WerpCloseStore@4
22WerpCreateMachineStore@0
23WerpDeleteReport@8
24WerpDestroyWerString@4
25WerpDownloadResponse@28
26WerpDownloadResponseTemplate@12
27WerpEnumerateStoreNext@8
28WerpEnumerateStoreStart@4
29WerpExtractReportFiles@12
30WerpGetBucketId@8
31WerpGetDynamicParameter@16
32WerpGetEventType@8
33WerpGetFileByIndex@24
34WerpGetFilePathByIndex@12
35WerpGetNumFiles@8
36WerpGetNumSecParams@8
37WerpGetNumSigParams@8
38WerpGetReportFinalConsent@8
39WerpGetReportFlags@8
40WerpGetReportInformation@8
41WerpGetReportTime@8
42WerpGetReportType@8
43WerpGetResponseId@12
44WerpGetResponseUrl@8
45WerpGetSecParamByIndex@16
46WerpGetSigParamByIndex@16
47WerpGetStoreLocation@12
48WerpGetStoreType@8
49WerpGetTextFromReport@12
50WerpGetUIParamByIndex@12
51WerpGetUploadTime@8
52WerpGetWerStringData@4
53WerpIsTransportAvailable@0
54WerpLoadReport@16
55WerpOpenMachineArchive@8
56WerpOpenMachineQueue@8
57WerpOpenUserArchive@8
58WerpReportCancel@4
59WerpRestartApplication@20
60WerpSetDynamicParameter@16
61WerpSetEventName@8
62WerpSetReportFlags@8
63WerpSetReportInformation@8
64WerpSetReportTime@8
65WerpSetReportUploadContextToken@8
66WerpShowNXNotification@4
67WerpShowSecondLevelConsent@12
68WerpShowUpsellUI@8
69WerpSubmitReportFromStore@28
70WerpSvcReportFromMachineQueue@8
71WerAddExcludedApplication@8
72WerRemoveExcludedApplication@8
73WerReportAddDump@28
74WerReportAddFile@16
75WerReportCloseHandle@4
76WerReportCreate@16
77WerReportSetParameter@16
78WerReportSetUIOption@12
79WerReportSubmit@16
80WerpGetReportConsent@12
81WerpIsDisabled@8
82WerpOpenUserQueue@8
83WerpPromtUser@16
84WerpSetCallBack@12
lib/libc/mingw/lib32/wevtapi.def created+52
...@@ -0,0 +1,52 @@
1;
2; Definition file of wevtapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "wevtapi.dll"
7EXPORTS
8EvtIntSysprepCleanup@0
9EvtSetObjectArrayProperty@20
10EvtArchiveExportedLog@16
11EvtCancel@4
12EvtClearLog@16
13EvtClose@4
14EvtCreateBookmark@4
15EvtCreateRenderContext@12
16EvtExportLog@20
17EvtFormatMessage@36
18EvtGetChannelConfigProperty@24
19EvtGetEventInfo@20
20EvtGetEventMetadataProperty@24
21EvtGetExtendedStatus@12
22EvtGetLogInfo@20
23EvtGetObjectArrayProperty@28
24EvtGetObjectArraySize@8
25EvtGetPublisherMetadataProperty@24
26EvtGetQueryInfo@20
27EvtIntAssertConfig@12
28EvtIntCreateLocalLogfile@8
29EvtIntGetClassicLogDisplayName@28
30EvtIntRenderResourceEventTemplate@0
31EvtIntReportAuthzEventAndSourceAsync@44
32EvtIntReportEventAndSourceAsync@44
33EvtIntRetractConfig@12
34EvtIntWriteXmlEventToLocalLogfile@12
35EvtNext@24
36EvtNextChannelPath@16
37EvtNextEventMetadata@8
38EvtNextPublisherId@16
39EvtOpenChannelConfig@12
40EvtOpenChannelEnum@8
41EvtOpenEventMetadataEnum@8
42EvtOpenLog@12
43EvtOpenPublisherEnum@8
44EvtOpenPublisherMetadata@20
45EvtOpenSession@16
46EvtQuery@16
47EvtRender@28
48EvtSaveChannelConfig@8
49EvtSeek@24
50EvtSetChannelConfigProperty@16
51EvtSubscribe@32
52EvtUpdateBookmark@8
lib/libc/mingw/lib32/windowscodecs.def created+116
...@@ -0,0 +1,116 @@
1LIBRARY "windowscodecs.dll"
2EXPORTS
3IEnumString_Next_WIC_Proxy@16
4IEnumString_Reset_WIC_Proxy@4
5IPropertyBag2_Write_Proxy@16
6IWICBitmapClipper_Initialize_Proxy@12
7IWICBitmapCodecInfo_DoesSupportAnimation_Proxy@8
8IWICBitmapCodecInfo_DoesSupportLossless_Proxy@8
9IWICBitmapCodecInfo_DoesSupportMultiframe_Proxy@8
10IWICBitmapCodecInfo_GetContainerFormat_Proxy@8
11IWICBitmapCodecInfo_GetDeviceManufacturer_Proxy@16
12IWICBitmapCodecInfo_GetDeviceModels_Proxy@16
13IWICBitmapCodecInfo_GetFileExtensions_Proxy@16
14IWICBitmapCodecInfo_GetMimeTypes_Proxy@16
15IWICBitmapDecoder_CopyPalette_Proxy@8
16IWICBitmapDecoder_GetColorContexts_Proxy@16
17IWICBitmapDecoder_GetDecoderInfo_Proxy@8
18IWICBitmapDecoder_GetFrameCount_Proxy@8
19IWICBitmapDecoder_GetFrame_Proxy@12
20IWICBitmapDecoder_GetMetadataQueryReader_Proxy@8
21IWICBitmapDecoder_GetPreview_Proxy@8
22IWICBitmapDecoder_GetThumbnail_Proxy@8
23IWICBitmapEncoder_Commit_Proxy@4
24IWICBitmapEncoder_CreateNewFrame_Proxy@12
25IWICBitmapEncoder_GetEncoderInfo_Proxy@8
26IWICBitmapEncoder_GetMetadataQueryWriter_Proxy@8
27IWICBitmapEncoder_Initialize_Proxy@12
28IWICBitmapEncoder_SetPalette_Proxy@8
29IWICBitmapEncoder_SetThumbnail_Proxy@8
30IWICBitmapFlipRotator_Initialize_Proxy@12
31IWICBitmapFrameDecode_GetColorContexts_Proxy@16
32IWICBitmapFrameDecode_GetMetadataQueryReader_Proxy@8
33IWICBitmapFrameDecode_GetThumbnail_Proxy@8
34IWICBitmapFrameEncode_Commit_Proxy@4
35IWICBitmapFrameEncode_GetMetadataQueryWriter_Proxy@8
36IWICBitmapFrameEncode_Initialize_Proxy@8
37IWICBitmapFrameEncode_SetColorContexts_Proxy@12
38IWICBitmapFrameEncode_SetResolution_Proxy@20
39IWICBitmapFrameEncode_SetSize_Proxy@12
40IWICBitmapFrameEncode_SetThumbnail_Proxy@8
41IWICBitmapFrameEncode_WriteSource_Proxy@12
42IWICBitmapLock_GetDataPointer_STA_Proxy@12
43IWICBitmapLock_GetStride_Proxy@8
44IWICBitmapScaler_Initialize_Proxy@20
45IWICBitmapSource_CopyPalette_Proxy@8
46IWICBitmapSource_CopyPixels_Proxy@20
47IWICBitmapSource_GetPixelFormat_Proxy@8
48IWICBitmapSource_GetResolution_Proxy@12
49IWICBitmapSource_GetSize_Proxy@12
50IWICBitmap_Lock_Proxy@16
51IWICBitmap_SetPalette_Proxy@8
52IWICBitmap_SetResolution_Proxy@20
53IWICColorContext_InitializeFromMemory_Proxy@12
54IWICComponentFactory_CreateMetadataWriterFromReader_Proxy@16
55IWICComponentFactory_CreateQueryWriterFromBlockWriter_Proxy@12
56IWICComponentInfo_GetAuthor_Proxy@16
57IWICComponentInfo_GetCLSID_Proxy@8
58IWICComponentInfo_GetFriendlyName_Proxy@16
59IWICComponentInfo_GetSpecVersion_Proxy@16
60IWICComponentInfo_GetVersion_Proxy@16
61IWICFastMetadataEncoder_Commit_Proxy@4
62IWICFastMetadataEncoder_GetMetadataQueryWriter_Proxy@8
63IWICFormatConverter_Initialize_Proxy@32
64IWICImagingFactory_CreateBitmapClipper_Proxy@8
65IWICImagingFactory_CreateBitmapFlipRotator_Proxy@8
66IWICImagingFactory_CreateBitmapFromHBITMAP_Proxy@20
67IWICImagingFactory_CreateBitmapFromHICON_Proxy@12
68IWICImagingFactory_CreateBitmapFromMemory_Proxy@32
69IWICImagingFactory_CreateBitmapFromSource_Proxy@16
70IWICImagingFactory_CreateBitmapScaler_Proxy@8
71IWICImagingFactory_CreateBitmap_Proxy@24
72IWICImagingFactory_CreateComponentInfo_Proxy@12
73IWICImagingFactory_CreateDecoderFromFileHandle_Proxy@20
74IWICImagingFactory_CreateDecoderFromFilename_Proxy@24
75IWICImagingFactory_CreateDecoderFromStream_Proxy@20
76IWICImagingFactory_CreateEncoder_Proxy@16
77IWICImagingFactory_CreateFastMetadataEncoderFromDecoder_Proxy@12
78IWICImagingFactory_CreateFastMetadataEncoderFromFrameDecode_Proxy@12
79IWICImagingFactory_CreateFormatConverter_Proxy@8
80IWICImagingFactory_CreatePalette_Proxy@8
81IWICImagingFactory_CreateQueryWriterFromReader_Proxy@16
82IWICImagingFactory_CreateQueryWriter_Proxy@16
83IWICImagingFactory_CreateStream_Proxy@8
84IWICMetadataBlockReader_GetCount_Proxy@8
85IWICMetadataBlockReader_GetReaderByIndex_Proxy@12
86IWICMetadataQueryReader_GetContainerFormat_Proxy@8
87IWICMetadataQueryReader_GetEnumerator_Proxy@8
88IWICMetadataQueryReader_GetLocation_Proxy@16
89IWICMetadataQueryReader_GetMetadataByName_Proxy@12
90IWICMetadataQueryWriter_RemoveMetadataByName_Proxy@8
91IWICMetadataQueryWriter_SetMetadataByName_Proxy@12
92IWICPalette_GetColorCount_Proxy@8
93IWICPalette_GetColors_Proxy@16
94IWICPalette_GetType_Proxy@8
95IWICPalette_HasAlpha_Proxy@8
96IWICPalette_InitializeCustom_Proxy@12
97IWICPalette_InitializeFromBitmap_Proxy@16
98IWICPalette_InitializeFromPalette_Proxy@8
99IWICPalette_InitializePredefined_Proxy@12
100IWICPixelFormatInfo_GetBitsPerPixel_Proxy@8
101IWICPixelFormatInfo_GetChannelCount_Proxy@8
102IWICPixelFormatInfo_GetChannelMask_Proxy@20
103IWICStream_InitializeFromIStream_Proxy@8
104IWICStream_InitializeFromMemory_Proxy@12
105WICConvertBitmapSource@12
106WICCreateBitmapFromSection@28
107WICCreateBitmapFromSectionEx@32
108WICCreateColorContext_Proxy@8
109WICCreateImagingFactory_Proxy@8
110WICGetMetadataContentSize@12
111WICMapGuidToShortName@16
112WICMapSchemaToName@20
113WICMapShortNameToGuid@8
114WICMatchMetadataContent@16
115WICSerializeMetadataContent@16
116WICSetEncoderFormat_Proxy@16
lib/libc/mingw/lib32/winhttp.def created+76
...@@ -0,0 +1,76 @@
1;
2; Definition file of WINHTTP.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WINHTTP.dll"
7EXPORTS
8WinHttpPacJsWorkerMain@8
9DllCanUnloadNow@0
10DllGetClassObject@12
11Private1@20
12SvchostPushServiceGlobals@4
13WinHttpAddRequestHeaders@16
14WinHttpAddRequestHeadersEx@32
15WinHttpAutoProxySvcMain@8
16WinHttpCheckPlatform@0
17WinHttpCloseHandle@4
18WinHttpConnect@16
19WinHttpConnectionDeletePolicyEntries@8
20WinHttpConnectionDeleteProxyInfo@8
21WinHttpConnectionFreeNameList@4
22WinHttpConnectionFreeProxyInfo@4
23WinHttpConnectionFreeProxyList@4
24WinHttpConnectionGetNameList@4
25WinHttpConnectionGetProxyInfo@12
26WinHttpConnectionGetProxyList@8
27WinHttpConnectionSetPolicyEntries@12
28WinHttpConnectionSetProxyInfo@12
29WinHttpConnectionUpdateIfIndexTable@8
30WinHttpCrackUrl@16
31WinHttpCreateProxyResolver@8
32WinHttpCreateUrl@16
33WinHttpDetectAutoProxyConfigUrl@8
34WinHttpFreeProxyResult@4
35WinHttpFreeProxyResultEx@4
36WinHttpFreeProxySettings@4
37WinHttpGetDefaultProxyConfiguration@4
38WinHttpGetIEProxyConfigForCurrentUser@4
39WinHttpGetProxyForUrl@16
40WinHttpGetProxyForUrlEx2@24
41WinHttpGetProxyForUrlEx@16
42WinHttpGetProxyForUrlHvsi@36
43WinHttpGetProxyResult@8
44WinHttpGetProxyResultEx@8
45WinHttpGetProxySettingsVersion@8
46WinHttpGetTunnelSocket@16
47WinHttpOpen@20
48WinHttpOpenRequest@28
49WinHttpProbeConnectivity@24
50WinHttpQueryAuthSchemes@16
51WinHttpQueryDataAvailable@8
52WinHttpQueryHeaders@24
53WinHttpQueryOption@16
54WinHttpReadData@16
55WinHttpReadProxySettings@28
56WinHttpReadProxySettingsHvsi@32
57WinHttpReceiveResponse@8
58WinHttpResetAutoProxy@8
59WinHttpSaveProxyCredentials@16
60WinHttpSendRequest@28
61WinHttpSetCredentials@24
62WinHttpSetDefaultProxyConfiguration@4
63WinHttpSetOption@16
64WinHttpSetProxySettingsPerUser@4
65WinHttpSetStatusCallback@16
66WinHttpSetTimeouts@20
67WinHttpTimeFromSystemTime@8
68WinHttpTimeToSystemTime@8
69WinHttpWebSocketClose@16
70WinHttpWebSocketCompleteUpgrade@8
71WinHttpWebSocketQueryCloseStatus@20
72WinHttpWebSocketReceive@20
73WinHttpWebSocketSend@16
74WinHttpWebSocketShutdown@16
75WinHttpWriteData@16
76WinHttpWriteProxySettings@12
lib/libc/mingw/lib32/wininet.def created+313
...@@ -0,0 +1,313 @@
1; Which header declares the functions not in wininet?
2LIBRARY WININET.DLL
3EXPORTS
4DispatchAPICall@16
5AppCacheCheckManifest@32
6AppCacheCloseHandle@4
7AppCacheCreateAndCommitFile@20
8AppCacheDeleteGroup@4
9AppCacheDeleteIEGroup@4
10AppCacheDuplicateHandle@8
11AppCacheFinalize@16
12AppCacheFreeDownloadList@4
13AppCacheFreeGroupList@4
14AppCacheFreeIESpace@8
15AppCacheFreeSpace@8
16AppCacheGetDownloadList@8
17AppCacheGetFallbackUrl@12
18AppCacheGetGroupList@4
19AppCacheGetIEGroupList@4
20AppCacheGetInfo@8
21AppCacheGetManifestUrl@8
22AppCacheLookup@12
23CommitUrlCacheEntryA@44
24CommitUrlCacheEntryBinaryBlob@32
25CommitUrlCacheEntryW@44
26CreateMD5SSOHash@16
27CreateUrlCacheContainerA@32
28CreateUrlCacheContainerW@32
29CreateUrlCacheEntryA@20
30CreateUrlCacheEntryExW@24
31CreateUrlCacheEntryW@20
32CreateUrlCacheGroup@8
33DeleteIE3Cache@16
34DeleteUrlCacheContainerA@8
35DeleteUrlCacheContainerW@8
36DeleteUrlCacheEntry@4
37DeleteUrlCacheEntryA@4
38DeleteUrlCacheEntryW@4
39DeleteUrlCacheGroup@16
40DeleteWpadCacheForNetworks@4
41DetectAutoProxyUrl@12
42DoConnectoidsExist@0
43ExportCookieFileA@8
44ExportCookieFileW@8
45FindCloseUrlCache@4
46FindFirstUrlCacheContainerA@16
47FindFirstUrlCacheContainerW@16
48FindFirstUrlCacheEntryA@12
49FindFirstUrlCacheEntryExA@40
50FindFirstUrlCacheEntryExW@40
51FindFirstUrlCacheEntryW@12
52FindFirstUrlCacheGroup@24
53FindNextUrlCacheContainerA@12
54FindNextUrlCacheContainerW@12
55FindNextUrlCacheEntryA@12
56FindNextUrlCacheEntryExA@24
57FindNextUrlCacheEntryExW@24
58FindNextUrlCacheEntryW@12
59FindNextUrlCacheGroup@12
60FindP3PPolicySymbol@4
61ForceNexusLookup@0
62ForceNexusLookupExW@20
63FreeP3PObject@4
64FreeUrlCacheSpaceA@12
65FreeUrlCacheSpaceW@12
66FtpCommandA@24
67FtpCommandW@24
68FtpCreateDirectoryA@8
69FtpCreateDirectoryW@8
70FtpDeleteFileA@8
71FtpDeleteFileW@8
72FtpFindFirstFileA@20
73FtpFindFirstFileW@20
74FtpGetCurrentDirectoryA@12
75FtpGetCurrentDirectoryW@12
76FtpGetFileA@28
77FtpGetFileEx@28
78FtpGetFileSize@8
79FtpGetFileW@28
80FtpOpenFileA@20
81FtpOpenFileW@20
82FtpPutFileA@20
83FtpPutFileEx@20
84FtpPutFileW@20
85FtpRemoveDirectoryA@8
86FtpRemoveDirectoryW@8
87FtpRenameFileA@12
88FtpRenameFileW@12
89FtpSetCurrentDirectoryA@8
90FtpSetCurrentDirectoryW@8
91GetDiskInfoA@16
92GetP3PPolicy@16
93GetP3PRequestStatus@4
94GetUrlCacheConfigInfoA@12
95GetUrlCacheConfigInfoW@12
96GetUrlCacheEntryBinaryBlob@28
97GetUrlCacheEntryInfoA@12
98GetUrlCacheEntryInfoExA@28
99GetUrlCacheEntryInfoExW@28
100GetUrlCacheEntryInfoW@12
101GetUrlCacheGroupAttributeA@28
102GetUrlCacheGroupAttributeW@28
103GetUrlCacheHeaderData@8
104GopherCreateLocatorA@28
105GopherCreateLocatorW@28
106GopherFindFirstFileA@24
107GopherFindFirstFileW@24
108GopherGetAttributeA@32
109GopherGetAttributeW@32
110GopherGetLocatorTypeA@8
111GopherGetLocatorTypeW@8
112GopherOpenFileA@20
113GopherOpenFileW@20
114HttpAddRequestHeadersA@16
115HttpAddRequestHeadersW@16
116HttpCheckDavCompliance@20
117HttpCheckDavComplianceA@20
118HttpCheckDavComplianceW@20
119HttpCloseDependencyHandle@4
120HttpDuplicateDependencyHandle@8
121HttpEndRequestA@16
122HttpEndRequestW@16
123HttpGetServerCredentials@12
124HttpGetTunnelSocket@16
125HttpIndicatePageLoadComplete@4
126HttpIsHostHstsEnabled@8
127HttpOpenDependencyHandle@12
128HttpOpenRequestA@32
129HttpOpenRequestW@32
130HttpPushClose@4
131HttpPushEnable@12
132HttpPushWait@12
133HttpQueryInfoA@20
134HttpQueryInfoW@20
135HttpSendRequestA@20
136HttpSendRequestExA@20
137HttpSendRequestExW@20
138HttpSendRequestW@20
139HttpWebSocketClose@16
140HttpWebSocketCompleteUpgrade@8
141HttpWebSocketQueryCloseStatus@20
142HttpWebSocketReceive@20
143HttpWebSocketSend@16
144HttpWebSocketShutdown@16
145ImportCookieFileA@4
146ImportCookieFileW@4
147IncrementUrlCacheHeaderData@8
148InternetAlgIdToStringA@16
149InternetAlgIdToStringW@16
150InternetAttemptConnect@4
151InternetAutodial@8
152InternetAutodialCallback@8
153InternetAutodialHangup@4
154InternetCanonicalizeUrlA@16
155InternetCanonicalizeUrlW@16
156InternetCheckConnectionA@12
157InternetCheckConnectionW@12
158InternetClearAllPerSiteCookieDecisions@0
159InternetCloseHandle@4
160InternetCombineUrlA@20
161InternetCombineUrlW@20
162InternetConfirmZoneCrossing@16
163InternetConfirmZoneCrossingA@16
164InternetConfirmZoneCrossingW@16
165InternetConnectA@32
166InternetConnectW@32
167InternetConvertUrlFromWireToWideChar@32
168InternetCrackUrlA@16
169InternetCrackUrlW@16
170InternetCreateUrlA@16
171InternetCreateUrlW@16
172;InternetDebugGetLocalTime@8
173InternetDial@20
174InternetDialA@20
175InternetDialW@20
176InternetEnumPerSiteCookieDecisionA@16
177InternetEnumPerSiteCookieDecisionW@16
178InternetErrorDlg@20
179InternetFindNextFileA@8
180InternetFindNextFileW@8
181InternetFortezzaCommand@12
182InternetFreeCookies@8
183InternetFreeProxyInfoList@4
184InternetGetCertByURL@12
185InternetGetCertByURLA@12
186InternetGetConnectedState@8
187InternetGetConnectedStateEx@16
188InternetGetConnectedStateExA@16
189InternetGetConnectedStateExW@16
190InternetGetCookieA@16
191InternetGetCookieEx2@20
192InternetGetCookieExA@24
193InternetGetCookieExW@24
194InternetGetCookieW@16
195InternetGetLastResponseInfoA@12
196InternetGetLastResponseInfoW@12
197InternetGetPerSiteCookieDecisionA@8
198InternetGetPerSiteCookieDecisionW@8
199InternetGetProxyForUrl@12
200InternetGetSecurityInfoByURL@12
201InternetGetSecurityInfoByURLA@12
202InternetGetSecurityInfoByURLW@12
203InternetGoOnline@12
204InternetGoOnlineA@12
205InternetGoOnlineW@12
206InternetHangUp@8
207InternetInitializeAutoProxyDll@4
208InternetLockRequestFile@8
209InternetOpenA@20
210InternetOpenUrlA@24
211InternetOpenUrlW@24
212InternetOpenW@20
213InternetQueryDataAvailable@16
214InternetQueryFortezzaStatus@8
215InternetQueryOptionA@16
216InternetQueryOptionW@16
217InternetReadFile@16
218InternetReadFileExA@16
219InternetReadFileExW@16
220InternetSecurityProtocolToStringA@16
221InternetSecurityProtocolToStringW@16
222InternetSetCookieA@12
223InternetSetCookieEx2@20
224InternetSetCookieExA@20
225InternetSetCookieExW@20
226InternetSetCookieW@12
227InternetSetDialState@12
228InternetSetDialStateA@12
229InternetSetDialStateW@12
230InternetSetFilePointer@20
231InternetSetOptionA@16
232InternetSetOptionExA@20
233InternetSetOptionExW@20
234InternetSetOptionW@16
235InternetSetPerSiteCookieDecisionA@8
236InternetSetPerSiteCookieDecisionW@8
237InternetSetStatusCallback@8
238InternetSetStatusCallbackA@8
239InternetSetStatusCallbackW@8
240InternetShowSecurityInfoByURL@8
241InternetShowSecurityInfoByURLA@8
242InternetShowSecurityInfoByURLW@8
243InternetTimeFromSystemTime@16
244InternetTimeFromSystemTimeA@16
245InternetTimeFromSystemTimeW@16
246InternetTimeToSystemTime@12
247InternetTimeToSystemTimeA@12
248InternetTimeToSystemTimeW@12
249InternetUnlockRequestFile@4
250InternetWriteFile@16
251InternetWriteFileExA@16
252InternetWriteFileExW@16
253IsDomainLegalCookieDomainA@8
254IsDomainLegalCookieDomainW@8
255IsHostInProxyBypassList@12
256IsProfilesEnabled@0
257IsUrlCacheEntryExpiredA@12
258IsUrlCacheEntryExpiredW@12
259LoadUrlCacheContent@0
260MapResourceToPolicy@16
261ParseX509EncodedCertificateForListBoxEntry@16
262PerformOperationOverUrlCacheA@40
263PrivacyGetZonePreferenceW@20
264PrivacySetZonePreferenceW@16
265ReadUrlCacheEntryStream@20
266ReadUrlCacheEntryStreamEx@20
267RegisterUrlCacheNotification@24
268ResumeSuspendedDownload@8
269RetrieveUrlCacheEntryFileA@16
270RetrieveUrlCacheEntryFileW@16
271RetrieveUrlCacheEntryStreamA@20
272RetrieveUrlCacheEntryStreamW@20
273RunOnceUrlCache@16
274SetUrlCacheConfigInfoA@8
275SetUrlCacheConfigInfoW@8
276SetUrlCacheEntryGroup@28
277SetUrlCacheEntryGroupA@28
278SetUrlCacheEntryGroupW@28
279SetUrlCacheEntryInfoA@12
280SetUrlCacheEntryInfoW@12
281SetUrlCacheGroupAttributeA@24
282SetUrlCacheGroupAttributeW@24
283SetUrlCacheHeaderData@8
284ShowCertificate@8
285ShowClientAuthCerts@4
286ShowSecurityInfo@8
287ShowX509EncodedCertificate@12
288UnlockUrlCacheEntryFile@8
289UnlockUrlCacheEntryFileA@8
290UnlockUrlCacheEntryFileW@8
291UnlockUrlCacheEntryStream@8
292UpdateUrlCacheContentPath@4
293UrlCacheCheckEntriesExist@12
294UrlCacheCloseEntryHandle@4
295UrlCacheContainerSetEntryMaximumAge@8
296UrlCacheCreateContainer@24
297UrlCacheFindFirstEntry@28
298UrlCacheFindNextEntry@8
299UrlCacheFreeEntryInfo@4
300UrlCacheFreeGlobalSpace@12
301UrlCacheGetContentPaths@8
302UrlCacheGetEntryInfo@12
303UrlCacheGetGlobalCacheSize@12
304UrlCacheGetGlobalLimit@8
305UrlCacheReadEntryStream@24
306UrlCacheReloadSettings@0
307UrlCacheRetrieveEntryFile@16
308UrlCacheRetrieveEntryStream@20
309UrlCacheServer@0
310UrlCacheSetGlobalLimit@12
311UrlCacheUpdateEntryExtraData@16
312UrlZonesDetach@0
313_GetFileExtensionFromUrl@16
lib/libc/mingw/lib32/winusb.def created+41
...@@ -0,0 +1,41 @@
1;
2; Definition file of WINUSB.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WINUSB.DLL"
7EXPORTS
8WinUsb_AbortPipe@8
9WinUsb_AbortPipeAsync@12
10WinUsb_ControlTransfer@28
11WinUsb_FlushPipe@8
12WinUsb_Free@4
13WinUsb_GetAdjustedFrameNumber@12
14WinUsb_GetAssociatedInterface@12
15WinUsb_GetCurrentAlternateSetting@8
16WinUsb_GetCurrentFrameNumber@12
17WinUsb_GetDescriptor@28
18WinUsb_GetOverlappedResult@16
19WinUsb_GetPipePolicy@20
20WinUsb_GetPowerPolicy@16
21WinUsb_Initialize@8
22WinUsb_ParseConfigurationDescriptor@28
23WinUsb_ParseDescriptors@16
24WinUsb_QueryDeviceInformation@16
25WinUsb_QueryInterfaceSettings@12
26WinUsb_QueryPipe@16
27WinUsb_QueryPipeEx@16
28WinUsb_ReadIsochPipe@28
29WinUsb_ReadIsochPipeAsap@28
30WinUsb_ReadPipe@24
31WinUsb_RegisterIsochBuffer@20
32WinUsb_ResetPipe@8
33WinUsb_ResetPipeAsync@12
34WinUsb_SetCurrentAlternateSetting@8
35WinUsb_SetCurrentAlternateSettingAsync@12
36WinUsb_SetPipePolicy@20
37WinUsb_SetPowerPolicy@16
38WinUsb_UnregisterIsochBuffer@4
39WinUsb_WriteIsochPipe@20
40WinUsb_WriteIsochPipeAsap@20
41WinUsb_WritePipe@24
lib/libc/mingw/lib32/wkscli.def created+30
...@@ -0,0 +1,30 @@
1;
2; Definition file of wkscli.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "wkscli.dll"
7EXPORTS
8NetAddAlternateComputerName@20
9NetEnumerateComputerNames@20
10NetGetJoinInformation@12
11NetGetJoinableOUs@24
12NetJoinDomain@24
13NetRemoveAlternateComputerName@20
14NetRenameMachineInDomain@20
15NetSetPrimaryComputerName@20
16NetUnjoinDomain@16
17NetUseAdd@16
18NetUseDel@12
19NetUseEnum@28
20NetUseGetInfo@16
21NetValidateName@20
22NetWkstaGetInfo@12
23NetWkstaSetInfo@16
24NetWkstaStatisticsGet@16
25NetWkstaTransportAdd@16
26NetWkstaTransportDel@12
27NetWkstaTransportEnum@28
28NetWkstaUserEnum@28
29NetWkstaUserGetInfo@12
30NetWkstaUserSetInfo@16
lib/libc/mingw/lib32/wlanapi.def created+43
...@@ -0,0 +1,43 @@
1;
2; Definition file of Wlanapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "Wlanapi.dll"
7EXPORTS
8WlanAllocateMemory@4
9WlanCloseHandle@8
10WlanConnect@16
11WlanDeleteProfile@16
12WlanDisconnect@12
13WlanEnumInterfaces@12
14WlanExtractPsdIEDataList@24
15WlanFreeMemory@4
16WlanGetAvailableNetworkList@20
17WlanGetFilterList@16
18WlanGetInterfaceCapability@16
19WlanGetNetworkBssList@28
20WlanGetProfile@28
21WlanGetProfileCustomUserData@24
22WlanGetProfileList@16
23WlanGetSecuritySettings@20
24WlanIhvControl@32
25WlanOpenHandle@16
26WlanQueryAutoConfigParameter@24
27WlanQueryInterface@28
28WlanReasonCodeToString@16
29WlanRegisterNotification@28
30WlanRenameProfile@20
31WlanSaveTemporaryProfile@28
32WlanScan@20
33WlanSetAutoConfigParameter@20
34WlanSetFilterList@16
35WlanSetInterface@24
36WlanSetProfile@32
37WlanSetProfileCustomUserData@24
38WlanSetProfileEapUserData@44
39WlanSetProfileEapXmlUserData@24
40WlanSetProfileList@20
41WlanSetProfilePosition@20
42WlanSetPsdIEDataList@16
43WlanSetSecuritySettings@12
lib/libc/mingw/lib32/wsdapi.def created+41
...@@ -0,0 +1,41 @@
1;
2; Definition file of wsdapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "wsdapi.dll"
7EXPORTS
8WSDCancelAddrChangeNotify@4
9WSDCreateHttpAddressAdvanced@8
10WSDNotifyAddrChange@12
11WSDAllocateLinkedMemory@8
12WSDAttachLinkedMemory@8
13WSDCreateDeviceHost@12
14WSDCreateDeviceHostAdvanced@20
15WSDCreateDeviceProxy@16
16WSDCreateDeviceProxyAdvanced@20
17WSDCreateDiscoveryProvider@8
18WSDCreateDiscoveryPublisher@8
19WSDCreateHttpAddress@4
20WSDCreateHttpMessageParameters@4
21WSDCreateHttpTransport@8
22WSDCreateMetadataAgent@12
23WSDCreateOutboundAttachment@4
24WSDCreateUdpAddress@4
25WSDCreateUdpMessageParameters@4
26WSDCreateUdpTransport@4
27WSDDetachLinkedMemory@4
28WSDFreeLinkedMemory@4
29WSDGenerateFault@24
30WSDGenerateFaultEx@20
31WSDGenerateRandomDelay@8
32WSDGetConfigurationOption@12
33WSDProcessFault@12
34WSDSetConfigurationOption@12
35WSDXMLAddChild@8
36WSDXMLAddSibling@8
37WSDXMLBuildAnyForSingleElement@12
38WSDXMLCleanupElement@4
39WSDXMLCreateContext@4
40WSDXMLGetNameFromBuiltinNamespace@12
41WSDXMLGetValueFromAny@16
lib/libc/mingw/lib32/wsnmp32.def created+48
...@@ -0,0 +1,48 @@
1LIBRARY wsnmp32.dll
2EXPORTS
3SnmpCancelMsg@8
4SnmpCleanup@0
5SnmpClose@4
6SnmpContextToStr@8
7SnmpCountVbl@4
8SnmpCreatePdu@24
9SnmpCreateSession@16
10SnmpCreateVbl@12
11SnmpDecodeMsg@24
12SnmpDeleteVb@8
13SnmpDuplicatePdu@8
14SnmpDuplicateVbl@8
15SnmpEncodeMsg@24
16SnmpEntityToStr@12
17SnmpFreeContext@4
18SnmpFreeDescriptor@8
19SnmpFreeEntity@4
20SnmpFreePdu@4
21SnmpFreeVbl@4
22SnmpGetLastError@4
23SnmpGetPduData@24
24SnmpGetRetransmitMode@4
25SnmpGetRetry@12
26SnmpGetTimeout@12
27SnmpGetTranslateMode@4
28SnmpGetVb@16
29SnmpGetVendorInfo@4
30SnmpListen@8
31SnmpOidCompare@16
32SnmpOidCopy@8
33SnmpOidToStr@12
34SnmpOpen@8
35SnmpRecvMsg@20
36SnmpRegister@24
37SnmpSendMsg@20
38SnmpSetPduData@24
39SnmpSetPort@8
40SnmpSetRetransmitMode@4
41SnmpSetRetry@8
42SnmpSetTimeout@8
43SnmpSetTranslateMode@4
44SnmpSetVb@16
45SnmpStartup@20
46SnmpStrToContext@8
47SnmpStrToEntity@8
48SnmpStrToOid@8
lib/libc/mingw/lib32/wtsapi32.def created+50
...@@ -0,0 +1,50 @@
1;
2; Definition file of WTSAPI32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WTSAPI32.dll"
7EXPORTS
8WTSCloseServer@4
9WTSConnectSessionA@16
10WTSConnectSessionW@16
11WTSDisconnectSession@12
12WTSEnumerateProcessesA@20
13WTSEnumerateProcessesW@20
14WTSEnumerateServersA@20
15WTSEnumerateServersW@20
16WTSEnumerateSessionsA@20
17WTSEnumerateSessionsW@20
18WTSFreeMemory@4
19WTSLogoffSession@12
20WTSOpenServerA@4
21WTSOpenServerW@4
22WTSQuerySessionInformationA@20
23WTSQuerySessionInformationW@20
24WTSQueryUserConfigA@20
25WTSQueryUserConfigW@20
26WTSQueryUserToken@8
27WTSRegisterSessionNotification@8
28WTSRegisterSessionNotificationEx@12
29WTSSendMessageA@40
30WTSSendMessageW@40
31WTSSetSessionInformationA@20
32WTSSetSessionInformationW@20
33WTSSetUserConfigA@20
34WTSSetUserConfigW@20
35WTSShutdownSystem@8
36WTSStartRemoteControlSessionA@16
37WTSStartRemoteControlSessionW@16
38WTSStopRemoteControlSession@4
39WTSTerminateProcess@12
40WTSUnRegisterSessionNotification@4
41WTSUnRegisterSessionNotificationEx@8
42WTSVirtualChannelClose@4
43WTSVirtualChannelOpen@12
44WTSVirtualChannelOpenEx@12
45WTSVirtualChannelPurgeInput@4
46WTSVirtualChannelPurgeOutput@4
47WTSVirtualChannelQuery@16
48WTSVirtualChannelRead@20
49WTSVirtualChannelWrite@16
50WTSWaitSystemEvent@12
lib/libc/mingw/lib64/aclui.def created+11
...@@ -0,0 +1,11 @@
1;
2; Exports of file ACLUI.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY ACLUI.dll
8EXPORTS
9CreateSecurityPage
10EditSecurity
11IID_ISecurityInformation DATA
lib/libc/mingw/lib64/apphelp.def created+166
...@@ -0,0 +1,166 @@
1;
2; Exports of file apphelp.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY apphelp.dll
8EXPORTS
9AllowPermLayer
10ApphelpCheckExe
11ApphelpCheckIME
12ApphelpCheckInstallShieldPackage
13ApphelpCheckMsiPackage
14ApphelpCheckRunApp
15ApphelpCheckShellObject
16ApphelpFixMsiPackage
17ApphelpFixMsiPackageExe
18ApphelpFreeFileAttributes
19ApphelpGetFileAttributes
20ApphelpGetNTVDMInfo
21ApphelpGetShimDebugLevel
22ApphelpQueryModuleData
23ApphelpReleaseExe
24ApphelpShowDialog
25ApphelpShowUI
26ApphelpUpdateCacheEntry
27GetPermLayers
28SdbBeginWriteListTag
29SdbBuildCompatEnvVariables
30SdbCloseApphelpInformation
31SdbCloseDatabase
32SdbCloseDatabaseWrite
33SdbCloseLocalDatabase
34SdbCommitIndexes
35SdbCreateDatabase
36SdbCreateHelpCenterURL
37SdbCreateMsiTransformFile
38SdbDeclareIndex
39SdbDeletePermLayerKeys
40SdbEndWriteListTag
41SdbEnumMsiTransforms
42SdbEscapeApphelpURL
43SdbFindCustomActionForPackage
44SdbFindFirstDWORDIndexedTag
45SdbFindFirstGUIDIndexedTag
46SdbFindFirstMsiPackage
47SdbFindFirstMsiPackage_Str
48SdbFindFirstNamedTag
49SdbFindFirstStringIndexedTag
50SdbFindFirstTag
51SdbFindFirstTagRef
52SdbFindMsiPackageByID
53SdbFindNextDWORDIndexedTag
54SdbFindNextGUIDIndexedTag
55SdbFindNextMsiPackage
56SdbFindNextStringIndexedTag
57SdbFindNextTag
58SdbFindNextTagRef
59SdbFormatAttribute
60SdbFreeDatabaseInformation
61SdbFreeFileAttributes
62SdbFreeFileInfo
63SdbFreeFlagInfo
64SdbGUIDFromString
65SdbGUIDToString
66SdbGetAppCompatDataSize
67SdbGetAppPatchDir
68SdbGetBinaryTagData
69SdbGetDatabaseGUID
70SdbGetDatabaseID
71SdbGetDatabaseInformation
72SdbGetDatabaseInformationByName
73SdbGetDatabaseMatch
74SdbGetDatabaseVersion
75SdbGetDllPath
76SdbGetEntryFlags
77SdbGetFileAttributes
78SdbGetFileInfo
79SdbGetFirstChild
80SdbGetImageType
81SdbGetIndex
82SdbGetItemFromItemRef
83SdbGetLayerName
84SdbGetLayerTagRef
85SdbGetLocalPDB
86SdbGetMatchingExe
87SdbGetMsiPackageInformation
88SdbGetNamedLayer
89SdbGetNextChild
90SdbGetNthUserSdb
91SdbGetPDBFromGUID
92SdbGetPermLayerKeys
93SdbGetShowDebugInfoOption
94SdbGetShowDebugInfoOptionValue
95SdbGetStandardDatabaseGUID
96SdbGetStringTagPtr
97SdbGetTagDataSize
98SdbGetTagFromTagID
99SdbGrabMatchingInfo
100SdbGrabMatchingInfoEx
101SdbInitDatabase
102SdbInitDatabaseEx
103SdbIsNullGUID
104SdbIsTagrefFromLocalDB
105SdbIsTagrefFromMainDB
106SdbMakeIndexKeyFromString
107SdbOpenApphelpDetailsDatabase
108SdbOpenApphelpDetailsDatabaseSP
109SdbOpenApphelpInformation
110SdbOpenApphelpInformationByID
111SdbOpenDatabase
112SdbOpenLocalDatabase
113SdbPackAppCompatData
114SdbQueryApphelpInformation
115SdbQueryData
116SdbQueryDataEx
117SdbQueryDataExTagID
118SdbQueryFlagInfo
119SdbQueryFlagMask
120SdbReadApphelpData
121SdbReadApphelpDetailsData
122SdbReadBYTETag
123SdbReadBYTETagRef
124SdbReadBinaryTag
125SdbReadDWORDTag
126SdbReadDWORDTagRef
127SdbReadEntryInformation
128SdbReadMsiTransformInfo
129SdbReadPatchBits
130SdbReadQWORDTag
131SdbReadQWORDTagRef
132SdbReadStringTag
133SdbReadStringTagRef
134SdbReadWORDTag
135SdbReadWORDTagRef
136SdbRegisterDatabase
137SdbRegisterDatabaseEx
138SdbReleaseDatabase
139SdbReleaseMatchingExe
140SdbResolveDatabase
141SdbSetApphelpDebugParameters
142SdbSetEntryFlags
143SdbSetImageType
144SdbSetPermLayerKeys
145SdbShowApphelpDialog
146SdbStartIndexing
147SdbStopIndexing
148SdbTagIDToTagRef
149SdbTagRefToTagID
150SdbTagToString
151SdbUnpackAppCompatData
152SdbUnregisterDatabase
153SdbWriteBYTETag
154SdbWriteBinaryTag
155SdbWriteBinaryTagFromFile
156SdbWriteDWORDTag
157SdbWriteNULLTag
158SdbWriteQWORDTag
159SdbWriteStringRefTag
160SdbWriteStringTag
161SdbWriteStringTagDirect
162SdbWriteWORDTag
163SetPermLayers
164ShimDbgPrint
165ShimDumpCache
166ShimFlushCache
lib/libc/mingw/lib64/avicap32.def created+14
...@@ -0,0 +1,14 @@
1;
2; Exports of file AVICAP32.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY AVICAP32.dll
8EXPORTS
9AppCleanup
10capCreateCaptureWindowA
11capCreateCaptureWindowW
12capGetDriverDescriptionA
13capGetDriverDescriptionW
14videoThunk32
lib/libc/mingw/lib64/avifil32.def created+84
...@@ -0,0 +1,84 @@
1;
2; Exports of file AVIFIL32.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY AVIFIL32.dll
8EXPORTS
9AVIBuildFilter
10AVIBuildFilterA
11AVIBuildFilterW
12AVIClearClipboard
13AVIFileAddRef
14AVIFileCreateStream
15AVIFileCreateStreamA
16AVIFileCreateStreamW
17AVIFileEndRecord
18AVIFileExit
19AVIFileGetStream
20AVIFileInfo
21AVIFileInfoA
22AVIFileInfoW
23AVIFileInit
24AVIFileOpen
25AVIFileOpenA
26AVIFileOpenW
27AVIFileReadData
28AVIFileRelease
29AVIFileWriteData
30AVIGetFromClipboard
31AVIMakeCompressedStream
32AVIMakeFileFromStreams
33AVIMakeStreamFromClipboard
34AVIPutFileOnClipboard
35AVISave
36AVISaveA
37AVISaveOptions
38AVISaveOptionsFree
39AVISaveV
40AVISaveVA
41AVISaveVW
42AVISaveW
43AVIStreamAddRef
44AVIStreamBeginStreaming
45AVIStreamCreate
46AVIStreamEndStreaming
47AVIStreamFindSample
48AVIStreamGetFrame
49AVIStreamGetFrameClose
50AVIStreamGetFrameOpen
51AVIStreamInfo
52AVIStreamInfoA
53AVIStreamInfoW
54AVIStreamLength
55AVIStreamOpenFromFile
56AVIStreamOpenFromFileA
57AVIStreamOpenFromFileW
58AVIStreamRead
59AVIStreamReadData
60AVIStreamReadFormat
61AVIStreamRelease
62AVIStreamSampleToTime
63AVIStreamSetFormat
64AVIStreamStart
65AVIStreamTimeToSample
66AVIStreamWrite
67AVIStreamWriteData
68CreateEditableStream
69DllCanUnloadNow
70DllGetClassObject
71EditStreamClone
72EditStreamCopy
73EditStreamCut
74EditStreamPaste
75EditStreamSetInfo
76EditStreamSetInfoA
77EditStreamSetInfoW
78EditStreamSetName
79EditStreamSetNameA
80EditStreamSetNameW
81IID_IAVIEditStream
82IID_IAVIFile
83IID_IAVIStream
84IID_IGetFrame
lib/libc/mingw/lib64/bthprops.def created+70
...@@ -0,0 +1,70 @@
1;
2; Definition file of bthprops.cpl
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "bthprops.cpl"
7EXPORTS
8ord_103 @103
9BluetoothAddressToString
10BluetoothAuthenticateDevice
11BluetoothAuthenticateDeviceEx
12BluetoothAuthenticateMultipleDevices
13BluetoothAuthenticationAgent
14BluetoothDisconnectDevice
15BluetoothDisplayDeviceProperties
16BluetoothEnableDiscovery
17BluetoothEnableIncomingConnections
18BluetoothEnumerateInstalledServices
19BluetoothFindBrowseGroupClose
20BluetoothFindClassIdClose
21BluetoothFindDeviceClose
22BluetoothFindFirstBrowseGroup
23BluetoothFindFirstClassId
24BluetoothFindFirstDevice
25BluetoothFindFirstProfileDescriptor
26BluetoothFindFirstProtocolDescriptorStack
27BluetoothFindFirstProtocolEntry
28BluetoothFindFirstRadio
29BluetoothFindFirstService
30BluetoothFindFirstServiceEx
31BluetoothFindNextBrowseGroup
32BluetoothFindNextClassId
33BluetoothFindNextDevice
34BluetoothFindNextProfileDescriptor
35BluetoothFindNextProtocolDescriptorStack
36BluetoothFindNextProtocolEntry
37BluetoothFindNextRadio
38BluetoothFindNextService
39BluetoothFindProfileDescriptorClose
40BluetoothFindProtocolDescriptorStackClose
41BluetoothFindProtocolEntryClose
42BluetoothFindRadioClose
43BluetoothFindServiceClose
44BluetoothGetDeviceInfo
45BluetoothGetRadioInfo
46BluetoothIsConnectable
47BluetoothIsDiscoverable
48BluetoothIsVersionAvailable
49BluetoothMapClassOfDeviceToImageIndex
50BluetoothMapClassOfDeviceToString
51BluetoothRegisterForAuthentication
52BluetoothRegisterForAuthenticationEx
53BluetoothRemoveDevice
54BluetoothSdpEnumAttributes
55BluetoothSdpGetAttributeValue
56BluetoothSdpGetContainerElementData
57BluetoothSdpGetElementData
58BluetoothSdpGetString
59BluetoothSelectDevices
60BluetoothSelectDevicesFree
61BluetoothSendAuthenticationResponse
62BluetoothSendAuthenticationResponseEx
63BluetoothSetLocalServiceInfo
64BluetoothSetServiceState
65BluetoothUnregisterAuthentication
66BluetoothUpdateDeviceRecord
67BthpEnableAllServices
68BthpFindPnpInfo
69BthpMapStatusToErr
70CPlApplet
lib/libc/mingw/lib64/clfsw32.def created+69
...@@ -0,0 +1,69 @@
1;
2; Definition file of clfsw32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "clfsw32.dll"
7EXPORTS
8LsnDecrement
9AddLogContainer
10AddLogContainerSet
11AdvanceLogBase
12AlignReservedLog
13AllocReservedLog
14CLFS_LSN_INVALID DATA
15CLFS_LSN_NULL DATA
16CloseAndResetLogFile
17CreateLogContainerScanContext
18CreateLogFile
19CreateLogMarshallingArea
20DeleteLogByHandle
21DeleteLogFile
22DeleteLogMarshallingArea
23DeregisterManageableLogClient
24DumpLogRecords
25FlushLogBuffers
26FlushLogToLsn
27FreeReservedLog
28GetLogContainerName
29GetLogFileInformation
30GetLogIoStatistics
31GetNextLogArchiveExtent
32HandleLogFull
33InstallLogPolicy
34LogTailAdvanceFailure
35LsnBlockOffset
36LsnContainer
37LsnCreate
38LsnEqual
39LsnGreater
40LsnIncrement
41LsnInvalid
42LsnLess
43LsnNull
44LsnRecordSequence
45PrepareLogArchive
46QueryLogPolicy
47ReadLogArchiveMetadata
48ReadLogNotification
49ReadLogRecord
50ReadLogRestartArea
51ReadNextLogRecord
52ReadPreviousLogRestartArea
53RegisterForLogWriteNotification
54RegisterManageableLogClient
55RemoveLogContainer
56RemoveLogContainerSet
57RemoveLogPolicy
58ReserveAndAppendLog
59ReserveAndAppendLogAligned
60ScanLogContainers
61SetEndOfLog
62SetLogArchiveMode
63SetLogArchiveTail
64SetLogFileSizeWithPolicy
65TerminateLogArchive
66TerminateReadLog
67TruncateLog
68ValidateLog
69WriteLogRestartArea
lib/libc/mingw/lib64/comsvcs.def created+29
...@@ -0,0 +1,29 @@
1;
2; Exports of file comsvcs.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY comsvcs.dll
8EXPORTS
9CosGetCallContext
10GetMTAThreadPoolMetrics
11CoCreateActivity
12CoEnterServiceDomain
13CoLeaveServiceDomain
14CoLoadServices
15ComSvcsExceptionFilter
16ComSvcsLogError
17DispManGetContext
18DllCanUnloadNow
19DllGetClassObject
20DllRegisterServer
21DllUnregisterServer
22GetManagedExtensions
23GetObjectContext
24GetTrkSvrObject
25MTSCreateActivity
26MiniDumpW
27RecycleSurrogate
28RegisterComEvents
29SafeRef
lib/libc/mingw/lib64/dciman32.def created+28
...@@ -0,0 +1,28 @@
1;
2; Exports of file DCIMAN32.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY DCIMAN32.dll
8EXPORTS
9DCIBeginAccess
10DCICloseProvider
11DCICreateOffscreen
12DCICreateOverlay
13DCICreatePrimary
14DCIDestroy
15DCIDraw
16DCIEndAccess
17DCIEnum
18DCIOpenProvider
19DCISetClipList
20DCISetDestination
21DCISetSrcDestClip
22GetDCRegionData
23GetWindowRegionData
24WinWatchClose
25WinWatchDidStatusChange
26WinWatchGetClipList
27WinWatchNotify
28WinWatchOpen
lib/libc/mingw/lib64/dhcpcsvc6.def created+17
...@@ -0,0 +1,17 @@
1;
2; Definition file of dhcpcsvc6.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "dhcpcsvc6.DLL"
7EXPORTS
8Dhcpv6AcquireParameters
9Dhcpv6FreeLeaseInfo
10Dhcpv6IsEnabled
11Dhcpv6Main
12Dhcpv6QueryLeaseInfo
13Dhcpv6ReleaseParameters
14Dhcpv6ReleasePrefix
15Dhcpv6RenewPrefix
16Dhcpv6RequestParams
17Dhcpv6RequestPrefix
lib/libc/mingw/lib64/esent.def created+318
...@@ -0,0 +1,318 @@
1;
2; Definition file of ESENT.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ESENT.dll"
7EXPORTS
8JetAddColumn
9JetAddColumnA
10JetAddColumnW
11JetAttachDatabase
12JetAttachDatabase2
13JetAttachDatabase2A
14JetAttachDatabase2W
15JetAttachDatabaseA
16JetAttachDatabaseW
17JetAttachDatabaseWithStreaming
18JetAttachDatabaseWithStreamingA
19JetAttachDatabaseWithStreamingW
20JetBackup
21JetBackupA
22JetBackupInstance
23JetBackupInstanceA
24JetBackupInstanceW
25JetBackupW
26JetBeginExternalBackup
27JetBeginExternalBackupInstance
28JetBeginSession
29JetBeginSessionA
30JetBeginSessionW
31JetBeginTransaction
32JetBeginTransaction2
33JetCloseDatabase
34JetCloseFile
35JetCloseFileInstance
36JetCloseTable
37JetCommitTransaction
38JetCompact
39JetCompactA
40JetCompactW
41JetComputeStats
42JetConvertDDL
43JetConvertDDLA
44JetConvertDDLW
45JetCreateDatabase
46JetCreateDatabase2
47JetCreateDatabase2A
48JetCreateDatabase2W
49JetCreateDatabaseA
50JetCreateDatabaseW
51JetCreateDatabaseWithStreaming
52JetCreateDatabaseWithStreamingA
53JetCreateDatabaseWithStreamingW
54JetCreateIndex
55JetCreateIndex2
56JetCreateIndex2A
57JetCreateIndex2W
58JetCreateIndexA
59JetCreateIndexW
60JetCreateInstance
61JetCreateInstance2
62JetCreateInstance2A
63JetCreateInstance2W
64JetCreateInstanceA
65JetCreateInstanceW
66JetCreateTable
67JetCreateTableA
68JetCreateTableColumnIndex
69JetCreateTableColumnIndex2
70JetCreateTableColumnIndex2A
71JetCreateTableColumnIndex2W
72JetCreateTableColumnIndexA
73JetCreateTableColumnIndexW
74JetCreateTableW
75JetDBUtilities
76JetDBUtilitiesA
77JetDBUtilitiesW
78JetDefragment
79JetDefragment2
80JetDefragment2A
81JetDefragment2W
82JetDefragment3
83JetDefragment3A
84JetDefragment3W
85JetDefragmentA
86JetDefragmentW
87JetDelete
88JetDeleteColumn
89JetDeleteColumn2
90JetDeleteColumn2A
91JetDeleteColumn2W
92JetDeleteColumnA
93JetDeleteColumnW
94JetDeleteIndex
95JetDeleteIndexA
96JetDeleteIndexW
97JetDeleteTable
98JetDeleteTableA
99JetDeleteTableW
100JetDetachDatabase
101JetDetachDatabase2
102JetDetachDatabase2A
103JetDetachDatabase2W
104JetDetachDatabaseA
105JetDetachDatabaseW
106JetDupCursor
107JetDupSession
108JetEnableMultiInstance
109JetEnableMultiInstanceA
110JetEnableMultiInstanceW
111JetEndExternalBackup
112JetEndExternalBackupInstance
113JetEndExternalBackupInstance2
114JetEndSession
115JetEnumerateColumns
116JetEscrowUpdate
117JetExternalRestore
118JetExternalRestore2
119JetExternalRestore2A
120JetExternalRestore2W
121JetExternalRestoreA
122JetExternalRestoreW
123JetFreeBuffer
124JetGetAttachInfo
125JetGetAttachInfoA
126JetGetAttachInfoInstance
127JetGetAttachInfoInstanceA
128JetGetAttachInfoInstanceW
129JetGetAttachInfoW
130JetGetBookmark
131JetGetColumnInfo
132JetGetColumnInfoA
133JetGetColumnInfoW
134JetGetCounter
135JetGetCurrentIndex
136JetGetCurrentIndexA
137JetGetCurrentIndexW
138JetGetCursorInfo
139JetGetDatabaseFileInfo
140JetGetDatabaseFileInfoA
141JetGetDatabaseFileInfoW
142JetGetDatabaseInfo
143JetGetDatabaseInfoA
144JetGetDatabaseInfoW
145JetGetDatabasePages
146JetGetIndexInfo
147JetGetIndexInfoA
148JetGetIndexInfoW
149JetGetInstanceInfo
150JetGetInstanceInfoA
151JetGetInstanceInfoW
152JetGetInstanceMiscInfo
153JetGetLS
154JetGetLock
155JetGetLogFileInfo
156JetGetLogFileInfoA
157JetGetLogFileInfoW
158JetGetLogInfo
159JetGetLogInfoA
160JetGetLogInfoInstance
161JetGetLogInfoInstance2
162JetGetLogInfoInstance2A
163JetGetLogInfoInstance2W
164JetGetLogInfoInstanceA
165JetGetLogInfoInstanceW
166JetGetLogInfoW
167JetGetMaxDatabaseSize
168JetGetObjectInfo
169JetGetObjectInfoA
170JetGetObjectInfoW
171JetGetPageInfo
172JetGetRecordPosition
173JetGetRecordSize
174JetGetResourceParam
175JetGetSecondaryIndexBookmark
176JetGetSessionInfo
177JetGetSystemParameter
178JetGetSystemParameterA
179JetGetSystemParameterW
180JetGetTableColumnInfo
181JetGetTableColumnInfoA
182JetGetTableColumnInfoW
183JetGetTableIndexInfo
184JetGetTableIndexInfoA
185JetGetTableIndexInfoW
186JetGetTableInfo
187JetGetTableInfoA
188JetGetTableInfoW
189JetGetThreadStats
190JetGetTruncateLogInfoInstance
191JetGetTruncateLogInfoInstanceA
192JetGetTruncateLogInfoInstanceW
193JetGetVersion
194JetGotoBookmark
195JetGotoPosition
196JetGotoSecondaryIndexBookmark
197JetGrowDatabase
198JetIdle
199JetIndexRecordCount
200JetInit
201JetInit2
202JetInit3
203JetInit3A
204JetInit3W
205JetIntersectIndexes
206JetMakeKey
207JetMove
208JetOSSnapshotAbort
209JetOSSnapshotEnd
210JetOSSnapshotFreeze
211JetOSSnapshotFreezeA
212JetOSSnapshotFreezeW
213JetOSSnapshotGetFreezeInfo
214JetOSSnapshotGetFreezeInfoA
215JetOSSnapshotGetFreezeInfoW
216JetOSSnapshotPrepare
217JetOSSnapshotPrepareInstance
218JetOSSnapshotThaw
219JetOSSnapshotTruncateLog
220JetOSSnapshotTruncateLogInstance
221JetOpenDatabase
222JetOpenDatabaseA
223JetOpenDatabaseW
224JetOpenFile
225JetOpenFileA
226JetOpenFileInstance
227JetOpenFileInstanceA
228JetOpenFileInstanceW
229JetOpenFileSectionInstance
230JetOpenFileSectionInstanceA
231JetOpenFileSectionInstanceW
232JetOpenFileW
233JetOpenTable
234JetOpenTableA
235JetOpenTableW
236JetOpenTempTable
237JetOpenTempTable2
238JetOpenTempTable3
239JetOpenTemporaryTable
240JetPrepareToCommitTransaction
241JetPrepareUpdate
242JetReadFile
243JetReadFileInstance
244JetRegisterCallback
245JetRenameColumn
246JetRenameColumnA
247JetRenameColumnW
248JetRenameTable
249JetRenameTableA
250JetRenameTableW
251JetResetCounter
252JetResetSessionContext
253JetResetTableSequential
254JetRestore
255JetRestore2
256JetRestore2A
257JetRestore2W
258JetRestoreA
259JetRestoreInstance
260JetRestoreInstanceA
261JetRestoreInstanceW
262JetRestoreW
263JetRetrieveColumn
264JetRetrieveColumns
265JetRetrieveKey
266JetRetrieveTaggedColumnList
267JetRollback
268JetSeek
269JetSetColumn
270JetSetColumnDefaultValue
271JetSetColumnDefaultValueA
272JetSetColumnDefaultValueW
273JetSetColumns
274JetSetCurrentIndex
275JetSetCurrentIndex2
276JetSetCurrentIndex2A
277JetSetCurrentIndex2W
278JetSetCurrentIndex3
279JetSetCurrentIndex3A
280JetSetCurrentIndex3W
281JetSetCurrentIndex4
282JetSetCurrentIndex4A
283JetSetCurrentIndex4W
284JetSetCurrentIndexA
285JetSetCurrentIndexW
286JetSetDatabaseSize
287JetSetDatabaseSizeA
288JetSetDatabaseSizeW
289JetSetIndexRange
290JetSetLS
291JetSetMaxDatabaseSize
292JetSetResourceParam
293JetSetSessionContext
294JetSetSystemParameter
295JetSetSystemParameterA
296JetSetSystemParameterW
297JetSetTableSequential
298JetSnapshotStart
299JetSnapshotStartA
300JetSnapshotStartW
301JetSnapshotStop
302JetStopBackup
303JetStopBackupInstance
304JetStopService
305JetStopServiceInstance
306JetTerm
307JetTerm2
308JetTracing
309JetTruncateLog
310JetTruncateLogInstance
311JetUnregisterCallback
312JetUpdate
313JetUpdate2
314JetUpgradeDatabase
315JetUpgradeDatabaseA
316JetUpgradeDatabaseW
317ese
318esent
lib/libc/mingw/lib64/faultrep.def created+19
...@@ -0,0 +1,19 @@
1;
2; Exports of file faultrep.DLL
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY faultrep.DLL
8EXPORTS
9AddERExcludedApplicationA
10AddERExcludedApplicationW
11CreateMinidumpW
12ReportEREvent
13ReportEREventDW
14ReportFault
15ReportFaultDWM
16ReportFaultFromQueue
17ReportFaultToQueue
18ReportHang
19ReportKernelFaultDWW
lib/libc/mingw/lib64/fwpuclnt.def created+146
...@@ -0,0 +1,146 @@
1;
2; Definition file of fwpuclnt.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "fwpuclnt.dll"
7EXPORTS
8FwpmCalloutAdd0
9FwpmCalloutCreateEnumHandle0
10FwpmCalloutDeleteById0
11FwpmCalloutDeleteByKey0
12FwpmCalloutDestroyEnumHandle0
13FwpmCalloutEnum0
14FwpmCalloutGetById0
15FwpmCalloutGetByKey0
16FwpmCalloutGetSecurityInfoByKey0
17FwpmCalloutSetSecurityInfoByKey0
18FwpmCalloutSubscribeChanges0
19FwpmCalloutSubscriptionsGet0
20FwpmCalloutUnsubscribeChanges0
21FwpmDiagnoseNetFailure0
22FwpmEngineClose0
23FwpmEngineGetOption0
24FwpmEngineGetSecurityInfo0
25FwpmEngineOpen0
26FwpmEngineSetOption0
27FwpmEngineSetSecurityInfo0
28FwpmEventProviderCreate0
29FwpmEventProviderDestroy0
30FwpmEventProviderFireNetEvent0
31FwpmEventProviderIsNetEventTypeEnabled0
32FwpmFilterAdd0
33FwpmFilterCreateEnumHandle0
34FwpmFilterDeleteById0
35FwpmFilterDeleteByKey0
36FwpmFilterDestroyEnumHandle0
37FwpmFilterEnum0
38FwpmFilterGetById0
39FwpmFilterGetByKey0
40FwpmFilterGetSecurityInfoByKey0
41FwpmFilterSetSecurityInfoByKey0
42FwpmFilterSubscribeChanges0
43FwpmFilterSubscriptionsGet0
44FwpmFilterUnsubscribeChanges0
45FwpmFreeMemory0
46FwpmGetAppIdFromFileName0
47FwpmIPsecTunnelAdd0
48FwpmIPsecTunnelDeleteByKey0
49FwpmLayerCreateEnumHandle0
50FwpmLayerDestroyEnumHandle0
51FwpmLayerEnum0
52FwpmLayerGetById0
53FwpmLayerGetByKey0
54FwpmLayerGetSecurityInfoByKey0
55FwpmLayerSetSecurityInfoByKey0
56FwpmNetEventCreateEnumHandle0
57FwpmNetEventDestroyEnumHandle0
58FwpmNetEventEnum0
59FwpmNetEventsGetSecurityInfo0
60FwpmNetEventsSetSecurityInfo0
61FwpmProviderAdd0
62FwpmProviderContextAdd0
63FwpmProviderContextCreateEnumHandle0
64FwpmProviderContextDeleteById0
65FwpmProviderContextDeleteByKey0
66FwpmProviderContextDestroyEnumHandle0
67FwpmProviderContextEnum0
68FwpmProviderContextGetById0
69FwpmProviderContextGetByKey0
70FwpmProviderContextGetSecurityInfoByKey0
71FwpmProviderContextSetSecurityInfoByKey0
72FwpmProviderContextSubscribeChanges0
73FwpmProviderContextSubscriptionsGet0
74FwpmProviderContextUnsubscribeChanges0
75FwpmProviderCreateEnumHandle0
76FwpmProviderDeleteByKey0
77FwpmProviderDestroyEnumHandle0
78FwpmProviderEnum0
79FwpmProviderGetByKey0
80FwpmProviderGetSecurityInfoByKey0
81FwpmProviderSetSecurityInfoByKey0
82FwpmProviderSubscribeChanges0
83FwpmProviderSubscriptionsGet0
84FwpmProviderUnsubscribeChanges0
85FwpmSessionCreateEnumHandle0
86FwpmSessionDestroyEnumHandle0
87FwpmSessionEnum0
88FwpmSubLayerAdd0
89FwpmSubLayerCreateEnumHandle0
90FwpmSubLayerDeleteByKey0
91FwpmSubLayerDestroyEnumHandle0
92FwpmSubLayerEnum0
93FwpmSubLayerGetByKey0
94FwpmSubLayerGetSecurityInfoByKey0
95FwpmSubLayerSetSecurityInfoByKey0
96FwpmSubLayerSubscribeChanges0
97FwpmSubLayerSubscriptionsGet0
98FwpmSubLayerUnsubscribeChanges0
99FwpmTraceRestoreDefaults0
100FwpmTransactionAbort0
101FwpmTransactionBegin0
102FwpmTransactionCommit0
103FwpsAleExplicitCredentialsQuery0
104FwpsClassifyUser0
105FwpsFreeMemory0
106FwpsGetInProcReplicaOffset0
107FwpsLayerCreateInProcReplica0
108FwpsLayerReleaseInProcReplica0
109FwpsOpenToken0
110IPsecGetStatistics0
111IPsecKeyModuleAdd0
112IPsecKeyModuleCompleteAcquire0
113IPsecKeyModuleDelete0
114IPsecSaContextAddInbound0
115IPsecSaContextAddOutbound0
116IPsecSaContextCreate0
117IPsecSaContextCreateEnumHandle0
118IPsecSaContextDeleteById0
119IPsecSaContextDestroyEnumHandle0
120IPsecSaContextEnum0
121IPsecSaContextExpire0
122IPsecSaContextGetById0
123IPsecSaContextGetSpi0
124IPsecSaCreateEnumHandle0
125IPsecSaDbGetSecurityInfo0
126IPsecSaDbSetSecurityInfo0
127IPsecSaDestroyEnumHandle0
128IPsecSaEnum0
129IPsecSaInitiateAsync0
130IkeextGetConfigParameters0
131IkeextGetStatistics0
132IkeextSaCreateEnumHandle0
133IkeextSaDbGetSecurityInfo0
134IkeextSaDbSetSecurityInfo0
135IkeextSaDeleteById0
136IkeextSaDestroyEnumHandle0
137IkeextSaEnum0
138IkeextSaGetById0
139IkeextSetConfigParameters0
140WSADeleteSocketPeerTargetName
141WSAImpersonateSocketPeer
142WSAQuerySocketSecurity
143WSARevertImpersonation
144WSASetSocketPeerTargetName
145WSASetSocketSecurity
146wfpdiagW
lib/libc/mingw/lib64/httpapi.def created+73
...@@ -0,0 +1,73 @@
1;
2; Definition file of HTTPAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "HTTPAPI.dll"
7EXPORTS
8HttpAddFragmentToCache
9HttpAddUrl
10HttpAddUrlToConfigGroup
11HttpCreateAppPool
12HttpCreateConfigGroup
13HttpCreateFilter
14HttpAddUrlToUrlGroup
15HttpCancelHttpRequest
16HttpCloseRequestQueue
17HttpCloseServerSession
18HttpCloseUrlGroup
19HttpControlService
20HttpCreateHttpHandle
21HttpCreateRequestQueue
22HttpCreateServerSession
23HttpCreateUrlGroup
24HttpDeleteConfigGroup
25HttpDeleteServiceConfiguration
26HttpFilterAccept
27HttpFilterAppRead
28HttpFilterAppWrite
29HttpFilterAppWriteAndRawRead
30HttpFilterClose
31HttpFilterRawRead
32HttpFilterRawWrite
33HttpFilterRawWriteAndAppRead
34HttpFlushResponseCache
35HttpGetCounters
36HttpInitialize
37HttpOpenAppPool
38HttpOpenControlChannel
39HttpOpenFilter
40HttpQueryAppPoolInformation
41HttpQueryConfigGroupInformation
42HttpQueryControlChannelInformation
43HttpQueryRequestQueueProperty
44HttpQueryServerSessionProperty
45HttpQueryServiceConfiguration
46HttpQueryUrlGroupProperty
47HttpReadFragmentFromCache
48HttpReceiveClientCertificate
49HttpReceiveHttpRequest
50HttpReceiveRequestEntityBody
51HttpRemoveAllUrlsFromConfigGroup
52HttpRemoveUrl
53HttpRemoveUrlFromConfigGroup
54HttpRemoveUrlFromUrlGroup
55HttpSendHttpResponse
56HttpSendResponseEntityBody
57HttpSetAppPoolInformation
58HttpSetConfigGroupInformation
59HttpSetControlChannelInformation
60HttpSetAppPoolInformation
61HttpSetConfigGroupInformation
62HttpSetControlChannelInformation
63HttpSetRequestQueueProperty
64HttpSetServerSessionProperty
65HttpSetServiceConfiguration
66HttpShutdownAppPool
67HttpShutdownFilter
68HttpSetUrlGroupProperty
69HttpShutdownRequestQueue
70HttpTerminate
71HttpWaitForDemandStart
72HttpWaitForDisconnect
73HttpWaitForDisconnectEx
lib/libc/mingw/lib64/iscsidsc.def created+79
...@@ -0,0 +1,79 @@
1;
2; Definition file of ISCSIDSC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "ISCSIDSC.dll"
7EXPORTS
8AddISNSServerA
9AddISNSServerW
10AddIScsiConnectionA
11AddIScsiConnectionW
12AddIScsiSendTargetPortalA
13AddIScsiSendTargetPortalW
14AddIScsiStaticTargetA
15AddIScsiStaticTargetW
16AddPersistentIScsiDeviceA
17AddPersistentIScsiDeviceW
18ClearPersistentIScsiDevices
19;DllMain
20GetDevicesForIScsiSessionA
21GetDevicesForIScsiSessionW
22GetIScsiIKEInfoA
23GetIScsiIKEInfoW
24GetIScsiInitiatorNodeNameA
25GetIScsiInitiatorNodeNameW
26GetIScsiSessionListA
27GetIScsiSessionListW
28GetIScsiTargetInformationA
29GetIScsiTargetInformationW
30GetIScsiVersionInformation
31LoginIScsiTargetA
32LoginIScsiTargetW
33LogoutIScsiTarget
34RefreshISNSServerA
35RefreshISNSServerW
36RefreshIScsiSendTargetPortalA
37RefreshIScsiSendTargetPortalW
38RemoveISNSServerA
39RemoveISNSServerW
40RemoveIScsiConnection
41RemoveIScsiPersistentTargetA
42RemoveIScsiPersistentTargetW
43RemoveIScsiSendTargetPortalA
44RemoveIScsiSendTargetPortalW
45RemoveIScsiStaticTargetA
46RemoveIScsiStaticTargetW
47RemovePersistentIScsiDeviceA
48RemovePersistentIScsiDeviceW
49ReportActiveIScsiTargetMappingsA
50ReportActiveIScsiTargetMappingsW
51ReportISNSServerListA
52ReportISNSServerListW
53ReportIScsiInitiatorListA
54ReportIScsiInitiatorListW
55ReportIScsiPersistentLoginsA
56ReportIScsiPersistentLoginsW
57ReportIScsiSendTargetPortalsA
58ReportIScsiSendTargetPortalsExA
59ReportIScsiSendTargetPortalsExW
60ReportIScsiSendTargetPortalsW
61ReportIScsiTargetPortalsA
62ReportIScsiTargetPortalsW
63ReportIScsiTargetsA
64ReportIScsiTargetsW
65ReportPersistentIScsiDevicesA
66ReportPersistentIScsiDevicesW
67SendScsiInquiry
68SendScsiReadCapacity
69SendScsiReportLuns
70SetIScsiGroupPresharedKey
71SetIScsiIKEInfoA
72SetIScsiIKEInfoW
73SetIScsiInitiatorCHAPSharedSecret
74SetIScsiInitiatorNodeNameA
75SetIScsiInitiatorNodeNameW
76SetIScsiTunnelModeOuterAddressA
77SetIScsiTunnelModeOuterAddressW
78SetupPersistentIScsiDevices
79SetupPersistentIScsiVolumes
lib/libc/mingw/lib64/mprapi.def created+140
...@@ -0,0 +1,140 @@
1;
2; Definition file of MPRAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "MPRAPI.dll"
7EXPORTS
8CompressPhoneNumber
9MprAdminBufferFree
10MprAdminConnectionClearStats
11MprAdminConnectionEnum
12MprAdminConnectionGetInfo
13MprAdminConnectionRemoveQuarantine
14MprAdminDeregisterConnectionNotification
15MprAdminDeviceEnum
16MprAdminEstablishDomainRasServer
17MprAdminGetErrorString
18MprAdminGetPDCServer
19MprAdminInterfaceConnect
20MprAdminInterfaceCreate
21MprAdminInterfaceDelete
22MprAdminInterfaceDeviceGetInfo
23MprAdminInterfaceDeviceSetInfo
24MprAdminInterfaceDisconnect
25MprAdminInterfaceEnum
26MprAdminInterfaceGetCredentials
27MprAdminInterfaceGetCredentialsEx
28MprAdminInterfaceGetHandle
29MprAdminInterfaceGetInfo
30MprAdminInterfaceQueryUpdateResult
31MprAdminInterfaceSetCredentials
32MprAdminInterfaceSetCredentialsEx
33MprAdminInterfaceSetInfo
34MprAdminInterfaceTransportAdd
35MprAdminInterfaceTransportGetInfo
36MprAdminInterfaceTransportRemove
37MprAdminInterfaceTransportSetInfo
38MprAdminInterfaceUpdatePhonebookInfo
39MprAdminInterfaceUpdateRoutes
40MprAdminIsDomainRasServer
41MprAdminIsServiceRunning
42MprAdminMIBBufferFree
43MprAdminMIBEntryCreate
44MprAdminMIBEntryDelete
45MprAdminMIBEntryGet
46MprAdminMIBEntryGetFirst
47MprAdminMIBEntryGetNext
48MprAdminMIBEntrySet
49MprAdminMIBServerConnect
50MprAdminMIBServerDisconnect
51MprAdminPortClearStats
52MprAdminPortDisconnect
53MprAdminPortEnum
54MprAdminPortGetInfo
55MprAdminPortReset
56MprAdminRegisterConnectionNotification
57MprAdminSendUserMessage
58MprAdminServerConnect
59MprAdminServerDisconnect
60MprAdminServerGetCredentials
61MprAdminServerGetInfo
62MprAdminServerSetCredentials
63MprAdminServerSetInfo
64MprAdminTransportCreate
65MprAdminTransportGetInfo
66MprAdminTransportSetInfo
67MprAdminUpgradeUsers
68MprAdminUserClose
69MprAdminUserGetInfo
70MprAdminUserOpen
71MprAdminUserRead
72MprAdminUserReadProfFlags
73MprAdminUserServerConnect
74MprAdminUserServerDisconnect
75MprAdminUserSetInfo
76MprAdminUserWrite
77MprAdminUserWriteProfFlags
78MprConfigBufferFree
79MprConfigFilterGetInfo
80MprConfigFilterSetInfo
81MprConfigGetFriendlyName
82MprConfigGetGuidName
83MprConfigInterfaceCreate
84MprConfigInterfaceDelete
85MprConfigInterfaceEnum
86MprConfigInterfaceGetHandle
87MprConfigInterfaceGetInfo
88MprConfigInterfaceSetInfo
89MprConfigInterfaceTransportAdd
90MprConfigInterfaceTransportEnum
91MprConfigInterfaceTransportGetHandle
92MprConfigInterfaceTransportGetInfo
93MprConfigInterfaceTransportRemove
94MprConfigInterfaceTransportSetInfo
95MprConfigServerBackup
96MprConfigServerConnect
97MprConfigServerDisconnect
98MprConfigServerGetInfo
99MprConfigServerInstall
100MprConfigServerRefresh
101MprConfigServerRestore
102MprConfigServerSetInfo
103MprConfigTransportCreate
104MprConfigTransportDelete
105MprConfigTransportEnum
106MprConfigTransportGetHandle
107MprConfigTransportGetInfo
108MprConfigTransportSetInfo
109MprDomainQueryAccess
110MprDomainQueryRasServer
111MprDomainRegisterRasServer
112MprDomainSetAccess
113MprGetUsrParams
114MprInfoBlockAdd
115MprInfoBlockFind
116MprInfoBlockQuerySize
117MprInfoBlockRemove
118MprInfoBlockSet
119MprInfoCreate
120MprInfoDelete
121MprInfoDuplicate
122MprInfoRemoveAll
123MprPortSetUsage
124RasAdminBufferFree
125RasAdminConnectionClearStats
126RasAdminConnectionEnum
127RasAdminConnectionGetInfo
128RasAdminGetErrorString
129RasAdminGetPDCServer
130RasAdminIsServiceRunning
131RasAdminPortClearStats
132RasAdminPortDisconnect
133RasAdminPortEnum
134RasAdminPortGetInfo
135RasAdminPortReset
136RasAdminServerConnect
137RasAdminServerDisconnect
138RasAdminUserGetInfo
139RasAdminUserSetInfo
140RasPrivilegeAndCallBackNumber
lib/libc/mingw/lib64/mscms.def created+100
...@@ -0,0 +1,100 @@
1;
2; Definition file of mscms.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "mscms.dll"
7EXPORTS
8AssociateColorProfileWithDeviceA
9AssociateColorProfileWithDeviceW
10CheckBitmapBits
11CheckColors
12CloseColorProfile
13ColorCplGetDefaultProfileScope
14ColorCplGetDefaultRenderingIntentScope
15ColorCplGetProfileProperties
16ColorCplHasSystemWideAssociationListChanged
17ColorCplInitialize
18ColorCplLoadAssociationList
19ColorCplMergeAssociationLists
20ColorCplOverwritePerUserAssociationList
21ColorCplReleaseProfileProperties
22ColorCplResetSystemWideAssociationListChangedWarning
23ColorCplSaveAssociationList
24ColorCplSetUsePerUserProfiles
25ColorCplUninitialize
26ConvertColorNameToIndex
27ConvertIndexToColorName
28CreateColorTransformA
29CreateColorTransformW
30CreateDeviceLinkProfile
31CreateMultiProfileTransform
32CreateProfileFromLogColorSpaceA
33CreateProfileFromLogColorSpaceW
34DeleteColorTransform
35DeviceRenameEvent
36DisassociateColorProfileFromDeviceA
37DisassociateColorProfileFromDeviceW
38EnumColorProfilesA
39EnumColorProfilesW
40GenerateCopyFilePaths
41GetCMMInfo
42GetColorDirectoryA
43GetColorDirectoryW
44GetColorProfileElement
45GetColorProfileElementTag
46GetColorProfileFromHandle
47GetColorProfileHeader
48GetCountColorProfileElements
49GetNamedProfileInfo
50GetPS2ColorRenderingDictionary
51GetPS2ColorRenderingIntent
52GetPS2ColorSpaceArray
53GetStandardColorSpaceProfileA
54GetStandardColorSpaceProfileW
55InstallColorProfileA
56InstallColorProfileW
57InternalGetDeviceConfig
58InternalGetPS2CSAFromLCS
59InternalGetPS2ColorRenderingDictionary
60InternalGetPS2ColorSpaceArray
61InternalGetPS2PreviewCRD
62InternalSetDeviceConfig
63IsColorProfileTagPresent
64IsColorProfileValid
65OpenColorProfileA
66OpenColorProfileW
67RegisterCMMA
68RegisterCMMW
69SelectCMM
70SetColorProfileElement
71SetColorProfileElementReference
72SetColorProfileElementSize
73SetColorProfileHeader
74SetStandardColorSpaceProfileA
75SetStandardColorSpaceProfileW
76SpoolerCopyFileEvent
77TranslateBitmapBits
78TranslateColors
79UninstallColorProfileA
80UninstallColorProfileW
81UnregisterCMMA
82UnregisterCMMW
83WcsAssociateColorProfileWithDevice
84WcsCheckColors
85WcsCreateIccProfile
86WcsDisassociateColorProfileFromDevice
87WcsEnumColorProfiles
88WcsEnumColorProfilesSize
89WcsGetDefaultColorProfile
90WcsGetDefaultColorProfileSize
91WcsGetDefaultRenderingIntent
92WcsGetUsePerUserProfiles
93WcsGpCanInstallOrUninstallProfiles
94WcsGpCanModifyDeviceAssociationList
95WcsOpenColorProfileA
96WcsOpenColorProfileW
97WcsSetDefaultColorProfile
98WcsSetDefaultRenderingIntent
99WcsSetUsePerUserProfiles
100WcsTranslateColors
lib/libc/mingw/lib64/msctfmonitor.def created+89
...@@ -0,0 +1,89 @@
1;
2; Definition file of MSCTF.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "MSCTF.dll"
7EXPORTS
8TF_GetLangDescriptionFromHKL
9TF_GetLangIcon
10TF_GetLangIconFromHKL
11TF_RunInputCPL
12CtfImeAssociateFocus
13CtfImeConfigure
14CtfImeConversionList
15CtfImeCreateInputContext
16CtfImeCreateThreadMgr
17CtfImeDestroy
18CtfImeDestroyInputContext
19CtfImeDestroyThreadMgr
20CtfImeDispatchDefImeMessage
21CtfImeEnumRegisterWord
22CtfImeEscape
23CtfImeEscapeEx
24CtfImeGetGuidAtom
25CtfImeGetRegisterWordStyle
26CtfImeInquire
27CtfImeInquireExW
28CtfImeIsGuidMapEnable
29CtfImeIsIME
30CtfImeProcessCicHotkey
31CtfImeProcessKey
32CtfImeRegisterWord
33CtfImeSelect
34CtfImeSelectEx
35CtfImeSetActiveContext
36CtfImeSetCompositionString
37CtfImeSetFocus
38CtfImeToAsciiEx
39CtfImeUnregisterWord
40CtfNotifyIME
41DllCanUnloadNow
42DllGetClassObject
43DllRegisterServer
44DllUnregisterServer
45SetInputScope
46SetInputScopeXML
47SetInputScopes
48SetInputScopes2
49TF_AttachThreadInput
50TF_CUASAppFix
51TF_CanUninitialize
52TF_CheckThreadInputIdle
53TF_CleanUpPrivateMessages
54TF_ClearLangBarAddIns
55TF_CreateCategoryMgr
56TF_CreateCicLoadMutex
57TF_CreateCicLoadWinStaMutex
58TF_CreateDisplayAttributeMgr
59TF_CreateInputProcessorProfiles
60TF_CreateLangBarItemMgr
61TF_CreateLangBarMgr
62TF_CreateThreadMgr
63TF_DllDetachInOther
64TF_GetAppCompatFlags
65TF_GetCompatibleKeyboardLayout
66TF_GetGlobalCompartment
67TF_GetInitSystemFlags
68TF_GetInputScope
69TF_GetShowFloatingStatus
70TF_GetThreadFlags
71TF_GetThreadMgr
72TF_InitSystem
73TF_InvalidAssemblyListCache
74TF_InvalidAssemblyListCacheIfExist
75TF_IsCtfmonRunning
76TF_IsFullScreenWindowActivated
77TF_IsThreadWithFlags
78TF_MapCompatibleHKL
79TF_MapCompatibleKeyboardTip
80TF_Notify
81TF_PostAllThreadMsg
82TF_RegisterLangBarAddIn
83TF_SendLangBandMsg
84TF_SetDefaultRemoteKeyboardLayout
85TF_SetShowFloatingStatus
86TF_SetThreadFlags
87TF_UninitSystem
88TF_UnregisterLangBarAddIn
89TF_WaitForInitialized
lib/libc/mingw/lib64/msvfw32.def created+55
...@@ -0,0 +1,55 @@
1;
2; Exports of file MSVFW32.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY MSVFW32.dll
8EXPORTS
9VideoForWindowsVersion
10DrawDibBegin
11DrawDibChangePalette
12DrawDibClose
13DrawDibDraw
14DrawDibEnd
15DrawDibGetBuffer
16DrawDibGetPalette
17DrawDibOpen
18DrawDibProfileDisplay
19DrawDibRealize
20DrawDibSetPalette
21DrawDibStart
22DrawDibStop
23DrawDibTime
24GetOpenFileNamePreview
25GetOpenFileNamePreviewA
26GetOpenFileNamePreviewW
27GetSaveFileNamePreviewA
28GetSaveFileNamePreviewW
29ICClose
30ICCompress
31ICCompressorChoose
32ICCompressorFree
33ICDecompress
34ICDraw
35ICDrawBegin
36ICGetDisplayFormat
37ICGetInfo
38ICImageCompress
39ICImageDecompress
40ICInfo
41ICInstall
42ICLocate
43ICMThunk32
44ICOpen
45ICOpenFunction
46ICRemove
47ICSendMessage
48ICSeqCompressFrame
49ICSeqCompressFrameEnd
50ICSeqCompressFrameStart
51MCIWndCreate
52MCIWndCreateA
53MCIWndCreateW
54MCIWndRegisterClass
55StretchDIB
lib/libc/mingw/lib64/newdev.def created+20
...@@ -0,0 +1,20 @@
1;
2; Exports of file newdev.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY newdev.dll
8EXPORTS
9ClientSideInstallW
10DevInstallW
11InstallDevInst
12InstallDevInstEx
13InstallNewDevice
14InstallSelectedDevice
15InstallSelectedDriver
16InstallWindowsUpdateDriver
17RollbackDriver
18UpdateDriverForPlugAndPlayDevicesA
19UpdateDriverForPlugAndPlayDevicesW
20WindowsUpdateDriverSearchingPolicyUi
lib/libc/mingw/lib64/ntlanman.def created+39
...@@ -0,0 +1,39 @@
1;
2; Exports of file NTLANMAN.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY NTLANMAN.dll
8EXPORTS
9NPGetConnection
10NPGetCaps
11DllMain
12I_SystemFocusDialog
13NPGetUser
14NPAddConnection
15NPCancelConnection
16IsDfsPathEx
17NPAddConnection3ForCSCAgent
18NPCancelConnectionForCSCAgent
19ServerBrowseDialogA0
20ShareAsDialogA0
21ShareCreate
22ShareManage
23ShareStop
24StopShareDialogA0
25NPPropertyDialog
26NPGetDirectoryType
27NPDirectoryNotify
28NPGetPropertyText
29NPOpenEnum
30NPEnumResource
31NPCloseEnum
32NPFormatNetworkName
33NPAddConnection3
34NPGetUniversalName
35NPGetResourceParent
36NPGetConnectionPerformance
37NPGetResourceInformation
38NPGetReconnectFlags
39NPGetConnection3
lib/libc/mingw/lib64/pdh.def created+173
...@@ -0,0 +1,173 @@
1;
2; Definition file of pdh.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "pdh.dll"
7EXPORTS
8PdhPlaGetLogFileNameA
9DllInstall
10PdhAdd009CounterA
11PdhAdd009CounterW
12PdhAddCounterA
13PdhAddCounterW
14PdhAddEnglishCounterA
15PdhAddEnglishCounterW
16PdhBindInputDataSourceA
17PdhBindInputDataSourceW
18PdhBrowseCountersA
19PdhBrowseCountersHA
20PdhBrowseCountersHW
21PdhBrowseCountersW
22PdhCalculateCounterFromRawValue
23PdhCloseLog
24PdhCloseQuery
25PdhCollectQueryData
26PdhCollectQueryDataEx
27PdhCollectQueryDataWithTime
28PdhComputeCounterStatistics
29PdhConnectMachineA
30PdhConnectMachineW
31PdhCreateSQLTablesA
32PdhCreateSQLTablesW
33PdhEnumLogSetNamesA
34PdhEnumLogSetNamesW
35PdhEnumMachinesA
36PdhEnumMachinesHA
37PdhEnumMachinesHW
38PdhEnumMachinesW
39PdhEnumObjectItemsA
40PdhEnumObjectItemsHA
41PdhEnumObjectItemsHW
42PdhEnumObjectItemsW
43PdhEnumObjectsA
44PdhEnumObjectsHA
45PdhEnumObjectsHW
46PdhEnumObjectsW
47PdhExpandCounterPathA
48PdhExpandCounterPathW
49PdhExpandWildCardPathA
50PdhExpandWildCardPathHA
51PdhExpandWildCardPathHW
52PdhExpandWildCardPathW
53PdhFormatFromRawValue
54PdhGetCounterInfoA
55PdhGetCounterInfoW
56PdhGetCounterTimeBase
57PdhGetDataSourceTimeRangeA
58PdhGetDataSourceTimeRangeH
59PdhGetDataSourceTimeRangeW
60PdhGetDefaultPerfCounterA
61PdhGetDefaultPerfCounterHA
62PdhGetDefaultPerfCounterHW
63PdhGetDefaultPerfCounterW
64PdhGetDefaultPerfObjectA
65PdhGetDefaultPerfObjectHA
66PdhGetDefaultPerfObjectHW
67PdhGetDefaultPerfObjectW
68PdhGetDllVersion
69PdhGetExplainText
70PdhGetFormattedCounterArrayA
71PdhGetFormattedCounterArrayW
72PdhGetFormattedCounterValue
73PdhGetLogFileSize
74PdhGetLogFileTypeA
75PdhGetLogFileTypeW
76PdhGetLogSetGUID
77PdhGetRawCounterArrayA
78PdhGetRawCounterArrayW
79PdhGetRawCounterValue
80PdhIsRealTimeQuery
81PdhListLogFileHeaderA
82PdhListLogFileHeaderW
83PdhLookupPerfIndexByNameA
84PdhLookupPerfIndexByNameW
85PdhLookupPerfNameByIndexA
86PdhLookupPerfNameByIndexW
87PdhMakeCounterPathA
88PdhMakeCounterPathW
89PdhOpenLogA
90PdhOpenLogW
91PdhOpenQuery
92PdhOpenQueryA
93PdhOpenQueryH
94PdhOpenQueryW
95PdhParseCounterPathA
96PdhParseCounterPathW
97PdhParseInstanceNameA
98PdhParseInstanceNameW
99PdhPlaAddItemA
100PdhPlaAddItemW
101PdhPlaCreateA
102PdhPlaCreateW
103PdhPlaDeleteA
104PdhPlaDeleteW
105PdhPlaDowngradeW
106PdhPlaEnumCollectionsA
107PdhPlaEnumCollectionsW
108PdhPlaGetInfoA
109PdhPlaGetInfoW
110PdhPlaGetLogFileNameW
111PdhPlaGetScheduleA
112PdhPlaGetScheduleW
113PdhPlaRemoveAllItemsA
114PdhPlaRemoveAllItemsW
115PdhPlaScheduleA
116PdhPlaScheduleW
117PdhPlaSetInfoA
118PdhPlaSetInfoW
119PdhPlaSetItemListA
120PdhPlaSetItemListW
121PdhPlaSetRunAsA
122PdhPlaSetRunAsW
123PdhPlaStartA
124PdhPlaStartW
125PdhPlaStopA
126PdhPlaStopW
127PdhPlaUpgradeW
128PdhPlaValidateInfoA
129PdhPlaValidateInfoW
130PdhReadRawLogRecord
131PdhRelogA
132PdhRelogW
133PdhRemoveCounter
134PdhSelectDataSourceA
135PdhSelectDataSourceW
136PdhSetCounterScaleFactor
137PdhSetDefaultRealTimeDataSource
138PdhSetLogSetRunID
139PdhSetQueryTimeRange
140PdhTranslate009CounterA
141PdhTranslate009CounterW
142PdhTranslateLocaleCounterA
143PdhTranslateLocaleCounterW
144PdhUpdateLogA
145PdhUpdateLogFileCatalog
146PdhUpdateLogW
147PdhValidatePathA
148PdhValidatePathExA
149PdhValidatePathExW
150PdhValidatePathW
151PdhVbAddCounter
152PdhVbCreateCounterPathList
153PdhVbGetCounterPathElements
154PdhVbGetCounterPathFromList
155PdhVbGetDoubleCounterValue
156PdhVbGetLogFileSize
157PdhVbGetOneCounterPath
158PdhVbIsGoodStatus
159PdhVbOpenLog
160PdhVbOpenQuery
161PdhVbUpdateLog
162PdhVerifySQLDBA
163PdhVerifySQLDBW
164PdhiPla2003SP1Installed
165PdhiPlaDowngrade
166PdhiPlaFormatBlanksA
167PdhiPlaFormatBlanksW
168PdhiPlaGetVersion
169PdhiPlaRunAs
170PdhiPlaSetRunAs
171PdhiPlaUpgrade
172PlaTimeInfoToMilliSeconds
173PdhpGetLoggerName
lib/libc/mingw/lib64/quartz.def created+17
...@@ -0,0 +1,17 @@
1;
2; Exports of file QUARTZ.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY QUARTZ.dll
8EXPORTS
9AMGetErrorTextA
10AMGetErrorTextW
11AmpFactorToDB
12DBToAmpFactor
13DllCanUnloadNow
14DllGetClassObject
15DllRegisterServer
16DllUnregisterServer
17GetProxyDllInfo
lib/libc/mingw/lib64/query.def created+1447
...@@ -0,0 +1,1447 @@
1;
2; Exports of file query.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY query.dll
8EXPORTS
9; class CCoTaskAllocator CoTaskAllocator
10?CoTaskAllocator@@3VCCoTaskAllocator@@A DATA
11; public: __cdecl CAllocStorageVariant::CAllocStorageVariant(struct tagPROPVARIANT & __ptr64,class PMemoryAllocator & __ptr64) __ptr64
12??0CAllocStorageVariant@@QEAA@AEAUtagPROPVARIANT@@AEAVPMemoryAllocator@@@Z
13; public: __cdecl CAllocStorageVariant::CAllocStorageVariant(class PDeSerStream & __ptr64,class PMemoryAllocator & __ptr64) __ptr64
14??0CAllocStorageVariant@@QEAA@AEAVPDeSerStream@@AEAVPMemoryAllocator@@@Z
15; public: __cdecl CAllocStorageVariant::CAllocStorageVariant(char const * __ptr64,class PMemoryAllocator & __ptr64) __ptr64
16??0CAllocStorageVariant@@QEAA@PEBDAEAVPMemoryAllocator@@@Z
17; public: __cdecl CAllocStorageVariant::CAllocStorageVariant(unsigned short const * __ptr64,class PMemoryAllocator & __ptr64) __ptr64
18??0CAllocStorageVariant@@QEAA@PEBGAEAVPMemoryAllocator@@@Z
19; public: __cdecl CAllocStorageVariant::CAllocStorageVariant(struct _GUID const * __ptr64,class PMemoryAllocator & __ptr64) __ptr64
20??0CAllocStorageVariant@@QEAA@PEBU_GUID@@AEAVPMemoryAllocator@@@Z
21; public: __cdecl CAllocStorageVariant::CAllocStorageVariant(enum VARENUM,unsigned long,class PMemoryAllocator & __ptr64) __ptr64
22??0CAllocStorageVariant@@QEAA@W4VARENUM@@KAEAVPMemoryAllocator@@@Z
23; public: __cdecl CCatState::CCatState(void) __ptr64
24??0CCatState@@QEAA@XZ
25; public: __cdecl CCategorizationSet::CCategorizationSet(class CCategorizationSet const & __ptr64) __ptr64
26??0CCategorizationSet@@QEAA@AEBV0@@Z
27; public: __cdecl CCategorizationSet::CCategorizationSet(unsigned int) __ptr64
28??0CCategorizationSet@@QEAA@I@Z
29; public: __cdecl CCiAdminParams::CCiAdminParams(class CLangList * __ptr64) __ptr64
30??0CCiAdminParams@@QEAA@PEAVCLangList@@@Z
31; public: __cdecl CCiRegParams::CCiRegParams(unsigned short const * __ptr64) __ptr64
32??0CCiRegParams@@QEAA@PEBG@Z
33; public: __cdecl CColumnSet::CColumnSet(unsigned int) __ptr64
34??0CColumnSet@@QEAA@I@Z
35; public: __cdecl CColumns::CColumns(class CColumns const & __ptr64) __ptr64
36??0CColumns@@QEAA@AEBV0@@Z
37; public: __cdecl CColumns::CColumns(unsigned int) __ptr64
38??0CColumns@@QEAA@I@Z
39; public: __cdecl CContentRestriction::CContentRestriction(unsigned short const * __ptr64,class CFullPropSpec const & __ptr64,unsigned long,unsigned long) __ptr64
40??0CContentRestriction@@QEAA@PEBGAEBVCFullPropSpec@@KK@Z
41; public: __cdecl CDFA::CDFA(unsigned short const * __ptr64,class CTimeLimit & __ptr64,unsigned char) __ptr64
42??0CDFA@@QEAA@PEBGAEAVCTimeLimit@@E@Z
43; public: __cdecl CDbColId::CDbColId(struct _GUID const & __ptr64,unsigned short const * __ptr64) __ptr64
44??0CDbColId@@QEAA@AEBU_GUID@@PEBG@Z
45; public: __cdecl CDbColId::CDbColId(struct tagDBID const & __ptr64) __ptr64
46??0CDbColId@@QEAA@AEBUtagDBID@@@Z
47; public: __cdecl CDbColId::CDbColId(class CDbColId const & __ptr64) __ptr64
48??0CDbColId@@QEAA@AEBV0@@Z
49; public: __cdecl CDbColId::CDbColId(void) __ptr64
50??0CDbColId@@QEAA@XZ
51; public: __cdecl CDbColumns::CDbColumns(unsigned int) __ptr64
52??0CDbColumns@@QEAA@I@Z
53; public: __cdecl CDbContentRestriction::CDbContentRestriction(unsigned short const * __ptr64,struct tagDBID const & __ptr64,unsigned long,unsigned long) __ptr64
54??0CDbContentRestriction@@QEAA@PEBGAEBUtagDBID@@KK@Z
55; public: __cdecl CDbContentRestriction::CDbContentRestriction(unsigned short const * __ptr64,class CDbColumnNode const & __ptr64,unsigned long,unsigned long) __ptr64
56??0CDbContentRestriction@@QEAA@PEBGAEBVCDbColumnNode@@KK@Z
57; public: __cdecl CDbNatLangRestriction::CDbNatLangRestriction(unsigned short const * __ptr64,struct tagDBID const & __ptr64,unsigned long) __ptr64
58??0CDbNatLangRestriction@@QEAA@PEBGAEBUtagDBID@@K@Z
59; public: __cdecl CDbNatLangRestriction::CDbNatLangRestriction(unsigned short const * __ptr64,class CDbColumnNode const & __ptr64,unsigned long) __ptr64
60??0CDbNatLangRestriction@@QEAA@PEBGAEBVCDbColumnNode@@K@Z
61; public: __cdecl CDbQueryResults::CDbQueryResults(void) __ptr64
62??0CDbQueryResults@@QEAA@XZ
63; public: __cdecl CDbSelectNode::CDbSelectNode(void) __ptr64
64??0CDbSelectNode@@QEAA@XZ
65; public: __cdecl CDbSortSet::CDbSortSet(unsigned int) __ptr64
66??0CDbSortSet@@QEAA@I@Z
67; public: __cdecl CDefColumnRegEntry::CDefColumnRegEntry(void) __ptr64
68??0CDefColumnRegEntry@@QEAA@XZ
69; public: __cdecl CDriveInfo::CDriveInfo(unsigned short const * __ptr64,unsigned long) __ptr64
70??0CDriveInfo@@QEAA@PEBGK@Z
71; public: __cdecl CDynStream::CDynStream(class PMmStream * __ptr64) __ptr64
72??0CDynStream@@QEAA@PEAVPMmStream@@@Z
73; public: __cdecl CEventItem::CEventItem(unsigned short,unsigned short,unsigned long,unsigned short,unsigned long,void const * __ptr64) __ptr64
74??0CEventItem@@QEAA@GGKGKPEBX@Z
75; public: __cdecl CEventLog::CEventLog(unsigned short const * __ptr64,unsigned short const * __ptr64) __ptr64
76??0CEventLog@@QEAA@PEBG0@Z
77; public: __cdecl CException::CException(long) __ptr64
78??0CException@@QEAA@J@Z
79; public: __cdecl CException::CException(void) __ptr64
80??0CException@@QEAA@XZ
81; public: __cdecl CFileBuffer::CFileBuffer(class CFileMapView & __ptr64,unsigned int) __ptr64
82??0CFileBuffer@@QEAA@AEAVCFileMapView@@I@Z
83; public: __cdecl CFileMapView::CFileMapView(unsigned short const * __ptr64) __ptr64
84??0CFileMapView@@QEAA@PEBG@Z
85; public: __cdecl CFilterDaemon::CFilterDaemon(class CiProxy & __ptr64,class CCiFrameworkParams & __ptr64,class CLangList & __ptr64,unsigned char * __ptr64,unsigned long,struct ICiCFilterClient * __ptr64) __ptr64
86??0CFilterDaemon@@QEAA@AEAVCiProxy@@AEAVCCiFrameworkParams@@AEAVCLangList@@PEAEKPEAUICiCFilterClient@@@Z
87; public: __cdecl CFullPath::CFullPath(unsigned short const * __ptr64) __ptr64
88??0CFullPath@@QEAA@PEBG@Z
89; public: __cdecl CFullPath::CFullPath(unsigned short const * __ptr64,unsigned int) __ptr64
90??0CFullPath@@QEAA@PEBGI@Z
91; public: __cdecl CFullPropSpec::CFullPropSpec(class PDeSerStream & __ptr64) __ptr64
92??0CFullPropSpec@@QEAA@AEAVPDeSerStream@@@Z
93; public: __cdecl CFullPropSpec::CFullPropSpec(class CFullPropSpec const & __ptr64) __ptr64
94??0CFullPropSpec@@QEAA@AEBV0@@Z
95; public: __cdecl CFullPropSpec::CFullPropSpec(void) __ptr64
96??0CFullPropSpec@@QEAA@XZ
97; public: __cdecl CFwAsyncWorkItem::CFwAsyncWorkItem(class CWorkManager & __ptr64,class CWorkQueue & __ptr64) __ptr64
98??0CFwAsyncWorkItem@@QEAA@AEAVCWorkManager@@AEAVCWorkQueue@@@Z
99; public: __cdecl CFwEventItem::CFwEventItem(unsigned short,unsigned long,unsigned short,unsigned long,void * __ptr64) __ptr64
100??0CFwEventItem@@QEAA@GKGKPEAX@Z
101; public: __cdecl CGenericCiProxy::CGenericCiProxy(class CSharedNameGen & __ptr64,unsigned long,unsigned long) __ptr64
102??0CGenericCiProxy@@QEAA@AEAVCSharedNameGen@@KK@Z
103; public: __cdecl CGetDbProps::CGetDbProps(void) __ptr64
104??0CGetDbProps@@QEAA@XZ
105; public: __cdecl CImpersonateRemoteAccess::CImpersonateRemoteAccess(class CImpersonationTokenCache * __ptr64) __ptr64
106??0CImpersonateRemoteAccess@@QEAA@PEAVCImpersonationTokenCache@@@Z
107; public: __cdecl CImpersonationTokenCache::CImpersonationTokenCache(unsigned short const * __ptr64) __ptr64
108??0CImpersonationTokenCache@@QEAA@PEBG@Z
109; public: __cdecl CIndexTable::CIndexTable(class CiStorage & __ptr64,class CTransaction & __ptr64) __ptr64
110??0CIndexTable@@QEAA@AEAVCiStorage@@AEAVCTransaction@@@Z
111; public: __cdecl CInternalPropertyRestriction::CInternalPropertyRestriction(unsigned long,unsigned long,class CStorageVariant const & __ptr64,class CRestriction * __ptr64) __ptr64
112??0CInternalPropertyRestriction@@QEAA@KKAEBVCStorageVariant@@PEAVCRestriction@@@Z
113; public: __cdecl CKeyArray::CKeyArray(int,int) __ptr64
114??0CKeyArray@@QEAA@HH@Z
115; public: __cdecl CLangList::CLangList(struct ICiCLangRes * __ptr64,unsigned long) __ptr64
116??0CLangList@@QEAA@PEAUICiCLangRes@@K@Z
117; public: __cdecl CLocalGlobalPropertyList::CLocalGlobalPropertyList(unsigned long) __ptr64
118??0CLocalGlobalPropertyList@@QEAA@K@Z
119; public: __cdecl CLocalGlobalPropertyList::CLocalGlobalPropertyList(class CEmptyPropertyList * __ptr64,int,unsigned short const * __ptr64,unsigned long) __ptr64
120??0CLocalGlobalPropertyList@@QEAA@PEAVCEmptyPropertyList@@HPEBGK@Z
121; public: __cdecl CMachineAdmin::CMachineAdmin(unsigned short const * __ptr64,int) __ptr64
122??0CMachineAdmin@@QEAA@PEBGH@Z
123; public: __cdecl CMemSerStream::CMemSerStream(unsigned int) __ptr64
124??0CMemSerStream@@QEAA@I@Z
125; public: __cdecl CMemSerStream::CMemSerStream(unsigned char * __ptr64,unsigned long) __ptr64
126??0CMemSerStream@@QEAA@PEAEK@Z
127; public: __cdecl CMetaDataMgr::CMetaDataMgr(int,enum CiVRootTypeEnum,unsigned long,unsigned short const * __ptr64) __ptr64
128??0CMetaDataMgr@@QEAA@HW4CiVRootTypeEnum@@KPEBG@Z
129; public: __cdecl CMmStream::CMmStream(unsigned long,int) __ptr64
130??0CMmStream@@QEAA@KH@Z
131; public: __cdecl CMmStreamConsecBuf::CMmStreamConsecBuf(void) __ptr64
132??0CMmStreamConsecBuf@@QEAA@XZ
133; public: __cdecl CNatLanguageRestriction::CNatLanguageRestriction(unsigned short const * __ptr64,class CFullPropSpec const & __ptr64,unsigned long) __ptr64
134??0CNatLanguageRestriction@@QEAA@PEBGAEBVCFullPropSpec@@K@Z
135; public: __cdecl CNodeRestriction::CNodeRestriction(unsigned long,unsigned int) __ptr64
136??0CNodeRestriction@@QEAA@KI@Z
137; public: __cdecl CNormalizer::CNormalizer(class PNoiseList & __ptr64) __ptr64
138??0CNormalizer@@QEAA@AEAVPNoiseList@@@Z
139; public: __cdecl CPathParser::CPathParser(unsigned short const * __ptr64,unsigned long) __ptr64
140??0CPathParser@@QEAA@PEBGK@Z
141; public: __cdecl CPerfMon::CPerfMon(unsigned short const * __ptr64) __ptr64
142??0CPerfMon@@QEAA@PEBG@Z
143; public: __cdecl CPersDeComp::CPersDeComp(class PDirectory & __ptr64,unsigned long,class CPhysIndex & __ptr64,unsigned long,int,int) __ptr64
144??0CPersDeComp@@QEAA@AEAVPDirectory@@KAEAVCPhysIndex@@KHH@Z
145; protected: __cdecl CPhysStorage::CPhysStorage(class PStorage & __ptr64,class PStorageObject & __ptr64,unsigned long,unsigned int,class PMmStream * __ptr64,int,unsigned int,int) __ptr64
146??0CPhysStorage@@IEAA@AEAVPStorage@@AEAVPStorageObject@@KIPEAVPMmStream@@HIH@Z
147; protected: __cdecl CPhysStorage::CPhysStorage(class PStorage & __ptr64,class PStorageObject & __ptr64,unsigned long,class PMmStream * __ptr64,enum CPhysStorage::EOpenMode,int,unsigned int,int) __ptr64
148??0CPhysStorage@@IEAA@AEAVPStorage@@AEAVPStorageObject@@KPEAVPMmStream@@W4EOpenMode@1@HIH@Z
149; public: __cdecl CPidLookupTable::CPidLookupTable(void) __ptr64
150??0CPidLookupTable@@QEAA@XZ
151; public: __cdecl CPidRemapper::CPidRemapper(class XInterface<struct IPropertyMapper> & __ptr64) __ptr64
152??0CPidRemapper@@QEAA@AEAV?$XInterface@UIPropertyMapper@@@@@Z
153; public: __cdecl CPidRemapper::CPidRemapper(class CPidMapper const & __ptr64,class XInterface<struct IPropertyMapper> & __ptr64,class CRestriction * __ptr64,class CColumnSet * __ptr64,class CSortSet * __ptr64) __ptr64
154??0CPidRemapper@@QEAA@AEBVCPidMapper@@AEAV?$XInterface@UIPropertyMapper@@@@PEAVCRestriction@@PEAVCColumnSet@@PEAVCSortSet@@@Z
155; public: __cdecl CPropListFile::CPropListFile(class CEmptyPropertyList * __ptr64,int,unsigned short const * __ptr64,unsigned long) __ptr64
156??0CPropListFile@@QEAA@PEAVCEmptyPropertyList@@HPEBGK@Z
157; public: __cdecl CPropNameArray::CPropNameArray(class PDeSerStream & __ptr64) __ptr64
158??0CPropNameArray@@QEAA@AEAVPDeSerStream@@@Z
159; public: __cdecl CPropNameArray::CPropNameArray(unsigned int) __ptr64
160??0CPropNameArray@@QEAA@I@Z
161; public: __cdecl CPropStoreManager::CPropStoreManager(unsigned long) __ptr64
162??0CPropStoreManager@@QEAA@K@Z
163; public: __cdecl CPropertyRestriction::CPropertyRestriction(unsigned long,class CFullPropSpec const & __ptr64,class CStorageVariant const & __ptr64) __ptr64
164??0CPropertyRestriction@@QEAA@KAEBVCFullPropSpec@@AEBVCStorageVariant@@@Z
165; public: __cdecl CPropertyRestriction::CPropertyRestriction(void) __ptr64
166??0CPropertyRestriction@@QEAA@XZ
167; public: __cdecl CPropertyStoreWids::CPropertyStoreWids(class CPropStoreManager & __ptr64) __ptr64
168??0CPropertyStoreWids@@QEAA@AEAVCPropStoreManager@@@Z
169; public: __cdecl CPropertyValueParser::CPropertyValueParser(class CQueryScanner & __ptr64,unsigned short,unsigned long) __ptr64
170??0CPropertyValueParser@@QEAA@AEAVCQueryScanner@@GK@Z
171; public: __cdecl CQueryScanner::CQueryScanner(unsigned short const * __ptr64,int,unsigned long,int) __ptr64
172??0CQueryScanner@@QEAA@PEBGHKH@Z
173; public: __cdecl CRangeKeyRepository::CRangeKeyRepository(void) __ptr64
174??0CRangeKeyRepository@@QEAA@XZ
175; public: __cdecl CRcovStrmAppendTrans::CRcovStrmAppendTrans(class PRcovStorageObj & __ptr64) __ptr64
176??0CRcovStrmAppendTrans@@QEAA@AEAVPRcovStorageObj@@@Z
177; public: __cdecl CRcovStrmMDTrans::CRcovStrmMDTrans(class PRcovStorageObj & __ptr64,enum CRcovStrmMDTrans::MDOp,unsigned long) __ptr64
178??0CRcovStrmMDTrans@@QEAA@AEAVPRcovStorageObj@@W4MDOp@0@K@Z
179; protected: __cdecl CRcovStrmTrans::CRcovStrmTrans(class PRcovStorageObj & __ptr64,enum RcovOpType) __ptr64
180??0CRcovStrmTrans@@IEAA@AEAVPRcovStorageObj@@W4RcovOpType@@@Z
181; public: __cdecl CRegAccess::CRegAccess(unsigned long,unsigned short const * __ptr64) __ptr64
182??0CRegAccess@@QEAA@KPEBG@Z
183; public: __cdecl CRegChangeEvent::CRegChangeEvent(unsigned short const * __ptr64,int) __ptr64
184??0CRegChangeEvent@@QEAA@PEBGH@Z
185; public: __cdecl CRegNotify::CRegNotify(unsigned short const * __ptr64) __ptr64
186??0CRegNotify@@QEAA@PEBG@Z
187; public: __cdecl CRequestClient::CRequestClient(unsigned short const * __ptr64,struct IDBProperties * __ptr64) __ptr64
188??0CRequestClient@@QEAA@PEBGPEAUIDBProperties@@@Z
189; public: __cdecl CRequestQueue::CRequestQueue(unsigned int,unsigned int,unsigned int,int,unsigned int,unsigned int,struct _GUID const & __ptr64) __ptr64
190??0CRequestQueue@@QEAA@IIIHIIAEBU_GUID@@@Z
191; public: __cdecl CScopeRestriction::CScopeRestriction(unsigned short const * __ptr64,int,int) __ptr64
192??0CScopeRestriction@@QEAA@PEBGHH@Z
193; public: __cdecl CSdidLookupTable::CSdidLookupTable(void) __ptr64
194??0CSdidLookupTable@@QEAA@XZ
195; public: __cdecl CSizeSerStream::CSizeSerStream(void) __ptr64
196??0CSizeSerStream@@QEAA@XZ
197; public: __cdecl CSort::CSort(unsigned int) __ptr64
198??0CSort@@QEAA@I@Z
199; public: __cdecl CSortSet::CSortSet(unsigned int) __ptr64
200??0CSortSet@@QEAA@I@Z
201; public: __cdecl CStandardPropMapper::CStandardPropMapper(void) __ptr64
202??0CStandardPropMapper@@QEAA@XZ
203; public: __cdecl CSvcQuery::CSvcQuery(unsigned short const * __ptr64,struct IDBProperties * __ptr64) __ptr64
204??0CSvcQuery@@QEAA@PEBGPEAUIDBProperties@@@Z
205; public: __cdecl CSynRestriction::CSynRestriction(class CKey const & __ptr64,unsigned long,unsigned long,unsigned long,int) __ptr64
206??0CSynRestriction@@QEAA@AEBVCKey@@KKKH@Z
207; public: __cdecl CTimeLimit::CTimeLimit(unsigned long,unsigned long) __ptr64
208??0CTimeLimit@@QEAA@KK@Z
209; public: __cdecl CTransaction::CTransaction(void) __ptr64
210??0CTransaction@@QEAA@XZ
211; public: __cdecl CUnfilteredRestriction::CUnfilteredRestriction(void) __ptr64
212??0CUnfilteredRestriction@@QEAA@XZ
213; public: __cdecl CValueNormalizer::CValueNormalizer(class PKeyRepository & __ptr64) __ptr64
214??0CValueNormalizer@@QEAA@AEAVPKeyRepository@@@Z
215; public: __cdecl CVirtualString::CVirtualString(unsigned int) __ptr64
216??0CVirtualString@@QEAA@I@Z
217; public: __cdecl CWin32RegAccess::CWin32RegAccess(struct HKEY__ * __ptr64,unsigned short const * __ptr64) __ptr64
218??0CWin32RegAccess@@QEAA@PEAUHKEY__@@PEBG@Z
219; public: __cdecl CWordRestriction::CWordRestriction(class CKeyBuf const & __ptr64,unsigned long,unsigned long,unsigned long,int) __ptr64
220??0CWordRestriction@@QEAA@AEBVCKeyBuf@@KKKH@Z
221; public: __cdecl CWorkQueue::CWorkQueue(unsigned int,enum CWorkQueue::WorkQueueType) __ptr64
222??0CWorkQueue@@QEAA@IW4WorkQueueType@0@@Z
223; public: __cdecl CiStorage::CiStorage(unsigned short const * __ptr64,struct ICiCAdviseStatus & __ptr64,unsigned long,unsigned long,int) __ptr64
224??0CiStorage@@QEAA@PEBGAEAUICiCAdviseStatus@@KKH@Z
225; public: __cdecl SStorageObject::SStorageObject(class PStorageObject * __ptr64) __ptr64
226??0SStorageObject@@QEAA@PEAVPStorageObject@@@Z
227; protected: __cdecl CAllocStorageVariant::~CAllocStorageVariant(void) __ptr64
228??1CAllocStorageVariant@@IEAA@XZ
229; public: __cdecl CCatState::~CCatState(void) __ptr64
230??1CCatState@@QEAA@XZ
231; public: __cdecl CCatalogAdmin::~CCatalogAdmin(void) __ptr64
232??1CCatalogAdmin@@QEAA@XZ
233; public: __cdecl CCatalogEnum::~CCatalogEnum(void) __ptr64
234??1CCatalogEnum@@QEAA@XZ
235; public: __cdecl CColumns::~CColumns(void) __ptr64
236??1CColumns@@QEAA@XZ
237; public: __cdecl CContentRestriction::~CContentRestriction(void) __ptr64
238??1CContentRestriction@@QEAA@XZ
239; public: __cdecl CDFA::~CDFA(void) __ptr64
240??1CDFA@@QEAA@XZ
241; public: __cdecl CDbCmdTreeNode::~CDbCmdTreeNode(void) __ptr64
242??1CDbCmdTreeNode@@QEAA@XZ
243; public: __cdecl CDbColumns::~CDbColumns(void) __ptr64
244??1CDbColumns@@QEAA@XZ
245; public: __cdecl CDbPropSet::~CDbPropSet(void) __ptr64
246??1CDbPropSet@@QEAA@XZ
247; public: __cdecl CDbQueryResults::~CDbQueryResults(void) __ptr64
248??1CDbQueryResults@@QEAA@XZ
249; public: __cdecl CDbSortSet::~CDbSortSet(void) __ptr64
250??1CDbSortSet@@QEAA@XZ
251; public: __cdecl CDynStream::~CDynStream(void) __ptr64
252??1CDynStream@@QEAA@XZ
253; public: __cdecl CEventItem::~CEventItem(void) __ptr64
254??1CEventItem@@QEAA@XZ
255; public: __cdecl CEventLog::~CEventLog(void) __ptr64
256??1CEventLog@@QEAA@XZ
257; public: __cdecl CFileMapView::~CFileMapView(void) __ptr64
258??1CFileMapView@@QEAA@XZ
259; public: __cdecl CFilterDaemon::~CFilterDaemon(void) __ptr64
260??1CFilterDaemon@@QEAA@XZ
261; public: virtual __cdecl CFwAsyncWorkItem::~CFwAsyncWorkItem(void) __ptr64
262??1CFwAsyncWorkItem@@UEAA@XZ
263; public: __cdecl CFwEventItem::~CFwEventItem(void) __ptr64
264??1CFwEventItem@@QEAA@XZ
265; public: virtual __cdecl CGenericCiProxy::~CGenericCiProxy(void) __ptr64
266??1CGenericCiProxy@@UEAA@XZ
267; public: __cdecl CImpersonateClient::~CImpersonateClient(void) __ptr64
268??1CImpersonateClient@@QEAA@XZ
269; public: __cdecl CImpersonateSystem::~CImpersonateSystem(void) __ptr64
270??1CImpersonateSystem@@QEAA@XZ
271; public: __cdecl CImpersonationTokenCache::~CImpersonationTokenCache(void) __ptr64
272??1CImpersonationTokenCache@@QEAA@XZ
273; public: __cdecl CInternalPropertyRestriction::~CInternalPropertyRestriction(void) __ptr64
274??1CInternalPropertyRestriction@@QEAA@XZ
275; public: __cdecl CKeyArray::~CKeyArray(void) __ptr64
276??1CKeyArray@@QEAA@XZ
277; public: __cdecl CLangList::~CLangList(void) __ptr64
278??1CLangList@@QEAA@XZ
279; public: __cdecl CMachineAdmin::~CMachineAdmin(void) __ptr64
280??1CMachineAdmin@@QEAA@XZ
281; public: virtual __cdecl CMemSerStream::~CMemSerStream(void) __ptr64
282??1CMemSerStream@@UEAA@XZ
283; public: __cdecl CMetaDataMgr::~CMetaDataMgr(void) __ptr64
284??1CMetaDataMgr@@QEAA@XZ
285; public: virtual __cdecl CMmStream::~CMmStream(void) __ptr64
286??1CMmStream@@UEAA@XZ
287; public: __cdecl CMmStreamConsecBuf::~CMmStreamConsecBuf(void) __ptr64
288??1CMmStreamConsecBuf@@QEAA@XZ
289; public: __cdecl CNatLanguageRestriction::~CNatLanguageRestriction(void) __ptr64
290??1CNatLanguageRestriction@@QEAA@XZ
291; public: __cdecl CNodeRestriction::~CNodeRestriction(void) __ptr64
292??1CNodeRestriction@@QEAA@XZ
293; public: __cdecl CNotRestriction::~CNotRestriction(void) __ptr64
294??1CNotRestriction@@QEAA@XZ
295; public: __cdecl COccRestriction::~COccRestriction(void) __ptr64
296??1COccRestriction@@QEAA@XZ
297; public: __cdecl CParseCommandTree::~CParseCommandTree(void) __ptr64
298??1CParseCommandTree@@QEAA@XZ
299; public: __cdecl CPerfMon::~CPerfMon(void) __ptr64
300??1CPerfMon@@QEAA@XZ
301; public: __cdecl CPhraseRestriction::~CPhraseRestriction(void) __ptr64
302??1CPhraseRestriction@@QEAA@XZ
303; public: virtual __cdecl CPhysStorage::~CPhysStorage(void) __ptr64
304??1CPhysStorage@@UEAA@XZ
305; public: __cdecl CPidLookupTable::~CPidLookupTable(void) __ptr64
306??1CPidLookupTable@@QEAA@XZ
307; public: __cdecl CPidRemapper::~CPidRemapper(void) __ptr64
308??1CPidRemapper@@QEAA@XZ
309; public: __cdecl CProcess::~CProcess(void) __ptr64
310??1CProcess@@QEAA@XZ
311; public: __cdecl CPropStoreManager::~CPropStoreManager(void) __ptr64
312??1CPropStoreManager@@QEAA@XZ
313; public: virtual __cdecl CPropertyList::~CPropertyList(void) __ptr64
314??1CPropertyList@@UEAA@XZ
315; public: __cdecl CPropertyRestriction::~CPropertyRestriction(void) __ptr64
316??1CPropertyRestriction@@QEAA@XZ
317; public: __cdecl CPropertyStore::~CPropertyStore(void) __ptr64
318??1CPropertyStore@@QEAA@XZ
319; public: __cdecl CPropertyStoreWids::~CPropertyStoreWids(void) __ptr64
320??1CPropertyStoreWids@@QEAA@XZ
321; public: __cdecl CQueryUnknown::~CQueryUnknown(void) __ptr64
322??1CQueryUnknown@@QEAA@XZ
323; public: virtual __cdecl CRangeKeyRepository::~CRangeKeyRepository(void) __ptr64
324??1CRangeKeyRepository@@UEAA@XZ
325; public: __cdecl CRegChangeEvent::~CRegChangeEvent(void) __ptr64
326??1CRegChangeEvent@@QEAA@XZ
327; protected: virtual __cdecl CRegNotify::~CRegNotify(void) __ptr64
328??1CRegNotify@@MEAA@XZ
329; public: __cdecl CRestriction::~CRestriction(void) __ptr64
330??1CRestriction@@QEAA@XZ
331; public: __cdecl CScopeAdmin::~CScopeAdmin(void) __ptr64
332??1CScopeAdmin@@QEAA@XZ
333; public: __cdecl CScopeEnum::~CScopeEnum(void) __ptr64
334??1CScopeEnum@@QEAA@XZ
335; public: __cdecl CScopeRestriction::~CScopeRestriction(void) __ptr64
336??1CScopeRestriction@@QEAA@XZ
337; public: __cdecl CSdidLookupTable::~CSdidLookupTable(void) __ptr64
338??1CSdidLookupTable@@QEAA@XZ
339; public: virtual __cdecl CSizeSerStream::~CSizeSerStream(void) __ptr64
340??1CSizeSerStream@@UEAA@XZ
341; public: __cdecl CSort::~CSort(void) __ptr64
342??1CSort@@QEAA@XZ
343; public: __cdecl CSynRestriction::~CSynRestriction(void) __ptr64
344??1CSynRestriction@@QEAA@XZ
345; public: __cdecl CVirtualString::~CVirtualString(void) __ptr64
346??1CVirtualString@@QEAA@XZ
347; public: __cdecl CWin32RegAccess::~CWin32RegAccess(void) __ptr64
348??1CWin32RegAccess@@QEAA@XZ
349; public: __cdecl CWordRestriction::~CWordRestriction(void) __ptr64
350??1CWordRestriction@@QEAA@XZ
351; public: __cdecl CWorkManager::~CWorkManager(void) __ptr64
352??1CWorkManager@@QEAA@XZ
353; public: __cdecl CWorkQueue::~CWorkQueue(void) __ptr64
354??1CWorkQueue@@QEAA@XZ
355; public: __cdecl SStorageObject::~SStorageObject(void) __ptr64
356??1SStorageObject@@QEAA@XZ
357; public: class CDbColId & __ptr64 __cdecl CDbColId::operator=(class CDbColId const & __ptr64) __ptr64
358??4CDbColId@@QEAAAEAV0@AEBV0@@Z
359; public: int __cdecl CDbColId::operator==(class CDbColId const & __ptr64)const __ptr64
360??8CDbColId@@QEBAHAEBV0@@Z
361; public: void __cdecl CWorkManager::AbortWorkItems(void) __ptr64
362?AbortWorkItems@CWorkManager@@QEAAXXZ
363; public: void __cdecl CQueryScanner::Accept(void) __ptr64
364?Accept@CQueryScanner@@QEAAXXZ
365; public: void __cdecl CQueryScanner::AcceptCommand(void) __ptr64
366?AcceptCommand@CQueryScanner@@QEAAXXZ
367; public: void __cdecl CQueryScanner::AcceptWord(void) __ptr64
368?AcceptWord@CQueryScanner@@QEAAXXZ
369; public: int __cdecl CSdidLookupTable::AccessCheck(unsigned long,void * __ptr64,unsigned long,int & __ptr64) __ptr64
370?AccessCheck@CSdidLookupTable@@QEAAHKPEAXKAEAH@Z
371; public: unsigned short * __ptr64 __cdecl CQueryScanner::AcqLine(int) __ptr64
372?AcqLine@CQueryScanner@@QEAAPEAGH@Z
373; public: unsigned short * __ptr64 __cdecl CQueryScanner::AcqPath(void) __ptr64
374?AcqPath@CQueryScanner@@QEAAPEAGXZ
375; public: unsigned short * __ptr64 __cdecl CQueryScanner::AcqPhrase(void) __ptr64
376?AcqPhrase@CQueryScanner@@QEAAPEAGXZ
377; public: class CRangeRestriction * __ptr64 __cdecl CRangeKeyRepository::AcqRst(void) __ptr64
378?AcqRst@CRangeKeyRepository@@QEAAPEAVCRangeRestriction@@XZ
379; public: unsigned short * __ptr64 __cdecl CQueryScanner::AcqWord(void) __ptr64
380?AcqWord@CQueryScanner@@QEAAPEAGXZ
381; private: void __cdecl CPropertyStore::AcquireRead(class CReadWriteLockRecord & __ptr64) __ptr64
382?AcquireRead@CPropertyStore@@AEAAXAEAVCReadWriteLockRecord@@@Z
383; public: int __cdecl CDbColumns::Add(class CDbColId const & __ptr64,unsigned int) __ptr64
384?Add@CDbColumns@@QEAAHAEBVCDbColId@@I@Z
385; public: void __cdecl CDbQueryResults::Add(unsigned short * __ptr64,unsigned long) __ptr64
386?Add@CDbQueryResults@@QEAAXPEAGK@Z
387; public: int __cdecl CDbSortSet::Add(class CDbColId const & __ptr64,unsigned long,unsigned int) __ptr64
388?Add@CDbSortSet@@QEAAHAEBVCDbColId@@KI@Z
389; public: int __cdecl CDbSortSet::Add(class CDbSortKey const & __ptr64,unsigned int) __ptr64
390?Add@CDbSortSet@@QEAAHAEBVCDbSortKey@@I@Z
391; public: int __cdecl CKeyArray::Add(int,class CKey const & __ptr64) __ptr64
392?Add@CKeyArray@@QEAAHHAEBVCKey@@@Z
393; public: int __cdecl CKeyArray::Add(int,class CKeyBuf const & __ptr64) __ptr64
394?Add@CKeyArray@@QEAAHHAEBVCKeyBuf@@@Z
395; public: void __cdecl CWorkQueue::Add(class PWorkItem * __ptr64) __ptr64
396?Add@CWorkQueue@@QEAAXPEAVPWorkItem@@@Z
397; public: void __cdecl CEventItem::AddArg(unsigned long) __ptr64
398?AddArg@CEventItem@@QEAAXK@Z
399; public: void __cdecl CEventItem::AddArg(unsigned short const * __ptr64) __ptr64
400?AddArg@CEventItem@@QEAAXPEBG@Z
401; public: void __cdecl CFwEventItem::AddArg(unsigned long) __ptr64
402?AddArg@CFwEventItem@@QEAAXK@Z
403; public: void __cdecl CFwEventItem::AddArg(unsigned short const * __ptr64) __ptr64
404?AddArg@CFwEventItem@@QEAAXPEBG@Z
405; public: void __cdecl CCatalogAdmin::AddCachedProperty(class CFullPropSpec const & __ptr64,unsigned long,unsigned long,unsigned long,int) __ptr64
406?AddCachedProperty@CCatalogAdmin@@QEAAXAEBVCFullPropSpec@@KKKH@Z
407; public: void __cdecl CCatState::AddCatalog(class XPtrST<unsigned short> & __ptr64) __ptr64
408?AddCatalog@CCatState@@QEAAXAEAV?$XPtrST@G@@@Z
409; public: void __cdecl CMachineAdmin::AddCatalog(unsigned short const * __ptr64,unsigned short const * __ptr64) __ptr64
410?AddCatalog@CMachineAdmin@@QEAAXPEBG0@Z
411; public: void __cdecl CNodeRestriction::AddChild(class CRestriction * __ptr64,unsigned int & __ptr64) __ptr64
412?AddChild@CNodeRestriction@@QEAAXPEAVCRestriction@@AEAI@Z
413; public: void __cdecl CCatState::AddDir(class XPtrST<unsigned short> & __ptr64) __ptr64
414?AddDir@CCatState@@QEAAXAEAV?$XPtrST@G@@@Z
415; public: virtual void __cdecl CPropertyList::AddEntry(class CPropEntry * __ptr64,int) __ptr64
416?AddEntry@CPropertyList@@UEAAXPEAVCPropEntry@@H@Z
417; public: void __cdecl CEventItem::AddError(unsigned long) __ptr64
418?AddError@CEventItem@@QEAAXK@Z
419; public: void __cdecl CSynRestriction::AddKey(class CKeyBuf const & __ptr64) __ptr64
420?AddKey@CSynRestriction@@QEAAXAEBVCKeyBuf@@@Z
421; public: void __cdecl CCatState::AddMachine(class XPtrST<unsigned short> & __ptr64) __ptr64
422?AddMachine@CCatState@@QEAAXAEAV?$XPtrST@G@@@Z
423; public: virtual unsigned long __cdecl CDbProperties::AddRef(void) __ptr64
424?AddRef@CDbProperties@@UEAAKXZ
425; public: virtual unsigned long __cdecl CEmptyPropertyList::AddRef(void) __ptr64
426?AddRef@CEmptyPropertyList@@UEAAKXZ
427; public: virtual unsigned long __cdecl CEnumString::AddRef(void) __ptr64
428?AddRef@CEnumString@@UEAAKXZ
429; public: virtual unsigned long __cdecl CEnumWorkid::AddRef(void) __ptr64
430?AddRef@CEnumWorkid@@UEAAKXZ
431; public: virtual unsigned long __cdecl CFwPropertyMapper::AddRef(void) __ptr64
432?AddRef@CFwPropertyMapper@@UEAAKXZ
433; public: virtual unsigned long __cdecl CQueryUnknown::AddRef(void) __ptr64
434?AddRef@CQueryUnknown@@UEAAKXZ
435; public: void __cdecl CWorkQueue::AddRefWorkThreads(void) __ptr64
436?AddRefWorkThreads@CWorkQueue@@QEAAXXZ
437; public: void __cdecl CCatalogAdmin::AddScope(unsigned short const * __ptr64,unsigned short const * __ptr64,int,unsigned short const * __ptr64,unsigned short const * __ptr64) __ptr64
438?AddScope@CCatalogAdmin@@QEAAXPEBG0H00@Z
439; public: int __cdecl CDbSortNode::AddSortColumn(struct tagDBID const & __ptr64,int,unsigned long) __ptr64
440?AddSortColumn@CDbSortNode@@QEAAHAEBUtagDBID@@HK@Z
441; public: int __cdecl CDbNestingNode::AddTable(class CDbCmdTreeNode * __ptr64) __ptr64
442?AddTable@CDbNestingNode@@QEAAHPEAVCDbCmdTreeNode@@@Z
443; public: void __cdecl CWorkManager::AddToWorkList(class CFwAsyncWorkItem * __ptr64) __ptr64
444?AddToWorkList@CWorkManager@@QEAAXPEAVCFwAsyncWorkItem@@@Z
445; public: void __cdecl CFwAsyncWorkItem::AddToWorkQueue(void) __ptr64
446?AddToWorkQueue@CFwAsyncWorkItem@@QEAAXXZ
447; public: static unsigned short * __ptr64 __cdecl CDbCmdTreeNode::AllocAndCopyWString(unsigned short const * __ptr64)
448?AllocAndCopyWString@CDbCmdTreeNode@@SAPEAGPEBG@Z
449; unsigned short * __ptr64 __cdecl AllocHeapAndCopy(unsigned short const * __ptr64,unsigned long & __ptr64)
450?AllocHeapAndCopy@@YAPEAGPEBGAEAK@Z
451; unsigned short * __ptr64 __cdecl AllocHeapAndGetWString(class PDeSerStream & __ptr64)
452?AllocHeapAndGetWString@@YAPEAGAEAVPDeSerStream@@@Z
453; public: void __cdecl CEnumString::Append(unsigned short const * __ptr64) __ptr64
454?Append@CEnumString@@QEAAXPEBG@Z
455; public: void __cdecl CEnumWorkid::Append(unsigned long) __ptr64
456?Append@CEnumWorkid@@QEAAXK@Z
457; protected: void __cdecl CDbCmdTreeNode::AppendChild(class CDbCmdTreeNode * __ptr64) __ptr64
458?AppendChild@CDbCmdTreeNode@@IEAAXPEAV1@@Z
459; protected: int __cdecl CDbListAnchor::AppendListElement(unsigned short,struct tagDBID const & __ptr64) __ptr64
460?AppendListElement@CDbListAnchor@@IEAAHGAEBUtagDBID@@@Z
461; protected: int __cdecl CDbListAnchor::AppendListElement(class CDbCmdTreeNode * __ptr64) __ptr64
462?AppendListElement@CDbListAnchor@@IEAAHPEAVCDbCmdTreeNode@@@Z
463; public: int __cdecl CDbProjectListAnchor::AppendListElement(struct tagDBID const & __ptr64,unsigned short * __ptr64) __ptr64
464?AppendListElement@CDbProjectListAnchor@@QEAAHAEBUtagDBID@@PEAG@Z
465; public: unsigned __int64 __cdecl CPropStoreManager::BeginTransaction(void) __ptr64
466?BeginTransaction@CPropStoreManager@@QEAA_KXZ
467; public: static long __cdecl CCiOle::BindIFilter(unsigned short const * __ptr64,struct IUnknown * __ptr64,struct _GUID const & __ptr64,struct IFilter * __ptr64 * __ptr64,int)
468?BindIFilter@CCiOle@@SAJPEBGPEAUIUnknown@@AEBU_GUID@@PEAPEAUIFilter@@H@Z
469; public: static long __cdecl CCiOle::BindIFilter(unsigned short const * __ptr64,struct IUnknown * __ptr64,struct IFilter * __ptr64 * __ptr64,int)
470?BindIFilter@CCiOle@@SAJPEBGPEAUIUnknown@@PEAPEAUIFilter@@H@Z
471; public: unsigned long * __ptr64 __cdecl CPhysStorage::BorrowBuffer(unsigned long,int,int) __ptr64
472?BorrowBuffer@CPhysStorage@@QEAAPEAKKHH@Z
473; public: unsigned long * __ptr64 __cdecl CPhysStorage::BorrowNewBuffer(unsigned long) __ptr64
474?BorrowNewBuffer@CPhysStorage@@QEAAPEAKK@Z
475; void __cdecl BuildRegistryPropertiesKey(class XArray<unsigned short> & __ptr64,unsigned short const * __ptr64)
476?BuildRegistryPropertiesKey@@YAXAEAV?$XArray@G@@PEBG@Z
477; void __cdecl BuildRegistryScopesKey(class XArray<unsigned short> & __ptr64,unsigned short const * __ptr64)
478?BuildRegistryScopesKey@@YAXAEAV?$XArray@G@@PEBG@Z
479; void __cdecl CIShutdown(void)
480?CIShutdown@@YAXXZ
481; public: void __cdecl CCatState::ChangeCurrentCatalog(unsigned short const * __ptr64) __ptr64
482?ChangeCurrentCatalog@CCatState@@QEAAXPEBG@Z
483; public: void __cdecl CCatState::ChangeCurrentDepth(int) __ptr64
484?ChangeCurrentDepth@CCatState@@QEAAXH@Z
485; public: void __cdecl CCatState::ChangeCurrentMachine(unsigned short const * __ptr64) __ptr64
486?ChangeCurrentMachine@CCatState@@QEAAXPEBG@Z
487; public: void __cdecl CCatState::ChangeCurrentScope(unsigned short const * __ptr64) __ptr64
488?ChangeCurrentScope@CCatState@@QEAAXPEBG@Z
489; private: void __cdecl CPropStoreInfo::ChangeDirty(int) __ptr64
490?ChangeDirty@CPropStoreInfo@@AEAAXH@Z
491; public: long __cdecl CLocalGlobalPropertyList::CheckError(unsigned long & __ptr64,unsigned short * __ptr64 * __ptr64) __ptr64
492?CheckError@CLocalGlobalPropertyList@@QEAAJAEAKPEAPEAG@Z
493; public: long __cdecl CPropListFile::CheckError(unsigned long & __ptr64,unsigned short * __ptr64 * __ptr64) __ptr64
494?CheckError@CPropListFile@@QEAAJAEAKPEAPEAG@Z
495; public: static int __cdecl CiStorage::CheckHasIndexTable(unsigned short const * __ptr64)
496?CheckHasIndexTable@CiStorage@@SAHPEBG@Z
497CiCreateSecurityDescriptor
498; int __cdecl CiGetPassword(unsigned short const * __ptr64,unsigned short const * __ptr64,unsigned short * __ptr64)
499?CiGetPassword@@YAHPEBG0PEAG@Z
500; void * __ptr64 __cdecl CiNtOpen(unsigned short const * __ptr64,unsigned long,unsigned long,unsigned long)
501?CiNtOpen@@YAPEAXPEBGKKK@Z
502; long __cdecl CiNtOpenNoThrow(void * __ptr64 & __ptr64,unsigned short const * __ptr64,unsigned long,unsigned long,unsigned long)
503?CiNtOpenNoThrow@@YAJAEAPEAXPEBGKKK@Z
504; public: void __cdecl CDbColId::Cleanup(void) __ptr64
505?Cleanup@CDbColId@@QEAAXXZ
506; protected: void __cdecl CDbCmdTreeNode::CleanupDataValue(void) __ptr64
507?CleanupDataValue@CDbCmdTreeNode@@IEAAXXZ
508; public: void __cdecl CCombinedPropertyList::ClearList(void) __ptr64
509?ClearList@CCombinedPropertyList@@QEAAXXZ
510; public: void __cdecl CPropertyList::ClearList(void) __ptr64
511?ClearList@CPropertyList@@QEAAXXZ
512; public: class CDbCmdTreeNode * __ptr64 __cdecl CDbCmdTreeNode::Clone(int)const __ptr64
513?Clone@CDbCmdTreeNode@@QEBAPEAV1@H@Z
514; public: virtual long __cdecl CEnumString::Clone(struct IEnumString * __ptr64 * __ptr64) __ptr64
515?Clone@CEnumString@@UEAAJPEAPEAUIEnumString@@@Z
516; public: class CNodeRestriction * __ptr64 __cdecl CNodeRestriction::Clone(void)const __ptr64
517?Clone@CNodeRestriction@@QEBAPEAV1@XZ
518; public: class COccRestriction * __ptr64 __cdecl COccRestriction::Clone(void)const __ptr64
519?Clone@COccRestriction@@QEBAPEAV1@XZ
520; public: class CRestriction * __ptr64 __cdecl CRestriction::Clone(void)const __ptr64
521?Clone@CRestriction@@QEBAPEAV1@XZ
522; public: void __cdecl CPhysStorage::Close(void) __ptr64
523?Close@CPhysStorage@@QEAAXXZ
524; protected: void __cdecl CPipeClient::Close(void) __ptr64
525?Close@CPipeClient@@IEAAXXZ
526; public: void __cdecl COLEPropManager::CPropSetMap::Close(void) __ptr64
527?Close@CPropSetMap@COLEPropManager@@QEAAXXZ
528; public: void __cdecl CPropStoreManager::CloseRecord(class CCompositePropRecord * __ptr64) __ptr64
529?CloseRecord@CPropStoreManager@@QEAAXPEAVCCompositePropRecord@@@Z
530; public: void __cdecl CPropStoreManager::CloseRecord(class CCompositePropRecordForWrites * __ptr64) __ptr64
531?CloseRecord@CPropStoreManager@@QEAAXPEAVCCompositePropRecordForWrites@@@Z
532; public: void __cdecl CRcovStrmAppendTrans::Commit(void) __ptr64
533?Commit@CRcovStrmAppendTrans@@QEAAXXZ
534; public: void __cdecl CRcovStrmMDTrans::Commit(void) __ptr64
535?Commit@CRcovStrmMDTrans@@QEAAXXZ
536; public: void __cdecl CRcovStrmWriteTrans::Commit(void) __ptr64
537?Commit@CRcovStrmWriteTrans@@QEAAXXZ
538; public: static int __cdecl CDriveInfo::ContainsDrive(unsigned short const * __ptr64)
539?ContainsDrive@CDriveInfo@@SAHPEBG@Z
540; public: void __cdecl CMachineAdmin::CreateSubdirs(unsigned short const * __ptr64) __ptr64
541?CreateSubdirs@CMachineAdmin@@QEAAXPEBG@Z
542; public: void __cdecl CRequestClient::DataWriteRead(void * __ptr64,unsigned long,void * __ptr64,unsigned long,unsigned long & __ptr64) __ptr64
543?DataWriteRead@CRequestClient@@QEAAXPEAXK0KAEAK@Z
544; void __cdecl DecodeEscapes(unsigned short * __ptr64,unsigned long & __ptr64,unsigned short * __ptr64)
545?DecodeEscapes@@YAXPEAGAEAK0@Z
546; void __cdecl DecodeHtmlNumeric(unsigned short * __ptr64)
547?DecodeHtmlNumeric@@YAXPEAG@Z
548; void __cdecl DecodeURLEscapes(unsigned char * __ptr64,unsigned long & __ptr64,unsigned short * __ptr64,unsigned long)
549?DecodeURLEscapes@@YAXPEAEAEAKPEAGK@Z
550; public: void __cdecl CPropStoreManager::DeleteRecord(unsigned long) __ptr64
551?DeleteRecord@CPropStoreManager@@QEAAXK@Z
552; public: void __cdecl CCatalogAdmin::DeleteRegistryParamNoThrow(unsigned short const * __ptr64) __ptr64
553?DeleteRegistryParamNoThrow@CCatalogAdmin@@QEAAXPEBG@Z
554; public: static unsigned int __cdecl CiStorage::DetermineDriveType(unsigned short const * __ptr64)
555?DetermineDriveType@CiStorage@@SAIPEBG@Z
556; public: int __cdecl CMachineAdmin::DisableCI(void) __ptr64
557?DisableCI@CMachineAdmin@@QEAAHXZ
558; public: void __cdecl CRegNotify::DisableNotification(void) __ptr64
559?DisableNotification@CRegNotify@@QEAAXXZ
560; public: void __cdecl CMetaDataMgr::DisableVPathNotify(void) __ptr64
561?DisableVPathNotify@CMetaDataMgr@@QEAAXXZ
562; public: void __cdecl CRequestClient::Disconnect(void) __ptr64
563?Disconnect@CRequestClient@@QEAAXXZ
564; public: long __cdecl CCopyRcovObject::DoIt(void) __ptr64
565?DoIt@CCopyRcovObject@@QEAAJXZ
566; public: long __cdecl CFilterDaemon::DoUpdates(void) __ptr64
567?DoUpdates@CFilterDaemon@@QEAAJXZ
568; public: void __cdecl CFwAsyncWorkItem::Done(void) __ptr64
569?Done@CFwAsyncWorkItem@@QEAAXXZ
570; long __cdecl DumpWorkId(unsigned short const * __ptr64,unsigned long,unsigned char * __ptr64,unsigned long & __ptr64,unsigned short const * __ptr64,unsigned short const * __ptr64,unsigned long)
571?DumpWorkId@@YAJPEBGKPEAEAEAK00K@Z
572; public: void __cdecl CPidLookupTable::Empty(void) __ptr64
573?Empty@CPidLookupTable@@QEAAXXZ
574; public: void __cdecl CPropStoreManager::Empty(void) __ptr64
575?Empty@CPropStoreManager@@QEAAXXZ
576; public: void __cdecl CRcovStrmWriteTrans::Empty(void) __ptr64
577?Empty@CRcovStrmWriteTrans@@QEAAXXZ
578; public: void __cdecl CSdidLookupTable::Empty(void) __ptr64
579?Empty@CSdidLookupTable@@QEAAXXZ
580; public: int __cdecl CMachineAdmin::EnableCI(void) __ptr64
581?EnableCI@CMachineAdmin@@QEAAHXZ
582; public: void __cdecl CMetaDataMgr::EnableVPathNotify(class CMetaDataVPathChangeCallBack * __ptr64) __ptr64
583?EnableVPathNotify@CMetaDataMgr@@QEAAXPEAVCMetaDataVPathChangeCallBack@@@Z
584; public: void __cdecl CPropStoreManager::EndTransaction(unsigned __int64,int,unsigned long,unsigned long) __ptr64
585?EndTransaction@CPropStoreManager@@QEAAX_KHKK@Z
586; public: int __cdecl CWin32RegAccess::Enum(unsigned short * __ptr64,unsigned long) __ptr64
587?Enum@CWin32RegAccess@@QEAAHPEAGK@Z
588; public: virtual long __cdecl CEmptyPropertyList::EnumPropInfo(unsigned long,unsigned short const * __ptr64 * __ptr64,struct tagDBID * __ptr64 * __ptr64,unsigned short * __ptr64,unsigned int * __ptr64) __ptr64
589?EnumPropInfo@CEmptyPropertyList@@UEAAJKPEAPEBGPEAPEAUtagDBID@@PEAGPEAI@Z
590; public: void __cdecl CMetaDataMgr::EnumVPaths(class CMetaDataCallBack & __ptr64) __ptr64
591?EnumVPaths@CMetaDataMgr@@QEAAXAEAVCMetaDataCallBack@@@Z
592; public: void __cdecl CMetaDataMgr::EnumVServers(class CMetaDataVirtualServerCallBack & __ptr64) __ptr64
593?EnumVServers@CMetaDataMgr@@QEAAXAEAVCMetaDataVirtualServerCallBack@@@Z
594; public: static void __cdecl CiStorage::EnumerateFilesInDir(unsigned short const * __ptr64,class CEnumString & __ptr64)
595?EnumerateFilesInDir@CiStorage@@SAXPEBGAEAVCEnumString@@@Z
596; public: int __cdecl CPidLookupTable::EnumerateProperty(class CFullPropSpec & __ptr64,unsigned int & __ptr64) __ptr64
597?EnumerateProperty@CPidLookupTable@@QEAAHAEAVCFullPropSpec@@AEAI@Z
598; public: void __cdecl CRegAccess::EnumerateValues(unsigned short * __ptr64,class CRegCallBack & __ptr64) __ptr64
599?EnumerateValues@CRegAccess@@QEAAXPEAGAEAVCRegCallBack@@@Z
600; public: int __cdecl CMmStreamConsecBuf::Eof(void) __ptr64
601?Eof@CMmStreamConsecBuf@@QEAAHXZ
602; public: int __cdecl CMetaDataMgr::ExtensionHasScriptMap(unsigned short const * __ptr64) __ptr64
603?ExtensionHasScriptMap@CMetaDataMgr@@QEAAHPEBG@Z
604; public: virtual long __cdecl CPidConverter::FPSToPROPID(class CFullPropSpec const & __ptr64,unsigned long & __ptr64) __ptr64
605?FPSToPROPID@CPidConverter@@UEAAJAEBVCFullPropSpec@@AEAK@Z
606; public: void __cdecl CPropStoreManager::FastInit(class CiStorage * __ptr64) __ptr64
607?FastInit@CPropStoreManager@@QEAAXPEAVCiStorage@@@Z
608; public: void __cdecl COLEPropManager::FetchProperty(struct _GUID const & __ptr64,struct tagPROPSPEC const & __ptr64,struct tagPROPVARIANT * __ptr64,unsigned int * __ptr64) __ptr64
609?FetchProperty@COLEPropManager@@QEAAXAEBU_GUID@@AEBUtagPROPSPEC@@PEAUtagPROPVARIANT@@PEAI@Z
610; public: int __cdecl CKeyArray::FillMax(int) __ptr64
611?FillMax@CKeyArray@@QEAAHH@Z
612; public: class CPropEntry const * __ptr64 __cdecl CEmptyPropertyList::Find(class CDbColId const & __ptr64) __ptr64
613?Find@CEmptyPropertyList@@QEAAPEBVCPropEntry@@AEBVCDbColId@@@Z
614; public: virtual class CPropEntry const * __ptr64 __cdecl CPropertyList::Find(class CDbColId const & __ptr64) __ptr64
615?Find@CPropertyList@@UEAAPEBVCPropEntry@@AEBVCDbColId@@@Z
616; public: virtual class CPropEntry const * __ptr64 __cdecl CPropertyList::Find(unsigned short const * __ptr64) __ptr64
617?Find@CPropertyList@@UEAAPEBVCPropEntry@@PEBG@Z
618; public: int __cdecl CPidLookupTable::FindPropid(class CFullPropSpec const & __ptr64,unsigned long & __ptr64,int) __ptr64
619?FindPropid@CPidLookupTable@@QEAAHAEBVCFullPropSpec@@AEAKH@Z
620; public: void __cdecl CDynStream::Flush(void) __ptr64
621?Flush@CDynStream@@QEAAXXZ
622; public: void __cdecl CPhysStorage::Flush(int) __ptr64
623?Flush@CPhysStorage@@QEAAXH@Z
624; public: void __cdecl CPropStoreManager::Flush(void) __ptr64
625?Flush@CPropStoreManager@@QEAAXXZ
626; public: static void __cdecl CCiOle::FlushIdle(void)
627?FlushIdle@CCiOle@@SAXXZ
628; public: struct tagDBCOMMANDTREE * __ptr64 __cdecl CTextToTree::FormFullTree(void) __ptr64
629?FormFullTree@CTextToTree@@QEAAPEAUtagDBCOMMANDTREE@@XZ
630; class CDbCmdTreeNode * __ptr64 __cdecl FormQueryTree(class CDbCmdTreeNode & __ptr64,class CCatState & __ptr64,struct IColumnMapper * __ptr64,int,int)
631?FormQueryTree@@YAPEAVCDbCmdTreeNode@@AEAV1@AEAVCCatState@@PEAUIColumnMapper@@HH@Z
632FsCiShutdown
633; public: unsigned long __cdecl CRegAccess::Get(unsigned short const * __ptr64) __ptr64
634?Get@CRegAccess@@QEAAKPEBG@Z
635; public: void __cdecl CRegAccess::Get(unsigned short const * __ptr64,unsigned short * __ptr64,unsigned int) __ptr64
636?Get@CRegAccess@@QEAAXPEBGPEAGI@Z
637; public: int __cdecl CWin32RegAccess::Get(unsigned short const * __ptr64,unsigned long & __ptr64) __ptr64
638?Get@CWin32RegAccess@@QEAAHPEBGAEAK@Z
639; public: int __cdecl CWin32RegAccess::Get(unsigned short const * __ptr64,unsigned short * __ptr64,unsigned int,int) __ptr64
640?Get@CWin32RegAccess@@QEAAHPEBGPEAGIH@Z
641; public: virtual long __cdecl CPropertyList::GetAllEntries(class CPropEntry * __ptr64 * __ptr64,unsigned long) __ptr64
642?GetAllEntries@CPropertyList@@UEAAJPEAPEAVCPropEntry@@K@Z
643; public: short __cdecl CAllocStorageVariant::GetBOOL(unsigned int)const __ptr64
644?GetBOOL@CAllocStorageVariant@@QEBAFI@Z
645; public: unsigned long __cdecl CPropStoreManager::GetBackupSize(unsigned long) __ptr64
646?GetBackupSize@CPropStoreManager@@QEAAKK@Z
647; public: virtual void __cdecl CMemDeSerStream::GetBlob(unsigned char * __ptr64,unsigned long) __ptr64
648?GetBlob@CMemDeSerStream@@UEAAXPEAEK@Z
649; unsigned long __cdecl GetBrowserCodepage(class CWebServer & __ptr64,unsigned long)
650?GetBrowserCodepage@@YAKAEAVCWebServer@@K@Z
651; public: virtual unsigned char __cdecl CMemDeSerStream::GetByte(void) __ptr64
652?GetByte@CMemDeSerStream@@UEAAEXZ
653; public: unsigned short const * __ptr64 __cdecl CCatState::GetCD(void) __ptr64
654?GetCD@CCatState@@QEAAPEBGXZ
655; public: int __cdecl CWebServer::GetCGIVariable(char const * __ptr64,class XArray<unsigned short> & __ptr64,unsigned long & __ptr64) __ptr64
656?GetCGIVariable@CWebServer@@QEAAHPEBDAEAV?$XArray@G@@AEAK@Z
657; public: int __cdecl CWebServer::GetCGIVariableW(unsigned short const * __ptr64,class XArray<unsigned short> & __ptr64,unsigned long & __ptr64) __ptr64
658?GetCGIVariableW@CWebServer@@QEAAHPEBGAEAV?$XArray@G@@AEAK@Z
659; public: struct _GUID __cdecl CAllocStorageVariant::GetCLSID(unsigned int)const __ptr64
660?GetCLSID@CAllocStorageVariant@@QEBA?AU_GUID@@I@Z
661; public: union tagCY __cdecl CAllocStorageVariant::GetCY(unsigned int)const __ptr64
662?GetCY@CAllocStorageVariant@@QEBA?ATtagCY@@I@Z
663; public: unsigned short const * __ptr64 __cdecl CCatState::GetCategory(unsigned int)const __ptr64
664?GetCategory@CCatState@@QEBAPEBGI@Z
665; public: virtual void __cdecl CMemDeSerStream::GetChar(char * __ptr64,unsigned long) __ptr64
666?GetChar@CMemDeSerStream@@UEAAXPEADK@Z
667; public: unsigned short const * __ptr64 __cdecl CCatState::GetColumn(unsigned int)const __ptr64
668?GetColumn@CCatState@@QEBAPEBGI@Z
669; public: unsigned short __cdecl CQueryScanner::GetCommandChar(void) __ptr64
670?GetCommandChar@CQueryScanner@@QEAAGXZ
671; public: double __cdecl CAllocStorageVariant::GetDATE(unsigned int)const __ptr64
672?GetDATE@CAllocStorageVariant@@QEBANI@Z
673; public: int __cdecl CCatalogAdmin::GetDWORDParam(unsigned short const * __ptr64,unsigned long & __ptr64) __ptr64
674?GetDWORDParam@CCatalogAdmin@@QEAAHPEBGAEAK@Z
675; public: int __cdecl CMachineAdmin::GetDWORDParam(unsigned short const * __ptr64,unsigned long & __ptr64) __ptr64
676?GetDWORDParam@CMachineAdmin@@QEAAHPEBGAEAK@Z
677; public: void __cdecl CDriveInfo::GetDiskSpace(__int64 & __ptr64,__int64 & __ptr64) __ptr64
678?GetDiskSpace@CDriveInfo@@QEAAXAEA_J0@Z
679; public: virtual double __cdecl CMemDeSerStream::GetDouble(void) __ptr64
680?GetDouble@CMemDeSerStream@@UEAANXZ
681; public: static void __cdecl CDriveInfo::GetDrive(unsigned short const * __ptr64,unsigned short * __ptr64)
682?GetDrive@CDriveInfo@@SAXPEBGPEAG@Z
683; public: unsigned char * __ptr64 __cdecl CGenericCiProxy::GetEntryBuffer(unsigned long & __ptr64) __ptr64
684?GetEntryBuffer@CGenericCiProxy@@QEAAPEAEAEAK@Z
685; public: struct _FILETIME __cdecl CAllocStorageVariant::GetFILETIME(unsigned int)const __ptr64
686?GetFILETIME@CAllocStorageVariant@@QEBA?AU_FILETIME@@I@Z
687; public: int __cdecl CPathParser::GetFileName(unsigned short * __ptr64,unsigned long & __ptr64)const __ptr64
688?GetFileName@CPathParser@@QEBAHPEAGAEAK@Z
689; public: enum CDriveInfo::eFileSystem __cdecl CDriveInfo::GetFileSystem(int) __ptr64
690?GetFileSystem@CDriveInfo@@QEAA?AW4eFileSystem@1@H@Z
691; public: virtual float __cdecl CMemDeSerStream::GetFloat(void) __ptr64
692?GetFloat@CMemDeSerStream@@UEAAMXZ
693; public: virtual void __cdecl CMemDeSerStream::GetGUID(struct _GUID & __ptr64) __ptr64
694?GetGUID@CMemDeSerStream@@UEAAXAEAU_GUID@@@Z
695; class CPropListFile * __ptr64 __cdecl GetGlobalPropListFile(void)
696?GetGlobalPropListFile@@YAPEAVCPropListFile@@XZ
697; class CStaticPropertyList * __ptr64 __cdecl GetGlobalStaticPropertyList(void)
698?GetGlobalStaticPropertyList@@YAPEAVCStaticPropertyList@@XZ
699; public: short __cdecl CAllocStorageVariant::GetI2(unsigned int)const __ptr64
700?GetI2@CAllocStorageVariant@@QEBAFI@Z
701; public: long __cdecl CAllocStorageVariant::GetI4(unsigned int)const __ptr64
702?GetI4@CAllocStorageVariant@@QEBAJI@Z
703; public: union _LARGE_INTEGER __cdecl CAllocStorageVariant::GetI8(unsigned int)const __ptr64
704?GetI8@CAllocStorageVariant@@QEBA?AT_LARGE_INTEGER@@I@Z
705; unsigned long __cdecl GetLCIDFromString(unsigned short * __ptr64)
706?GetLCIDFromString@@YAKPEAG@Z
707; public: char * __ptr64 __cdecl CAllocStorageVariant::GetLPSTR(unsigned int)const __ptr64
708?GetLPSTR@CAllocStorageVariant@@QEBAPEADI@Z
709; public: unsigned short * __ptr64 __cdecl CAllocStorageVariant::GetLPWSTR(unsigned int)const __ptr64
710?GetLPWSTR@CAllocStorageVariant@@QEBAPEAGI@Z
711; public: unsigned short const * __ptr64 __cdecl CCatalogAdmin::GetLocation(void) __ptr64
712?GetLocation@CCatalogAdmin@@QEAAPEBGXZ
713; public: virtual long __cdecl CMemDeSerStream::GetLong(void) __ptr64
714?GetLong@CMemDeSerStream@@UEAAJXZ
715; public: int __cdecl CQueryScanner::GetNumber(unsigned long & __ptr64,int & __ptr64) __ptr64
716?GetNumber@CQueryScanner@@QEAAHAEAKAEAH@Z
717; public: int __cdecl CQueryScanner::GetNumber(double & __ptr64) __ptr64
718?GetNumber@CQueryScanner@@QEAAHAEAN@Z
719; public: int __cdecl CQueryScanner::GetNumber(__int64 & __ptr64,int & __ptr64) __ptr64
720?GetNumber@CQueryScanner@@QEAAHAEA_JAEAH@Z
721; public: int __cdecl CQueryScanner::GetNumber(unsigned __int64 & __ptr64,int & __ptr64) __ptr64
722?GetNumber@CQueryScanner@@QEAAHAEA_KAEAH@Z
723; public: void __cdecl CKeyDeComp::GetOffset(struct BitOffset & __ptr64) __ptr64
724?GetOffset@CKeyDeComp@@QEAAXAEAUBitOffset@@@Z
725; long __cdecl GetOleDBErrorInfo(struct IUnknown * __ptr64,struct _GUID const & __ptr64,unsigned long,unsigned int,struct tagERRORINFO * __ptr64,struct IErrorInfo * __ptr64 * __ptr64)
726?GetOleDBErrorInfo@@YAJPEAUIUnknown@@AEBU_GUID@@KIPEAUtagERRORINFO@@PEAPEAUIErrorInfo@@@Z
727; long __cdecl GetOleError(class CException & __ptr64)
728?GetOleError@@YAJAEAVCException@@@Z
729; public: unsigned long __cdecl CWebServer::GetPhysicalPath(unsigned short const * __ptr64,unsigned short * __ptr64,unsigned long,unsigned long) __ptr64
730?GetPhysicalPath@CWebServer@@QEAAKPEBGPEAGKK@Z
731; public: int __cdecl CEmptyPropertyList::GetPropInfo(class CDbColId const & __ptr64,unsigned short const * __ptr64 * __ptr64,unsigned short * __ptr64,unsigned int * __ptr64) __ptr64
732?GetPropInfo@CEmptyPropertyList@@QEAAHAEBVCDbColId@@PEAPEBGPEAGPEAI@Z
733; public: int __cdecl CEmptyPropertyList::GetPropInfo(unsigned short const * __ptr64,class CDbColId * __ptr64 * __ptr64,unsigned short * __ptr64,unsigned int * __ptr64) __ptr64
734?GetPropInfo@CEmptyPropertyList@@QEAAHPEBGPEAPEAVCDbColId@@PEAGPEAI@Z
735; public: virtual long __cdecl CEmptyPropertyList::GetPropInfoFromId(struct tagDBID const * __ptr64,unsigned short * __ptr64 * __ptr64,unsigned short * __ptr64,unsigned int * __ptr64) __ptr64
736?GetPropInfoFromId@CEmptyPropertyList@@UEAAJPEBUtagDBID@@PEAPEAGPEAGPEAI@Z
737; public: virtual long __cdecl CEmptyPropertyList::GetPropInfoFromName(unsigned short const * __ptr64,struct tagDBID * __ptr64 * __ptr64,unsigned short * __ptr64,unsigned int * __ptr64) __ptr64
738?GetPropInfoFromName@CEmptyPropertyList@@UEAAJPEBGPEAPEAUtagDBID@@PEAGPEAI@Z
739; public: static unsigned short __cdecl CEmptyPropertyList::GetPropType(unsigned int)
740?GetPropType@CEmptyPropertyList@@SAGI@Z
741; public: static unsigned int __cdecl CEmptyPropertyList::GetPropTypeCount(void)
742?GetPropTypeCount@CEmptyPropertyList@@SAIXZ
743; public: static unsigned short const * __ptr64 __cdecl CEmptyPropertyList::GetPropTypeName(unsigned int)
744?GetPropTypeName@CEmptyPropertyList@@SAPEBGI@Z
745; public: virtual long __cdecl CDbProperties::GetProperties(unsigned long,struct tagDBPROPIDSET const * __ptr64 const,unsigned long * __ptr64,struct tagDBPROPSET * __ptr64 * __ptr64) __ptr64
746?GetProperties@CDbProperties@@UEAAJKQEBUtagDBPROPIDSET@@PEAKPEAPEAUtagDBPROPSET@@@Z
747; public: void __cdecl CGetDbProps::GetProperties(struct IDBProperties * __ptr64,unsigned long) __ptr64
748?GetProperties@CGetDbProps@@QEAAXPEAUIDBProperties@@K@Z
749; public: virtual long __cdecl CDbProperties::GetPropertyInfo(unsigned long,struct tagDBPROPIDSET const * __ptr64 const,unsigned long * __ptr64,struct tagDBPROPINFOSET * __ptr64 * __ptr64,unsigned short * __ptr64 * __ptr64) __ptr64
750?GetPropertyInfo@CDbProperties@@UEAAJKQEBUtagDBPROPIDSET@@PEAKPEAPEAUtagDBPROPINFOSET@@PEAPEAG@Z
751; public: float __cdecl CAllocStorageVariant::GetR4(unsigned int)const __ptr64
752?GetR4@CAllocStorageVariant@@QEBAMI@Z
753; public: double __cdecl CAllocStorageVariant::GetR8(unsigned int)const __ptr64
754?GetR8@CAllocStorageVariant@@QEBANI@Z
755; public: int __cdecl CMachineAdmin::GetSZParam(unsigned short const * __ptr64,unsigned short * __ptr64,unsigned long) __ptr64
756?GetSZParam@CMachineAdmin@@QEAAHPEBGPEAGK@Z
757; long __cdecl GetScodeError(class CException & __ptr64)
758?GetScodeError@@YAJAEAVCException@@@Z
759; int __cdecl GetSecret(unsigned short const * __ptr64,unsigned short const * __ptr64,unsigned short * __ptr64 * __ptr64,unsigned long * __ptr64)
760?GetSecret@@YAHPEBG0PEAPEAGPEAK@Z
761; public: unsigned long __cdecl CDriveInfo::GetSectorSize(void) __ptr64
762?GetSectorSize@CDriveInfo@@QEAAKXZ
763; public: void __cdecl CCatState::GetSortProp(unsigned int,unsigned short const * __ptr64 * __ptr64,enum SORTDIR * __ptr64)const __ptr64
764?GetSortProp@CCatState@@QEBAXIPEAPEBGPEAW4SORTDIR@@@Z
765; void __cdecl GetStackTrace(char * __ptr64,unsigned long)
766?GetStackTrace@@YAXPEADK@Z
767; public: unsigned char const * __ptr64 __cdecl CGenericCiProxy::GetStartupData(struct _GUID & __ptr64,unsigned long & __ptr64) __ptr64
768?GetStartupData@CGenericCiProxy@@QEAAPEBEAEAU_GUID@@AEAK@Z
769; public: class PStorage & __ptr64 __cdecl CPropStoreManager::GetStorage(unsigned long) __ptr64
770?GetStorage@CPropStoreManager@@QEAAAEAVPStorage@@K@Z
771; public: unsigned short * __ptr64 __cdecl CKey::GetStr(void)const __ptr64
772?GetStr@CKey@@QEBAPEAGXZ
773; public: unsigned short * __ptr64 __cdecl CKeyBuf::GetStr(void)const __ptr64
774?GetStr@CKeyBuf@@QEBAPEAGXZ
775; public: virtual char * __ptr64 __cdecl CMemDeSerStream::GetString(void) __ptr64
776?GetString@CMemDeSerStream@@UEAAPEADXZ
777; class CDbRestriction * __ptr64 __cdecl GetStringDbRestriction(unsigned short const * __ptr64,unsigned long,struct IColumnMapper * __ptr64,unsigned long)
778?GetStringDbRestriction@@YAPEAVCDbRestriction@@PEBGKPEAUIColumnMapper@@K@Z
779; void __cdecl GetStringFromLCID(unsigned long,unsigned short * __ptr64)
780?GetStringFromLCID@@YAXKPEAG@Z
781; public: unsigned long __cdecl CPropStoreManager::GetTotalSizeInKB(void) __ptr64
782?GetTotalSizeInKB@CPropStoreManager@@QEAAKXZ
783; public: unsigned long __cdecl CPropertyStore::GetTotalSizeInKB(void) __ptr64
784?GetTotalSizeInKB@CPropertyStore@@QEAAKXZ
785; public: virtual unsigned long __cdecl CMemDeSerStream::GetULong(void) __ptr64
786?GetULong@CMemDeSerStream@@UEAAKXZ
787; public: virtual unsigned short __cdecl CMemDeSerStream::GetUShort(void) __ptr64
788?GetUShort@CMemDeSerStream@@UEAAGXZ
789; public: void __cdecl CIndexTable::GetUserHdrInfo(unsigned int & __ptr64,int & __ptr64) __ptr64
790?GetUserHdrInfo@CIndexTable@@QEAAXAEAIAEAH@Z
791; public: unsigned long __cdecl CMetaDataMgr::GetVPathAccess(unsigned short const * __ptr64) __ptr64
792?GetVPathAccess@CMetaDataMgr@@QEAAKPEBG@Z
793; public: unsigned long __cdecl CMetaDataMgr::GetVPathAuthorization(unsigned short const * __ptr64) __ptr64
794?GetVPathAuthorization@CMetaDataMgr@@QEAAKPEBG@Z
795; public: unsigned long __cdecl CMetaDataMgr::GetVPathSSLAccess(unsigned short const * __ptr64) __ptr64
796?GetVPathSSLAccess@CMetaDataMgr@@QEAAKPEBG@Z
797; public: unsigned short const * __ptr64 __cdecl CDriveInfo::GetVolumeName(int) __ptr64
798?GetVolumeName@CDriveInfo@@QEAAPEBGH@Z
799; public: virtual void __cdecl CMemDeSerStream::GetWChar(unsigned short * __ptr64,unsigned long) __ptr64
800?GetWChar@CMemDeSerStream@@UEAAXPEAGK@Z
801; public: virtual unsigned short * __ptr64 __cdecl CMemDeSerStream::GetWString(void) __ptr64
802?GetWString@CMemDeSerStream@@UEAAPEAGXZ
803; public: long __cdecl CDbCmdTreeNode::GetWeight(void)const __ptr64
804?GetWeight@CDbCmdTreeNode@@QEBAJXZ
805; public: void __cdecl CDynStream::Grow(class PStorage & __ptr64,unsigned long) __ptr64
806?Grow@CDynStream@@QEAAXAEAVPStorage@@K@Z
807; private: void __cdecl CVirtualString::GrowBuffer(unsigned long) __ptr64
808?GrowBuffer@CVirtualString@@AEAAXK@Z
809; void __cdecl HTMLEscapeW(unsigned short const * __ptr64,class CVirtualString & __ptr64,unsigned long)
810?HTMLEscapeW@@YAXPEBGAEAVCVirtualString@@K@Z
811; private: void __cdecl CImpersonateClient::Impersonate(void) __ptr64
812?Impersonate@CImpersonateClient@@AEAAXXZ
813; public: void __cdecl CFileMapView::Init(void) __ptr64
814?Init@CFileMapView@@QEAAXXZ
815; public: void __cdecl CMmStreamConsecBuf::Init(class PMmStream * __ptr64) __ptr64
816?Init@CMmStreamConsecBuf@@QEAAXPEAVPMmStream@@@Z
817; public: int __cdecl CPidLookupTable::Init(class PRcovStorageObj * __ptr64) __ptr64
818?Init@CPidLookupTable@@QEAAHPEAVPRcovStorageObj@@@Z
819; public: void __cdecl CRcovStorageHdr::Init(unsigned long) __ptr64
820?Init@CRcovStorageHdr@@QEAAXK@Z
821; public: void __cdecl CRegChangeEvent::Init(void) __ptr64
822?Init@CRegChangeEvent@@QEAAXXZ
823; public: int __cdecl CSdidLookupTable::Init(class CiStorage * __ptr64) __ptr64
824?Init@CSdidLookupTable@@QEAAHPEAVCiStorage@@@Z
825; public: virtual void __cdecl CPropertyList::InitIterator(void) __ptr64
826?InitIterator@CPropertyList@@UEAAXXZ
827; public: void __cdecl CImpersonationTokenCache::Initialize(unsigned short const * __ptr64,int,int,int,unsigned long,unsigned long,unsigned long) __ptr64
828?Initialize@CImpersonationTokenCache@@QEAAXPEBGHHHKKK@Z
829; public: void __cdecl CDynStream::InitializeForRead(void) __ptr64
830?InitializeForRead@CDynStream@@QEAAXXZ
831; public: void __cdecl CDynStream::InitializeForWrite(unsigned long) __ptr64
832?InitializeForWrite@CDynStream@@QEAAXK@Z
833; protected: void __cdecl CDbCmdTreeNode::InsertChild(class CDbCmdTreeNode * __ptr64) __ptr64
834?InsertChild@CDbCmdTreeNode@@IEAAXPEAV1@@Z
835; public: int __cdecl CMachineAdmin::IsCIEnabled(void) __ptr64
836?IsCIEnabled@CMachineAdmin@@QEAAHXZ
837; public: int __cdecl CMachineAdmin::IsCIPaused(void) __ptr64
838?IsCIPaused@CMachineAdmin@@QEAAHXZ
839; public: int __cdecl CMachineAdmin::IsCIStarted(void) __ptr64
840?IsCIStarted@CMachineAdmin@@QEAAHXZ
841; public: int __cdecl CMachineAdmin::IsCIStopped(void) __ptr64
842?IsCIStopped@CMachineAdmin@@QEAAHXZ
843; public: int __cdecl CCatalogAdmin::IsCatalogInactive(void) __ptr64
844?IsCatalogInactive@CCatalogAdmin@@QEAAHXZ
845; int __cdecl IsDirectoryWritable(unsigned short const * __ptr64)
846?IsDirectoryWritable@@YAHPEBG@Z
847; public: static int __cdecl CMetaDataMgr::IsIISAdminUp(int & __ptr64)
848?IsIISAdminUp@CMetaDataMgr@@SAHAEAH@Z
849; public: static int __cdecl CImpersonateSystem::IsImpersonated(void)
850?IsImpersonated@CImpersonateSystem@@SAHXZ
851; public: int __cdecl CRestriction::IsLeaf(void)const __ptr64
852?IsLeaf@CRestriction@@QEBAHXZ
853; int __cdecl IsNullPointerVariant(struct tagPROPVARIANT * __ptr64)
854?IsNullPointerVariant@@YAHPEAUtagPROPVARIANT@@@Z
855; public: int __cdecl CCatalogAdmin::IsPaused(void) __ptr64
856?IsPaused@CCatalogAdmin@@QEAAHXZ
857; public: static int __cdecl CImpersonateSystem::IsRunningAsSystem(void)
858?IsRunningAsSystem@CImpersonateSystem@@SAHXZ
859; public: int __cdecl CDriveInfo::IsSameDrive(unsigned short const * __ptr64) __ptr64
860?IsSameDrive@CDriveInfo@@QEAAHPEBG@Z
861; long __cdecl IsScopeValid(unsigned short const * __ptr64,unsigned int,int)
862?IsScopeValid@@YAJPEBGIH@Z
863; public: int __cdecl CCatalogAdmin::IsStarted(void) __ptr64
864?IsStarted@CCatalogAdmin@@QEAAHXZ
865; public: int __cdecl CCatalogAdmin::IsStopped(void) __ptr64
866?IsStopped@CCatalogAdmin@@QEAAHXZ
867; public: int __cdecl CAllocStorageVariant::IsValid(void)const __ptr64
868?IsValid@CAllocStorageVariant@@QEBAHXZ
869; public: int __cdecl CNodeRestriction::IsValid(void)const __ptr64
870?IsValid@CNodeRestriction@@QEBAHXZ
871; public: int __cdecl COccRestriction::IsValid(void)const __ptr64
872?IsValid@COccRestriction@@QEBAHXZ
873; public: int __cdecl CRestriction::IsValid(void)const __ptr64
874?IsValid@CRestriction@@QEBAHXZ
875; public: int __cdecl CFilterDaemon::IsWaitingForDocument(void) __ptr64
876?IsWaitingForDocument@CFilterDaemon@@QEAAHXZ
877; public: int __cdecl CDriveInfo::IsWriteProtected(void) __ptr64
878?IsWriteProtected@CDriveInfo@@QEAAHXZ
879; public: void __cdecl CLocalGlobalPropertyList::Load(unsigned short const * __ptr64 const) __ptr64
880?Load@CLocalGlobalPropertyList@@QEAAXQEBG@Z
881; unsigned long __cdecl LocaleToCodepage(unsigned long)
882?LocaleToCodepage@@YAKK@Z
883; private: unsigned long __cdecl CPropertyStore::LokNewWorkId(unsigned long,int,int) __ptr64
884?LokNewWorkId@CPropertyStore@@AEAAKKHH@Z
885; public: int __cdecl CCatStateInfo::LokUpdate(void) __ptr64
886?LokUpdate@CCatStateInfo@@QEAAHXZ
887; public: void __cdecl CPropStoreManager::LongInit(int & __ptr64,unsigned long & __ptr64,void (__cdecl*)(unsigned long,int,void const * __ptr64),void const * __ptr64) __ptr64
888?LongInit@CPropStoreManager@@QEAAXAEAHAEAKP6AXKHPEBX@Z2@Z
889; private: unsigned int __cdecl CPropStoreInfo::Lookup(unsigned long) __ptr64
890?Lookup@CPropStoreInfo@@AEAAIK@Z
891; public: unsigned long __cdecl CSdidLookupTable::LookupSDID(void * __ptr64,unsigned long) __ptr64
892?LookupSDID@CSdidLookupTable@@QEAAKPEAXK@Z
893; public: void __cdecl CPhysStorage::MakeBackupCopy(class CPhysStorage & __ptr64,class PSaveProgressTracker & __ptr64) __ptr64
894?MakeBackupCopy@CPhysStorage@@QEAAXAEAV1@AEAVPSaveProgressTracker@@@Z
895; public: void __cdecl CPidLookupTable::MakeBackupCopy(class PRcovStorageObj & __ptr64,class PSaveProgressTracker & __ptr64) __ptr64
896?MakeBackupCopy@CPidLookupTable@@QEAAXAEAVPRcovStorageObj@@AEAVPSaveProgressTracker@@@Z
897; public: void __cdecl CPropStoreManager::MakeBackupCopy(struct IProgressNotify * __ptr64,int & __ptr64,class CiStorage & __ptr64,struct ICiEnumWorkids * __ptr64,struct IEnumString * __ptr64 * __ptr64) __ptr64
898?MakeBackupCopy@CPropStoreManager@@QEAAXPEAUIProgressNotify@@AEAHAEAVCiStorage@@PEAUICiEnumWorkids@@PEAPEAUIEnumString@@@Z
899; long __cdecl MakeICommand(struct IUnknown * __ptr64 * __ptr64,unsigned short const * __ptr64,unsigned short const * __ptr64,struct IUnknown * __ptr64)
900?MakeICommand@@YAJPEAPEAUIUnknown@@PEBG1PEAU1@@Z
901; long __cdecl MakeISearch(struct ISearchQueryHits * __ptr64 * __ptr64,class CDbRestriction * __ptr64,unsigned short const * __ptr64)
902?MakeISearch@@YAJPEAPEAUISearchQueryHits@@PEAVCDbRestriction@@PEBG@Z
903; long __cdecl MakeLocalICommand(struct IUnknown * __ptr64 * __ptr64,struct ICiCDocStore * __ptr64,struct IUnknown * __ptr64)
904?MakeLocalICommand@@YAJPEAPEAUIUnknown@@PEAUICiCDocStore@@PEAU1@@Z
905; long __cdecl MakeMetadataICommand(struct IUnknown * __ptr64 * __ptr64,enum CiMetaData,unsigned short const * __ptr64,unsigned short const * __ptr64,struct IUnknown * __ptr64)
906?MakeMetadataICommand@@YAJPEAPEAUIUnknown@@W4CiMetaData@@PEBG2PEAU1@@Z
907; public: void __cdecl CFullPath::MakePath(unsigned short const * __ptr64) __ptr64
908?MakePath@CFullPath@@QEAAXPEBG@Z
909; public: void __cdecl CFullPath::MakePath(unsigned short const * __ptr64,unsigned int) __ptr64
910?MakePath@CFullPath@@QEAAXPEBGI@Z
911; private: void __cdecl CImpersonateSystem::MakePrivileged(void) __ptr64
912?MakePrivileged@CImpersonateSystem@@AEAAXXZ
913; public: void __cdecl CMmStreamConsecBuf::Map(unsigned long) __ptr64
914?Map@CMmStreamConsecBuf@@QEAAXK@Z
915; public: int __cdecl CDynStream::MarkDirty(void) __ptr64
916?MarkDirty@CDynStream@@QEAAHXZ
917; public: void __cdecl CBaseStorageVariant::Marshall(class PSerStream & __ptr64)const __ptr64
918?Marshall@CBaseStorageVariant@@QEBAXAEAVPSerStream@@@Z
919; public: void __cdecl CContentRestriction::Marshall(class PSerStream & __ptr64)const __ptr64
920?Marshall@CContentRestriction@@QEBAXAEAVPSerStream@@@Z
921; public: void __cdecl CDbCmdTreeNode::Marshall(class PSerStream & __ptr64)const __ptr64
922?Marshall@CDbCmdTreeNode@@QEBAXAEAVPSerStream@@@Z
923; public: void __cdecl CFullPropSpec::Marshall(class PSerStream & __ptr64)const __ptr64
924?Marshall@CFullPropSpec@@QEBAXAEAVPSerStream@@@Z
925; public: void __cdecl CNatLanguageRestriction::Marshall(class PSerStream & __ptr64)const __ptr64
926?Marshall@CNatLanguageRestriction@@QEBAXAEAVPSerStream@@@Z
927; public: void __cdecl CNodeRestriction::Marshall(class PSerStream & __ptr64)const __ptr64
928?Marshall@CNodeRestriction@@QEBAXAEAVPSerStream@@@Z
929; public: void __cdecl CNotRestriction::Marshall(class PSerStream & __ptr64)const __ptr64
930?Marshall@CNotRestriction@@QEBAXAEAVPSerStream@@@Z
931; public: void __cdecl CPropNameArray::Marshall(class PSerStream & __ptr64)const __ptr64
932?Marshall@CPropNameArray@@QEBAXAEAVPSerStream@@@Z
933; public: void __cdecl CPropertyRestriction::Marshall(class PSerStream & __ptr64)const __ptr64
934?Marshall@CPropertyRestriction@@QEBAXAEAVPSerStream@@@Z
935; public: void __cdecl CRestriction::Marshall(class PSerStream & __ptr64)const __ptr64
936?Marshall@CRestriction@@QEBAXAEAVPSerStream@@@Z
937; public: void __cdecl CVectorRestriction::Marshall(class PSerStream & __ptr64)const __ptr64
938?Marshall@CVectorRestriction@@QEBAXAEAVPSerStream@@@Z
939; public: int __cdecl CBufferCache::MinPageInUse(unsigned long & __ptr64) __ptr64
940?MinPageInUse@CBufferCache@@QEAAHAEAK@Z
941; public: int __cdecl CPhysStorage::MinPageInUse(unsigned long & __ptr64) __ptr64
942?MinPageInUse@CPhysStorage@@QEAAHAEAK@Z
943; unsigned long __cdecl MultiByteToXArrayWideChar(unsigned char const * __ptr64,unsigned long,unsigned int,class XArray<unsigned short> & __ptr64)
944?MultiByteToXArrayWideChar@@YAKPEBEKIAEAV?$XArray@G@@@Z
945; unsigned __int64 __cdecl My_wcstoui64(unsigned short const * __ptr64,unsigned short * __ptr64 * __ptr64,int)
946?My_wcstoui64@@YA_KPEBGPEAPEAGH@Z
947; public: unsigned long __cdecl CPidRemapper::NameToReal(class CFullPropSpec const * __ptr64) __ptr64
948?NameToReal@CPidRemapper@@QEAAKPEBVCFullPropSpec@@@Z
949; public: static struct IStemmer * __ptr64 __cdecl CCiOle::NewStemmer(struct _GUID const & __ptr64)
950?NewStemmer@CCiOle@@SAPEAUIStemmer@@AEBU_GUID@@@Z
951; public: static struct IWordBreaker * __ptr64 __cdecl CCiOle::NewWordBreaker(struct _GUID const & __ptr64)
952?NewWordBreaker@CCiOle@@SAPEAUIWordBreaker@@AEBU_GUID@@@Z
953; public: int __cdecl CCatalogEnum::Next(void) __ptr64
954?Next@CCatalogEnum@@QEAAHXZ
955; public: virtual long __cdecl CEnumString::Next(unsigned long,unsigned short * __ptr64 * __ptr64,unsigned long * __ptr64) __ptr64
956?Next@CEnumString@@UEAAJKPEAPEAGPEAK@Z
957; public: virtual long __cdecl CEnumWorkid::Next(unsigned long,unsigned long * __ptr64,unsigned long * __ptr64) __ptr64
958?Next@CEnumWorkid@@UEAAJKPEAK0@Z
959; public: virtual class CPropEntry const * __ptr64 __cdecl CPropertyList::Next(void) __ptr64
960?Next@CPropertyList@@UEAAPEBVCPropEntry@@XZ
961; public: int __cdecl CScopeEnum::Next(void) __ptr64
962?Next@CScopeEnum@@QEAAHXZ
963; public: unsigned long __cdecl CPropertyStoreWids::NextWorkId(void) __ptr64
964?NextWorkId@CPropertyStoreWids@@QEAAKXZ
965; public: unsigned int __cdecl CCatState::NumberOfColumns(void)const __ptr64
966?NumberOfColumns@CCatState@@QEBAIXZ
967; public: unsigned int __cdecl CCatState::NumberOfSortProps(void)const __ptr64
968?NumberOfSortProps@CCatState@@QEBAIXZ
969; public: void __cdecl CMmStream::Open(unsigned short const * __ptr64,unsigned long,unsigned long,unsigned long,unsigned long,int) __ptr64
970?Open@CMmStream@@QEAAXPEBGKKKKH@Z
971; public: int __cdecl COLEPropManager::Open(class CFunnyPath const & __ptr64) __ptr64
972?Open@COLEPropManager@@QEAAHAEBVCFunnyPath@@@Z
973; public: void __cdecl CMmStream::OpenExclusive(unsigned short * __ptr64,int) __ptr64
974?OpenExclusive@CMmStream@@QEAAXPEAGH@Z
975; struct _iobuf * __ptr64 __cdecl OpenFileFromPath(unsigned short const * __ptr64)
976?OpenFileFromPath@@YAPEAU_iobuf@@PEBG@Z
977; public: class CCompositePropRecord * __ptr64 __cdecl CPropStoreManager::OpenRecord(unsigned long,unsigned char * __ptr64) __ptr64
978?OpenRecord@CPropStoreManager@@QEAAPEAVCCompositePropRecord@@KPEAE@Z
979; public: class CCompositePropRecordForWrites * __ptr64 __cdecl CPropStoreManager::OpenRecordForWrites(unsigned long,unsigned char * __ptr64) __ptr64
980?OpenRecordForWrites@CPropStoreManager@@QEAAPEAVCCompositePropRecordForWrites@@KPEAE@Z
981; long __cdecl ParseCatalogURL(unsigned short const * __ptr64,class XPtrST<unsigned short> & __ptr64,class XPtrST<unsigned short> & __ptr64)
982?ParseCatalogURL@@YAJPEBGAEAV?$XPtrST@G@@1@Z
983; public: class CRestriction * __ptr64 __cdecl CParseCommandTree::ParseExpression(class CDbCmdTreeNode * __ptr64) __ptr64
984?ParseExpression@CParseCommandTree@@QEAAPEAVCRestriction@@PEAVCDbCmdTreeNode@@@Z
985; public: static void __cdecl CPropertyList::ParseOneLine(class CQueryScanner & __ptr64,int,class XPtr<class CPropEntry> & __ptr64)
986?ParseOneLine@CPropertyList@@SAXAEAVCQueryScanner@@HAEAV?$XPtr@VCPropEntry@@@@@Z
987; public: class CDbRestriction * __ptr64 __cdecl CQueryParser::ParseQueryPhrase(void) __ptr64
988?ParseQueryPhrase@CQueryParser@@QEAAPEAVCDbRestriction@@XZ
989; class CDbColumns * __ptr64 __cdecl ParseStringColumns(unsigned short const * __ptr64,struct IColumnMapper * __ptr64,unsigned long,class PVariableSet * __ptr64,class CDynArray<unsigned short> * __ptr64)
990?ParseStringColumns@@YAPEAVCDbColumns@@PEBGPEAUIColumnMapper@@KPEAVPVariableSet@@PEAV?$CDynArray@G@@@Z
991; public: int __cdecl CCatalogAdmin::Pause(void) __ptr64
992?Pause@CCatalogAdmin@@QEAAHXZ
993; public: int __cdecl CMachineAdmin::PauseCI(void) __ptr64
994?PauseCI@CMachineAdmin@@QEAAHXZ
995; public: virtual unsigned long __cdecl CMemDeSerStream::PeekULong(void) __ptr64
996?PeekULong@CMemDeSerStream@@UEAAKXZ
997; public: unsigned long __cdecl CPidMapper::PidToRealPid(unsigned long) __ptr64
998?PidToRealPid@CPidMapper@@QEAAKK@Z
999; public: unsigned long __cdecl CStandardPropMapper::PropertyToPropId(class CFullPropSpec const & __ptr64,int) __ptr64
1000?PropertyToPropId@CStandardPropMapper@@QEAAKAEBVCFullPropSpec@@H@Z
1001; public: virtual long __cdecl CFwPropertyMapper::PropertyToPropid(struct tagFULLPROPSPEC const * __ptr64,int,unsigned long * __ptr64) __ptr64
1002?PropertyToPropid@CFwPropertyMapper@@UEAAJPEBUtagFULLPROPSPEC@@HPEAK@Z
1003; public: void __cdecl CValueNormalizer::PutMaxValue(unsigned long,unsigned long & __ptr64,enum VARENUM) __ptr64
1004?PutMaxValue@CValueNormalizer@@QEAAXKAEAKW4VARENUM@@@Z
1005; public: void __cdecl CValueNormalizer::PutMinValue(unsigned long,unsigned long & __ptr64,enum VARENUM) __ptr64
1006?PutMinValue@CValueNormalizer@@QEAAXKAEAKW4VARENUM@@@Z
1007; public: void __cdecl CValueNormalizer::PutValue(unsigned long,unsigned long & __ptr64,class CStorageVariant const & __ptr64) __ptr64
1008?PutValue@CValueNormalizer@@QEAAXKAEAKAEBVCStorageVariant@@@Z
1009; void __cdecl PutWString(class PSerStream & __ptr64,unsigned short const * __ptr64)
1010?PutWString@@YAXAEAVPSerStream@@PEBG@Z
1011; private: class CDbRestriction * __ptr64 __cdecl CQueryParser::Query(class CDbNodeRestriction * __ptr64) __ptr64
1012?Query@CQueryParser@@AEAAPEAVCDbRestriction@@PEAVCDbNodeRestriction@@@Z
1013; public: class CCatalogAdmin * __ptr64 __cdecl CCatalogEnum::QueryCatalogAdmin(void) __ptr64
1014?QueryCatalogAdmin@CCatalogEnum@@QEAAPEAVCCatalogAdmin@@XZ
1015; public: class CCatalogAdmin * __ptr64 __cdecl CMachineAdmin::QueryCatalogAdmin(unsigned short const * __ptr64) __ptr64
1016?QueryCatalogAdmin@CMachineAdmin@@QEAAPEAVCCatalogAdmin@@PEBG@Z
1017; public: class CCatalogEnum * __ptr64 __cdecl CMachineAdmin::QueryCatalogEnum(void) __ptr64
1018?QueryCatalogEnum@CMachineAdmin@@QEAAPEAVCCatalogEnum@@XZ
1019; public: virtual long __cdecl CDbProperties::QueryInterface(struct _GUID const & __ptr64,void * __ptr64 * __ptr64) __ptr64
1020?QueryInterface@CDbProperties@@UEAAJAEBU_GUID@@PEAPEAX@Z
1021; public: virtual long __cdecl CEmptyPropertyList::QueryInterface(struct _GUID const & __ptr64,void * __ptr64 * __ptr64) __ptr64
1022?QueryInterface@CEmptyPropertyList@@UEAAJAEBU_GUID@@PEAPEAX@Z
1023; public: virtual long __cdecl CEnumString::QueryInterface(struct _GUID const & __ptr64,void * __ptr64 * __ptr64) __ptr64
1024?QueryInterface@CEnumString@@UEAAJAEBU_GUID@@PEAPEAX@Z
1025; public: virtual long __cdecl CEnumWorkid::QueryInterface(struct _GUID const & __ptr64,void * __ptr64 * __ptr64) __ptr64
1026?QueryInterface@CEnumWorkid@@UEAAJAEBU_GUID@@PEAPEAX@Z
1027; public: virtual long __cdecl CFwPropertyMapper::QueryInterface(struct _GUID const & __ptr64,void * __ptr64 * __ptr64) __ptr64
1028?QueryInterface@CFwPropertyMapper@@UEAAJAEBU_GUID@@PEAPEAX@Z
1029; public: virtual long __cdecl CQueryUnknown::QueryInterface(struct _GUID const & __ptr64,void * __ptr64 * __ptr64) __ptr64
1030?QueryInterface@CQueryUnknown@@UEAAJAEBU_GUID@@PEAPEAX@Z
1031; public: class PRcovStorageObj * __ptr64 __cdecl CiStorage::QueryPidLookupTable(unsigned long) __ptr64
1032?QueryPidLookupTable@CiStorage@@QEAAPEAVPRcovStorageObj@@K@Z
1033; public: class CScopeAdmin * __ptr64 __cdecl CCatalogAdmin::QueryScopeAdmin(unsigned short const * __ptr64) __ptr64
1034?QueryScopeAdmin@CCatalogAdmin@@QEAAPEAVCScopeAdmin@@PEBG@Z
1035; public: class CScopeAdmin * __ptr64 __cdecl CScopeEnum::QueryScopeAdmin(void) __ptr64
1036?QueryScopeAdmin@CScopeEnum@@QEAAPEAVCScopeAdmin@@XZ
1037; public: class CScopeEnum * __ptr64 __cdecl CCatalogAdmin::QueryScopeEnum(void) __ptr64
1038?QueryScopeEnum@CCatalogAdmin@@QEAAPEAVCScopeEnum@@XZ
1039; public: class PRcovStorageObj * __ptr64 __cdecl CiStorage::QueryScopeList(unsigned long) __ptr64
1040?QueryScopeList@CiStorage@@QEAAPEAVPRcovStorageObj@@K@Z
1041; public: class PRcovStorageObj * __ptr64 __cdecl CiStorage::QuerySdidLookupTable(unsigned long) __ptr64
1042?QuerySdidLookupTable@CiStorage@@QEAAPEAVPRcovStorageObj@@K@Z
1043; public: class PRcovStorageObj * __ptr64 __cdecl CiStorage::QueryVirtualScopeList(unsigned long) __ptr64
1044?QueryVirtualScopeList@CiStorage@@QEAAPEAVPRcovStorageObj@@K@Z
1045; public: void __cdecl CPidRemapper::ReBuild(class CPidMapper const & __ptr64) __ptr64
1046?ReBuild@CPidRemapper@@QEAAXAEBVCPidMapper@@@Z
1047; public: void __cdecl CQueryUnknown::ReInit(unsigned long,class CRowset * __ptr64 * __ptr64) __ptr64
1048?ReInit@CQueryUnknown@@QEAAXKPEAPEAVCRowset@@@Z
1049; public: void __cdecl CImpersonationTokenCache::ReInitializeIISScopes(void) __ptr64
1050?ReInitializeIISScopes@CImpersonationTokenCache@@QEAAXXZ
1051; private: virtual void __cdecl CPhysIndex::ReOpenStream(void) __ptr64
1052?ReOpenStream@CPhysIndex@@EEAAXXZ
1053; public: unsigned long __cdecl CDynStream::Read(void * __ptr64,unsigned long) __ptr64
1054?Read@CDynStream@@QEAAKPEAXK@Z
1055; public: unsigned long __cdecl CRcovStrmTrans::Read(void * __ptr64,unsigned long) __ptr64
1056?Read@CRcovStrmTrans@@QEAAKPEAXK@Z
1057; public: unsigned long __cdecl CRegAccess::Read(unsigned short const * __ptr64,unsigned long) __ptr64
1058?Read@CRegAccess@@QEAAKPEBGK@Z
1059; public: unsigned short * __ptr64 __cdecl CRegAccess::Read(unsigned short const * __ptr64,unsigned short const * __ptr64) __ptr64
1060?Read@CRegAccess@@QEAAPEAGPEBG0@Z
1061; public: int __cdecl CPropStoreManager::ReadPrimaryProperty(unsigned long,unsigned long,struct tagPROPVARIANT & __ptr64) __ptr64
1062?ReadPrimaryProperty@CPropStoreManager@@QEAAHKKAEAUtagPROPVARIANT@@@Z
1063; public: int __cdecl COLEPropManager::ReadProperty(class CFullPropSpec const & __ptr64,struct tagPROPVARIANT & __ptr64) __ptr64
1064?ReadProperty@COLEPropManager@@QEAAHAEBVCFullPropSpec@@AEAUtagPROPVARIANT@@@Z
1065; public: int __cdecl CPropStoreManager::ReadProperty(class CCompositePropRecord & __ptr64,unsigned long,struct tagPROPVARIANT & __ptr64) __ptr64
1066?ReadProperty@CPropStoreManager@@QEAAHAEAVCCompositePropRecord@@KAEAUtagPROPVARIANT@@@Z
1067; public: int __cdecl CPropStoreManager::ReadProperty(class CCompositePropRecord & __ptr64,unsigned long,struct tagPROPVARIANT & __ptr64,unsigned char * __ptr64,unsigned int * __ptr64) __ptr64
1068?ReadProperty@CPropStoreManager@@QEAAHAEAVCCompositePropRecord@@KAEAUtagPROPVARIANT@@PEAEPEAI@Z
1069; public: int __cdecl CPropStoreManager::ReadProperty(class CCompositePropRecord & __ptr64,unsigned long,struct tagPROPVARIANT * __ptr64,unsigned int * __ptr64) __ptr64
1070?ReadProperty@CPropStoreManager@@QEAAHAEAVCCompositePropRecord@@KPEAUtagPROPVARIANT@@PEAI@Z
1071; public: int __cdecl CPropStoreManager::ReadProperty(unsigned long,unsigned long,struct tagPROPVARIANT & __ptr64) __ptr64
1072?ReadProperty@CPropStoreManager@@QEAAHKKAEAUtagPROPVARIANT@@@Z
1073; public: int __cdecl CPropStoreManager::ReadProperty(unsigned long,unsigned long,struct tagPROPVARIANT & __ptr64,unsigned char * __ptr64,unsigned int * __ptr64) __ptr64
1074?ReadProperty@CPropStoreManager@@QEAAHKKAEAUtagPROPVARIANT@@PEAEPEAI@Z
1075; public: int __cdecl CPropStoreManager::ReadProperty(unsigned long,unsigned long,struct tagPROPVARIANT * __ptr64,unsigned int * __ptr64) __ptr64
1076?ReadProperty@CPropStoreManager@@QEAAHKKPEAUtagPROPVARIANT@@PEAI@Z
1077; public: int __cdecl CPropertyStore::ReadProperty(class CPropRecordNoLock & __ptr64,unsigned long,struct tagPROPVARIANT * __ptr64,unsigned int * __ptr64) __ptr64
1078?ReadProperty@CPropertyStore@@QEAAHAEAVCPropRecordNoLock@@KPEAUtagPROPVARIANT@@PEAI@Z
1079; public: int __cdecl CPropertyStore::ReadProperty(unsigned long,unsigned long,struct tagPROPVARIANT & __ptr64) __ptr64
1080?ReadProperty@CPropertyStore@@QEAAHKKAEAUtagPROPVARIANT@@@Z
1081; public: unsigned char __cdecl CDFA::Recognize(unsigned short const * __ptr64) __ptr64
1082?Recognize@CDFA@@QEAAEPEBG@Z
1083; public: void __cdecl CCiRegParams::Refresh(struct ICiAdminParams * __ptr64,int) __ptr64
1084?Refresh@CCiRegParams@@QEAAXPEAUICiAdminParams@@H@Z
1085; public: void __cdecl CDefColumnRegEntry::Refresh(int) __ptr64
1086?Refresh@CDefColumnRegEntry@@QEAAXH@Z
1087; public: void __cdecl CWorkQueue::RefreshParams(unsigned long,unsigned long) __ptr64
1088?RefreshParams@CWorkQueue@@QEAAXKK@Z
1089; public: virtual unsigned long __cdecl CDbProperties::Release(void) __ptr64
1090?Release@CDbProperties@@UEAAKXZ
1091; public: virtual unsigned long __cdecl CEmptyPropertyList::Release(void) __ptr64
1092?Release@CEmptyPropertyList@@UEAAKXZ
1093; public: virtual unsigned long __cdecl CEnumString::Release(void) __ptr64
1094?Release@CEnumString@@UEAAKXZ
1095; public: virtual unsigned long __cdecl CEnumWorkid::Release(void) __ptr64
1096?Release@CEnumWorkid@@UEAAKXZ
1097; public: virtual unsigned long __cdecl CFwPropertyMapper::Release(void) __ptr64
1098?Release@CFwPropertyMapper@@UEAAKXZ
1099; public: void __cdecl CImpersonateRemoteAccess::Release(void) __ptr64
1100?Release@CImpersonateRemoteAccess@@QEAAXXZ
1101; public: virtual unsigned long __cdecl CQueryUnknown::Release(void) __ptr64
1102?Release@CQueryUnknown@@UEAAKXZ
1103; public: void __cdecl CWorkQueue::Release(class CWorkThread * __ptr64) __ptr64
1104?Release@CWorkQueue@@QEAAXPEAVCWorkThread@@@Z
1105; private: void __cdecl CPropertyStore::ReleaseRead(class CReadWriteLockRecord & __ptr64) __ptr64
1106?ReleaseRead@CPropertyStore@@AEAAXAEAVCReadWriteLockRecord@@@Z
1107; public: void __cdecl CWorkQueue::ReleaseWorkThreads(void) __ptr64
1108?ReleaseWorkThreads@CWorkQueue@@QEAAXXZ
1109; public: void __cdecl CColumns::Remove(unsigned int) __ptr64
1110?Remove@CColumns@@QEAAXI@Z
1111; public: void __cdecl CDbSortSet::Remove(unsigned int) __ptr64
1112?Remove@CDbSortSet@@QEAAXI@Z
1113; public: void __cdecl CSort::Remove(unsigned int) __ptr64
1114?Remove@CSort@@QEAAXI@Z
1115; private: void __cdecl CWorkQueue::Remove(class CWorkThread & __ptr64) __ptr64
1116?Remove@CWorkQueue@@AEAAXAEAVCWorkThread@@@Z
1117; public: void __cdecl CWorkQueue::Remove(class PWorkItem * __ptr64) __ptr64
1118?Remove@CWorkQueue@@QEAAXPEAVPWorkItem@@@Z
1119; public: void __cdecl CMachineAdmin::RemoveCatalog(unsigned short const * __ptr64,int) __ptr64
1120?RemoveCatalog@CMachineAdmin@@QEAAXPEBGH@Z
1121; public: void __cdecl CMachineAdmin::RemoveCatalogFiles(unsigned short const * __ptr64) __ptr64
1122?RemoveCatalogFiles@CMachineAdmin@@QEAAXPEBG@Z
1123; public: class CRestriction * __ptr64 __cdecl CNodeRestriction::RemoveChild(unsigned int) __ptr64
1124?RemoveChild@CNodeRestriction@@QEAAPEAVCRestriction@@I@Z
1125; protected: class CDbCmdTreeNode * __ptr64 __cdecl CDbCmdTreeNode::RemoveFirstChild(void) __ptr64
1126?RemoveFirstChild@CDbCmdTreeNode@@IEAAPEAV1@XZ
1127; public: void __cdecl CCatalogAdmin::RemoveScope(unsigned short const * __ptr64) __ptr64
1128?RemoveScope@CCatalogAdmin@@QEAAXPEBG@Z
1129; public: void __cdecl CPhysStorage::Reopen(int) __ptr64
1130?Reopen@CPhysStorage@@QEAAXH@Z
1131; public: void __cdecl CEventLog::ReportEventW(class CEventItem & __ptr64) __ptr64
1132?ReportEventW@CEventLog@@QEAAXAEAVCEventItem@@@Z
1133; public: void __cdecl CFwEventItem::ReportEventW(struct ICiCAdviseStatus & __ptr64) __ptr64
1134?ReportEventW@CFwEventItem@@QEAAXAEAUICiCAdviseStatus@@@Z
1135; public: int __cdecl CPhysStorage::RequiresFlush(unsigned long) __ptr64
1136?RequiresFlush@CPhysStorage@@QEAAHK@Z
1137; public: void __cdecl CRegChangeEvent::Reset(void) __ptr64
1138?Reset@CRegChangeEvent@@QEAAXXZ
1139; public: void __cdecl CQueryScanner::ResetBuffer(unsigned short const * __ptr64) __ptr64
1140?ResetBuffer@CQueryScanner@@QEAAXPEBG@Z
1141; protected: void __cdecl CAllocStorageVariant::ResetType(class PMemoryAllocator & __ptr64) __ptr64
1142?ResetType@CAllocStorageVariant@@IEAAXAEAVPMemoryAllocator@@@Z
1143; public: void __cdecl CProcess::Resume(void) __ptr64
1144?Resume@CProcess@@QEAAXXZ
1145; public: void __cdecl CPhysStorage::ReturnBuffer(unsigned long,int,int) __ptr64
1146?ReturnBuffer@CPhysStorage@@QEAAXKHH@Z
1147; public: void __cdecl CMmStreamConsecBuf::Rewind(void) __ptr64
1148?Rewind@CMmStreamConsecBuf@@QEAAXXZ
1149; unsigned long __cdecl SaComputeSize(unsigned short,struct tagSAFEARRAY & __ptr64)
1150?SaComputeSize@@YAKGAEAUtagSAFEARRAY@@@Z
1151; int __cdecl SaCreateAndCopy(class PMemoryAllocator & __ptr64,struct tagSAFEARRAY * __ptr64,struct tagSAFEARRAY * __ptr64 * __ptr64)
1152?SaCreateAndCopy@@YAHAEAVPMemoryAllocator@@PEAUtagSAFEARRAY@@PEAPEAU2@@Z
1153; int __cdecl SaCreateData(class PVarAllocator & __ptr64,unsigned short,struct tagSAFEARRAY & __ptr64,struct tagSAFEARRAY & __ptr64,int)
1154?SaCreateData@@YAHAEAVPVarAllocator@@GAEAUtagSAFEARRAY@@1H@Z
1155; public: int __cdecl CRcovStrmTrans::Seek(unsigned long) __ptr64
1156?Seek@CRcovStrmTrans@@QEAAHK@Z
1157; public: void __cdecl CDbQueryResults::Serialize(class PSerStream & __ptr64)const __ptr64
1158?Serialize@CDbQueryResults@@QEBAXAEAVPSerStream@@@Z
1159; public: void __cdecl CPidRemapper::Set(class XArray<unsigned long> & __ptr64) __ptr64
1160?Set@CPidRemapper@@QEAAXAEAV?$XArray@K@@@Z
1161; public: void __cdecl CScopeAdmin::SetAlias(unsigned short const * __ptr64) __ptr64
1162?SetAlias@CScopeAdmin@@QEAAXPEBG@Z
1163; public: void __cdecl CStorageVariant::SetBOOL(short,unsigned int) __ptr64
1164?SetBOOL@CStorageVariant@@QEAAXFI@Z
1165; public: void __cdecl CAllocStorageVariant::SetBSTR(unsigned short * __ptr64,class PMemoryAllocator & __ptr64) __ptr64
1166?SetBSTR@CAllocStorageVariant@@QEAAXPEAGAEAVPMemoryAllocator@@@Z
1167; public: void __cdecl CStorageVariant::SetBSTR(unsigned short * __ptr64,unsigned int) __ptr64
1168?SetBSTR@CStorageVariant@@QEAAXPEAGI@Z
1169; public: void __cdecl CPropStoreManager::SetBackupSize(unsigned long,unsigned long) __ptr64
1170?SetBackupSize@CPropStoreManager@@QEAAXKK@Z
1171; public: void __cdecl CCatState::SetCD(unsigned short const * __ptr64) __ptr64
1172?SetCD@CCatState@@QEAAXPEBG@Z
1173; public: void __cdecl CStorageVariant::SetCLSID(struct _GUID const * __ptr64) __ptr64
1174?SetCLSID@CStorageVariant@@QEAAXPEBU_GUID@@@Z
1175; public: void __cdecl CStorageVariant::SetCLSID(struct _GUID,unsigned int) __ptr64
1176?SetCLSID@CStorageVariant@@QEAAXU_GUID@@I@Z
1177; public: void __cdecl CStorageVariant::SetCY(union tagCY,unsigned int) __ptr64
1178?SetCY@CStorageVariant@@QEAAXTtagCY@@I@Z
1179; public: void __cdecl CCatState::SetCatalog(unsigned short const * __ptr64) __ptr64
1180?SetCatalog@CCatState@@QEAAXPEBG@Z
1181; public: void __cdecl CCatState::SetColumn(unsigned short const * __ptr64,unsigned int) __ptr64
1182?SetColumn@CCatState@@QEAAXPEBGI@Z
1183; private: void __cdecl CQueryParser::SetCurrentProperty(unsigned short const * __ptr64,enum PropertyType) __ptr64
1184?SetCurrentProperty@CQueryParser@@AEAAXPEBGW4PropertyType@@@Z
1185; public: void __cdecl CStorageVariant::SetDATE(double,unsigned int) __ptr64
1186?SetDATE@CStorageVariant@@QEAAXNI@Z
1187; public: void __cdecl CCatalogAdmin::SetDWORDParam(unsigned short const * __ptr64,unsigned long) __ptr64
1188?SetDWORDParam@CCatalogAdmin@@QEAAXPEBGK@Z
1189; public: void __cdecl CMachineAdmin::SetDWORDParam(unsigned short const * __ptr64,unsigned long) __ptr64
1190?SetDWORDParam@CMachineAdmin@@QEAAXPEBGK@Z
1191; public: void __cdecl CCatState::SetDefaultProperty(unsigned short const * __ptr64) __ptr64
1192?SetDefaultProperty@CCatState@@QEAAXPEBG@Z
1193; public: void __cdecl CScopeAdmin::SetExclude(int) __ptr64
1194?SetExclude@CScopeAdmin@@QEAAXH@Z
1195; public: void __cdecl CStorageVariant::SetFILETIME(struct _FILETIME,unsigned int) __ptr64
1196?SetFILETIME@CStorageVariant@@QEAAXU_FILETIME@@I@Z
1197; public: void __cdecl CStorageVariant::SetI2(short,unsigned int) __ptr64
1198?SetI2@CStorageVariant@@QEAAXFI@Z
1199; public: void __cdecl CStorageVariant::SetI4(long,unsigned int) __ptr64
1200?SetI4@CStorageVariant@@QEAAXJI@Z
1201; public: void __cdecl CStorageVariant::SetI8(union _LARGE_INTEGER,unsigned int) __ptr64
1202?SetI8@CStorageVariant@@QEAAXT_LARGE_INTEGER@@I@Z
1203; public: void __cdecl CStorageVariant::SetLPSTR(char const * __ptr64,unsigned int) __ptr64
1204?SetLPSTR@CStorageVariant@@QEAAXPEBDI@Z
1205; public: void __cdecl CStorageVariant::SetLPWSTR(unsigned short const * __ptr64,unsigned int) __ptr64
1206?SetLPWSTR@CStorageVariant@@QEAAXPEBGI@Z
1207; public: void __cdecl CCatState::SetLocale(unsigned short const * __ptr64) __ptr64
1208?SetLocale@CCatState@@QEAAXPEBG@Z
1209; public: void __cdecl CScopeAdmin::SetLogonInfo(unsigned short const * __ptr64,unsigned short const * __ptr64,class CCatalogAdmin & __ptr64) __ptr64
1210?SetLogonInfo@CScopeAdmin@@QEAAXPEBG0AEAVCCatalogAdmin@@@Z
1211; public: void __cdecl CPropStoreManager::SetMappedCacheSize(unsigned long,unsigned long) __ptr64
1212?SetMappedCacheSize@CPropStoreManager@@QEAAXKK@Z
1213; public: void __cdecl CCatState::SetNumberOfColumns(unsigned int) __ptr64
1214?SetNumberOfColumns@CCatState@@QEAAXI@Z
1215; public: void __cdecl CCatState::SetNumberOfSortProps(unsigned int) __ptr64
1216?SetNumberOfSortProps@CCatState@@QEAAXI@Z
1217; public: void __cdecl CScopeAdmin::SetPath(unsigned short const * __ptr64) __ptr64
1218?SetPath@CScopeAdmin@@QEAAXPEBG@Z
1219; public: void __cdecl CContentRestriction::SetPhrase(unsigned short const * __ptr64) __ptr64
1220?SetPhrase@CContentRestriction@@QEAAXPEBG@Z
1221; public: void __cdecl CNatLanguageRestriction::SetPhrase(unsigned short const * __ptr64) __ptr64
1222?SetPhrase@CNatLanguageRestriction@@QEAAXPEBG@Z
1223; public: void __cdecl CGenericCiProxy::SetPriority(unsigned long,unsigned long) __ptr64
1224?SetPriority@CGenericCiProxy@@QEAAXKK@Z
1225; public: virtual long __cdecl CDbProperties::SetProperties(unsigned long,struct tagDBPROPSET * __ptr64 const) __ptr64
1226?SetProperties@CDbProperties@@UEAAJKQEAUtagDBPROPSET@@@Z
1227; public: int __cdecl CDbColId::SetProperty(unsigned short const * __ptr64) __ptr64
1228?SetProperty@CDbColId@@QEAAHPEBG@Z
1229; public: int __cdecl CDbPropBaseRestriction::SetProperty(struct tagDBID const & __ptr64) __ptr64
1230?SetProperty@CDbPropBaseRestriction@@QEAAHAEBUtagDBID@@@Z
1231; public: int __cdecl CDbPropBaseRestriction::SetProperty(class CDbColumnNode const & __ptr64) __ptr64
1232?SetProperty@CDbPropBaseRestriction@@QEAAHAEBVCDbColumnNode@@@Z
1233; public: int __cdecl CFullPropSpec::SetProperty(unsigned short const * __ptr64) __ptr64
1234?SetProperty@CFullPropSpec@@QEAAHPEBG@Z
1235; public: void __cdecl CFullPropSpec::SetProperty(unsigned long) __ptr64
1236?SetProperty@CFullPropSpec@@QEAAXK@Z
1237; public: void __cdecl CStorageVariant::SetR4(float,unsigned int) __ptr64
1238?SetR4@CStorageVariant@@QEAAXMI@Z
1239; public: void __cdecl CStorageVariant::SetR8(double,unsigned int) __ptr64
1240?SetR8@CStorageVariant@@QEAAXNI@Z
1241; public: int __cdecl CDbSelectNode::SetRestriction(class CDbCmdTreeNode * __ptr64) __ptr64
1242?SetRestriction@CDbSelectNode@@QEAAHPEAVCDbCmdTreeNode@@@Z
1243; public: static void __cdecl CImpersonateSystem::SetRunningAsSystem(void)
1244?SetRunningAsSystem@CImpersonateSystem@@SAXXZ
1245; public: void __cdecl CMachineAdmin::SetSZParam(unsigned short const * __ptr64,unsigned short const * __ptr64,unsigned long) __ptr64
1246?SetSZParam@CMachineAdmin@@QEAAXPEBG0K@Z
1247; void __cdecl SetScopeProperties(struct ICommand * __ptr64,unsigned int,unsigned short const * __ptr64 const * __ptr64,unsigned long const * __ptr64,unsigned short const * __ptr64 const * __ptr64,unsigned short const * __ptr64 const * __ptr64)
1248?SetScopeProperties@@YAXPEAUICommand@@IPEBQEBGPEBK11@Z
1249; long __cdecl SetScopePropertiesNoThrow(struct ICommand * __ptr64,unsigned int,unsigned short const * __ptr64 const * __ptr64,unsigned long const * __ptr64,unsigned short const * __ptr64 const * __ptr64,unsigned short const * __ptr64 const * __ptr64)
1250?SetScopePropertiesNoThrow@@YAJPEAUICommand@@IPEBQEBGPEBK11@Z
1251; void __cdecl SetSecret(unsigned short const * __ptr64,unsigned short const * __ptr64,unsigned short const * __ptr64,unsigned long)
1252?SetSecret@@YAXPEBG00K@Z
1253; public: void __cdecl CCatState::SetSortProp(unsigned short const * __ptr64,enum SORTDIR,unsigned int) __ptr64
1254?SetSortProp@CCatState@@QEAAXPEBGW4SORTDIR@@I@Z
1255; public: void __cdecl CStorageVariant::SetUI1(unsigned char,unsigned int) __ptr64
1256?SetUI1@CStorageVariant@@QEAAXEI@Z
1257; public: void __cdecl CStorageVariant::SetUI2(unsigned short,unsigned int) __ptr64
1258?SetUI2@CStorageVariant@@QEAAXGI@Z
1259; public: void __cdecl CStorageVariant::SetUI4(unsigned long,unsigned int) __ptr64
1260?SetUI4@CStorageVariant@@QEAAXKI@Z
1261; public: void __cdecl CStorageVariant::SetUI8(union _ULARGE_INTEGER,unsigned int) __ptr64
1262?SetUI8@CStorageVariant@@QEAAXT_ULARGE_INTEGER@@I@Z
1263; public: void __cdecl CPropertyRestriction::SetValue(struct tagBLOB & __ptr64) __ptr64
1264?SetValue@CPropertyRestriction@@QEAAXAEAUtagBLOB@@@Z
1265; public: void __cdecl CPropertyRestriction::SetValue(unsigned short * __ptr64) __ptr64
1266?SetValue@CPropertyRestriction@@QEAAXPEAG@Z
1267; public: void __cdecl CPropertyRestriction::SetValue(struct _GUID * __ptr64) __ptr64
1268?SetValue@CPropertyRestriction@@QEAAXPEAU_GUID@@@Z
1269; public: void __cdecl CDbCmdTreeNode::SetWeight(long) __ptr64
1270?SetWeight@CDbCmdTreeNode@@QEAAXJ@Z
1271; public: void __cdecl CPropStoreManager::Setup(unsigned long,unsigned long,unsigned long,unsigned __int64,int,unsigned long) __ptr64
1272?Setup@CPropStoreManager@@QEAAXKKK_KHK@Z
1273; public: void __cdecl CDynStream::Shrink(class PStorage & __ptr64,unsigned long) __ptr64
1274?Shrink@CDynStream@@QEAAXAEAVPStorage@@K@Z
1275; public: unsigned long __cdecl CPhysStorage::ShrinkFromFront(unsigned long,unsigned long) __ptr64
1276?ShrinkFromFront@CPhysStorage@@QEAAKKK@Z
1277; public: void __cdecl CPhysStorage::ShrinkToFit(void) __ptr64
1278?ShrinkToFit@CPhysStorage@@QEAAXXZ
1279; public: static void __cdecl CCiOle::Shutdown(void)
1280?Shutdown@CCiOle@@SAXXZ
1281; public: void __cdecl CPropStoreManager::Shutdown(void) __ptr64
1282?Shutdown@CPropStoreManager@@QEAAXXZ
1283; public: void __cdecl CWorkQueue::Shutdown(void) __ptr64
1284?Shutdown@CWorkQueue@@QEAAXXZ
1285; public: unsigned long __cdecl CDbQueryResults::Size(void) __ptr64
1286?Size@CDbQueryResults@@QEAAKXZ
1287; public: virtual long __cdecl CEnumString::Skip(unsigned long) __ptr64
1288?Skip@CEnumString@@UEAAJK@Z
1289; public: virtual long __cdecl CEnumWorkid::Skip(unsigned long) __ptr64
1290?Skip@CEnumWorkid@@UEAAJK@Z
1291; public: virtual void __cdecl CMemDeSerStream::SkipBlob(unsigned long) __ptr64
1292?SkipBlob@CMemDeSerStream@@UEAAXK@Z
1293; public: virtual void __cdecl CMemDeSerStream::SkipByte(void) __ptr64
1294?SkipByte@CMemDeSerStream@@UEAAXXZ
1295; public: virtual void __cdecl CMemDeSerStream::SkipChar(unsigned long) __ptr64
1296?SkipChar@CMemDeSerStream@@UEAAXK@Z
1297; public: virtual void __cdecl CMemDeSerStream::SkipDouble(void) __ptr64
1298?SkipDouble@CMemDeSerStream@@UEAAXXZ
1299; public: virtual void __cdecl CMemDeSerStream::SkipFloat(void) __ptr64
1300?SkipFloat@CMemDeSerStream@@UEAAXXZ
1301; public: virtual void __cdecl CMemDeSerStream::SkipGUID(void) __ptr64
1302?SkipGUID@CMemDeSerStream@@UEAAXXZ
1303; public: virtual void __cdecl CMemDeSerStream::SkipLong(void) __ptr64
1304?SkipLong@CMemDeSerStream@@UEAAXXZ
1305; public: virtual void __cdecl CMemDeSerStream::SkipULong(void) __ptr64
1306?SkipULong@CMemDeSerStream@@UEAAXXZ
1307; public: virtual void __cdecl CMemDeSerStream::SkipUShort(void) __ptr64
1308?SkipUShort@CMemDeSerStream@@UEAAXXZ
1309; public: virtual void __cdecl CMemDeSerStream::SkipWChar(unsigned long) __ptr64
1310?SkipWChar@CMemDeSerStream@@UEAAXK@Z
1311; public: int __cdecl CCatalogAdmin::Start(void) __ptr64
1312?Start@CCatalogAdmin@@QEAAHXZ
1313; public: int __cdecl CMachineAdmin::StartCI(void) __ptr64
1314?StartCI@CMachineAdmin@@QEAAHXZ
1315; public: int __cdecl CCatalogAdmin::Stop(void) __ptr64
1316?Stop@CCatalogAdmin@@QEAAHXZ
1317; public: int __cdecl CMachineAdmin::StopCI(void) __ptr64
1318?StopCI@CMachineAdmin@@QEAAHXZ
1319; public: void __cdecl CFilterDaemon::StopFiltering(void) __ptr64
1320?StopFiltering@CFilterDaemon@@QEAAXXZ
1321; public: unsigned int __cdecl CKey::StrLen(void)const __ptr64
1322?StrLen@CKey@@QEBAIXZ
1323; public: unsigned int __cdecl CKeyBuf::StrLen(void)const __ptr64
1324?StrLen@CKeyBuf@@QEBAIXZ
1325; void __cdecl SystemExceptionTranslator(unsigned int,struct _EXCEPTION_POINTERS * __ptr64)
1326?SystemExceptionTranslator@@YAXIPEAU_EXCEPTION_POINTERS@@@Z
1327; public: unsigned long __cdecl CRestriction::TreeCount(void)const __ptr64
1328?TreeCount@CRestriction@@QEBAKXZ
1329; public: void __cdecl CMachineAdmin::TunePerformance(int,unsigned short,unsigned short) __ptr64
1330?TunePerformance@CMachineAdmin@@QEAAXHGG@Z
1331; void __cdecl URLEscapeW(unsigned short const * __ptr64,class CVirtualString & __ptr64,unsigned long,int)
1332?URLEscapeW@@YAXPEBGAEAVCVirtualString@@KH@Z
1333; public: int __cdecl CDbProperties::UnMarshall(class PDeSerStream & __ptr64) __ptr64
1334?UnMarshall@CDbProperties@@QEAAHAEAVPDeSerStream@@@Z
1335; public: static class CRestriction * __ptr64 __cdecl CRestriction::UnMarshall(class PDeSerStream & __ptr64)
1336?UnMarshall@CRestriction@@SAPEAV1@AEAVPDeSerStream@@@Z
1337; public: static class CDbCmdTreeNode * __ptr64 __cdecl CDbCmdTreeNode::UnMarshallTree(class PDeSerStream & __ptr64)
1338?UnMarshallTree@CDbCmdTreeNode@@SAPEAV1@AEAVPDeSerStream@@@Z
1339; void __cdecl UnPickle(int,class XPtr<class CColumnSet> & __ptr64,class XPtr<class CRestriction> & __ptr64,class XPtr<class CSortSet> & __ptr64,class XPtr<class CCategorizationSet> & __ptr64,class CRowsetProperties & __ptr64,class XPtr<class CPidMapper> & __ptr64,unsigned char * __ptr64,unsigned long)
1340?UnPickle@@YAXHAEAV?$XPtr@VCColumnSet@@@@AEAV?$XPtr@VCRestriction@@@@AEAV?$XPtr@VCSortSet@@@@AEAV?$XPtr@VCCategorizationSet@@@@AEAVCRowsetProperties@@AEAV?$XPtr@VCPidMapper@@@@PEAEK@Z
1341; protected: void __cdecl CRcovStrmTrans::Unmap(enum CRcovStorageHdr::DataCopyNum) __ptr64
1342?Unmap@CRcovStrmTrans@@IEAAXW4DataCopyNum@CRcovStorageHdr@@@Z
1343; unsigned long __cdecl UpdateContentIndex(unsigned short const * __ptr64,unsigned short const * __ptr64,unsigned short const * __ptr64,int)
1344?UpdateContentIndex@@YAKPEBG00H@Z
1345; public: void __cdecl CDiskFreeStatus::UpdateDiskLowInfo(void) __ptr64
1346?UpdateDiskLowInfo@CDiskFreeStatus@@QEAAXXZ
1347; int __cdecl VT_VARIANT_EQ(struct tagPROPVARIANT const & __ptr64,struct tagPROPVARIANT const & __ptr64)
1348?VT_VARIANT_EQ@@YAHAEBUtagPROPVARIANT@@0@Z
1349; int __cdecl VT_VARIANT_GE(struct tagPROPVARIANT const & __ptr64,struct tagPROPVARIANT const & __ptr64)
1350?VT_VARIANT_GE@@YAHAEBUtagPROPVARIANT@@0@Z
1351; int __cdecl VT_VARIANT_GT(struct tagPROPVARIANT const & __ptr64,struct tagPROPVARIANT const & __ptr64)
1352?VT_VARIANT_GT@@YAHAEBUtagPROPVARIANT@@0@Z
1353; int __cdecl VT_VARIANT_LE(struct tagPROPVARIANT const & __ptr64,struct tagPROPVARIANT const & __ptr64)
1354?VT_VARIANT_LE@@YAHAEBUtagPROPVARIANT@@0@Z
1355; int __cdecl VT_VARIANT_LT(struct tagPROPVARIANT const & __ptr64,struct tagPROPVARIANT const & __ptr64)
1356?VT_VARIANT_LT@@YAHAEBUtagPROPVARIANT@@0@Z
1357; int __cdecl VT_VARIANT_NE(struct tagPROPVARIANT const & __ptr64,struct tagPROPVARIANT const & __ptr64)
1358?VT_VARIANT_NE@@YAHAEBUtagPROPVARIANT@@0@Z
1359; int __cdecl ValidateScopeRestriction(class CRestriction * __ptr64)
1360?ValidateScopeRestriction@@YAHPEAVCRestriction@@@Z
1361; public: void __cdecl PRcovStorageObj::VerifyConsistency(void) __ptr64
1362?VerifyConsistency@PRcovStorageObj@@QEAAXXZ
1363; void __cdecl VerifyThreadHasAdminPrivilege(void)
1364?VerifyThreadHasAdminPrivilege@@YAXXZ
1365; unsigned long __cdecl WideCharToXArrayMultiByte(unsigned short const * __ptr64,unsigned long,unsigned int,class XArray<unsigned char> & __ptr64)
1366?WideCharToXArrayMultiByte@@YAKPEBGKIAEAV?$XArray@E@@@Z
1367; public: void __cdecl CDynStream::Write(void * __ptr64,unsigned long) __ptr64
1368?Write@CDynStream@@QEAAXPEAXK@Z
1369; protected: void __cdecl CRcovStrmTrans::Write(void const * __ptr64,unsigned long) __ptr64
1370?Write@CRcovStrmTrans@@IEAAXPEBXK@Z
1371; public: long __cdecl CPropStoreManager::WritePrimaryProperty(class CCompositePropRecordForWrites & __ptr64,unsigned long,class CStorageVariant const & __ptr64) __ptr64
1372?WritePrimaryProperty@CPropStoreManager@@QEAAJAEAVCCompositePropRecordForWrites@@KAEBVCStorageVariant@@@Z
1373; public: long __cdecl CPropStoreManager::WritePrimaryProperty(unsigned long,unsigned long,class CStorageVariant const & __ptr64) __ptr64
1374?WritePrimaryProperty@CPropStoreManager@@QEAAJKKAEBVCStorageVariant@@@Z
1375; public: long __cdecl CPropStoreManager::WriteProperty(class CCompositePropRecordForWrites & __ptr64,unsigned long,class CStorageVariant const & __ptr64) __ptr64
1376?WriteProperty@CPropStoreManager@@QEAAJAEAVCCompositePropRecordForWrites@@KAEBVCStorageVariant@@@Z
1377; public: long __cdecl CPropStoreManager::WriteProperty(unsigned long,unsigned long,class CStorageVariant const & __ptr64) __ptr64
1378?WriteProperty@CPropStoreManager@@QEAAJKKAEBVCStorageVariant@@@Z
1379; public: unsigned long __cdecl CPropStoreManager::WritePropertyInNewRecord(unsigned long,class CStorageVariant const & __ptr64) __ptr64
1380?WritePropertyInNewRecord@CPropStoreManager@@QEAAKKAEBVCStorageVariant@@@Z
1381; private: class CDbProjectListAnchor * __ptr64 __cdecl CDbNestingNode::_FindGroupListAnchor(void) __ptr64
1382?_FindGroupListAnchor@CDbNestingNode@@AEAAPEAVCDbProjectListAnchor@@XZ
1383; private: class CDbProjectListAnchor * __ptr64 __cdecl CDbProjectNode::_FindOrAddAnchor(void) __ptr64
1384?_FindOrAddAnchor@CDbProjectNode@@AEAAPEAVCDbProjectListAnchor@@XZ
1385; private: class CDbSortListAnchor * __ptr64 __cdecl CDbSortNode::_FindOrAddAnchor(void) __ptr64
1386?_FindOrAddAnchor@CDbSortNode@@AEAAPEAVCDbSortListAnchor@@XZ
1387; private: class CDbScalarValue * __ptr64 __cdecl CDbPropertyRestriction::_FindOrAddValueNode(void) __ptr64
1388?_FindOrAddValueNode@CDbPropertyRestriction@@AEAAPEAVCDbScalarValue@@XZ
1389; private: int __cdecl CImpersonateRemoteAccess::_ImpersonateIf(unsigned short const * __ptr64,unsigned short const * __ptr64,unsigned long) __ptr64
1390?_ImpersonateIf@CImpersonateRemoteAccess@@AEAAHPEBG0K@Z
1391; unsigned __int64 __cdecl _wcstoui64(unsigned short const * __ptr64,unsigned short * __ptr64 * __ptr64,int)
1392?_wcstoui64@@YA_KPEBGPEAPEAGH@Z
1393; void __cdecl ciDelete(void * __ptr64)
1394?ciDelete@@YAXPEAX@Z
1395; int __cdecl ciIsValidPointer(void const * __ptr64)
1396?ciIsValidPointer@@YAHPEBX@Z
1397; void * __ptr64 __cdecl ciNew(unsigned __int64)
1398?ciNew@@YAPEAX_K@Z
1399; public: unsigned long __cdecl CFileBuffer::fgetsw(class XGrowable<unsigned short,260> & __ptr64) __ptr64
1400?fgetsw@CFileBuffer@@QEAAKAEAV?$XGrowable@G$0BAE@@@@Z
1401; unsigned short * __ptr64 __cdecl wcsipattern(unsigned short * __ptr64,unsigned short const * __ptr64)
1402?wcsipattern@@YAPEAGPEAGPEBG@Z
1403AbortMerges
1404BeginCacheTransaction
1405BindIFilterFromStorage
1406BindIFilterFromStream
1407CIBuildQueryNode
1408CIBuildQueryTree
1409CICreateCommand
1410CIGetGlobalPropertyList
1411CIMakeICommand
1412CIRestrictionToFullTree
1413CIState
1414CITextToFullTree
1415CITextToFullTreeEx
1416CITextToSelectTree
1417CITextToSelectTreeEx
1418CiSvcMain
1419CollectCIISAPIPerformanceData
1420CollectCIPerformanceData
1421CollectFILTERPerformanceData
1422DllCanUnloadNow
1423DllGetClassObject
1424DllRegisterServer
1425DllUnregisterServer
1426DoneCIISAPIPerformanceData
1427DoneCIPerformanceData
1428DoneFILTERPerformanceData
1429EndCacheTransaction
1430ForceMasterMerge
1431InitializeCIISAPIPerformanceData
1432InitializeCIPerformanceData
1433InitializeFILTERPerformanceData
1434LoadBHIFilter
1435LoadBinaryFilter
1436LoadIFilter
1437LoadIFilterEx
1438LoadTextFilter
1439LocateCatalogs
1440LocateCatalogsA
1441LocateCatalogsW
1442SetCatalogState
1443SetupCache
1444SetupCacheEx
1445StartFWCiSvcWork
1446StopFWCiSvcWork
1447SvcEntry_CiSvc
lib/libc/mingw/lib64/rasapi32.def created+150
...@@ -0,0 +1,150 @@
1;
2; Exports of file RASAPI32.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY RASAPI32.dll
8EXPORTS
9DDMFreePhonebookContext
10DDMGetPhonebookInfo
11DwCloneEntry
12DwDeleteSubEntry
13DwEnumEntriesForAllUsers
14DwEnumEntryDetails
15DwRasUninitialize
16RasAutoDialSharedConnection
17RasAutodialAddressToNetwork
18RasAutodialEntryToNetwork
19RasClearConnectionStatistics
20RasClearLinkStatistics
21RasConnectionNotificationA
22RasConnectionNotificationW
23RasCreatePhonebookEntryA
24RasCreatePhonebookEntryW
25RasDeleteEntryA
26RasDeleteEntryW
27RasDeleteSubEntryA
28RasDeleteSubEntryW
29RasDialA
30RasDialW
31RasDialWow
32RasEditPhonebookEntryA
33RasEditPhonebookEntryW
34RasEnumAutodialAddressesA
35RasEnumAutodialAddressesW
36RasEnumConnectionsA
37RasEnumConnectionsW
38RasEnumConnectionsWow
39RasEnumDevicesA
40RasEnumDevicesW
41RasEnumEntriesA
42RasEnumEntriesW
43RasEnumEntriesWow
44RasFreeEapUserIdentityA
45RasFreeEapUserIdentityW
46RasGetAutodialAddressA
47RasGetAutodialAddressW
48RasGetAutodialEnableA
49RasGetAutodialEnableW
50RasGetAutodialParamA
51RasGetAutodialParamW
52RasGetConnectResponse
53RasGetConnectStatusA
54RasGetConnectStatusW
55RasGetConnectStatusWow
56RasGetConnectionStatistics
57RasGetCountryInfoA
58RasGetCountryInfoW
59RasGetCredentialsA
60RasGetCredentialsW
61RasGetCustomAuthDataA
62RasGetCustomAuthDataW
63RasGetEapUserDataA
64RasGetEapUserDataW
65RasGetEapUserIdentityA
66RasGetEapUserIdentityW
67RasGetEntryDialParamsA
68RasGetEntryDialParamsW
69RasGetEntryHrasconnA
70RasGetEntryHrasconnW
71RasGetEntryPropertiesA
72RasGetEntryPropertiesW
73RasGetErrorStringA
74RasGetErrorStringW
75RasGetErrorStringWow
76RasGetHport
77RasGetLinkStatistics
78RasGetProjectionInfoA
79RasGetProjectionInfoW
80RasGetSubEntryHandleA
81RasGetSubEntryHandleW
82RasGetSubEntryPropertiesA
83RasGetSubEntryPropertiesW
84RasHangUpA
85RasHangUpW
86RasHangUpWow
87RasInvokeEapUI
88RasIsRouterConnection
89RasIsSharedConnection
90RasQueryRedialOnLinkFailure
91RasQuerySharedAutoDial
92RasQuerySharedConnection
93RasRenameEntryA
94RasRenameEntryW
95RasScriptExecute
96RasScriptGetEventCode
97RasScriptGetIpAddress
98RasScriptInit
99RasScriptReceive
100RasScriptSend
101RasScriptTerm
102RasSetAutodialAddressA
103RasSetAutodialAddressW
104RasSetAutodialEnableA
105RasSetAutodialEnableW
106RasSetAutodialParamA
107RasSetAutodialParamW
108RasSetCredentialsA
109RasSetCredentialsW
110RasSetCustomAuthDataA
111RasSetCustomAuthDataW
112RasSetEapUserDataA
113RasSetEapUserDataW
114RasSetEntryDialParamsA
115RasSetEntryDialParamsW
116RasSetEntryPropertiesA
117RasSetEntryPropertiesW
118RasSetOldPassword
119RasSetSharedAutoDial
120RasSetSubEntryPropertiesA
121RasSetSubEntryPropertiesW
122RasValidateEntryNameA
123RasValidateEntryNameW
124RasfileClose
125RasfileDeleteLine
126RasfileFindFirstLine
127RasfileFindLastLine
128RasfileFindMarkedLine
129RasfileFindNextKeyLine
130RasfileFindNextLine
131RasfileFindPrevLine
132RasfileFindSectionLine
133RasfileGetKeyValueFields
134RasfileGetLine
135RasfileGetLineMark
136RasfileGetLineText
137RasfileGetLineType
138RasfileGetSectionName
139RasfileInsertLine
140RasfileLoad
141RasfileLoadEx
142RasfileLoadInfo
143RasfilePutKeyValueFields
144RasfilePutLineMark
145RasfilePutLineText
146RasfilePutSectionName
147RasfileWrite
148SharedAccessResponseListToString
149SharedAccessResponseStringToList
150UnInitializeRAS
lib/libc/mingw/lib64/rasdlg.def created+45
...@@ -0,0 +1,45 @@
1;
2; Exports of file RASDLG.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY RASDLG.dll
8EXPORTS
9DwTerminalDlg
10GetRasDialOutProtocols
11RasAutodialDisableDlgA
12RasAutodialDisableDlgW
13RasAutodialQueryDlgA
14RasAutodialQueryDlgW
15RasDialDlgA
16RasDialDlgW
17RasEntryDlgA
18RasEntryDlgW
19RasMonitorDlgA
20RasMonitorDlgW
21RasPhonebookDlgA
22RasPhonebookDlgW
23RasSrvAddPropPages
24RasSrvAddWizPages
25RasSrvAllowConnectionsConfig
26RasSrvCleanupService
27RasSrvEnumConnections
28RasSrvHangupConnection
29RasSrvInitializeService
30RasSrvIsConnectionConnected
31RasSrvIsICConfigured
32RasSrvIsServiceRunning
33RasSrvQueryShowIcon
34RasUserEnableManualDial
35RasUserGetManualDial
36RasUserPrefsDlg
37RasWizCreateNewEntry
38RasWizGetNCCFlags
39RasWizGetSuggestedEntryName
40RasWizGetUserInputConnectionName
41RasWizIsEntryRenamable
42RasWizQueryMaxPageCount
43RasWizSetEntryName
44RouterEntryDlgA
45RouterEntryDlgW
lib/libc/mingw/lib64/rtm.def created+120
...@@ -0,0 +1,120 @@
1;
2; Exports of file rtm.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY rtm.dll
8EXPORTS
9BestMatchInTable
10CheckTable
11CreateTable
12DeleteFromTable
13DestroyTable
14DumpTable
15EnumOverTable
16InsertIntoTable
17MgmAddGroupMembershipEntry
18MgmDeInitialize
19MgmDeRegisterMProtocol
20MgmDeleteGroupMembershipEntry
21MgmGetFirstMfe
22MgmGetFirstMfeStats
23MgmGetMfe
24MgmGetMfeStats
25MgmGetNextMfe
26MgmGetNextMfeStats
27MgmGetProtocolOnInterface
28MgmGroupEnumerationEnd
29MgmGroupEnumerationGetNext
30MgmGroupEnumerationStart
31MgmInitialize
32MgmRegisterMProtocol
33MgmReleaseInterfaceOwnership
34MgmTakeInterfaceOwnership
35NextMatchInTable
36RtmAddNextHop
37RtmAddRoute
38RtmAddRouteToDest
39RtmBlockConvertRoutesToStatic
40RtmBlockDeleteRoutes
41RtmBlockMethods
42RtmBlockSetRouteEnable
43RtmCloseEnumerationHandle
44RtmCreateDestEnum
45RtmCreateEnumerationHandle
46RtmCreateNextHopEnum
47RtmCreateRouteEnum
48RtmCreateRouteList
49RtmCreateRouteListEnum
50RtmCreateRouteTable
51RtmDeleteEnumHandle
52RtmDeleteNextHop
53RtmDeleteRoute
54RtmDeleteRouteList
55RtmDeleteRouteTable
56RtmDeleteRouteToDest
57RtmDequeueRouteChangeMessage
58RtmDereferenceHandles
59RtmDeregisterClient
60RtmDeregisterEntity
61RtmDeregisterFromChangeNotification
62RtmEnumerateGetNextRoute
63RtmFindNextHop
64RtmGetAddressFamilyInfo
65RtmGetChangeStatus
66RtmGetChangedDests
67RtmGetDestInfo
68RtmGetEntityInfo
69RtmGetEntityMethods
70RtmGetEnumDests
71RtmGetEnumNextHops
72RtmGetEnumRoutes
73RtmGetExactMatchDestination
74RtmGetExactMatchRoute
75RtmGetFirstRoute
76RtmGetInstanceInfo
77RtmGetInstances
78RtmGetLessSpecificDestination
79RtmGetListEnumRoutes
80RtmGetMostSpecificDestination
81RtmGetNetworkCount
82RtmGetNextHopInfo
83RtmGetNextHopPointer
84RtmGetNextRoute
85RtmGetOpaqueInformationPointer
86RtmGetRegisteredEntities
87RtmGetRouteAge
88RtmGetRouteInfo
89RtmGetRoutePointer
90RtmHoldDestination
91RtmIgnoreChangedDests
92RtmInsertInRouteList
93RtmInvokeMethod
94RtmIsBestRoute
95RtmIsMarkedForChangeNotification
96RtmIsRoute
97RtmLockDestination
98RtmLockNextHop
99RtmLockRoute
100RtmLookupIPDestination
101RtmMarkDestForChangeNotification
102RtmReadAddressFamilyConfig
103RtmReadInstanceConfig
104RtmReferenceHandles
105RtmRegisterClient
106RtmRegisterEntity
107RtmRegisterForChangeNotification
108RtmReleaseChangedDests
109RtmReleaseDestInfo
110RtmReleaseDests
111RtmReleaseEntities
112RtmReleaseEntityInfo
113RtmReleaseNextHopInfo
114RtmReleaseNextHops
115RtmReleaseRouteInfo
116RtmReleaseRoutes
117RtmUpdateAndUnlockRoute
118RtmWriteAddressFamilyConfig
119RtmWriteInstanceConfig
120SearchInTable
lib/libc/mingw/lib64/sfc.def created+16
...@@ -0,0 +1,16 @@
1;
2; Exports of file sfc.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY sfc.dll
8EXPORTS
9SRSetRestorePoint
10SRSetRestorePointA
11SRSetRestorePointW
12SfcGetNextProtectedFile
13SfcIsFileProtected
14SfcWLEventLogoff
15SfcWLEventLogon
16SfpVerifyFile
lib/libc/mingw/lib64/shdocvw.def created+36
...@@ -0,0 +1,36 @@
1;
2; Exports of file SHDOCVW.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY SHDOCVW.dll
8EXPORTS
9AddUrlToFavorites
10DllCanUnloadNow
11DllGetClassObject
12DllGetVersion
13DllInstall
14DllRegisterServer
15DllRegisterWindowClasses
16DllUnregisterServer
17DoAddToFavDlg
18DoAddToFavDlgW
19DoFileDownload
20DoFileDownloadEx
21DoOrganizeFavDlg
22DoOrganizeFavDlgW
23DoPrivacyDlg
24HlinkFindFrame
25HlinkFrameNavigate
26HlinkFrameNavigateNHL
27IEWriteErrorLog
28ImportPrivacySettings
29SHAddSubscribeFavorite
30OpenURL
31SHGetIDispatchForFolder
32SetQueryNetSessionCount
33SetShellOfflineState
34SoftwareUpdateMessageBox
35URLQualifyA
36URLQualifyW
lib/libc/mingw/lib64/slc.def created+55
...@@ -0,0 +1,55 @@
1;
2; Definition file of slc.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "slc.dll"
7EXPORTS
8SLpAuthenticateGenuineTicketResponse
9SLpBeginGenuineTicketTransaction
10SLpCheckProductKey
11SLpDepositTokenActivationResponse
12SLpGenerateTokenActivationChallenge
13SLpGetGenuineBlob
14SLpGetGenuineLocal
15SLpGetLicenseAcquisitionInfo
16SLpGetMachineUGUID
17SLpGetTokenActivationGrantInfo
18SLpVLActivateProduct
19SLClose
20SLConsumeRight
21SLConsumeWindowsRight
22SLDepositOfflineConfirmationId
23SLFireEvent
24SLGenerateOfflineInstallationId
25SLGetGenuineInformation
26SLGetInstalledProductKeyIds
27SLGetInstalledSAMLicenseApplications
28SLGetLicense
29SLGetLicenseFileId
30SLGetLicenseInformation
31SLGetLicensingStatusInformation
32SLGetPKeyId
33SLGetPKeyInformation
34SLGetPolicyInformation
35SLGetPolicyInformationDWORD
36SLGetProductSkuInformation
37SLGetSAMLicense
38SLGetSLIDList
39SLGetServiceInformation
40SLGetWindowsInformation
41SLGetWindowsInformationDWORD
42SLInstallLicense
43SLInstallProofOfPurchase
44SLInstallSAMLicense
45SLOpen
46SLReArmWindows
47SLRegisterEvent
48SLRegisterWindowsEvent
49SLSetCurrentProductKey
50SLSetGenuineInformation
51SLUninstallLicense
52SLUninstallProofOfPurchase
53SLUninstallSAMLicense
54SLUnregisterEvent
55SLUnregisterWindowsEvent
lib/libc/mingw/lib64/spoolss.def created+223
...@@ -0,0 +1,223 @@
1;
2; Definition file of SPOOLSS.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "SPOOLSS.DLL"
7EXPORTS
8OpenPrinterExW
9RouterCorePrinterDriverInstalled
10RouterCreatePrintAsyncNotificationChannel
11RouterDeletePrinterDriverPackage
12RouterGetCorePrinterDrivers
13RouterGetPrintClassObject
14RouterGetPrinterDriverPackagePath
15RouterInstallPrinterDriverFromPackage
16RouterRegisterForPrintAsyncNotifications
17RouterUnregisterForPrintAsyncNotifications
18RouterUploadPrinterDriverPackage
19AbortPrinter
20AddDriverCatalog
21AddFormW
22AddJobW
23AddMonitorW
24AddPerMachineConnectionW
25AddPortExW
26AddPortW
27AddPrintProcessorW
28AddPrintProvidorW
29AddPrinterConnectionW
30AddPrinterDriverExW
31AddPrinterDriverW
32AddPrinterExW
33AddPrinterW
34AdjustPointers
35AdjustPointersInStructuresArray
36AlignKMPtr
37AlignRpcPtr
38AllocSplStr
39AllowRemoteCalls
40AppendPrinterNotifyInfoData
41BuildOtherNamesFromMachineName
42CacheAddName
43CacheCreateAndAddNode
44CacheCreateAndAddNodeWithIPAddresses
45CacheDeleteNode
46CacheIsNameCluster
47CacheIsNameInNodeList
48CallDrvDevModeConversion
49CallRouterFindFirstPrinterChangeNotification
50CheckLocalCall
51ClosePrinter
52ClusterSplClose
53ClusterSplIsAlive
54ClusterSplOpen
55ConfigurePortW
56CreatePrinterIC
57DbgGetPointers
58DeleteFormW
59DeleteMonitorW
60DeletePerMachineConnectionW
61DeletePortW
62DeletePrintProcessorW
63DeletePrintProvidorW
64DeletePrinter
65DeletePrinterConnectionW
66DeletePrinterDataExW
67DeletePrinterDataW
68DeletePrinterDriverExW
69DeletePrinterDriverW
70DeletePrinterIC
71DeletePrinterKeyW
72DllAllocSplMem
73DllAllocSplStr
74DllCanUnloadNow
75DllFreeSplMem
76DllFreeSplStr
77DllGetClassObject
78DllMain
79DllReallocSplMem
80DllReallocSplStr
81DllRegisterServer
82DllUnregisterServer
83EndDocPrinter
84EndPagePrinter
85EnumFormsW
86EnumJobsW
87EnumMonitorsW
88EnumPerMachineConnectionsW
89EnumPortsW
90EnumPrintProcessorDatatypesW
91EnumPrintProcessorsW
92EnumPrinterDataExW
93EnumPrinterDataW
94EnumPrinterDriversW
95EnumPrinterKeyW
96EnumPrintersW
97FindClosePrinterChangeNotification
98FlushPrinter
99FormatPrinterForRegistryKey
100FormatRegistryKeyForPrinter
101FreeOtherNames
102GetClientUserHandle
103GetBindingHandleIndex
104GetFormW
105GetJobAttributes
106GetJobAttributesEx
107GetJobW
108GetNetworkId
109GetPrintProcessorDirectoryW
110GetPrinterDataExW
111GetPrinterDataW
112GetPrinterDriverDirectoryW
113GetPrinterDriverExW
114GetPrinterDriverW
115GetPrinterW
116GetServerPolicy
117GetShrinkedSize
118ImpersonatePrinterClient
119InitializeRouter
120IsNameTheLocalMachineOrAClusterSpooler
121IsNamedPipeRpcCall
122LoadDriver
123LoadDriverFiletoConvertDevmode
124LoadDriverWithVersion
125LogWmiTraceEvent
126MIDL_user_allocate1
127MIDL_user_free1
128MarshallDownStructure
129MarshallDownStructuresArray
130MarshallUpStructure
131MarshallUpStructuresArray
132OldGetPrinterDriverW
133OpenPrinterExW
134OpenPrinterPortW
135OpenPrinter2W
136OpenPrinterPort2W
137OpenPrinterW
138PackStrings
139PartialReplyPrinterChangeNotification
140PlayGdiScriptOnPrinterIC
141PrinterHandleRundown
142PrinterMessageBoxW
143ProvidorFindClosePrinterChangeNotification
144ProvidorFindFirstPrinterChangeNotification
145ReadPrinter
146ReallocSplMem
147ReallocSplStr
148RemoteFindFirstPrinterChangeNotification
149ReplyClosePrinter
150ReplyOpenPrinter
151ReplyPrinterChangeNotification
152ReplyPrinterChangeNotificationEx
153ReportJobProcessingProgress
154ResetPrinterW
155RevertToPrinterSelf
156RouterAddPrinterConnection2
157RouterAllocBidiMem
158RouterAllocBidiResponseContainer
159RouterAllocPrinterNotifyInfo
160RouterBroadcastMessage
161RouterFindCompatibleDriver
162RouterFindFirstPrinterChangeNotification
163RouterFindNextPrinterChangeNotification
164RouterFreeBidiMem
165RouterFreeBidiResponseContainer
166RouterFreePrinterNotifyInfo
167RouterInternalGetPrinterDriver
168RouterRefreshPrinterChangeNotification
169RouterReplyPrinter
170RouterSpoolerSetPolicy
171ScheduleJob
172SeekPrinter
173SendRecvBidiData
174SetAllocFailCount
175SetFormW
176SetJobW
177SetPortW
178SetPrinterDataExW
179SetPrinterDataW
180SetPrinterW
181SplCloseSpoolFileHandle
182SplCommitSpoolData
183SplDriverUnloadComplete
184SplGetClientUserHandle
185SplGetSpoolFileInfo
186SplGetUserSidStringFromToken
187SplInitializeWinSpoolDrv
188SplIsSessionZero
189SplIsUpgrade
190SplPowerEvent
191SplProcessPnPEvent
192SplProcessSessionEvent
193SplPromptUIInUsersSession
194SplQueryUserInfo
195SplReadPrinter
196SplRegisterForDeviceEvents
197SplRegisterForSessionEvents
198SplShutDownRouter
199SplUnregisterForDeviceEvents
200SplUnregisterForSessionEvents
201SplWerNotifyLogger
202SpoolerFindClosePrinterChangeNotification
203SpoolerFindFirstPrinterChangeNotification
204SpoolerFindNextPrinterChangeNotification
205SpoolerFreePrinterNotifyInfo
206SpoolerHasInitialized
207SpoolerInit
208SpoolerRefreshPrinterChangeNotification
209StartDocPrinterW
210StartPagePrinter
211UndoAlignKMPtr
212UndoAlignRpcPtr
213UnloadDriver
214UnloadDriverFile
215UpdateBufferSize
216UpdatePrinterRegAll
217UpdatePrinterRegUser
218WaitForPrinterChange
219WaitForSpoolerInitialization
220WritePrinter
221XcvDataW
222bGetDevModePerUser
223bSetDevModePerUser
lib/libc/mingw/lib64/vssapi.def created+160
...@@ -0,0 +1,160 @@
1;
2; Definition file of VSSAPI.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "VSSAPI.DLL"
7EXPORTS
8IsVolumeSnapshotted
9VssFreeSnapshotProperties
10ShouldBlockRevert
11; public: __cdecl CVssJetWriter::CVssJetWriter(void)__ptr64
12??0CVssJetWriter@@QEAA@XZ
13; public: __cdecl CVssWriter::CVssWriter(void)__ptr64
14??0CVssWriter@@QEAA@XZ
15; public: virtual __cdecl CVssJetWriter::~CVssJetWriter(void)__ptr64
16??1CVssJetWriter@@UEAA@XZ
17; public: virtual __cdecl CVssWriter::~CVssWriter(void)__ptr64
18??1CVssWriter@@UEAA@XZ
19; protected: bool __cdecl CVssJetWriter::AreComponentsSelected(void)const __ptr64
20?AreComponentsSelected@CVssJetWriter@@IEBA_NXZ
21; protected: bool __cdecl CVssWriter::AreComponentsSelected(void)const __ptr64
22?AreComponentsSelected@CVssWriter@@IEBA_NXZ
23; long __cdecl CreateVssBackupComponents(class IVssBackupComponents *__ptr64 *__ptr64)
24?CreateVssBackupComponents@@YAJPEAPEAVIVssBackupComponents@@@Z
25; long __cdecl CreateVssExamineWriterMetadata(unsigned short *__ptr64,class IVssExamineWriterMetadata *__ptr64 *__ptr64)
26?CreateVssExamineWriterMetadata@@YAJPEAGPEAPEAVIVssExamineWriterMetadata@@@Z
27; long __cdecl CreateVssSnapshotSetDescription(struct _GUID,long,class IVssSnapshotSetDescription *__ptr64 *__ptr64)
28?CreateVssSnapshotSetDescription@@YAJU_GUID@@JPEAPEAVIVssSnapshotSetDescription@@@Z
29; protected: enum _VSS_BACKUP_TYPE __cdecl CVssJetWriter::GetBackupType(void)const __ptr64
30?GetBackupType@CVssJetWriter@@IEBA?AW4_VSS_BACKUP_TYPE@@XZ
31; protected: enum _VSS_BACKUP_TYPE __cdecl CVssWriter::GetBackupType(void)const __ptr64
32?GetBackupType@CVssWriter@@IEBA?AW4_VSS_BACKUP_TYPE@@XZ
33; protected: long __cdecl CVssJetWriter::GetContext(void)const __ptr64
34?GetContext@CVssJetWriter@@IEBAJXZ
35; protected: long __cdecl CVssWriter::GetContext(void)const __ptr64
36?GetContext@CVssWriter@@IEBAJXZ
37; protected: enum _VSS_APPLICATION_LEVEL __cdecl CVssJetWriter::GetCurrentLevel(void)const __ptr64
38?GetCurrentLevel@CVssJetWriter@@IEBA?AW4_VSS_APPLICATION_LEVEL@@XZ
39; protected: enum _VSS_APPLICATION_LEVEL __cdecl CVssWriter::GetCurrentLevel(void)const __ptr64
40?GetCurrentLevel@CVssWriter@@IEBA?AW4_VSS_APPLICATION_LEVEL@@XZ
41; protected: struct _GUID __cdecl CVssJetWriter::GetCurrentSnapshotSetId(void)const __ptr64
42?GetCurrentSnapshotSetId@CVssJetWriter@@IEBA?AU_GUID@@XZ
43; protected: struct _GUID __cdecl CVssWriter::GetCurrentSnapshotSetId(void)const __ptr64
44?GetCurrentSnapshotSetId@CVssWriter@@IEBA?AU_GUID@@XZ
45; protected: unsigned short const *__ptr64 *__ptr64 __cdecl CVssJetWriter::GetCurrentVolumeArray(void)const __ptr64
46?GetCurrentVolumeArray@CVssJetWriter@@IEBAPEAPEBGXZ
47; protected: unsigned short const *__ptr64 *__ptr64 __cdecl CVssWriter::GetCurrentVolumeArray(void)const __ptr64
48?GetCurrentVolumeArray@CVssWriter@@IEBAPEAPEBGXZ
49; protected: unsigned int __cdecl CVssJetWriter::GetCurrentVolumeCount(void)const __ptr64
50?GetCurrentVolumeCount@CVssJetWriter@@IEBAIXZ
51; protected: unsigned int __cdecl CVssWriter::GetCurrentVolumeCount(void)const __ptr64
52?GetCurrentVolumeCount@CVssWriter@@IEBAIXZ
53; protected: enum _VSS_RESTORE_TYPE __cdecl CVssJetWriter::GetRestoreType(void)const __ptr64
54?GetRestoreType@CVssJetWriter@@IEBA?AW4_VSS_RESTORE_TYPE@@XZ
55; protected: enum _VSS_RESTORE_TYPE __cdecl CVssWriter::GetRestoreType(void)const __ptr64
56?GetRestoreType@CVssWriter@@IEBA?AW4_VSS_RESTORE_TYPE@@XZ
57; protected: long __cdecl CVssJetWriter::GetSnapshotDeviceName(unsigned short const *__ptr64,unsigned short const *__ptr64 *__ptr64)const __ptr64
58?GetSnapshotDeviceName@CVssJetWriter@@IEBAJPEBGPEAPEBG@Z
59; protected: long __cdecl CVssWriter::GetSnapshotDeviceName(unsigned short const *__ptr64,unsigned short const *__ptr64 *__ptr64)const __ptr64
60?GetSnapshotDeviceName@CVssWriter@@IEBAJPEBGPEAPEBG@Z
61; public: long __cdecl CVssJetWriter::Initialize(struct _GUID,unsigned short const *__ptr64,bool,bool,unsigned short const *__ptr64,unsigned short const *__ptr64,unsigned long)__ptr64
62?Initialize@CVssJetWriter@@QEAAJU_GUID@@PEBG_N211K@Z
63; public: long __cdecl CVssWriter::Initialize(struct _GUID,unsigned short const *__ptr64,enum VSS_USAGE_TYPE,enum VSS_SOURCE_TYPE,enum _VSS_APPLICATION_LEVEL,unsigned long,enum VSS_ALTERNATE_WRITER_STATE,bool,unsigned short const *__ptr64)__ptr64
64?Initialize@CVssWriter@@QEAAJU_GUID@@PEBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N1@Z
65; public: long __cdecl CVssWriter::InstallAlternateWriter(struct _GUID,struct _GUID)__ptr64
66?InstallAlternateWriter@CVssWriter@@QEAAJU_GUID@@0@Z
67; protected: bool __cdecl CVssJetWriter::IsBootableSystemStateBackedUp(void)const __ptr64
68?IsBootableSystemStateBackedUp@CVssJetWriter@@IEBA_NXZ
69; protected: bool __cdecl CVssWriter::IsBootableSystemStateBackedUp(void)const __ptr64
70?IsBootableSystemStateBackedUp@CVssWriter@@IEBA_NXZ
71; protected: bool __cdecl CVssJetWriter::IsPartialFileSupportEnabled(void)const __ptr64
72?IsPartialFileSupportEnabled@CVssJetWriter@@IEBA_NXZ
73; protected: bool __cdecl CVssWriter::IsPartialFileSupportEnabled(void)const __ptr64
74?IsPartialFileSupportEnabled@CVssWriter@@IEBA_NXZ
75; protected: bool __cdecl CVssJetWriter::IsPathAffected(unsigned short const *__ptr64)const __ptr64
76?IsPathAffected@CVssJetWriter@@IEBA_NPEBG@Z
77; protected: bool __cdecl CVssWriter::IsPathAffected(unsigned short const *__ptr64)const __ptr64
78?IsPathAffected@CVssWriter@@IEBA_NPEBG@Z
79; long __cdecl LoadVssSnapshotSetDescription(unsigned short const *__ptr64,class IVssSnapshotSetDescription *__ptr64 *__ptr64,struct _GUID)
80?LoadVssSnapshotSetDescription@@YAJPEBGPEAPEAVIVssSnapshotSetDescription@@U_GUID@@@Z
81; public: virtual void __cdecl CVssJetWriter::OnAbortBegin(void)__ptr64
82?OnAbortBegin@CVssJetWriter@@UEAAXXZ
83; public: virtual void __cdecl CVssJetWriter::OnAbortEnd(void)__ptr64
84?OnAbortEnd@CVssJetWriter@@UEAAXXZ
85; public: virtual bool __cdecl CVssWriter::OnBackOffIOOnVolume(unsigned short *__ptr64,struct _GUID,struct _GUID)__ptr64
86?OnBackOffIOOnVolume@CVssWriter@@UEAA_NPEAGU_GUID@@1@Z
87; public: virtual bool __cdecl CVssWriter::OnBackupComplete(class IVssWriterComponents *__ptr64)__ptr64
88?OnBackupComplete@CVssWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
89; public: virtual bool __cdecl CVssJetWriter::OnBackupCompleteBegin(class IVssWriterComponents *__ptr64)__ptr64
90?OnBackupCompleteBegin@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
91; public: virtual bool __cdecl CVssJetWriter::OnBackupCompleteEnd(class IVssWriterComponents *__ptr64,bool)__ptr64
92?OnBackupCompleteEnd@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@_N@Z
93; public: virtual bool __cdecl CVssWriter::OnBackupShutdown(struct _GUID)__ptr64
94?OnBackupShutdown@CVssWriter@@UEAA_NU_GUID@@@Z
95; public: virtual bool __cdecl CVssWriter::OnContinueIOOnVolume(unsigned short *__ptr64,struct _GUID,struct _GUID)__ptr64
96?OnContinueIOOnVolume@CVssWriter@@UEAA_NPEAGU_GUID@@1@Z
97; public: virtual bool __cdecl CVssJetWriter::OnFreezeBegin(void)__ptr64
98?OnFreezeBegin@CVssJetWriter@@UEAA_NXZ
99; public: virtual bool __cdecl CVssJetWriter::OnFreezeEnd(bool)__ptr64
100?OnFreezeEnd@CVssJetWriter@@UEAA_N_N@Z
101; public: virtual bool __cdecl CVssJetWriter::OnIdentify(class IVssCreateWriterMetadata *__ptr64)__ptr64
102?OnIdentify@CVssJetWriter@@UEAA_NPEAVIVssCreateWriterMetadata@@@Z
103; public: virtual bool __cdecl CVssWriter::OnIdentify(class IVssCreateWriterMetadata *__ptr64)__ptr64
104?OnIdentify@CVssWriter@@UEAA_NPEAVIVssCreateWriterMetadata@@@Z
105; public: virtual bool __cdecl CVssWriter::OnPostRestore(class IVssWriterComponents *__ptr64)__ptr64
106?OnPostRestore@CVssWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
107; public: virtual bool __cdecl CVssJetWriter::OnPostRestoreBegin(class IVssWriterComponents *__ptr64)__ptr64
108?OnPostRestoreBegin@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
109; public: virtual bool __cdecl CVssJetWriter::OnPostRestoreEnd(class IVssWriterComponents *__ptr64,bool)__ptr64
110?OnPostRestoreEnd@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@_N@Z
111; public: virtual bool __cdecl CVssJetWriter::OnPostSnapshot(class IVssWriterComponents *__ptr64)__ptr64
112?OnPostSnapshot@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
113; public: virtual bool __cdecl CVssWriter::OnPostSnapshot(class IVssWriterComponents *__ptr64)__ptr64
114?OnPostSnapshot@CVssWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
115; public: virtual bool __cdecl CVssWriter::OnPreRestore(class IVssWriterComponents *__ptr64)__ptr64
116?OnPreRestore@CVssWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
117; public: virtual bool __cdecl CVssJetWriter::OnPreRestoreBegin(class IVssWriterComponents *__ptr64)__ptr64
118?OnPreRestoreBegin@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
119; public: virtual bool __cdecl CVssJetWriter::OnPreRestoreEnd(class IVssWriterComponents *__ptr64,bool)__ptr64
120?OnPreRestoreEnd@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@_N@Z
121; public: virtual bool __cdecl CVssWriter::OnPrepareBackup(class IVssWriterComponents *__ptr64)__ptr64
122?OnPrepareBackup@CVssWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
123; public: virtual bool __cdecl CVssJetWriter::OnPrepareBackupBegin(class IVssWriterComponents *__ptr64)__ptr64
124?OnPrepareBackupBegin@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@@Z
125; public: virtual bool __cdecl CVssJetWriter::OnPrepareBackupEnd(class IVssWriterComponents *__ptr64,bool)__ptr64
126?OnPrepareBackupEnd@CVssJetWriter@@UEAA_NPEAVIVssWriterComponents@@_N@Z
127; public: virtual bool __cdecl CVssJetWriter::OnPrepareSnapshotBegin(void)__ptr64
128?OnPrepareSnapshotBegin@CVssJetWriter@@UEAA_NXZ
129; public: virtual bool __cdecl CVssJetWriter::OnPrepareSnapshotEnd(bool)__ptr64
130?OnPrepareSnapshotEnd@CVssJetWriter@@UEAA_N_N@Z
131; public: virtual bool __cdecl CVssJetWriter::OnThawBegin(void)__ptr64
132?OnThawBegin@CVssJetWriter@@UEAA_NXZ
133; public: virtual bool __cdecl CVssJetWriter::OnThawEnd(bool)__ptr64
134?OnThawEnd@CVssJetWriter@@UEAA_N_N@Z
135; public: virtual bool __cdecl CVssWriter::OnVSSApplicationStartup(void)__ptr64
136?OnVSSApplicationStartup@CVssWriter@@UEAA_NXZ
137; public: virtual bool __cdecl CVssWriter::OnVSSShutdown(void)__ptr64
138?OnVSSShutdown@CVssWriter@@UEAA_NXZ
139; protected: long __cdecl CVssJetWriter::SetWriterFailure(long)__ptr64
140?SetWriterFailure@CVssJetWriter@@IEAAJJ@Z
141; protected: long __cdecl CVssWriter::SetWriterFailure(long)__ptr64
142?SetWriterFailure@CVssWriter@@IEAAJJ@Z
143; public: long __cdecl CVssWriter::Subscribe(unsigned long)__ptr64
144?Subscribe@CVssWriter@@QEAAJK@Z
145; public: void __cdecl CVssJetWriter::Uninitialize(void)__ptr64
146?Uninitialize@CVssJetWriter@@QEAAXXZ
147; public: long __cdecl CVssWriter::Unsubscribe(void)__ptr64
148?Unsubscribe@CVssWriter@@QEAAJXZ
149CreateVssBackupComponentsInternal
150CreateVssExamineWriterMetadataInternal
151CreateVssExpressWriterInternal
152CreateWriter
153CreateWriterEx
154;DllCanUnloadNow
155;DllGetClassObject
156GetProviderMgmtInterface
157GetProviderMgmtInterfaceInternal
158IsVolumeSnapshottedInternal
159ShouldBlockRevertInternal
160VssFreeSnapshotPropertiesInternal
lib/libc/mingw/lib64/wdsclientapi.def created+46
...@@ -0,0 +1,46 @@
1;
2; Definition file of WDSCLIENTAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WDSCLIENTAPI.dll"
7EXPORTS
8WdsCliAuthorizeSession
9WdsCliCancelTransfer
10WdsCliClose
11WdsCliCreateSession
12WdsCliFindFirstImage
13WdsCliFindNextImage
14WdsCliFreeDomainJoinInformation
15WdsCliFreeStringArray
16WdsCliFreeUnattendVariables
17WdsCliGetClientUnattend
18WdsCliGetDomainJoinInformation
19WdsCliGetEnumerationFlags
20WdsCliGetImageArchitecture
21WdsCliGetImageDescription
22WdsCliGetImageFiles
23WdsCliGetImageGroup
24WdsCliGetImageHalName
25WdsCliGetImageHandleFromFindHandle
26WdsCliGetImageHandleFromTransferHandle
27WdsCliGetImageIndex
28WdsCliGetImageLanguage
29WdsCliGetImageLanguages
30WdsCliGetImageLastModifiedTime
31WdsCliGetImageName
32WdsCliGetImageNamespace
33WdsCliGetImageParameter
34WdsCliGetImagePath
35WdsCliGetImageSize
36WdsCliGetImageType
37WdsCliGetImageVersion
38WdsCliGetTransferSize
39WdsCliGetUnattendVariables
40WdsCliInitializeLog
41WdsCliLog
42WdsCliObtainDriverPackages
43WdsCliRegisterTrace
44WdsCliTransferFile
45WdsCliTransferImage
46WdsCliWaitForTransfer
lib/libc/mingw/lib64/wdstptc.def created+22
...@@ -0,0 +1,22 @@
1;
2; Definition file of WDSTPTC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "WDSTPTC.dll"
7EXPORTS
8WdsTptcDownload
9WdsTransportClientRegisterTrace
10WdsTransportClientAddRefBuffer
11WdsTransportClientCancelSession
12WdsTransportClientCancelSessionEx
13WdsTransportClientCloseSession
14WdsTransportClientCompleteReceive
15WdsTransportClientInitialize
16WdsTransportClientInitializeSession
17WdsTransportClientQueryStatus
18WdsTransportClientRegisterCallback
19WdsTransportClientReleaseBuffer
20WdsTransportClientShutdown
21WdsTransportClientStartSession
22WdsTransportClientWaitForCompletion
lib/libc/mingw/lib64/wer.def created+84
...@@ -0,0 +1,84 @@
1;
2; Definition file of wer.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "wer.dll"
7EXPORTS
8WerSysprepCleanup
9WerSysprepGeneralize
10WerSysprepSpecialize
11WerUnattendedSetup
12WerpAddAppCompatData
13WerpAddFile
14WerpAddMemoryBlock
15WerpAddRegisteredDataToReport
16WerpAddSecondaryParameter
17WerpAddTextToReport
18WerpArchiveReport
19WerpCancelResponseDownload
20WerpCancelUpload
21WerpCloseStore
22WerpCreateMachineStore
23WerpDeleteReport
24WerpDestroyWerString
25WerpDownloadResponse
26WerpDownloadResponseTemplate
27WerpEnumerateStoreNext
28WerpEnumerateStoreStart
29WerpExtractReportFiles
30WerpGetBucketId
31WerpGetDynamicParameter
32WerpGetEventType
33WerpGetFileByIndex
34WerpGetFilePathByIndex
35WerpGetNumFiles
36WerpGetNumSecParams
37WerpGetNumSigParams
38WerpGetReportFinalConsent
39WerpGetReportFlags
40WerpGetReportInformation
41WerpGetReportTime
42WerpGetReportType
43WerpGetResponseId
44WerpGetResponseUrl
45WerpGetSecParamByIndex
46WerpGetSigParamByIndex
47WerpGetStoreLocation
48WerpGetStoreType
49WerpGetTextFromReport
50WerpGetUIParamByIndex
51WerpGetUploadTime
52WerpGetWerStringData
53WerpIsTransportAvailable
54WerpLoadReport
55WerpOpenMachineArchive
56WerpOpenMachineQueue
57WerpOpenUserArchive
58WerpReportCancel
59WerpRestartApplication
60WerpSetDynamicParameter
61WerpSetEventName
62WerpSetReportFlags
63WerpSetReportInformation
64WerpSetReportTime
65WerpSetReportUploadContextToken
66WerpShowNXNotification
67WerpShowSecondLevelConsent
68WerpShowUpsellUI
69WerpSubmitReportFromStore
70WerpSvcReportFromMachineQueue
71WerAddExcludedApplication
72WerRemoveExcludedApplication
73WerReportAddDump
74WerReportAddFile
75WerReportCloseHandle
76WerReportCreate
77WerReportSetParameter
78WerReportSetUIOption
79WerReportSubmit
80WerpGetReportConsent
81WerpIsDisabled
82WerpOpenUserQueue
83WerpPromtUser
84WerpSetCallBack
lib/libc/mingw/lib64/winfax.def created+64
...@@ -0,0 +1,64 @@
1;
2; Exports of file WINFAX.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY WINFAX.dll
8EXPORTS
9FaxAbort
10FaxAccessCheck
11FaxClose
12FaxCompleteJobParamsA
13FaxCompleteJobParamsW
14FaxConnectFaxServerA
15FaxConnectFaxServerW
16FaxEnableRoutingMethodA
17FaxEnableRoutingMethodW
18FaxEnumGlobalRoutingInfoA
19FaxEnumGlobalRoutingInfoW
20FaxEnumJobsA
21FaxEnumJobsW
22FaxEnumPortsA
23FaxEnumPortsW
24FaxEnumRoutingMethodsA
25FaxEnumRoutingMethodsW
26FaxFreeBuffer
27FaxGetConfigurationA
28FaxGetConfigurationW
29FaxGetDeviceStatusA
30FaxGetDeviceStatusW
31FaxGetJobA
32FaxGetJobW
33FaxGetLoggingCategoriesA
34FaxGetLoggingCategoriesW
35FaxGetPageData
36FaxGetPortA
37FaxGetPortW
38FaxGetRoutingInfoA
39FaxGetRoutingInfoW
40FaxInitializeEventQueue
41FaxOpenPort
42FaxPrintCoverPageA
43FaxPrintCoverPageW
44FaxRegisterRoutingExtensionW
45FaxRegisterServiceProviderW
46FaxSendDocumentA
47FaxSendDocumentForBroadcastA
48FaxSendDocumentForBroadcastW
49FaxSendDocumentW
50FaxSetConfigurationA
51FaxSetConfigurationW
52FaxSetGlobalRoutingInfoA
53FaxSetGlobalRoutingInfoW
54FaxSetJobA
55FaxSetJobW
56FaxSetLoggingCategoriesA
57FaxSetLoggingCategoriesW
58FaxSetPortA
59FaxSetPortW
60FaxSetRoutingInfoA
61FaxSetRoutingInfoW
62FaxStartPrintJobA
63FaxStartPrintJobW
64FaxUnregisterServiceProviderW
lib/libc/mingw/lib64/winsta.def created+111
...@@ -0,0 +1,111 @@
1;
2; Exports of file WINSTA.dll
3;
4; Autogenerated by gen_exportdef
5; Written by Kai Tietz, 2007
6;
7LIBRARY WINSTA.dll
8EXPORTS
9LogonIdFromWinStationNameA
10LogonIdFromWinStationNameW
11RemoteAssistancePrepareSystemRestore
12ServerGetInternetConnectorStatus
13ServerLicensingClose
14ServerLicensingDeactivateCurrentPolicy
15ServerLicensingFreePolicyInformation
16ServerLicensingGetAvailablePolicyIds
17ServerLicensingGetPolicy
18ServerLicensingGetPolicyInformationA
19ServerLicensingGetPolicyInformationW
20ServerLicensingLoadPolicy
21ServerLicensingOpenA
22ServerLicensingOpenW
23ServerLicensingSetPolicy
24ServerLicensingUnloadPolicy
25ServerQueryInetConnectorInformationA
26ServerQueryInetConnectorInformationW
27ServerSetInternetConnectorStatus
28WinStationActivateLicense
29WinStationAutoReconnect
30WinStationBroadcastSystemMessage
31WinStationCanLogonProceed
32WinStationCheckAccess
33WinStationCheckLoopBack
34WinStationCloseServer
35WinStationConnectA
36WinStationConnectCallback
37WinStationConnectW
38WinStationDisconnect
39WinStationEnumerateA
40WinStationEnumerateLicenses
41WinStationEnumerateProcesses
42WinStationEnumerateW
43WinStationEnumerate_IndexedA
44WinStationEnumerate_IndexedW
45WinStationFreeGAPMemory
46WinStationFreeMemory
47WinStationGenerateLicense
48WinStationGetAllProcesses
49WinStationGetLanAdapterNameA
50WinStationGetLanAdapterNameW
51WinStationGetMachinePolicy
52WinStationGetProcessSid
53WinStationGetTermSrvCountersValue
54WinStationInstallLicense
55WinStationIsHelpAssistantSession
56WinStationNameFromLogonIdA
57WinStationNameFromLogonIdW
58WinStationNtsdDebug
59WinStationOpenServerA
60WinStationOpenServerW
61WinStationQueryInformationA
62WinStationQueryInformationW
63WinStationQueryLicense
64WinStationQueryLogonCredentialsW
65WinStationQueryUpdateRequired
66WinStationRedirectErrorMessage
67WinStationRegisterConsoleNotification
68WinStationRegisterConsoleNotificationEx
69WinStationRegisterNotificationEvent
70WinStationRemoveLicense
71WinStationRenameA
72WinStationRenameW
73WinStationReset
74WinStationSendMessageA
75WinStationSendMessageW
76WinStationSendWindowMessage
77WinStationServerPing
78WinStationSetInformationA
79WinStationSetInformationW
80WinStationSetPoolCount
81WinStationShadow
82WinStationShadowStop
83WinStationShutdownSystem
84WinStationTerminateProcess
85WinStationUnRegisterConsoleNotification
86WinStationUnRegisterNotificationEvent
87WinStationVirtualOpen
88WinStationWaitSystemEvent
89_NWLogonQueryAdmin
90_NWLogonSetAdmin
91_WinStationAnnoyancePopup
92_WinStationBeepOpen
93_WinStationBreakPoint
94_WinStationCallback
95_WinStationCheckForApplicationName
96_WinStationFUSCanRemoteUserDisconnect
97_WinStationGetApplicationInfo
98_WinStationNotifyDisconnectPipe
99_WinStationNotifyLogoff
100_WinStationNotifyLogon
101_WinStationNotifyNewSession
102_WinStationOpenSessionDirectory
103_WinStationReInitializeSecurity
104_WinStationReadRegistry
105_WinStationSessionInitialized
106_WinStationShadowTarget
107_WinStationShadowTargetSetup
108_WinStationUpdateClientCachedCredentials
109_WinStationUpdateSettings
110_WinStationUpdateUserConfig
111_WinStationWaitForConnect
lib/libc/mingw/lib64/wsdapi.def created+41
...@@ -0,0 +1,41 @@
1;
2; Definition file of wsdapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008
5;
6LIBRARY "wsdapi.dll"
7EXPORTS
8WSDCancelAddrChangeNotify
9WSDCreateHttpAddressAdvanced
10WSDNotifyAddrChange
11WSDAllocateLinkedMemory
12WSDAttachLinkedMemory
13WSDCreateDeviceHost
14WSDCreateDeviceHostAdvanced
15WSDCreateDeviceProxy
16WSDCreateDeviceProxyAdvanced
17WSDCreateDiscoveryProvider
18WSDCreateDiscoveryPublisher
19WSDCreateHttpAddress
20WSDCreateHttpMessageParameters
21WSDCreateHttpTransport
22WSDCreateMetadataAgent
23WSDCreateOutboundAttachment
24WSDCreateUdpAddress
25WSDCreateUdpMessageParameters
26WSDCreateUdpTransport
27WSDDetachLinkedMemory
28WSDFreeLinkedMemory
29WSDGenerateFault
30WSDGenerateFaultEx
31WSDGenerateRandomDelay
32WSDGetConfigurationOption
33WSDProcessFault
34WSDSetConfigurationOption
35WSDXMLAddChild
36WSDXMLAddSibling
37WSDXMLBuildAnyForSingleElement
38WSDXMLCleanupElement
39WSDXMLCreateContext
40WSDXMLGetNameFromBuiltinNamespace
41WSDXMLGetValueFromAny
lib/libc/mingw/libarm32/aclui.def created+15
...@@ -0,0 +1,15 @@
1;
2; Definition file of ACLUI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "ACLUI.dll"
7EXPORTS
8CreateSecurityPage
9EditSecurity
10EditSecurityAdvanced
11EditResourceCondition
12EditConditionalAceClaims
13GetLocalizedStringForCondition
14GetTlsIndexForClaimDictionary
15IID_ISecurityInformation
lib/libc/mingw/libarm32/apphelp.def created+260
...@@ -0,0 +1,260 @@
1;
2; Definition file of apphelp.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "apphelp.dll"
7EXPORTS
8ord_1 @1
9ord_2 @2
10ord_3 @3
11ord_4 @4
12ord_5 @5
13ord_6 @6
14ord_7 @7
15ord_8 @8
16ord_9 @9
17ord_10 @10
18ord_11 @11
19ord_12 @12
20ord_13 @13
21ord_14 @14
22AllowPermLayer
23ApphelpCheckExe
24ord_17 @17
25ord_18 @18
26ord_19 @19
27ord_20 @20
28ord_21 @21
29ord_22 @22
30ord_23 @23
31ord_24 @24
32ord_25 @25
33ord_26 @26
34ord_27 @27
35ord_28 @28
36ord_29 @29
37ord_30 @30
38ord_31 @31
39ord_32 @32
40ord_33 @33
41ApphelpCheckIME
42ApphelpCheckInstallShieldPackage
43ApphelpCheckModule
44ApphelpCheckMsiPackage
45ApphelpCheckRunApp
46ApphelpCheckRunAppEx
47ApphelpCheckShellObject
48ApphelpCreateAppcompatData
49ApphelpDebugPrintf
50ApphelpFixMsiPackage
51ApphelpFixMsiPackageExe
52ApphelpFreeFileAttributes
53ApphelpGetFileAttributes
54ApphelpGetMsiProperties
55ApphelpGetNTVDMInfo
56ApphelpGetShimDebugLevel
57ApphelpIsPortMonAllowed
58ApphelpParseModuleData
59ApphelpQueryModuleData
60ApphelpQueryModuleDataEx
61ApphelpShowDialog
62ApphelpUpdateCacheEntry
63DlEnumChannels
64DlGetStateEx
65DlSetFlagsEx
66DlSetLevelEx
67DlSetStateEx
68DlSnapshot
69GetPermLayers
70SE_AddHookset
71SE_CALLBACK_AddHook
72SE_CALLBACK_Lookup
73SE_COM_AddHook
74SE_COM_AddServer
75SE_COM_HookInterface
76SE_COM_HookObject
77SE_COM_Lookup
78SE_DllLoaded
79SE_DllUnloaded
80SE_DynamicShim
81SE_GetHookAPIs
82SE_GetMaxShimCount
83SE_GetProcAddressForCaller
84SE_GetProcAddressIgnoreIncExc
85SE_GetProcAddressLoad
86SE_GetShimCount
87SE_GetShimId
88SE_InitializeEngine
89SE_InstallAfterInit
90SE_InstallBeforeInit
91SE_IsShimDll
92SE_LdrEntryRemoved
93SE_LdrResolveDllName
94SE_LookupAddress
95SE_LookupCaller
96SE_ProcessDying
97SE_ShimDPF
98SE_ShimDllLoaded
99SE_WINRT_AddHook
100SE_WINRT_HookObject
101SdbAddLayerTagRefToQuery
102SdbApphelpNotify
103SdbApphelpNotifyEx
104SdbApphelpNotifyEx2
105SdbBeginWriteListTag
106SdbBuildCompatEnvVariables
107SdbCloseApphelpInformation
108SdbCloseDatabase
109SdbCloseDatabaseWrite
110SdbCloseLocalDatabase
111SdbCommitIndexes
112SdbCreateDatabase
113SdbCreateHelpCenterURL
114SdbCreateMsiTransformFile
115SdbDeclareIndex
116SdbDeletePermLayerKeys
117SdbDumpSearchPathPartCaches
118SdbEndWriteListTag
119SdbEnumMsiTransforms
120SdbEscapeApphelpURL
121SdbFindCustomActionForPackage
122SdbFindFirstDWORDIndexedTag
123SdbFindFirstGUIDIndexedTag
124SdbFindFirstMsiPackage
125SdbFindFirstMsiPackage_Str
126SdbFindFirstNamedTag
127SdbFindFirstStringIndexedTag
128SdbFindFirstTag
129SdbFindFirstTagRef
130SdbFindMsiPackageByID
131SdbFindNextDWORDIndexedTag
132SdbFindNextGUIDIndexedTag
133SdbFindNextMsiPackage
134SdbFindNextStringIndexedTag
135SdbFindNextTag
136SdbFindNextTagRef
137SdbFormatAttribute
138SdbFreeDatabaseInformation
139SdbFreeFileAttributes
140SdbFreeFileInfo
141SdbFreeFlagInfo
142SdbGUIDFromString
143SdbGUIDToString
144SdbGetAppCompatDataSize
145SdbGetAppPatchDir
146SdbGetBinaryTagData
147SdbGetDatabaseGUID
148SdbGetDatabaseID
149SdbGetDatabaseInformation
150SdbGetDatabaseInformationByName
151SdbGetDatabaseMatch
152SdbGetDatabaseVersion
153SdbGetDllPath
154SdbGetEntryFlags
155SdbGetFileAttributes
156SdbGetFileImageType
157SdbGetFileImageTypeEx
158SdbGetFileInfo
159SdbGetFirstChild
160SdbGetImageType
161SdbGetIndex
162SdbGetItemFromItemRef
163SdbGetLayerName
164SdbGetLayerTagRef
165SdbGetLocalPDB
166SdbGetMatchingExe
167SdbGetMsiPackageInformation
168SdbGetNamedLayer
169SdbGetNextChild
170SdbGetNthUserSdb
171SdbGetPDBFromGUID
172SdbGetPermLayerKeys
173SdbGetShowDebugInfoOption
174SdbGetShowDebugInfoOptionValue
175SdbGetStandardDatabaseGUID
176SdbGetStringTagPtr
177SdbGetTagDataSize
178SdbGetTagFromTagID
179SdbGrabMatchingInfo
180SdbGrabMatchingInfoEx
181SdbInitDatabase
182SdbInitDatabaseEx
183SdbIsNullGUID
184SdbIsStandardDatabase
185SdbIsTagrefFromLocalDB
186SdbIsTagrefFromMainDB
187SdbLoadString
188SdbMakeIndexKeyFromString
189SdbOpenApphelpDetailsDatabase
190SdbOpenApphelpDetailsDatabaseSP
191SdbOpenApphelpInformation
192SdbOpenApphelpInformationByID
193SdbOpenApphelpResourceFile
194SdbOpenDatabase
195SdbOpenDbFromGuid
196SdbOpenLocalDatabase
197SdbPackAppCompatData
198SdbQueryApphelpInformation
199SdbQueryBlockUpgrade
200SdbQueryContext
201SdbQueryData
202SdbQueryDataEx
203SdbQueryDataExTagID
204SdbQueryFlagInfo
205SdbQueryFlagMask
206SdbQueryName
207SdbQueryReinstallUpgrade
208SdbReadApphelpData
209SdbReadApphelpDetailsData
210SdbReadBYTETag
211SdbReadBYTETagRef
212SdbReadBinaryTag
213SdbReadDWORDTag
214SdbReadDWORDTagRef
215SdbReadEntryInformation
216SdbReadMsiTransformInfo
217SdbReadPatchBits
218SdbReadQWORDTag
219SdbReadQWORDTagRef
220SdbReadStringTag
221SdbReadStringTagRef
222SdbReadWORDTag
223SdbReadWORDTagRef
224SdbRegisterDatabase
225SdbRegisterDatabaseEx
226SdbReleaseDatabase
227SdbReleaseMatchingExe
228SdbResolveDatabase
229SdbSetApphelpDebugParameters
230SdbSetEntryFlags
231SdbSetImageType
232SdbSetPermLayerKeys
233SdbShowApphelpDialog
234SdbShowApphelpFromQuery
235SdbStartIndexing
236SdbStopIndexing
237SdbStringDuplicate
238SdbStringReplace
239SdbStringReplaceArray
240SdbTagIDToTagRef
241SdbTagRefToTagID
242SdbTagToString
243SdbUnpackAppCompatData
244SdbUnregisterDatabase
245SdbWriteBYTETag
246SdbWriteBinaryTag
247SdbWriteBinaryTagFromFile
248SdbWriteDWORDTag
249SdbWriteNULLTag
250SdbWriteQWORDTag
251SdbWriteStringRefTag
252SdbWriteStringTag
253SdbWriteStringTagDirect
254SdbWriteWORDTag
255SetPermLayerState
256SetPermLayerStateEx
257SetPermLayers
258ShimDbgPrint
259ShimDumpCache
260ShimFlushCache
lib/libc/mingw/libarm32/certpoleng.def created+15
...@@ -0,0 +1,15 @@
1;
2; Definition file of certpoleng.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "certpoleng.dll"
7EXPORTS
8PstAcquirePrivateKey
9PstGetCertificateChain
10PstGetCertificates
11PstGetTrustAnchors
12PstGetTrustAnchorsEx
13PstGetUserNameForCertificate
14PstMapCertificate
15PstValidate
lib/libc/mingw/libarm32/clfsw32.def created+70
...@@ -0,0 +1,70 @@
1;
2; Definition file of clfsw32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "clfsw32.dll"
7EXPORTS
8LsnDecrement
9AddLogContainer
10AddLogContainerSet
11AdvanceLogBase
12AlignReservedLog
13AllocReservedLog
14CLFS_LSN_INVALID
15CLFS_LSN_NULL
16CloseAndResetLogFile
17CreateLogContainerScanContext
18CreateLogFile
19CreateLogMarshallingArea
20DeleteLogByHandle
21DeleteLogFile
22DeleteLogMarshallingArea
23DeregisterManageableLogClient
24DumpLogRecords
25FlushLogBuffers
26FlushLogToLsn
27FreeReservedLog
28GetLogContainerName
29GetLogFileInformation
30GetLogIoStatistics
31GetLogReservationInfo
32GetNextLogArchiveExtent
33HandleLogFull
34InstallLogPolicy
35LogTailAdvanceFailure
36LsnBlockOffset
37LsnContainer
38LsnCreate
39LsnEqual
40LsnGreater
41LsnIncrement
42LsnInvalid
43LsnLess
44LsnNull
45LsnRecordSequence
46PrepareLogArchive
47QueryLogPolicy
48ReadLogArchiveMetadata
49ReadLogNotification
50ReadLogRecord
51ReadLogRestartArea
52ReadNextLogRecord
53ReadPreviousLogRestartArea
54RegisterForLogWriteNotification
55RegisterManageableLogClient
56RemoveLogContainer
57RemoveLogContainerSet
58RemoveLogPolicy
59ReserveAndAppendLog
60ReserveAndAppendLogAligned
61ScanLogContainers
62SetEndOfLog
63SetLogArchiveMode
64SetLogArchiveTail
65SetLogFileSizeWithPolicy
66TerminateLogArchive
67TerminateReadLog
68TruncateLog
69ValidateLog
70WriteLogRestartArea
lib/libc/mingw/libarm32/comsvcs.def created+25
...@@ -0,0 +1,25 @@
1;
2; Definition file of comsvcs.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "comsvcs.dll"
7EXPORTS
8CosGetCallContext
9ord_6 @6
10ord_7 @7
11CoCreateActivity
12CoEnterServiceDomain
13CoLeaveServiceDomain
14CoLoadServices
15ComSvcsExceptionFilter
16ComSvcsLogError
17DispManGetContext
18GetMTAThreadPoolMetrics
19GetManagedExtensions
20GetObjectContext
21GetTrkSvrObject
22MTSCreateActivity
23MiniDumpW
24RecycleSurrogate
25SafeRef
lib/libc/mingw/libarm32/d3d10_1.def created+37
...@@ -0,0 +1,37 @@
1;
2; Definition file of d3d10_1.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "d3d10_1.dll"
7EXPORTS
8RevertToOldImplementation
9D3D10CompileEffectFromMemory
10D3D10CompileShader
11D3D10CreateBlob
12D3D10CreateDevice1
13D3D10CreateDeviceAndSwapChain1
14D3D10CreateEffectFromMemory
15D3D10CreateEffectPoolFromMemory
16D3D10CreateStateBlock
17D3D10DisassembleEffect
18D3D10DisassembleShader
19D3D10GetGeometryShaderProfile
20D3D10GetInputAndOutputSignatureBlob
21D3D10GetInputSignatureBlob
22D3D10GetOutputSignatureBlob
23D3D10GetPixelShaderProfile
24D3D10GetShaderDebugInfo
25D3D10GetVersion
26D3D10GetVertexShaderProfile
27D3D10PreprocessShader
28D3D10ReflectShader
29D3D10RegisterLayers
30D3D10StateBlockMaskDifference
31D3D10StateBlockMaskDisableAll
32D3D10StateBlockMaskDisableCapture
33D3D10StateBlockMaskEnableAll
34D3D10StateBlockMaskEnableCapture
35D3D10StateBlockMaskGetSetting
36D3D10StateBlockMaskIntersect
37D3D10StateBlockMaskUnion
lib/libc/mingw/libarm32/deviceaccess.def created+8
...@@ -0,0 +1,8 @@
1;
2; Definition file of deviceaccess.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "deviceaccess.dll"
7EXPORTS
8CreateDeviceAccessInstance
lib/libc/mingw/libarm32/dhcpcsvc6.def created+29
...@@ -0,0 +1,29 @@
1;
2; Definition file of dhcpcsvc6.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "dhcpcsvc6.DLL"
7EXPORTS
8Dhcpv6AcquireParameters
9Dhcpv6CApiCleanup
10Dhcpv6CApiInitialize
11Dhcpv6CancelOperation
12Dhcpv6EnableDhcp
13Dhcpv6EnableTracing
14Dhcpv6FreeLeaseInfo
15Dhcpv6FreeLeaseInfoArray
16Dhcpv6GetTraceArray
17Dhcpv6GetUserClasses
18Dhcpv6IsEnabled
19Dhcpv6QueryLeaseInfo
20Dhcpv6QueryLeaseInfoArray
21Dhcpv6ReleaseParameters
22Dhcpv6ReleasePrefix
23Dhcpv6ReleasePrefixEx
24Dhcpv6RenewPrefix
25Dhcpv6RenewPrefixEx
26Dhcpv6RequestParams
27Dhcpv6RequestPrefix
28Dhcpv6RequestPrefixEx
29Dhcpv6SetUserClass
lib/libc/mingw/libarm32/drt.def created+28
...@@ -0,0 +1,28 @@
1;
2; Definition file of drt.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "drt.dll"
7EXPORTS
8DrtFlushCache
9DrtGetCacheStatsEx
10DrtHandlePowerEvent
11DrtPingPeer
12DrtStartPartitionDetection
13DrtClose
14DrtContinueSearch
15DrtEndSearch
16DrtGetEventData
17DrtGetEventDataSize
18DrtGetInstanceName
19DrtGetInstanceNameSize
20DrtGetSearchPath
21DrtGetSearchPathSize
22DrtGetSearchResult
23DrtGetSearchResultSize
24DrtOpen
25DrtRegisterKey
26DrtStartSearch
27DrtUnregisterKey
28DrtUpdateKey
lib/libc/mingw/libarm32/drtprov.def created+16
...@@ -0,0 +1,16 @@
1;
2; Definition file of drtprov.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "drtprov.dll"
7EXPORTS
8DrtCreateDerivedKey
9DrtCreateDerivedKeySecurityProvider
10DrtCreateDnsBootstrapResolver
11DrtCreateNullSecurityProvider
12DrtCreatePnrpBootstrapResolver
13DrtDeleteDerivedKeySecurityProvider
14DrtDeleteDnsBootstrapResolver
15DrtDeleteNullSecurityProvider
16DrtDeletePnrpBootstrapResolver
lib/libc/mingw/libarm32/drttransport.def created+9
...@@ -0,0 +1,9 @@
1;
2; Definition file of drttransport.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "drttransport.dll"
7EXPORTS
8DrtCreateIpv6UdpTransport
9DrtDeleteIpv6UdpTransport
lib/libc/mingw/libarm32/dsparse.def created+26
...@@ -0,0 +1,26 @@
1;
2; Definition file of DSPARSE.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "DSPARSE.dll"
7EXPORTS
8DsCrackSpn2A
9DsCrackSpn2W
10DsCrackSpn3W
11DsCrackSpn4W
12DsCrackSpnA
13DsCrackSpnW
14DsCrackUnquotedMangledRdnA
15DsCrackUnquotedMangledRdnW
16DsGetRdnW
17DsIsMangledDnA
18DsIsMangledDnW
19DsIsMangledRdnValueA
20DsIsMangledRdnValueW
21DsMakeSpnA
22DsMakeSpnW
23DsQuoteRdnValueA
24DsQuoteRdnValueW
25DsUnquoteRdnValueA
26DsUnquoteRdnValueW
lib/libc/mingw/libarm32/efswrt.def created+11
...@@ -0,0 +1,11 @@
1;
2; Definition file of efswrt.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "efswrt.dll"
7EXPORTS
8EnterpriseDataCopyProtection
9EnterpriseDataGetStatus
10EnterpriseDataProtect
11EnterpriseDataRevoke
lib/libc/mingw/libarm32/esent.def created+363
...@@ -0,0 +1,363 @@
1;
2; Definition file of ESENT.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "ESENT.dll"
7EXPORTS
8DebugExtensionInitialize
9DebugExtensionNotify
10DebugExtensionUninitialize
11JetAddColumn
12JetAddColumnA
13JetAddColumnW
14JetAttachDatabase
15JetAttachDatabase2
16JetAttachDatabase2A
17JetAttachDatabase2W
18JetAttachDatabaseA
19JetAttachDatabaseW
20JetAttachDatabaseWithStreaming
21JetAttachDatabaseWithStreamingA
22JetAttachDatabaseWithStreamingW
23JetBackup
24JetBackupA
25JetBackupInstance
26JetBackupInstanceA
27JetBackupInstanceW
28JetBackupW
29JetBeginDatabaseIncrementalReseed
30JetBeginDatabaseIncrementalReseedA
31JetBeginDatabaseIncrementalReseedW
32JetBeginExternalBackup
33JetBeginExternalBackupInstance
34JetBeginSession
35JetBeginSessionA
36JetBeginSessionW
37JetBeginSurrogateBackup
38JetBeginTransaction
39JetBeginTransaction2
40JetBeginTransaction3
41JetCloseDatabase
42JetCloseFile
43JetCloseFileInstance
44JetCloseTable
45JetCommitTransaction
46JetCommitTransaction2
47JetCompact
48JetCompactA
49JetCompactW
50JetComputeStats
51JetConfigureProcessForCrashDump
52JetConsumeLogData
53JetConvertDDL
54JetConvertDDLA
55JetConvertDDLW
56JetCreateDatabase
57JetCreateDatabase2
58JetCreateDatabase2A
59JetCreateDatabase2W
60JetCreateDatabaseA
61JetCreateDatabaseW
62JetCreateDatabaseWithStreaming
63JetCreateDatabaseWithStreamingA
64JetCreateDatabaseWithStreamingW
65JetCreateIndex
66JetCreateIndex2
67JetCreateIndex2A
68JetCreateIndex2W
69JetCreateIndex3A
70JetCreateIndex3W
71JetCreateIndex4A
72JetCreateIndex4W
73JetCreateIndexA
74JetCreateIndexW
75JetCreateInstance
76JetCreateInstance2
77JetCreateInstance2A
78JetCreateInstance2W
79JetCreateInstanceA
80JetCreateInstanceW
81JetCreateTable
82JetCreateTableA
83JetCreateTableColumnIndex
84JetCreateTableColumnIndex2
85JetCreateTableColumnIndex2A
86JetCreateTableColumnIndex2W
87JetCreateTableColumnIndex3A
88JetCreateTableColumnIndex3W
89JetCreateTableColumnIndex4A
90JetCreateTableColumnIndex4W
91JetCreateTableColumnIndexA
92JetCreateTableColumnIndexW
93JetCreateTableW
94JetDBUtilities
95JetDBUtilitiesA
96JetDBUtilitiesW
97JetDatabaseScan
98JetDefragment
99JetDefragment2
100JetDefragment2A
101JetDefragment2W
102JetDefragment3
103JetDefragment3A
104JetDefragment3W
105JetDefragmentA
106JetDefragmentW
107JetDelete
108JetDeleteColumn
109JetDeleteColumn2
110JetDeleteColumn2A
111JetDeleteColumn2W
112JetDeleteColumnA
113JetDeleteColumnW
114JetDeleteIndex
115JetDeleteIndexA
116JetDeleteIndexW
117JetDeleteTable
118JetDeleteTableA
119JetDeleteTableW
120JetDetachDatabase
121JetDetachDatabase2
122JetDetachDatabase2A
123JetDetachDatabase2W
124JetDetachDatabaseA
125JetDetachDatabaseW
126JetDupCursor
127JetDupSession
128JetEnableMultiInstance
129JetEnableMultiInstanceA
130JetEnableMultiInstanceW
131JetEndDatabaseIncrementalReseed
132JetEndDatabaseIncrementalReseedA
133JetEndDatabaseIncrementalReseedW
134JetEndExternalBackup
135JetEndExternalBackupInstance
136JetEndExternalBackupInstance2
137JetEndSession
138JetEndSurrogateBackup
139JetEnumerateColumns
140JetEscrowUpdate
141JetExternalRestore
142JetExternalRestore2
143JetExternalRestore2A
144JetExternalRestore2W
145JetExternalRestoreA
146JetExternalRestoreW
147JetFreeBuffer
148JetGetAttachInfo
149JetGetAttachInfoA
150JetGetAttachInfoInstance
151JetGetAttachInfoInstanceA
152JetGetAttachInfoInstanceW
153JetGetAttachInfoW
154JetGetBookmark
155JetGetColumnInfo
156JetGetColumnInfoA
157JetGetColumnInfoW
158JetGetCounter
159JetGetCurrentIndex
160JetGetCurrentIndexA
161JetGetCurrentIndexW
162JetGetCursorInfo
163JetGetDatabaseFileInfo
164JetGetDatabaseFileInfoA
165JetGetDatabaseFileInfoW
166JetGetDatabaseInfo
167JetGetDatabaseInfoA
168JetGetDatabaseInfoW
169JetGetDatabasePages
170JetGetErrorInfoW
171JetGetIndexInfo
172JetGetIndexInfoA
173JetGetIndexInfoW
174JetGetInstanceInfo
175JetGetInstanceInfoA
176JetGetInstanceInfoW
177JetGetInstanceMiscInfo
178JetGetLS
179JetGetLock
180JetGetLogFileInfo
181JetGetLogFileInfoA
182JetGetLogFileInfoW
183JetGetLogInfo
184JetGetLogInfoA
185JetGetLogInfoInstance
186JetGetLogInfoInstance2
187JetGetLogInfoInstance2A
188JetGetLogInfoInstance2W
189JetGetLogInfoInstanceA
190JetGetLogInfoInstanceW
191JetGetLogInfoW
192JetGetMaxDatabaseSize
193JetGetObjectInfo
194JetGetObjectInfoA
195JetGetObjectInfoW
196JetGetPageInfo
197JetGetPageInfo2
198JetGetRecordPosition
199JetGetRecordSize
200JetGetRecordSize2
201JetGetResourceParam
202JetGetSecondaryIndexBookmark
203JetGetSessionInfo
204JetGetSessionParameter
205JetGetSystemParameter
206JetGetSystemParameterA
207JetGetSystemParameterW
208JetGetTableColumnInfo
209JetGetTableColumnInfoA
210JetGetTableColumnInfoW
211JetGetTableIndexInfo
212JetGetTableIndexInfoA
213JetGetTableIndexInfoW
214JetGetTableInfo
215JetGetTableInfoA
216JetGetTableInfoW
217JetGetThreadStats
218JetGetTruncateLogInfoInstance
219JetGetTruncateLogInfoInstanceA
220JetGetTruncateLogInfoInstanceW
221JetGetVersion
222JetGotoBookmark
223JetGotoPosition
224JetGotoSecondaryIndexBookmark
225JetGrowDatabase
226JetIdle
227JetIndexRecordCount
228JetInit
229JetInit2
230JetInit3
231JetInit3A
232JetInit3W
233JetInit4
234JetInit4A
235JetInit4W
236JetIntersectIndexes
237JetMakeKey
238JetMove
239JetOSSnapshotAbort
240JetOSSnapshotEnd
241JetOSSnapshotFreeze
242JetOSSnapshotFreezeA
243JetOSSnapshotFreezeW
244JetOSSnapshotGetFreezeInfo
245JetOSSnapshotGetFreezeInfoA
246JetOSSnapshotGetFreezeInfoW
247JetOSSnapshotPrepare
248JetOSSnapshotPrepareInstance
249JetOSSnapshotThaw
250JetOSSnapshotTruncateLog
251JetOSSnapshotTruncateLogInstance
252JetOnlinePatchDatabasePage
253JetOpenDatabase
254JetOpenDatabaseA
255JetOpenDatabaseW
256JetOpenFile
257JetOpenFileA
258JetOpenFileInstance
259JetOpenFileInstanceA
260JetOpenFileInstanceW
261JetOpenFileSectionInstance
262JetOpenFileSectionInstanceA
263JetOpenFileSectionInstanceW
264JetOpenFileW
265JetOpenTable
266JetOpenTableA
267JetOpenTableW
268JetOpenTempTable
269JetOpenTempTable2
270JetOpenTempTable3
271JetOpenTemporaryTable
272JetOpenTemporaryTable2
273JetPatchDatabasePages
274JetPatchDatabasePagesA
275JetPatchDatabasePagesW
276JetPrepareToCommitTransaction
277JetPrepareUpdate
278JetPrereadIndexRanges
279JetPrereadKeys
280JetPrereadTablesW
281JetReadFile
282JetReadFileInstance
283JetRegisterCallback
284JetRemoveLogfileA
285JetRemoveLogfileW
286JetRenameColumn
287JetRenameColumnA
288JetRenameColumnW
289JetRenameTable
290JetRenameTableA
291JetRenameTableW
292JetResetCounter
293JetResetSessionContext
294JetResetTableSequential
295JetResizeDatabase
296JetRestore
297JetRestore2
298JetRestore2A
299JetRestore2W
300JetRestoreA
301JetRestoreInstance
302JetRestoreInstanceA
303JetRestoreInstanceW
304JetRestoreW
305JetRetrieveColumn
306JetRetrieveColumns
307JetRetrieveKey
308JetRetrieveTaggedColumnList
309JetRollback
310JetSeek
311JetSetColumn
312JetSetColumnDefaultValue
313JetSetColumnDefaultValueA
314JetSetColumnDefaultValueW
315JetSetColumns
316JetSetCurrentIndex
317JetSetCurrentIndex2
318JetSetCurrentIndex2A
319JetSetCurrentIndex2W
320JetSetCurrentIndex3
321JetSetCurrentIndex3A
322JetSetCurrentIndex3W
323JetSetCurrentIndex4
324JetSetCurrentIndex4A
325JetSetCurrentIndex4W
326JetSetCurrentIndexA
327JetSetCurrentIndexW
328JetSetCursorFilter
329JetSetDatabaseSize
330JetSetDatabaseSizeA
331JetSetDatabaseSizeW
332JetSetIndexRange
333JetSetLS
334JetSetMaxDatabaseSize
335JetSetResourceParam
336JetSetSessionContext
337JetSetSessionParameter
338JetSetSystemParameter
339JetSetSystemParameterA
340JetSetSystemParameterW
341JetSetTableSequential
342JetSnapshotStart
343JetSnapshotStartA
344JetSnapshotStartW
345JetSnapshotStop
346JetStopBackup
347JetStopBackupInstance
348JetStopService
349JetStopServiceInstance
350JetStopServiceInstance2
351JetTerm
352JetTerm2
353JetTestHook
354JetTracing
355JetTruncateLog
356JetTruncateLogInstance
357JetUnregisterCallback
358JetUpdate
359JetUpdate2
360JetUpgradeDatabase
361JetUpgradeDatabaseA
362JetUpgradeDatabaseW
363ese
lib/libc/mingw/libarm32/faultrep.def created+17
...@@ -0,0 +1,17 @@
1;
2; Definition file of faultrep.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "faultrep.dll"
7EXPORTS
8ord_1 @1
9CheckPerUserCrossProcessThrottle
10UpdatePerUserLastCrossProcessCollectionTime
11AddERExcludedApplicationA
12AddERExcludedApplicationW
13CancelHangReporting
14ReportFault
15ReportHang
16WerReportHang
17WerpInitiateCrashReporting
lib/libc/mingw/libarm32/fhsvcctl.def created+20
...@@ -0,0 +1,20 @@
1;
2; Definition file of fhsvcctl.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "fhsvcctl.dll"
7EXPORTS
8FhQueryConfiguredUsersCount
9FhServiceBlockBackup
10FhServiceClearProtectionState
11FhServiceClosePipe
12FhServiceEnterMaintenanceMode
13FhServiceExitMaintenanceMode
14FhServiceMigrationFinished
15FhServiceMigrationStarting
16FhServiceOpenPipe
17FhServiceReloadConfiguration
18FhServiceStartBackup
19FhServiceStopBackup
20FhServiceUnblockBackup
lib/libc/mingw/libarm32/fwpuclnt.def created+259
...@@ -0,0 +1,259 @@
1;
2; Definition file of fwpuclnt.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "fwpuclnt.dll"
7EXPORTS
8FwpiExpandCriteria0
9FwpiFreeCriteria0
10FwpiVpnTriggerAddAppSids
11FwpiVpnTriggerAddFilePaths
12FwpiVpnTriggerConfigureParameters
13FwpiVpnTriggerEventSubscribe0
14FwpiVpnTriggerEventUnsubscribe0
15FwpiVpnTriggerInitializeNrptTriggering
16FwpiVpnTriggerRemoveAppSids
17FwpiVpnTriggerRemoveFilePaths
18FwpiVpnTriggerResetNrptTriggering
19FwpiVpnTriggerSetStateDisconnected
20FwpiVpnTriggerUninitializeNrptTriggering
21FwpmCalloutAdd0
22FwpmCalloutCreateEnumHandle0
23FwpmCalloutDeleteById0
24FwpmCalloutDeleteByKey0
25FwpmCalloutDestroyEnumHandle0
26FwpmCalloutEnum0
27FwpmCalloutGetById0
28FwpmCalloutGetByKey0
29FwpmCalloutGetSecurityInfoByKey0
30FwpmCalloutSetSecurityInfoByKey0
31FwpmCalloutSubscribeChanges0
32FwpmCalloutSubscriptionsGet0
33FwpmCalloutUnsubscribeChanges0
34FwpmConnectionCreateEnumHandle0
35FwpmConnectionDestroyEnumHandle0
36FwpmConnectionEnum0
37FwpmConnectionGetById0
38FwpmConnectionGetSecurityInfo0
39FwpmConnectionSetSecurityInfo0
40FwpmConnectionSubscribe0
41FwpmConnectionUnsubscribe0
42FwpmDiagnoseNetFailure0
43FwpmEngineClose0
44FwpmEngineGetOption0
45FwpmEngineGetSecurityInfo0
46FwpmEngineOpen0
47FwpmEngineSetOption0
48FwpmEngineSetSecurityInfo0
49FwpmEventProviderCreate0
50FwpmEventProviderDestroy0
51FwpmEventProviderFireNetEvent0
52FwpmEventProviderIsNetEventTypeEnabled0
53FwpmFilterAdd0
54FwpmFilterCreateEnumHandle0
55FwpmFilterDeleteById0
56FwpmFilterDeleteByKey0
57FwpmFilterDestroyEnumHandle0
58FwpmFilterEnum0
59FwpmFilterGetById0
60FwpmFilterGetByKey0
61FwpmFilterGetSecurityInfoByKey0
62FwpmFilterSetSecurityInfoByKey0
63FwpmFilterSubscribeChanges0
64FwpmFilterSubscriptionsGet0
65FwpmFilterUnsubscribeChanges0
66FwpmFreeMemory0
67FwpmGetAppIdFromFileName0
68FwpmGetSidFromOnlineId0
69FwpmIPsecTunnelAdd0
70FwpmIPsecTunnelAdd1
71FwpmIPsecTunnelAdd2
72FwpmIPsecTunnelAddConditions0
73FwpmIPsecTunnelDeleteByKey0
74FwpmLayerCreateEnumHandle0
75FwpmLayerDestroyEnumHandle0
76FwpmLayerEnum0
77FwpmLayerGetById0
78FwpmLayerGetByKey0
79FwpmLayerGetSecurityInfoByKey0
80FwpmLayerSetSecurityInfoByKey0
81FwpmNetEventCreateEnumHandle0
82FwpmNetEventDestroyEnumHandle0
83FwpmNetEventEnum0
84FwpmNetEventEnum1
85FwpmNetEventEnum2
86FwpmNetEventSubscribe0
87FwpmNetEventSubscribe1
88FwpmNetEventSubscriptionsGet0
89FwpmNetEventUnsubscribe0
90FwpmNetEventsGetSecurityInfo0
91FwpmNetEventsLost0
92FwpmNetEventsSetSecurityInfo0
93FwpmProcessNameResolutionEvent0
94FwpmProviderAdd0
95FwpmProviderContextAdd0
96FwpmProviderContextAdd1
97FwpmProviderContextAdd2
98FwpmProviderContextCreateEnumHandle0
99FwpmProviderContextDeleteById0
100FwpmProviderContextDeleteByKey0
101FwpmProviderContextDestroyEnumHandle0
102FwpmProviderContextEnum0
103FwpmProviderContextEnum1
104FwpmProviderContextEnum2
105FwpmProviderContextGetById0
106FwpmProviderContextGetById1
107FwpmProviderContextGetById2
108FwpmProviderContextGetByKey0
109FwpmProviderContextGetByKey1
110FwpmProviderContextGetByKey2
111FwpmProviderContextGetSecurityInfoByKey0
112FwpmProviderContextSetSecurityInfoByKey0
113FwpmProviderContextSubscribeChanges0
114FwpmProviderContextSubscriptionsGet0
115FwpmProviderContextUnsubscribeChanges0
116FwpmProviderCreateEnumHandle0
117FwpmProviderDeleteByKey0
118FwpmProviderDestroyEnumHandle0
119FwpmProviderEnum0
120FwpmProviderGetByKey0
121FwpmProviderGetSecurityInfoByKey0
122FwpmProviderSetSecurityInfoByKey0
123FwpmProviderSubscribeChanges0
124FwpmProviderSubscriptionsGet0
125FwpmProviderUnsubscribeChanges0
126FwpmSessionCreateEnumHandle0
127FwpmSessionDestroyEnumHandle0
128FwpmSessionEnum0
129FwpmSubLayerAdd0
130FwpmSubLayerCreateEnumHandle0
131FwpmSubLayerDeleteByKey0
132FwpmSubLayerDestroyEnumHandle0
133FwpmSubLayerEnum0
134FwpmSubLayerGetByKey0
135FwpmSubLayerGetSecurityInfoByKey0
136FwpmSubLayerSetSecurityInfoByKey0
137FwpmSubLayerSubscribeChanges0
138FwpmSubLayerSubscriptionsGet0
139FwpmSubLayerUnsubscribeChanges0
140FwpmSystemPortsGet0
141FwpmSystemPortsSubscribe0
142FwpmSystemPortsUnsubscribe0
143FwpmTraceRestoreDefaults0
144FwpmTransactionAbort0
145FwpmTransactionBegin0
146FwpmTransactionCommit0
147FwpmvSwitchEventSubscribe0
148FwpmvSwitchEventUnsubscribe0
149FwpmvSwitchEventsGetSecurityInfo0
150FwpmvSwitchEventsSetSecurityInfo0
151FwppConnectionGetByIPsecInfo
152FwpsAleEndpointCreateEnumHandle0
153FwpsAleEndpointDestroyEnumHandle0
154FwpsAleEndpointEnum0
155FwpsAleEndpointGetById0
156FwpsAleEndpointGetSecurityInfo0
157FwpsAleEndpointSetSecurityInfo0
158FwpsAleExplicitCredentialsQuery0
159FwpsAleGetPortStatus0
160FwpsClassifyUser0
161FwpsFreeMemory0
162FwpsGetInProcReplicaOffset0
163FwpsLayerCreateInProcReplica0
164FwpsLayerReleaseInProcReplica0
165FwpsOpenToken0
166FwpsQueryIPsecDosFWUsed0
167FwpsQueryIPsecOffloadDone0
168GetUnifiedTraceHandle
169IPsecDospGetSecurityInfo0
170IPsecDospGetStatistics0
171IPsecDospSetSecurityInfo0
172IPsecDospStateCreateEnumHandle0
173IPsecDospStateDestroyEnumHandle0
174IPsecDospStateEnum0
175IPsecGetKeyFromDictator0
176IPsecGetStatistics0
177IPsecGetStatistics1
178IPsecKeyDictationCheck0
179IPsecKeyManagerAddAndRegister0
180IPsecKeyManagerGetSecurityInfoByKey0
181IPsecKeyManagerSetSecurityInfoByKey0
182IPsecKeyManagerUnregisterAndDelete0
183IPsecKeyManagersGet0
184IPsecKeyModuleAdd0
185IPsecKeyModuleDelete0
186IPsecKeyModuleUpdateAcquire0
187IPsecKeyNotification0
188IPsecSaContextAddInbound0
189IPsecSaContextAddInbound1
190IPsecSaContextAddInboundAndTrackConnection
191IPsecSaContextAddOutbound0
192IPsecSaContextAddOutbound1
193IPsecSaContextAddOutboundAndTrackConnection
194IPsecSaContextCreate0
195IPsecSaContextCreate1
196IPsecSaContextCreateEnumHandle0
197IPsecSaContextDeleteById0
198IPsecSaContextDestroyEnumHandle0
199IPsecSaContextEnum0
200IPsecSaContextEnum1
201IPsecSaContextExpire0
202IPsecSaContextGetById0
203IPsecSaContextGetById1
204IPsecSaContextGetSpi0
205IPsecSaContextGetSpi1
206IPsecSaContextSetSpi0
207IPsecSaContextSubscribe0
208IPsecSaContextSubscriptionsGet0
209IPsecSaContextUnsubscribe0
210IPsecSaContextUpdate0
211IPsecSaCreateEnumHandle0
212IPsecSaDbGetSecurityInfo0
213IPsecSaDbSetSecurityInfo0
214IPsecSaDestroyEnumHandle0
215IPsecSaEnum0
216IPsecSaEnum1
217IPsecSaInitiateAsync0
218IkeextGetConfigParameters0
219IkeextGetStatistics0
220IkeextGetStatistics1
221IkeextSaCreateEnumHandle0
222IkeextSaDbGetSecurityInfo0
223IkeextSaDbSetSecurityInfo0
224IkeextSaDeleteById0
225IkeextSaDestroyEnumHandle0
226IkeextSaEnum0
227IkeextSaEnum1
228IkeextSaEnum2
229IkeextSaGetById0
230IkeextSaGetById1
231IkeextSaGetById2
232IkeextSaUpdateAdditionalAddressesByTunnelId0
233IkeextSaUpdatePreferredAddressesByTunnelId0
234IkeextSetConfigParameters0
235NamespaceCallout
236WFPRIODequeueCompletion
237WSADeleteSocketPeerTargetName
238WSAImpersonateSocketPeer
239WSAQuerySocketSecurity
240WSARevertImpersonation
241WSASetSocketPeerTargetName
242WSASetSocketSecurity
243WfpCloseDPConfigureHandle
244WfpConfigureDPSecurityDescriptor
245WfpCreateDPConfigureHandle
246WfpRIOChannelClose
247WfpRIOCleanupRequestQueue
248WfpRIOCloseCompletionQueue
249WfpRIOCreateChannel
250WfpRIOCreateCompletionQueue
251WfpRIOCreateRequestQueue
252WfpRIODeregisterBuffer
253WfpRIOIndicateActivityThreshold
254WfpRIONotify
255WfpRIOReceive
256WfpRIORegisterBuffer
257WfpRIOResume
258WfpRIOSend
259WfpRIOSuspend
lib/libc/mingw/libarm32/httpapi.def created+46
...@@ -0,0 +1,46 @@
1;
2; Definition file of HTTPAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "HTTPAPI.dll"
7EXPORTS
8HttpAddFragmentToCache
9HttpAddUrl
10HttpAddUrlToUrlGroup
11HttpCancelHttpRequest
12HttpCloseRequestQueue
13HttpCloseServerSession
14HttpCloseUrlGroup
15HttpControlService
16HttpCreateHttpHandle
17HttpCreateRequestQueue
18HttpCreateServerSession
19HttpCreateUrlGroup
20HttpDeleteServiceConfiguration
21HttpEvaluateRequest
22HttpFlushResponseCache
23HttpGetCounters
24HttpInitialize
25HttpPrepareUrl
26HttpQueryRequestQueueProperty
27HttpQueryServerSessionProperty
28HttpQueryServiceConfiguration
29HttpQueryUrlGroupProperty
30HttpReadFragmentFromCache
31HttpReceiveClientCertificate
32HttpReceiveHttpRequest
33HttpReceiveRequestEntityBody
34HttpRemoveUrl
35HttpRemoveUrlFromUrlGroup
36HttpSendHttpResponse
37HttpSendResponseEntityBody
38HttpSetRequestQueueProperty
39HttpSetServerSessionProperty
40HttpSetServiceConfiguration
41HttpSetUrlGroupProperty
42HttpShutdownRequestQueue
43HttpTerminate
44HttpWaitForDemandStart
45HttpWaitForDisconnect
46HttpWaitForDisconnectEx
lib/libc/mingw/libarm32/magnification.def created+26
...@@ -0,0 +1,26 @@
1;
2; Definition file of MAGNIFICATION.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MAGNIFICATION.dll"
7EXPORTS
8MagGetColorEffect
9MagGetFullscreenColorEffect
10MagGetFullscreenTransform
11MagGetImageScalingCallback
12MagGetInputTransform
13MagGetWindowFilterList
14MagGetWindowSource
15MagGetWindowTransform
16MagInitialize
17MagSetColorEffect
18MagSetFullscreenColorEffect
19MagSetFullscreenTransform
20MagSetImageScalingCallback
21MagSetInputTransform
22MagSetWindowFilterList
23MagSetWindowSource
24MagSetWindowTransform
25MagShowSystemCursor
26MagUninitialize
lib/libc/mingw/libarm32/mdmregistration.def created+15
...@@ -0,0 +1,15 @@
1;
2; Definition file of MDMRegistration.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MDMRegistration.DLL"
7EXPORTS
8DiscoverManagementService
9DiscoverManagementServiceEx
10GetManagementAppHyperlink
11IsDeviceRegisteredWithManagement
12IsManagementRegistrationAllowed
13RegisterDeviceWithManagement
14SetManagedExternally
15UnregisterDeviceWithManagement
lib/libc/mingw/libarm32/mfcore.def created+49
...@@ -0,0 +1,49 @@
1;
2; Definition file of MFCORE.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MFCORE.dll"
7EXPORTS
8AppendPropVariant
9ConvertPropVariant
10CopyPropertyStore
11CreateNamedPropertyStore
12ExtractPropVariant
13MFCopyMFMetadata
14MFCreateAggregateSource
15MFCreateAppSourceProxy
16MFCreateAudioRenderer
17MFCreateAudioRendererActivate
18MFCreateDeviceSource
19MFCreateDeviceSourceActivate
20MFCreateFileSchemePlugin
21MFCreateMFMetadataOnPropertyStore
22MFCreateMediaProcessor
23MFCreateMediaSession
24MFCreatePMPHost
25MFCreatePMPMediaSession
26MFCreatePMPServer
27MFCreatePresentationClock
28MFCreateSampleCopierMFT
29MFCreateSampleGrabberSinkActivate
30MFCreateSequencerSegmentOffset
31MFCreateSequencerSource
32MFCreateSequencerSourceRemoteStream
33MFCreateSimpleTypeHandler
34MFCreateSoundEventSchemePlugin
35MFCreateStandardQualityManager
36MFCreateTopoLoader
37MFCreateTopology
38MFCreateTopologyNode
39MFCreateTransformWrapper
40MFCreateWMAEncoderActivate
41MFCreateWMVEncoderActivate
42MFEnumDeviceSources
43MFGetMultipleServiceProviders
44MFGetService
45MFGetTopoNodeCurrentType
46MFReadSequencerSegmentOffset
47MFRequireProtectedEnvironment
48MFShutdownObject
49MergePropertyStore
lib/libc/mingw/libarm32/mfplay.def created+9
...@@ -0,0 +1,9 @@
1;
2; Definition file of MFPlay.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MFPlay.DLL"
7EXPORTS
8MFPCreateMediaPlayer
9MFPCreateMediaPlayerEx
lib/libc/mingw/libarm32/mfsrcsnk.def created+9
...@@ -0,0 +1,9 @@
1;
2; Definition file of mfsrcsnk.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "mfsrcsnk.dll"
7EXPORTS
8MFCreateAVIMediaSink
9MFCreateWAVEMediaSink
lib/libc/mingw/libarm32/mprapi.def created+164
...@@ -0,0 +1,164 @@
1;
2; Definition file of MPRAPI.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MPRAPI.dll"
7EXPORTS
8CompressPhoneNumber
9MprAdminAddRoutingDomain
10MprAdminBufferFree
11MprAdminConnectionClearStats
12MprAdminConnectionEnum
13MprAdminConnectionEnumEx
14MprAdminConnectionGetInfo
15MprAdminConnectionGetInfoEx
16MprAdminConnectionRemoveQuarantine
17MprAdminDeleteRoutingDomain
18MprAdminDeregisterConnectionNotification
19MprAdminDeviceEnum
20MprAdminEstablishDomainRasServer
21MprAdminFreeRoutingDomainConfigEx
22MprAdminGetErrorString
23MprAdminGetPDCServer
24MprAdminGetProtocolStatistics
25MprAdminGetRoutingDomainId
26MprAdminInterfaceClearStatisticsEx
27MprAdminInterfaceConnect
28MprAdminInterfaceCreate
29MprAdminInterfaceCreateEx
30MprAdminInterfaceDelete
31MprAdminInterfaceDeviceGetInfo
32MprAdminInterfaceDeviceSetInfo
33MprAdminInterfaceDisconnect
34MprAdminInterfaceEnum
35MprAdminInterfaceEnumEx
36MprAdminInterfaceGetCredentials
37MprAdminInterfaceGetCredentialsEx
38MprAdminInterfaceGetCustomInfoEx
39MprAdminInterfaceGetHandle
40MprAdminInterfaceGetInfo
41MprAdminInterfaceGetInfoEx
42MprAdminInterfaceGetStatisticsEx
43MprAdminInterfaceQueryUpdateResult
44MprAdminInterfaceSetCredentials
45MprAdminInterfaceSetCredentialsEx
46MprAdminInterfaceSetCustomInfoEx
47MprAdminInterfaceSetInfo
48MprAdminInterfaceSetInfoEx
49MprAdminInterfaceTransportAdd
50MprAdminInterfaceTransportGetInfo
51MprAdminInterfaceTransportRemove
52MprAdminInterfaceTransportSetInfo
53MprAdminInterfaceUpdatePhonebookInfo
54MprAdminInterfaceUpdateRoutes
55MprAdminIsDomainRasServer
56MprAdminIsMultiTenancyEnabled
57MprAdminIsServiceInitialized
58MprAdminIsServiceRunning
59MprAdminMIBBufferFree
60MprAdminMIBEntryCreate
61MprAdminMIBEntryDelete
62MprAdminMIBEntryGet
63MprAdminMIBEntryGetFirst
64MprAdminMIBEntryGetNext
65MprAdminMIBEntrySet
66MprAdminMIBServerConnect
67MprAdminMIBServerDisconnect
68MprAdminMarkServerOffline
69MprAdminPortClearStats
70MprAdminPortDisconnect
71MprAdminPortEnum
72MprAdminPortGetInfo
73MprAdminPortReset
74MprAdminProtocolAction
75MprAdminRegisterConnectionNotification
76MprAdminRoutingDomainConnectionEnumEx
77MprAdminRoutingDomainGetConfigEx
78MprAdminRoutingDomainSetConfigEx
79MprAdminRoutingDomainsEnumEx
80MprAdminSendUserMessage
81MprAdminServerConnect
82MprAdminServerDisconnect
83MprAdminServerGetCredentials
84MprAdminServerGetInfo
85MprAdminServerGetInfoEx
86MprAdminServerSetCredentials
87MprAdminServerSetInfo
88MprAdminServerSetInfoEx
89MprAdminTransportCreate
90MprAdminTransportGetInfo
91MprAdminTransportSetInfo
92MprAdminUpdateConnection
93MprAdminUpgradeUsers
94MprAdminUserClose
95MprAdminUserGetInfo
96MprAdminUserOpen
97MprAdminUserRead
98MprAdminUserReadProfFlags
99MprAdminUserServerConnect
100MprAdminUserServerDisconnect
101MprAdminUserSetInfo
102MprAdminUserWrite
103MprAdminUserWriteProfFlags
104MprConfigAddRoutingDomain
105MprConfigBufferFree
106MprConfigDeleteRoutingDomain
107MprConfigFilterGetInfo
108MprConfigFilterSetInfo
109MprConfigFreeRoutingDomainConfigEx
110MprConfigGetFriendlyName
111MprConfigGetGuidName
112MprConfigGetRoutingDomainId
113MprConfigInterfaceCreate
114MprConfigInterfaceCreateEx
115MprConfigInterfaceDelete
116MprConfigInterfaceEnum
117MprConfigInterfaceEnumEx
118MprConfigInterfaceGetCustomInfoEx
119MprConfigInterfaceGetHandle
120MprConfigInterfaceGetInfo
121MprConfigInterfaceGetInfoEx
122MprConfigInterfaceSetCustomInfoEx
123MprConfigInterfaceSetInfo
124MprConfigInterfaceSetInfoEx
125MprConfigInterfaceTransportAdd
126MprConfigInterfaceTransportEnum
127MprConfigInterfaceTransportGetHandle
128MprConfigInterfaceTransportGetInfo
129MprConfigInterfaceTransportRemove
130MprConfigInterfaceTransportSetInfo
131MprConfigIsMultiTenancyEnabled
132MprConfigRoutingDomainEnumEx
133MprConfigRoutingDomainGetConfigEx
134MprConfigRoutingDomainSetConfigEx
135MprConfigServerBackup
136MprConfigServerConnect
137MprConfigServerDisconnect
138MprConfigServerGetInfo
139MprConfigServerGetInfoEx
140MprConfigServerInstall
141MprConfigServerRefresh
142MprConfigServerRestore
143MprConfigServerSetInfo
144MprConfigServerSetInfoEx
145MprConfigTransportCreate
146MprConfigTransportDelete
147MprConfigTransportEnum
148MprConfigTransportGetHandle
149MprConfigTransportGetInfo
150MprConfigTransportSetInfo
151MprDomainQueryRasServer
152MprDomainRegisterRasServer
153MprGetUsrParams
154MprInfoBlockAdd
155MprInfoBlockFind
156MprInfoBlockQuerySize
157MprInfoBlockRemove
158MprInfoBlockSet
159MprInfoCreate
160MprInfoDelete
161MprInfoDuplicate
162MprInfoRemoveAll
163MprPortSetUsage
164RasPrivilegeAndCallBackNumber
lib/libc/mingw/libarm32/mscms.def created+113
...@@ -0,0 +1,113 @@
1;
2; Definition file of mscms.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "mscms.dll"
7EXPORTS
8AssociateColorProfileWithDeviceA
9AssociateColorProfileWithDeviceW
10CheckBitmapBits
11CheckColors
12CloseColorProfile
13CloseDisplay
14ColorCplGetDefaultProfileScope
15ColorCplGetDefaultRenderingIntentScope
16ColorCplGetProfileProperties
17ColorCplHasSystemWideAssociationListChanged
18ColorCplInitialize
19ColorCplLoadAssociationList
20ColorCplMergeAssociationLists
21ColorCplOverwritePerUserAssociationList
22ColorCplReleaseProfileProperties
23ColorCplResetSystemWideAssociationListChangedWarning
24ColorCplSaveAssociationList
25ColorCplSetUsePerUserProfiles
26ColorCplUninitialize
27ConvertColorNameToIndex
28ConvertIndexToColorName
29CreateColorTransformA
30CreateColorTransformW
31CreateDeviceLinkProfile
32CreateMultiProfileTransform
33CreateProfileFromLogColorSpaceA
34CreateProfileFromLogColorSpaceW
35DccwCreateDisplayProfileAssociationList
36DccwGetDisplayProfileAssociationList
37DccwGetGamutSize
38DccwReleaseDisplayProfileAssociationList
39DccwSetDisplayProfileAssociationList
40DeleteColorTransform
41DeviceRenameEvent
42DisassociateColorProfileFromDeviceA
43DisassociateColorProfileFromDeviceW
44EnumColorProfilesA
45EnumColorProfilesW
46GenerateCopyFilePaths
47GetCMMInfo
48GetColorDirectoryA
49GetColorDirectoryW
50GetColorProfileElement
51GetColorProfileElementTag
52GetColorProfileFromHandle
53GetColorProfileHeader
54GetCountColorProfileElements
55GetNamedProfileInfo
56GetPS2ColorRenderingDictionary
57GetPS2ColorRenderingIntent
58GetPS2ColorSpaceArray
59GetStandardColorSpaceProfileA
60GetStandardColorSpaceProfileW
61InstallColorProfileA
62InstallColorProfileW
63InternalGetDeviceConfig
64InternalGetPS2CSAFromLCS
65InternalGetPS2ColorRenderingDictionary
66InternalGetPS2ColorSpaceArray
67InternalGetPS2PreviewCRD
68InternalRefreshCalibration
69InternalSetDeviceConfig
70InternalWcsAssociateColorProfileWithDevice
71IsColorProfileTagPresent
72IsColorProfileValid
73OpenColorProfileA
74OpenColorProfileW
75OpenDisplay
76RegisterCMMA
77RegisterCMMW
78SelectCMM
79SetColorProfileElement
80SetColorProfileElementReference
81SetColorProfileElementSize
82SetColorProfileHeader
83SetStandardColorSpaceProfileA
84SetStandardColorSpaceProfileW
85SpoolerCopyFileEvent
86TranslateBitmapBits
87TranslateColors
88UninstallColorProfileA
89UninstallColorProfileW
90UnregisterCMMA
91UnregisterCMMW
92WcsAssociateColorProfileWithDevice
93WcsCheckColors
94WcsCreateIccProfile
95WcsDisassociateColorProfileFromDevice
96WcsEnumColorProfiles
97WcsEnumColorProfilesSize
98WcsGetCalibrationManagementState
99WcsGetDefaultColorProfile
100WcsGetDefaultColorProfileSize
101WcsGetDefaultRenderingIntent
102WcsGetUsePerUserProfiles
103WcsGpCanInstallOrUninstallProfiles
104WcsOpenColorProfileA
105WcsOpenColorProfileW
106WcsSetCalibrationManagementState
107WcsSetDefaultColorProfile
108WcsSetDefaultRenderingIntent
109WcsSetUsePerUserProfiles
110WcsTranslateColors
111InternalGetPS2ColorRenderingDictionary2
112InternalGetPS2PreviewCRD2
113InternalGetPS2ColorSpaceArray2
lib/libc/mingw/libarm32/msctfmonitor.def created+10
...@@ -0,0 +1,10 @@
1;
2; Definition file of MsCtfMonitor.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "MsCtfMonitor.DLL"
7EXPORTS
8DoMsCtfMonitor
9InitLocalMsCtfMonitor
10UninitLocalMsCtfMonitor
lib/libc/mingw/libarm32/newdev.def created+27
...@@ -0,0 +1,27 @@
1;
2; Definition file of newdev.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "newdev.dll"
7EXPORTS
8DeviceInternetSettingUiW
9DiInstallDevice
10DiInstallDriverA
11DiInstallDriverW
12DiRollbackDriver
13DiShowUpdateDevice
14DiUninstallDevice
15GetInternetPolicies
16InstallNewDevice
17InstallSelectedDriver
18InstallWindowsUpdateDriver
19InstallWindowsUpdateDriverEx
20InstallWindowsUpdateDrivers
21QueryWindowsUpdateDriverStatus
22SetInternetPolicies
23UpdateDriverForPlugAndPlayDevicesA
24UpdateDriverForPlugAndPlayDevicesW
25pDiDoDeviceInstallAsAdmin
26pDiDoNullDriverInstall
27pDiRunFinishInstallOperations
lib/libc/mingw/libarm32/ninput.def created+37
...@@ -0,0 +1,37 @@
1;
2; Definition file of NInput.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "NInput.dll"
7EXPORTS
8DefaultInputHandler
9AddPointerInteractionContext
10BufferPointerPacketsInteractionContext
11CreateInteractionContext
12DestroyInteractionContext
13GetCrossSlideParameterInteractionContext
14GetInertiaParameterInteractionContext
15GetInteractionConfigurationInteractionContext
16GetMouseWheelParameterInteractionContext
17GetPropertyInteractionContext
18GetStateInteractionContext
19ProcessBufferedPacketsInteractionContext
20ProcessInertiaInteractionContext
21ProcessPointerFramesInteractionContext
22RegisterOutputCallbackInteractionContext
23RemovePointerInteractionContext
24ResetInteractionContext
25SetCrossSlideParametersInteractionContext
26SetInertiaParameterInteractionContext
27SetInteractionConfigurationInteractionContext
28SetMouseWheelParameterInteractionContext
29SetPivotInteractionContext
30SetPropertyInteractionContext
31StopInteractionContext
32ord_2500 @2500
33ord_2501 @2501
34ord_2502 @2502
35ord_2503 @2503
36ord_2504 @2504
37ord_2505 @2505
lib/libc/mingw/libarm32/ntlanman.def created+25
...@@ -0,0 +1,25 @@
1;
2; Definition file of NTLANMAN.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "NTLANMAN.dll"
7EXPORTS
8NPGetConnection
9NPGetCaps
10I_SystemFocusDialog
11NPGetUser
12NPAddConnection
13NPCancelConnection
14RegisterAppInstance
15NPOpenEnum
16NPEnumResource
17NPCloseEnum
18NPFormatNetworkName
19NPAddConnection3
20NPGetUniversalName
21NPGetResourceParent
22NPGetConnectionPerformance
23NPGetResourceInformation
24NPGetReconnectFlags
25NPGetConnection3
lib/libc/mingw/libarm32/ondemandconnroutehelper.def created+13
...@@ -0,0 +1,13 @@
1;
2; Definition file of OnDemandConnRouteHelper.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "OnDemandConnRouteHelper.DLL"
7EXPORTS
8OnDemandAddRouteRequest
9OnDemandGetRoutingHint
10OnDemandRegisterNotification
11OnDemandRemoveMatchingRoute
12OnDemandRemoveRouteRequest
13OnDemandUnRegisterNotification
lib/libc/mingw/libarm32/pdh.def created+136
...@@ -0,0 +1,136 @@
1;
2; Definition file of pdh.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "pdh.dll"
7EXPORTS
8PdhAdd009CounterA
9PdhAdd009CounterW
10PdhAddCounterA
11PdhAddCounterW
12PdhAddEnglishCounterA
13PdhAddEnglishCounterW
14PdhAddRelogCounter
15PdhAddV1Counter
16PdhAddV2Counter
17PdhBindInputDataSourceA
18PdhBindInputDataSourceW
19PdhBrowseCountersA
20PdhBrowseCountersHA
21PdhBrowseCountersHW
22PdhBrowseCountersW
23PdhCalculateCounterFromRawValue
24PdhCloseLog
25PdhCloseQuery
26PdhCollectQueryData
27PdhCollectQueryDataEx
28PdhCollectQueryDataWithTime
29PdhComputeCounterStatistics
30PdhConnectMachineA
31PdhConnectMachineW
32PdhCreateSQLTablesA
33PdhCreateSQLTablesW
34PdhEnumLogSetNamesA
35PdhEnumLogSetNamesW
36PdhEnumMachinesA
37PdhEnumMachinesHA
38PdhEnumMachinesHW
39PdhEnumMachinesW
40PdhEnumObjectItemsA
41PdhEnumObjectItemsHA
42PdhEnumObjectItemsHW
43PdhEnumObjectItemsW
44PdhEnumObjectsA
45PdhEnumObjectsHA
46PdhEnumObjectsHW
47PdhEnumObjectsW
48PdhExpandCounterPathA
49PdhExpandCounterPathW
50PdhExpandWildCardPathA
51PdhExpandWildCardPathHA
52PdhExpandWildCardPathHW
53PdhExpandWildCardPathW
54PdhFormatFromRawValue
55PdhGetCounterInfoA
56PdhGetCounterInfoW
57PdhGetCounterTimeBase
58PdhGetDataSourceTimeRangeA
59PdhGetDataSourceTimeRangeH
60PdhGetDataSourceTimeRangeW
61PdhGetDefaultPerfCounterA
62PdhGetDefaultPerfCounterHA
63PdhGetDefaultPerfCounterHW
64PdhGetDefaultPerfCounterW
65PdhGetDefaultPerfObjectA
66PdhGetDefaultPerfObjectHA
67PdhGetDefaultPerfObjectHW
68PdhGetDefaultPerfObjectW
69PdhGetDllVersion
70PdhGetExplainText
71PdhGetFormattedCounterArrayA
72PdhGetFormattedCounterArrayW
73PdhGetFormattedCounterValue
74PdhGetLogFileSize
75PdhGetLogFileTypeA
76PdhGetLogFileTypeW
77PdhGetLogSetGUID
78PdhGetRawCounterArrayA
79PdhGetRawCounterArrayW
80PdhGetRawCounterValue
81PdhIsRealTimeQuery
82PdhListLogFileHeaderA
83PdhListLogFileHeaderW
84PdhLookupPerfIndexByNameA
85PdhLookupPerfIndexByNameW
86PdhLookupPerfNameByIndexA
87PdhLookupPerfNameByIndexW
88PdhMakeCounterPathA
89PdhMakeCounterPathW
90PdhOpenLogA
91PdhOpenLogW
92PdhOpenQuery
93PdhOpenQueryA
94PdhOpenQueryH
95PdhOpenQueryW
96PdhParseCounterPathA
97PdhParseCounterPathW
98PdhParseInstanceNameA
99PdhParseInstanceNameW
100PdhReadRawLogRecord
101PdhRelogA
102PdhRelogW
103PdhRemoveCounter
104PdhResetRelogCounterValues
105PdhSelectDataSourceA
106PdhSelectDataSourceW
107PdhSetCounterScaleFactor
108PdhSetCounterValue
109PdhSetDefaultRealTimeDataSource
110PdhSetLogSetRunID
111PdhSetQueryTimeRange
112PdhTranslate009CounterA
113PdhTranslate009CounterW
114PdhTranslateLocaleCounterA
115PdhTranslateLocaleCounterW
116PdhUpdateLogA
117PdhUpdateLogFileCatalog
118PdhUpdateLogW
119PdhValidatePathA
120PdhValidatePathExA
121PdhValidatePathExW
122PdhValidatePathW
123PdhVbAddCounter
124PdhVbCreateCounterPathList
125PdhVbGetCounterPathElements
126PdhVbGetCounterPathFromList
127PdhVbGetDoubleCounterValue
128PdhVbGetLogFileSize
129PdhVbGetOneCounterPath
130PdhVbIsGoodStatus
131PdhVbOpenLog
132PdhVbOpenQuery
133PdhVbUpdateLog
134PdhVerifySQLDBA
135PdhVerifySQLDBW
136PdhWriteRelogSample
lib/libc/mingw/libarm32/query.def created+51
...@@ -0,0 +1,51 @@
1;
2; Definition file of query.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "query.dll"
7EXPORTS
8BeginCacheTransaction
9CIBuildQueryNode
10CIBuildQueryTree
11CICreateCommand
12CIGetGlobalPropertyList
13CIMakeICommand
14CIRestrictionToFullTree
15CIState
16CITextToFullTree
17CITextToFullTreeEx
18CITextToSelectTree
19CITextToSelectTreeEx
20CiCreateSecurityDescriptor
21CiSvcMain
22CollectCIISAPIPerformanceData
23CollectCIPerformanceData
24CollectFILTERPerformanceData
25DoneCIISAPIPerformanceData
26DoneCIPerformanceData
27DoneFILTERPerformanceData
28EndCacheTransaction
29FsCiShutdown
30InitializeCIISAPIPerformanceData
31InitializeCIPerformanceData
32InitializeFILTERPerformanceData
33LoadBinaryFilter
34LoadTextFilter
35SetCatalogState
36SetupCache
37SetupCacheEx
38SvcEntry_CiSvc
39BindIFilterFromStorage
40BindIFilterFromStream
41CIRevertToSelf
42CIShutdown
43InternalBindIFilterFromDocCLSID
44InternalBindIFilterFromFileName
45InternalBindIFilterFromStorage
46InternalBindIFilterFromStream
47LoadIFilter
48LoadIFilterEx
49LocateCatalogs
50LocateCatalogsA
51LocateCatalogsW
lib/libc/mingw/libarm32/rasapi32.def created+134
...@@ -0,0 +1,134 @@
1;
2; Definition file of RASAPI32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "RASAPI32.dll"
7EXPORTS
8DDMFreePhonebookContext
9DDMFreeRemoteEndpoint
10DDMGetAddressesFromPhonebook
11DDMGetPhoneBookContext
12DDMGetPhonebookInfo
13DwCloneEntry
14DwEnumEntryDetails
15DwRasUninitialize
16GetAutoTriggerProfileInfo
17IsActiveAutoTriggerConnection
18LaunchVanUIW
19RasAutoDialSharedConnection
20RasAutodialAddressToNetwork
21RasAutodialEntryToNetwork
22RasClearConnectionStatistics
23RasClearLinkStatistics
24RasCompleteDialMachineCleanup
25RasConfigUserProxySettingsW
26RasConnectionNotificationA
27RasConnectionNotificationW
28RasCreatePhonebookEntryA
29RasCreatePhonebookEntryW
30RasDeleteEntryA
31RasDeleteEntryW
32RasDeleteSubEntryA
33RasDeleteSubEntryW
34RasDialA
35RasDialW
36RasEditPhonebookEntryA
37RasEditPhonebookEntryW
38RasEnumAutodialAddressesA
39RasEnumAutodialAddressesW
40RasEnumConnectionsA
41RasEnumConnectionsW
42RasEnumDevicesA
43RasEnumDevicesW
44RasEnumEntriesA
45RasEnumEntriesW
46RasFreeEapUserIdentityA
47RasFreeEapUserIdentityW
48RasFreeEntryAdvancedProperties
49RasGetAutoTriggerConnectStatus
50RasGetAutodialAddressA
51RasGetAutodialAddressW
52RasGetAutodialEnableA
53RasGetAutodialEnableW
54RasGetAutodialParamA
55RasGetAutodialParamW
56RasGetConnectStatusA
57RasGetConnectStatusW
58RasGetConnectionErrorStringW
59RasGetConnectionStatistics
60RasGetCountryInfoA
61RasGetCountryInfoW
62RasGetCredentialsA
63RasGetCredentialsW
64RasGetCustomAuthDataA
65RasGetCustomAuthDataW
66RasGetEapUserDataA
67RasGetEapUserDataW
68RasGetEapUserIdentityA
69RasGetEapUserIdentityW
70RasGetEntryAdvancedProperties
71RasGetEntryDialParamsA
72RasGetEntryDialParamsW
73RasGetEntryHrasconnW
74RasGetEntryPropertiesA
75RasGetEntryPropertiesW
76RasGetErrorStringA
77RasGetErrorStringW
78RasGetHport
79RasGetLinkStatistics
80RasGetNapStatus
81RasGetPbkPath
82RasGetProjectionInfoA
83RasGetProjectionInfoEx
84RasGetProjectionInfoW
85RasGetSubEntryHandleA
86RasGetSubEntryHandleW
87RasGetSubEntryPropertiesA
88RasGetSubEntryPropertiesW
89RasHandleTriggerConnDisconnect
90RasHangUpA
91RasHangUpW
92RasInvokeEapUI
93RasIsPublicPhonebook
94RasIsSharedConnection
95RasQueryRedialOnLinkFailure
96RasQuerySharedAutoDial
97RasQuerySharedConnection
98RasRenameEntryA
99RasRenameEntryW
100RasScriptGetIpAddress
101RasScriptInit
102RasScriptReceive
103RasScriptSend
104RasScriptTerm
105RasSetAutodialAddressA
106RasSetAutodialAddressW
107RasSetAutodialEnableA
108RasSetAutodialEnableW
109RasSetAutodialParamA
110RasSetAutodialParamW
111RasSetCredentialsA
112RasSetCredentialsW
113RasSetCustomAuthDataA
114RasSetCustomAuthDataW
115RasSetEapUserDataA
116RasSetEapUserDataAEx
117RasSetEapUserDataW
118RasSetEapUserDataWEx
119RasSetEntryAdvancedProperties
120RasSetEntryDialParamsA
121RasSetEntryDialParamsW
122RasSetEntryPropertiesA
123RasSetEntryPropertiesW
124RasSetOldPassword
125RasSetPerConnectionProxy
126RasSetSharedAutoDial
127RasSetSubEntryPropertiesA
128RasSetSubEntryPropertiesW
129RasTriggerConnection
130RasUpdateConnection
131RasValidateEntryNameA
132RasValidateEntryNameW
133RasWriteSharedPbkOptions
134UnInitializeRAS
lib/libc/mingw/libarm32/rasdlg.def created+32
...@@ -0,0 +1,32 @@
1;
2; Definition file of RASDLG.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "RASDLG.dll"
7EXPORTS
8RasHandleDiagnostics
9DwTerminalDlg
10GetRasDialOutProtocols
11RasAutodialQueryDlgA
12RasAutodialQueryDlgW
13RasDialDlgA
14RasDialDlgW
15RasEntryDlgA
16RasEntryDlgW
17RasPhonebookDlgA
18RasPhonebookDlgW
19RasSrvAddPropPages
20RasSrvAllowConnectionsConfig
21RasSrvCleanupService
22RasSrvEnumConnections
23RasSrvHangupConnection
24RasSrvInitializeService
25RasSrvIsConnectionConnected
26RasSrvIsICConfigured
27RasSrvIsServiceRunning
28RasUserEnableManualDial
29RasUserGetManualDial
30RasUserPrefsDlg
31RouterEntryDlgA
32RouterEntryDlgW
lib/libc/mingw/libarm32/rometadata.def created+8
...@@ -0,0 +1,8 @@
1;
2; Definition file of RoMetadata.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "RoMetadata.dll"
7EXPORTS
8MetaDataGetDispenser
lib/libc/mingw/libarm32/sas.def created+8
...@@ -0,0 +1,8 @@
1;
2; Definition file of SAS.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "SAS.dll"
7EXPORTS
8SendSAS
lib/libc/mingw/libarm32/sfc.def created+23
...@@ -0,0 +1,23 @@
1;
2; Definition file of sfc.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "sfc.dll"
7EXPORTS
8ord_1 @1
9ord_2 @2
10ord_3 @3
11ord_4 @4
12ord_5 @5
13ord_6 @6
14ord_7 @7
15ord_8 @8
16ord_9 @9
17SRSetRestorePoint
18SRSetRestorePointA
19SRSetRestorePointW
20SfcGetNextProtectedFile
21SfcIsFileProtected
22SfcIsKeyProtected
23SfpVerifyFile
lib/libc/mingw/libarm32/shdocvw.def created+129
...@@ -0,0 +1,129 @@
1;
2; Definition file of SHDOCVW.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "SHDOCVW.dll"
7EXPORTS
8ord_101 @101
9ord_102 @102
10ord_103 @103
11ord_104 @104
12ord_105 @105
13AddUrlToFavorites
14ord_110 @110
15ord_111 @111
16DllRegisterWindowClasses
17DoAddToFavDlg
18DoAddToFavDlgW
19ord_115 @115
20ord_116 @116
21ord_117 @117
22ord_118 @118
23ord_119 @119
24ord_120 @120
25ord_121 @121
26ord_122 @122
27ord_123 @123
28DoFileDownload
29ord_125 @125
30DoFileDownloadEx
31DoOrganizeFavDlg
32DoOrganizeFavDlgW
33DoPrivacyDlg
34ord_130 @130
35ord_131 @131
36HlinkFindFrame
37HlinkFrameNavigate
38HlinkFrameNavigateNHL
39ord_135 @135
40ord_136 @136
41ord_137 @137
42ord_138 @138
43ord_139 @139
44ord_140 @140
45ord_141 @141
46ord_142 @142
47ord_143 @143
48ImportPrivacySettings
49ord_145 @145
50ord_146 @146
51ord_147 @147
52ord_148 @148
53ord_149 @149
54ord_150 @150
55ord_151 @151
56ord_152 @152
57ord_153 @153
58OpenURL
59SHGetIDispatchForFolder
60SetQueryNetSessionCount
61SetShellOfflineState
62ord_158 @158
63ord_159 @159
64ord_160 @160
65ord_161 @161
66ord_162 @162
67SHAddSubscribeFavorite
68ord_164 @164
69ord_165 @165
70SoftwareUpdateMessageBox
71ord_167 @167
72URLQualifyA
73ord_169 @169
74ord_170 @170
75ord_171 @171
76ord_172 @172
77ord_173 @173
78ord_174 @174
79ord_175 @175
80ord_176 @176
81ord_177 @177
82ord_178 @178
83ord_179 @179
84ord_180 @180
85ord_181 @181
86URLQualifyW
87ord_183 @183
88ord_185 @185
89ord_187 @187
90ord_188 @188
91ord_189 @189
92ord_190 @190
93ord_191 @191
94ord_192 @192
95ord_194 @194
96ord_195 @195
97ord_196 @196
98ord_197 @197
99ord_198 @198
100ord_199 @199
101ord_200 @200
102ord_203 @203
103ord_204 @204
104ord_208 @208
105ord_209 @209
106ord_210 @210
107ord_211 @211
108ord_212 @212
109ord_213 @213
110ord_214 @214
111ord_215 @215
112ord_216 @216
113ord_217 @217
114ord_218 @218
115ord_219 @219
116ord_221 @221
117ord_222 @222
118ord_223 @223
119ord_224 @224
120ord_225 @225
121ord_226 @226
122ord_227 @227
123ord_228 @228
124ord_229 @229
125ord_230 @230
126ord_231 @231
127ord_232 @232
128ord_233 @233
129ord_234 @234
lib/libc/mingw/libarm32/slc.def created+48
...@@ -0,0 +1,48 @@
1;
2; Definition file of SLC.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "SLC.dll"
7EXPORTS
8SLpCheckProductKey
9SLpGetGenuineLocal
10SLpProcessOemProductKey
11SLpUpdateComponentTokens
12SLClose
13SLConsumeRight
14SLConsumeWindowsRight
15SLDepositOfflineConfirmationId
16SLDepositOfflineConfirmationIdEx
17SLFireEvent
18SLGenerateOfflineInstallationId
19SLGenerateOfflineInstallationIdEx
20SLGetApplicationInformation
21SLGetGenuineInformation
22SLGetInstalledProductKeyIds
23SLGetLicense
24SLGetLicenseFileId
25SLGetLicenseInformation
26SLGetLicensingStatusInformation
27SLGetPKeyId
28SLGetPKeyInformation
29SLGetPolicyInformation
30SLGetPolicyInformationDWORD
31SLGetProductSkuInformation
32SLGetSLIDList
33SLGetServiceInformation
34SLGetWindowsInformation
35SLGetWindowsInformationDWORD
36SLInstallLicense
37SLInstallProofOfPurchase
38SLIsWindowsGenuineLocal
39SLOpen
40SLReArmWindows
41SLRegisterEvent
42SLRegisterWindowsEvent
43SLSetCurrentProductKey
44SLSetGenuineInformation
45SLUninstallLicense
46SLUninstallProofOfPurchase
47SLUnregisterEvent
48SLUnregisterWindowsEvent
lib/libc/mingw/libarm32/spoolss.def created+205
...@@ -0,0 +1,205 @@
1;
2; Definition file of SPOOLSS.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "SPOOLSS.DLL"
7EXPORTS
8OpenPrinterExW
9RouterCorePrinterDriverInstalled
10RouterCreatePrintAsyncNotificationChannel
11RouterDeletePrinterDriverPackage
12RouterGetCorePrinterDrivers
13RouterGetPrintClassObject
14RouterGetPrinterDriverPackagePath
15RouterInstallPrinterDriverFromPackage
16RouterRegisterForPrintAsyncNotifications
17RouterUnregisterForPrintAsyncNotifications
18RouterUploadPrinterDriverPackage
19AbortPrinter
20AddFormW
21AddJobW
22AddMonitorW
23AddPerMachineConnectionW
24AddPortExW
25AddPortW
26AddPrintProcessorW
27AddPrintProvidorW
28AddPrinterConnectionW
29AddPrinterDriverExW
30AddPrinterDriverW
31AddPrinterExW
32AddPrinterW
33AdjustPointers
34AdjustPointersInStructuresArray
35AlignKMPtr
36AlignRpcPtr
37AllocSplStr
38AllowRemoteCalls
39AppendPrinterNotifyInfoData
40BuildOtherNamesFromMachineName
41CacheAddName
42CacheCreateAndAddNode
43CacheCreateAndAddNodeWithIPAddresses
44CacheDeleteNode
45CacheIsNameCluster
46CacheIsNameInNodeList
47CallDrvDevModeConversion
48CallRouterFindFirstPrinterChangeNotification
49CheckLocalCall
50ClosePrinter
51ConfigurePortW
52CreatePrinterIC
53DeleteFormW
54DeleteMonitorW
55DeletePerMachineConnectionW
56DeletePortW
57DeletePrintProcessorW
58DeletePrintProvidorW
59DeletePrinter
60DeletePrinterConnectionW
61DeletePrinterDataExW
62DeletePrinterDataW
63DeletePrinterDriverExW
64DeletePrinterDriverW
65DeletePrinterIC
66DeletePrinterKeyW
67DllAllocSplMem
68DllAllocSplStr
69DllFreeSplMem
70DllFreeSplStr
71DllReallocSplMem
72DllReallocSplStr
73EndDocPrinter
74EndPagePrinter
75EnumFormsW
76EnumJobsW
77EnumMonitorsW
78EnumPerMachineConnectionsW
79EnumPortsW
80EnumPrintProcessorDatatypesW
81EnumPrintProcessorsW
82EnumPrinterDataExW
83EnumPrinterDataW
84EnumPrinterDriversW
85EnumPrinterKeyW
86EnumPrintersW
87FindClosePrinterChangeNotification
88FlushPrinter
89FormatPrinterForRegistryKey
90FormatRegistryKeyForPrinter
91FreeOtherNames
92GetFormW
93GetJobAttributes
94GetJobAttributesEx
95GetJobW
96GetNetworkId
97GetPrintProcessorDirectoryW
98GetPrinterDataExW
99GetPrinterDataW
100GetPrinterDriverDirectoryW
101GetPrinterDriverExW
102GetPrinterDriverW
103GetPrinterW
104GetServerPolicy
105GetShrinkedSize
106GetSpoolerTlsIndexes
107ImpersonatePrinterClient
108InitializeRouter
109IsNameTheLocalMachineOrAClusterSpooler
110IsNamedPipeRpcCall
111MIDL_user_allocate1
112MIDL_user_free1
113MakeOffset
114MakePTR
115MarshallDownStructure
116MarshallDownStructuresArray
117MarshallUpStructure
118MarshallUpStructuresArray
119OldGetPrinterDriverW
120OpenPrinter2W
121OpenPrinterPort2W
122OpenPrinterW
123PackStringToEOB
124PackStrings
125PartialReplyPrinterChangeNotification
126PlayGdiScriptOnPrinterIC
127PrinterHandleRundown
128PrinterMessageBoxW
129ProvidorFindClosePrinterChangeNotification
130ProvidorFindFirstPrinterChangeNotification
131ReadPrinter
132ReallocSplMem
133ReallocSplStr
134RemoteFindFirstPrinterChangeNotification
135ReplyClosePrinter
136ReplyOpenPrinter
137ReplyPrinterChangeNotification
138ReplyPrinterChangeNotificationEx
139ReportJobProcessingProgress
140ResetPrinterW
141RevertToPrinterSelf
142RouterAddPrinterConnection2
143RouterAllocBidiMem
144RouterAllocBidiResponseContainer
145RouterAllocPrinterNotifyInfo
146RouterBroadcastMessage
147RouterFindCompatibleDriver
148RouterFindFirstPrinterChangeNotification
149RouterFindNextPrinterChangeNotification
150RouterFreeBidiMem
151RouterFreeBidiResponseContainer
152RouterFreePrinterNotifyInfo
153RouterInternalGetPrinterDriver
154RouterRefreshPrinterChangeNotification
155RouterReplyPrinter
156RouterSpoolerSetPolicy
157ScheduleJob
158SeekPrinter
159SendRecvBidiData
160SetFormW
161SetJobW
162SetPortW
163SetPrinterDataExW
164SetPrinterDataW
165SetPrinterW
166SplCloseSpoolFileHandle
167SplCommitSpoolData
168SplDriverUnloadComplete
169SplGetClientUserHandle
170SplGetSpoolFileInfo
171SplGetUserSidStringFromToken
172SplInitializeWinSpoolDrv
173SplIsSessionZero
174SplIsUpgrade
175SplProcessPnPEvent
176SplProcessSessionEvent
177SplPromptUIInUsersSession
178SplQueryUserInfo
179SplReadPrinter
180SplRegisterForDeviceEvents
181SplRegisterForSessionEvents
182SplShutDownRouter
183SplUalCollectData
184SplUnregisterForDeviceEvents
185SplUnregisterForSessionEvents
186SpoolerFindClosePrinterChangeNotification
187SpoolerFindFirstPrinterChangeNotification
188SpoolerFindNextPrinterChangeNotification
189SpoolerFreePrinterNotifyInfo
190SpoolerHasInitialized
191SpoolerInit
192SpoolerRefreshPrinterChangeNotification
193StartDocPrinterW
194StartPagePrinter
195UndoAlignKMPtr
196UndoAlignRpcPtr
197UpdateBufferSize
198UpdatePrinterRegAll
199UpdatePrinterRegUser
200WaitForPrinterChange
201WaitForSpoolerInitialization
202WritePrinter
203XcvDataW
204bGetDevModePerUser
205bSetDevModePerUser
lib/libc/mingw/libarm32/uiautomationcore.def created+102
...@@ -0,0 +1,102 @@
1;
2; Definition file of UIAutomationCore.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "UIAutomationCore.DLL"
7EXPORTS
8DockPattern_SetDockPosition
9ExpandCollapsePattern_Collapse
10ExpandCollapsePattern_Expand
11GridPattern_GetItem
12InvokePattern_Invoke
13ItemContainerPattern_FindItemByProperty
14LegacyIAccessiblePattern_DoDefaultAction
15LegacyIAccessiblePattern_GetIAccessible
16LegacyIAccessiblePattern_Select
17LegacyIAccessiblePattern_SetValue
18MultipleViewPattern_GetViewName
19MultipleViewPattern_SetCurrentView
20RangeValuePattern_SetValue
21ScrollItemPattern_ScrollIntoView
22ScrollPattern_Scroll
23ScrollPattern_SetScrollPercent
24SelectionItemPattern_AddToSelection
25SelectionItemPattern_RemoveFromSelection
26SelectionItemPattern_Select
27SynchronizedInputPattern_Cancel
28SynchronizedInputPattern_StartListening
29TextPattern_GetSelection
30TextPattern_GetVisibleRanges
31TextPattern_RangeFromChild
32TextPattern_RangeFromPoint
33TextPattern_get_DocumentRange
34TextPattern_get_SupportedTextSelection
35TextRange_AddToSelection
36TextRange_Clone
37TextRange_Compare
38TextRange_CompareEndpoints
39TextRange_ExpandToEnclosingUnit
40TextRange_FindAttribute
41TextRange_FindText
42TextRange_GetAttributeValue
43TextRange_GetBoundingRectangles
44TextRange_GetChildren
45TextRange_GetEnclosingElement
46TextRange_GetText
47TextRange_Move
48TextRange_MoveEndpointByRange
49TextRange_MoveEndpointByUnit
50TextRange_RemoveFromSelection
51TextRange_ScrollIntoView
52TextRange_Select
53TogglePattern_Toggle
54TransformPattern_Move
55TransformPattern_Resize
56TransformPattern_Rotate
57UiaAddEvent
58UiaClientsAreListening
59UiaDisconnectAllProviders
60UiaDisconnectProvider
61UiaEventAddWindow
62UiaEventRemoveWindow
63UiaFind
64UiaGetErrorDescription
65UiaGetPatternProvider
66UiaGetPropertyValue
67UiaGetReservedMixedAttributeValue
68UiaGetReservedNotSupportedValue
69UiaGetRootNode
70UiaGetRuntimeId
71UiaGetUpdatedCache
72UiaHPatternObjectFromVariant
73UiaHTextRangeFromVariant
74UiaHUiaNodeFromVariant
75UiaHasServerSideProvider
76UiaHostProviderFromHwnd
77UiaIAccessibleFromProvider
78UiaLookupId
79UiaNavigate
80UiaNodeFromFocus
81UiaNodeFromHandle
82UiaNodeFromPoint
83UiaNodeFromProvider
84UiaNodeRelease
85UiaPatternRelease
86UiaProviderForNonClient
87UiaProviderFromIAccessible
88UiaRaiseAsyncContentLoadedEvent
89UiaRaiseAutomationEvent
90UiaRaiseAutomationPropertyChangedEvent
91UiaRaiseStructureChangedEvent
92UiaRaiseTextEditTextChangedEvent
93UiaRegisterProviderCallback
94UiaRemoveEvent
95UiaReturnRawElementProvider
96UiaSetFocus
97UiaTextRangeRelease
98ValuePattern_SetValue
99VirtualizedItemPattern_Realize
100WindowPattern_Close
101WindowPattern_SetWindowVisualState
102WindowPattern_WaitForInputIdle
lib/libc/mingw/libarm32/vssapi.def created+89
...@@ -0,0 +1,89 @@
1;
2; Definition file of VSSAPI.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "VSSAPI.DLL"
7EXPORTS
8IsVolumeSnapshotted
9VssFreeSnapshotProperties
10ShouldBlockRevert
11??0CVssJetWriter@@QAA@XZ
12??0CVssWriter@@QAA@XZ
13??1CVssJetWriter@@UAA@XZ
14??1CVssWriter@@UAA@XZ
15?AreComponentsSelected@CVssJetWriter@@IBA_NXZ
16?AreComponentsSelected@CVssWriter@@IBA_NXZ
17?CreateVssBackupComponents@@YGJPAPAVIVssBackupComponents@@@Z
18?CreateVssExamineWriterMetadata@@YGJPAGPAPAVIVssExamineWriterMetadata@@@Z
19?CreateVssSnapshotSetDescription@@YAJU_GUID@@JPAPAVIVssSnapshotSetDescription@@@Z
20?GetBackupType@CVssJetWriter@@IBA?AW4_VSS_BACKUP_TYPE@@XZ
21?GetBackupType@CVssWriter@@IBA?AW4_VSS_BACKUP_TYPE@@XZ
22?GetContext@CVssJetWriter@@IBAJXZ
23?GetContext@CVssWriter@@IBAJXZ
24?GetCurrentLevel@CVssJetWriter@@IBA?AW4_VSS_APPLICATION_LEVEL@@XZ
25?GetCurrentLevel@CVssWriter@@IBA?AW4_VSS_APPLICATION_LEVEL@@XZ
26?GetCurrentSnapshotSetId@CVssJetWriter@@IBA?AU_GUID@@XZ
27?GetCurrentSnapshotSetId@CVssWriter@@IBA?AU_GUID@@XZ
28?GetCurrentVolumeArray@CVssJetWriter@@IBAPAPBGXZ
29?GetCurrentVolumeArray@CVssWriter@@IBAPAPBGXZ
30?GetCurrentVolumeCount@CVssJetWriter@@IBAIXZ
31?GetCurrentVolumeCount@CVssWriter@@IBAIXZ
32?GetRestoreType@CVssJetWriter@@IBA?AW4_VSS_RESTORE_TYPE@@XZ
33?GetRestoreType@CVssWriter@@IBA?AW4_VSS_RESTORE_TYPE@@XZ
34?GetSnapshotDeviceName@CVssJetWriter@@IBAJPBGPAPBG@Z
35?GetSnapshotDeviceName@CVssWriter@@IBAJPBGPAPBG@Z
36?Initialize@CVssJetWriter@@QAAJU_GUID@@PBG_N211K@Z
37?Initialize@CVssWriter@@QAAJU_GUID@@PBGW4VSS_USAGE_TYPE@@W4VSS_SOURCE_TYPE@@W4_VSS_APPLICATION_LEVEL@@KW4VSS_ALTERNATE_WRITER_STATE@@_N1@Z
38?InstallAlternateWriter@CVssWriter@@QAAJU_GUID@@0@Z
39?IsBootableSystemStateBackedUp@CVssJetWriter@@IBA_NXZ
40?IsBootableSystemStateBackedUp@CVssWriter@@IBA_NXZ
41?IsPartialFileSupportEnabled@CVssJetWriter@@IBA_NXZ
42?IsPartialFileSupportEnabled@CVssWriter@@IBA_NXZ
43?IsPathAffected@CVssJetWriter@@IBA_NPBG@Z
44?IsPathAffected@CVssWriter@@IBA_NPBG@Z
45?LoadVssSnapshotSetDescription@@YAJPBGPAPAVIVssSnapshotSetDescription@@U_GUID@@@Z
46?OnAbortBegin@CVssJetWriter@@UAAXXZ
47?OnAbortEnd@CVssJetWriter@@UAAXXZ
48?OnBackOffIOOnVolume@CVssWriter@@UAA_NPAGU_GUID@@1@Z
49?OnBackupComplete@CVssWriter@@UAA_NPAVIVssWriterComponents@@@Z
50?OnBackupCompleteBegin@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@@Z
51?OnBackupCompleteEnd@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@_N@Z
52?OnBackupShutdown@CVssWriter@@UAA_NU_GUID@@@Z
53?OnContinueIOOnVolume@CVssWriter@@UAA_NPAGU_GUID@@1@Z
54?OnFreezeBegin@CVssJetWriter@@UAA_NXZ
55?OnFreezeEnd@CVssJetWriter@@UAA_N_N@Z
56?OnIdentify@CVssJetWriter@@UAA_NPAVIVssCreateWriterMetadata@@@Z
57?OnIdentify@CVssWriter@@UAA_NPAVIVssCreateWriterMetadata@@@Z
58?OnPostRestore@CVssWriter@@UAA_NPAVIVssWriterComponents@@@Z
59?OnPostRestoreBegin@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@@Z
60?OnPostRestoreEnd@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@_N@Z
61?OnPostSnapshot@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@@Z
62?OnPostSnapshot@CVssWriter@@UAA_NPAVIVssWriterComponents@@@Z
63?OnPreRestore@CVssWriter@@UAA_NPAVIVssWriterComponents@@@Z
64?OnPreRestoreBegin@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@@Z
65?OnPreRestoreEnd@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@_N@Z
66?OnPrepareBackup@CVssWriter@@UAA_NPAVIVssWriterComponents@@@Z
67?OnPrepareBackupBegin@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@@Z
68?OnPrepareBackupEnd@CVssJetWriter@@UAA_NPAVIVssWriterComponents@@_N@Z
69?OnPrepareSnapshotBegin@CVssJetWriter@@UAA_NXZ
70?OnPrepareSnapshotEnd@CVssJetWriter@@UAA_N_N@Z
71?OnThawBegin@CVssJetWriter@@UAA_NXZ
72?OnThawEnd@CVssJetWriter@@UAA_N_N@Z
73?OnVSSApplicationStartup@CVssWriter@@UAA_NXZ
74?OnVSSShutdown@CVssWriter@@UAA_NXZ
75?SetWriterFailure@CVssJetWriter@@IAAJJ@Z
76?SetWriterFailure@CVssWriter@@IAAJJ@Z
77?Subscribe@CVssWriter@@QAAJK@Z
78?Uninitialize@CVssJetWriter@@QAAXXZ
79?Unsubscribe@CVssWriter@@QAAJXZ
80CreateVssBackupComponentsInternal
81CreateVssExamineWriterMetadataInternal
82CreateVssExpressWriterInternal
83CreateWriter
84CreateWriterEx
85GetProviderMgmtInterface
86GetProviderMgmtInterfaceInternal
87IsVolumeSnapshottedInternal
88ShouldBlockRevertInternal
89VssFreeSnapshotPropertiesInternal
lib/libc/mingw/libarm32/wcmapi.def created+31
...@@ -0,0 +1,31 @@
1;
2; Definition file of wcmapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "wcmapi.dll"
7EXPORTS
8WcmBeginIgnoreProfileList
9WcmCancelOnDemandRequest
10WcmCloseHandle
11WcmCloseOnDemandRequestHandle
12WcmEndIgnoreProfileList
13WcmEnterConnectedStandby
14WcmEnterNetQuiet
15WcmEnumInterfaces
16WcmExitConnectedStandby
17WcmExitNetQuiet
18WcmFreeMemory
19WcmGetInterfaceToken
20WcmGetProfileList
21WcmOpenHandle
22WcmOpenOnDemandRequestHandle
23WcmOrderConnection
24WcmQueryOnDemandRequestStateInfo
25WcmQueryParameter
26WcmQueryProperty
27WcmResetIgnoreProfileList
28WcmSetParameter
29WcmSetProfileList
30WcmSetProperty
31WcmStartOnDemandRequest
lib/libc/mingw/libarm32/webservices.def created+200
...@@ -0,0 +1,200 @@
1;
2; Definition file of webservices.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "webservices.dll"
7EXPORTS
8WsAbandonCall
9WsAbandonMessage
10WsAbortChannel
11WsAbortListener
12WsAbortServiceHost
13WsAbortServiceProxy
14WsAcceptChannel
15WsAddCustomHeader
16WsAddErrorString
17WsAddMappedHeader
18WsAddressMessage
19WsAlloc
20WsAsyncExecute
21WsCall
22WsCheckMustUnderstandHeaders
23WsCloseChannel
24WsCloseListener
25WsCloseServiceHost
26WsCloseServiceProxy
27WsCombineUrl
28WsCopyError
29WsCopyNode
30WsCreateChannel
31WsCreateChannelForListener
32WsCreateError
33WsCreateFaultFromError
34WsCreateHeap
35WsCreateListener
36WsCreateMessage
37WsCreateMessageForChannel
38WsCreateMetadata
39WsCreateReader
40WsCreateServiceEndpointFromTemplate
41WsCreateServiceHost
42WsCreateServiceProxy
43WsCreateServiceProxyFromTemplate
44WsCreateWriter
45WsCreateXmlBuffer
46WsCreateXmlSecurityToken
47WsDateTimeToFileTime
48WsDecodeUrl
49WsEncodeUrl
50WsEndReaderCanonicalization
51WsEndWriterCanonicalization
52WsFileTimeToDateTime
53WsFillBody
54WsFillReader
55WsFindAttribute
56WsFlushBody
57WsFlushWriter
58WsFreeChannel
59WsFreeError
60WsFreeHeap
61WsFreeListener
62WsFreeMessage
63WsFreeMetadata
64WsFreeReader
65WsFreeSecurityToken
66WsFreeServiceHost
67WsFreeServiceProxy
68WsFreeWriter
69WsGetChannelProperty
70WsGetCustomHeader
71WsGetDictionary
72WsGetErrorProperty
73WsGetErrorString
74WsGetFaultErrorDetail
75WsGetFaultErrorProperty
76WsGetHeader
77WsGetHeaderAttributes
78WsGetHeapProperty
79WsGetListenerProperty
80WsGetMappedHeader
81WsGetMessageProperty
82WsGetMetadataEndpoints
83WsGetMetadataProperty
84WsGetMissingMetadataDocumentAddress
85WsGetNamespaceFromPrefix
86WsGetOperationContextProperty
87WsGetPolicyAlternativeCount
88WsGetPolicyProperty
89WsGetPrefixFromNamespace
90WsGetReaderNode
91WsGetReaderPosition
92WsGetReaderProperty
93WsGetSecurityContextProperty
94WsGetSecurityTokenProperty
95WsGetServiceHostProperty
96WsGetServiceProxyProperty
97WsGetWriterPosition
98WsGetWriterProperty
99WsGetXmlAttribute
100WsInitializeMessage
101WsMarkHeaderAsUnderstood
102WsMatchPolicyAlternative
103WsMoveReader
104WsMoveWriter
105WsOpenChannel
106WsOpenListener
107WsOpenServiceHost
108WsOpenServiceProxy
109WsPullBytes
110WsPushBytes
111WsReadArray
112WsReadAttribute
113WsReadBody
114WsReadBytes
115WsReadChars
116WsReadCharsUtf8
117WsReadElement
118WsReadEndAttribute
119WsReadEndElement
120WsReadEndpointAddressExtension
121WsReadEnvelopeEnd
122WsReadEnvelopeStart
123WsReadMessageEnd
124WsReadMessageStart
125WsReadMetadata
126WsReadNode
127WsReadQualifiedName
128WsReadStartAttribute
129WsReadStartElement
130WsReadToStartElement
131WsReadType
132WsReadValue
133WsReadXmlBuffer
134WsReadXmlBufferFromBytes
135WsReceiveMessage
136WsRegisterOperationForCancel
137WsRemoveCustomHeader
138WsRemoveHeader
139WsRemoveMappedHeader
140WsRemoveNode
141WsRequestReply
142WsRequestSecurityToken
143WsResetChannel
144WsResetError
145WsResetHeap
146WsResetListener
147WsResetMessage
148WsResetMetadata
149WsResetServiceHost
150WsResetServiceProxy
151WsRevokeSecurityContext
152WsSendFaultMessageForError
153WsSendMessage
154WsSendReplyMessage
155WsSetChannelProperty
156WsSetErrorProperty
157WsSetFaultErrorDetail
158WsSetFaultErrorProperty
159WsSetHeader
160WsSetInput
161WsSetInputToBuffer
162WsSetListenerProperty
163WsSetMessageProperty
164WsSetOutput
165WsSetOutputToBuffer
166WsSetReaderPosition
167WsSetWriterPosition
168WsShutdownSessionChannel
169WsSkipNode
170WsStartReaderCanonicalization
171WsStartWriterCanonicalization
172WsTrimXmlWhitespace
173WsVerifyXmlNCName
174WsWriteArray
175WsWriteAttribute
176WsWriteBody
177WsWriteBytes
178WsWriteChars
179WsWriteCharsUtf8
180WsWriteElement
181WsWriteEndAttribute
182WsWriteEndCData
183WsWriteEndElement
184WsWriteEndStartElement
185WsWriteEnvelopeEnd
186WsWriteEnvelopeStart
187WsWriteMessageEnd
188WsWriteMessageStart
189WsWriteNode
190WsWriteQualifiedName
191WsWriteStartAttribute
192WsWriteStartCData
193WsWriteStartElement
194WsWriteText
195WsWriteType
196WsWriteValue
197WsWriteXmlBuffer
198WsWriteXmlBufferToBytes
199WsWriteXmlnsAttribute
200WsXmlStringEquals
lib/libc/mingw/libarm32/wer.def created+129
...@@ -0,0 +1,129 @@
1;
2; Definition file of wer.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "wer.dll"
7EXPORTS
8WerSysprepCleanup
9WerSysprepGeneralize
10WerSysprepSpecialize
11WerUnattendedSetup
12WerpAddAppCompatData
13WerpAddMemoryBlock
14WerpAddRegisteredDataToReport
15WerpArchiveReport
16WerpCancelResponseDownload
17WerpCancelUpload
18WerpCloseStore
19WerpCreateMachineStore
20WerpCreateUserStore
21WerpDeleteReport
22WerpDestroyWerString
23WerpDownloadResponse
24WerpDownloadResponseTemplate
25WerpEnumerateStoreNext
26WerpEnumerateStoreStart
27WerpExtractReportFiles
28WerpFlushImageCache
29WerpForceDeferredCollection
30WerpFreeUnmappedVaRanges
31WerpGetBucketId
32WerpGetDynamicParameter
33WerpGetEventType
34WerpGetExtendedDiagData
35WerpGetFileByIndex
36WerpGetFilePathByIndex
37WerpGetLegacyBucketId
38WerpGetLoadedModuleByIndex
39WerpGetNumFiles
40WerpGetNumLoadedModules
41WerpGetNumSigParams
42WerpGetReportFinalConsent
43WerpGetReportFlags
44WerpGetReportInformation
45WerpGetReportSettings
46WerpGetReportTime
47WerpGetReportType
48WerpGetResponseId
49WerpGetResponseUrl
50WerpGetSigParamByIndex
51WerpGetStorePath
52WerpGetStoreType
53WerpGetTextFromReport
54WerpGetUIParamByIndex
55WerpGetUploadTime
56WerpGetWerStringData
57WerpGetWow64Process
58WerpHashApplicationParameters
59WerpInitializeImageCache
60WerpIsOnBattery
61WerpIsTransportAvailable
62WerpLoadReport
63WerpLoadReportFromBuffer
64WerpOpenMachineArchive
65WerpOpenMachineQueue
66WerpOpenUserArchive
67WerpPromptUser
68WerpPruneStore
69WerpReportCancel
70WerpReportSprintfParameter
71WerpReserveMachineQueueReportDir
72WerpResetTransientImageCacheStatistics
73WerpRestartApplication
74WerpSetDynamicParameter
75WerpSetEventName
76WerpSetReportApplicationIdentity
77WerpSetReportFlags
78WerpSetReportInformation
79WerpSetReportNamespaceParameter
80WerpSetReportTime
81WerpSetReportUploadContextToken
82WerpShowUpsellUI
83WerpStitchedMinidumpVmPostReadCallback
84WerpStitchedMinidumpVmPreReadCallback
85WerpStitchedMinidumpVmQueryCallback
86WerpSubmitReportFromStore
87WerpSvcReportFromMachineQueue
88WerpTraceAuxMemDumpStatistics
89WerpTraceDuration
90WerpTraceImageCacheStatistics
91WerpTraceSnapshotStatistics
92WerpTraceStitchedDumpWriterStatistics
93WerpTraceUnmappedVaRangesStatistics
94WerpUnmapProcessViews
95WerpUpdateReportResponse
96WerpValidateReportKey
97WerpWalkGatherBlocks
98WerAddExcludedApplication
99WerRemoveExcludedApplication
100WerReportAddDump
101WerReportAddFile
102WerReportCloseHandle
103WerReportCreate
104WerReportSetParameter
105WerReportSetUIOption
106WerReportSubmit
107WerpAddFile
108WerpAddFileBuffer
109WerpAddFileCallback
110WerpAuxmdDumpProcessImages
111WerpAuxmdDumpRegisteredBlocks
112WerpAuxmdFree
113WerpAuxmdFreeCopyBuffer
114WerpAuxmdHashVaRanges
115WerpAuxmdInitialize
116WerpAuxmdMapFile
117WerpCreateIntegratorReportId
118WerpDownloadResponseOnly
119WerpFreeString
120WerpGetIntegratorReportId
121WerpGetReportConsent
122WerpGetStoreLocation
123WerpIsDisabled
124WerpLaunchResponse
125WerpOpenUserQueue
126WerpSetAuxiliaryArchivePath
127WerpSetCallBack
128WerpSetDefaultUserConsent
129WerpSetIntegratorReportId
lib/libc/mingw/libarm32/winbio.def created+68
...@@ -0,0 +1,68 @@
1;
2; Definition file of winbio.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "winbio.dll"
7EXPORTS
8WinBioNotifyPasswordChange
9_BioLogonIdentifiedUser
10WinBioAcquireFocus
11WinBioAsyncEnumBiometricUnits
12WinBioAsyncEnumDatabases
13WinBioAsyncEnumServiceProviders
14WinBioAsyncMonitorFrameworkChanges
15WinBioAsyncOpenFramework
16WinBioAsyncOpenSession
17WinBioCancel
18WinBioCaptureSample
19WinBioCaptureSampleWithCallback
20WinBioCloseFramework
21WinBioCloseSession
22WinBioControlUnit
23WinBioControlUnitPrivileged
24WinBioDeleteTemplate
25WinBioEnrollBegin
26WinBioEnrollCapture
27WinBioEnrollCaptureWithCallback
28WinBioEnrollCommit
29WinBioEnrollDiscard
30WinBioEnumBiometricUnits
31WinBioEnumDatabases
32WinBioEnumEnrollments
33WinBioEnumServiceProviders
34WinBioFree
35WinBioGetCredentialState
36WinBioGetCredentialWithTicket
37WinBioGetDomainLogonSetting
38WinBioGetEnabledSetting
39WinBioGetLogonSetting
40WinBioGetMSACredentialState
41WinBioGetMSACredentialWithTicket
42WinBioGetProperty
43WinBioIdentify
44WinBioIdentifyAndReleaseTicket
45WinBioIdentifyWithCallback
46WinBioLocateSensor
47WinBioLocateSensorWithCallback
48WinBioLockUnit
49WinBioLogonIdentifiedUser
50WinBioOpenSession
51WinBioProtectData
52WinBioRegisterEventMonitor
53WinBioRegisterServiceMonitor
54WinBioReleaseFocus
55WinBioRemoveAllCredentials
56WinBioRemoveAllDomainCredentials
57WinBioRemoveCredential
58WinBioRemoveMSACredential
59WinBioSetCredential
60WinBioSetMSACredential
61WinBioUnlockUnit
62WinBioUnprotectData
63WinBioUnregisterEventMonitor
64WinBioUnregisterServiceMonitor
65WinBioVerify
66WinBioVerifyAndReleaseTicket
67WinBioVerifyWithCallback
68WinBioWait
lib/libc/mingw/libarm32/winsta.def created+173
...@@ -0,0 +1,173 @@
1;
2; Definition file of WINSTA.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "WINSTA.dll"
7EXPORTS
8WinStationRegisterConsoleNotificationEx2
9LogonIdFromWinStationNameA
10LogonIdFromWinStationNameW
11RemoteAssistancePrepareSystemRestore
12ServerGetInternetConnectorStatus
13ServerLicensingClose
14ServerLicensingDeactivateCurrentPolicy
15ServerLicensingFreePolicyInformation
16ServerLicensingGetAvailablePolicyIds
17ServerLicensingGetPolicy
18ServerLicensingGetPolicyInformationA
19ServerLicensingGetPolicyInformationW
20ServerLicensingLoadPolicy
21ServerLicensingOpenA
22ServerLicensingOpenW
23ServerLicensingSetPolicy
24ServerLicensingUnloadPolicy
25ServerQueryInetConnectorInformationA
26ServerQueryInetConnectorInformationW
27ServerSetInternetConnectorStatus
28WTSRegisterSessionNotificationEx
29WTSUnRegisterSessionNotificationEx
30WinStationActivateLicense
31WinStationAutoReconnect
32WinStationBroadcastSystemMessage
33WinStationCheckAccess
34WinStationCheckLoopBack
35WinStationCloseServer
36WinStationConnectA
37WinStationConnectAndLockDesktop
38WinStationConnectCallback
39WinStationConnectEx
40WinStationConnectW
41WinStationCreateChildSessionTransport
42WinStationDisconnect
43WinStationEnableChildSessions
44WinStationEnumerateA
45WinStationEnumerateExW
46WinStationEnumerateLicenses
47WinStationEnumerateProcesses
48WinStationEnumerateW
49WinStationEnumerate_IndexedA
50WinStationEnumerate_IndexedW
51WinStationFreeConsoleNotification
52WinStationFreeEXECENVDATAEX
53WinStationFreeGAPMemory
54WinStationFreeMemory
55WinStationFreePropertyValue
56WinStationFreeUserCertificates
57WinStationFreeUserCredentials
58WinStationFreeUserSessionInfo
59WinStationGenerateLicense
60WinStationGetAllProcesses
61WinStationGetAllSessionsEx
62WinStationGetAllSessionsW
63WinStationGetAllUserSessions
64WinStationGetChildSessionId
65WinStationGetConnectionProperty
66WinStationGetCurrentSessionCapabilities
67WinStationGetCurrentSessionConnectionProperty
68WinStationGetCurrentSessionTerminalName
69WinStationGetDeviceId
70WinStationGetInitialApplication
71WinStationGetLanAdapterNameA
72WinStationGetLanAdapterNameW
73WinStationGetLoggedOnCount
74WinStationGetMachinePolicy
75WinStationGetParentSessionId
76WinStationGetProcessSid
77WinStationGetRedirectAuthInfo
78WinStationGetRestrictedLogonInfo
79WinStationGetSessionIds
80WinStationGetTermSrvCountersValue
81WinStationGetUserCertificates
82WinStationGetUserCredentials
83WinStationGetUserProfile
84WinStationInstallLicense
85WinStationIsChildSessionsEnabled
86WinStationIsCurrentSessionRemoteable
87WinStationIsHelpAssistantSession
88WinStationIsSessionPermitted
89WinStationIsSessionRemoteable
90WinStationNameFromLogonIdA
91WinStationNameFromLogonIdW
92WinStationNegotiateSession
93WinStationNtsdDebug
94WinStationOpenServerA
95WinStationOpenServerExA
96WinStationOpenServerExW
97WinStationOpenServerW
98WinStationPreCreateGlassReplacementSession
99WinStationQueryAllowConcurrentConnections
100WinStationQueryCurrentSessionInformation
101WinStationQueryEnforcementCore
102WinStationQueryInformationA
103WinStationQueryInformationW
104WinStationQueryLicense
105WinStationQueryLogonCredentialsW
106WinStationQuerySessionVirtualIP
107WinStationQueryUpdateRequired
108WinStationRcmShadow2
109WinStationRedirectErrorMessage
110WinStationRedirectLogonBeginPainting
111WinStationRedirectLogonError
112WinStationRedirectLogonMessage
113WinStationRedirectLogonStatus
114WinStationRegisterConsoleNotification
115WinStationRegisterConsoleNotificationEx
116WinStationRegisterCurrentSessionNotificationEvent
117WinStationRegisterNotificationEvent
118WinStationRemoveLicense
119WinStationRenameA
120WinStationRenameW
121WinStationReportUIResult
122WinStationReset
123WinStationRevertFromServicesSession
124WinStationSendMessageA
125WinStationSendMessageW
126WinStationSendWindowMessage
127WinStationServerPing
128WinStationSetAutologonPassword
129WinStationSetInformationA
130WinStationSetInformationW
131WinStationSetPoolCount
132WinStationSetRenderHint
133WinStationShadow
134WinStationShadowAccessCheck
135WinStationShadowStop
136WinStationShadowStop2
137WinStationShutdownSystem
138WinStationSwitchToServicesSession
139WinStationSystemShutdownStarted
140WinStationSystemShutdownWait
141WinStationTerminateGlassReplacementSession
142WinStationTerminateProcess
143WinStationUnRegisterConsoleNotification
144WinStationUnRegisterNotificationEvent
145WinStationUserLoginAccessCheck
146WinStationVerify
147WinStationVirtualOpen
148WinStationVirtualOpenEx
149WinStationWaitSystemEvent
150_NWLogonQueryAdmin
151_NWLogonSetAdmin
152_WinStationAnnoyancePopup
153_WinStationBeepOpen
154_WinStationBreakPoint
155_WinStationCallback
156_WinStationCheckForApplicationName
157_WinStationFUSCanRemoteUserDisconnect
158_WinStationGetApplicationInfo
159_WinStationNotifyDisconnectPipe
160_WinStationNotifyLogoff
161_WinStationNotifyLogon
162_WinStationNotifyNewSession
163_WinStationOpenSessionDirectory
164_WinStationReInitializeSecurity
165_WinStationReadRegistry
166_WinStationSessionInitialized
167_WinStationShadowTarget
168_WinStationShadowTarget2
169_WinStationShadowTargetSetup
170_WinStationUpdateClientCachedCredentials
171_WinStationUpdateSettings
172_WinStationUpdateUserConfig
173_WinStationWaitForConnect
lib/libc/mingw/libarm32/wldp.def created+12
...@@ -0,0 +1,12 @@
1;
2; Definition file of Wldp.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "Wldp.dll"
7EXPORTS
8WldpCheckRetailConfiguration
9WldpGetLockdownPolicy
10WldpIsClassInApprovedList
11WldpIsDebugAllowed
12WldpIsRundll32Allowed
lib/libc/mingw/libarm32/wofutil.def created+14
...@@ -0,0 +1,14 @@
1;
2; Definition file of WOFUTIL.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "WOFUTIL.dll"
7EXPORTS
8WofEnumEntries
9WofIsExternalFile
10WofSetFileDataLocation
11WofWimAddEntry
12WofWimEnumFiles
13WofWimRemoveEntry
14WofWimUpdateEntry
lib/libc/mingw/libarm32/wsclient.def created+38
...@@ -0,0 +1,38 @@
1;
2; Definition file of WSClient.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "WSClient.dll"
7EXPORTS
8WSpTLRW
9AcquireDeveloperLicense
10CheckDeveloperLicense
11GetApplicationURL
12RefreshBannedAppsList
13RemoveDeveloperLicense
14WSCallServer
15WSCheckForConsumable
16WSEvaluatePackage
17WSGetEvaluatePackageAttempted
18WSLicenseCleanUpState
19WSLicenseClose
20WSLicenseFilterValidAppCategoryIds
21WSLicenseGetAllUserTokens
22WSLicenseGetAllValidAppCategoryIds
23WSLicenseGetDevInstalledApps
24WSLicenseGetExtendedUserInfo
25WSLicenseGetFeatureLicenseResults
26WSLicenseGetLicensesForProducts
27WSLicenseGetOAuthServiceTicket
28WSLicenseGetProductLicenseResults
29WSLicenseInstallLicense
30WSLicenseOpen
31WSLicenseRefreshLicense
32WSLicenseRetrieveMachineID
33WSLicenseRevokeLicenses
34WSLicenseUninstallLicense
35WSNotifyOOBECompletion
36WSNotifyPackageInstalled
37WSTriggerOOBEFileValidation
38g_bPrintFromClientDLL DATA
lib/libc/mingw/libarm32/wsdapi.def created+52
...@@ -0,0 +1,52 @@
1;
2; Definition file of wsdapi.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "wsdapi.dll"
7EXPORTS
8WSDAddFirewallCheck
9WSDCancelNetworkChangeNotify
10WSDCopyNameList
11WSDNotifyNetworkChange
12WSDRemoveFirewallCheck
13WSDXMLCompareNames
14WSDAllocateLinkedMemory
15WSDAttachLinkedMemory
16WSDCompareEndpoints
17WSDCopyEndpoint
18WSDCreateDeviceHost
19WSDCreateDeviceHost2
20WSDCreateDeviceHostAdvanced
21WSDCreateDeviceProxy
22WSDCreateDeviceProxy2
23WSDCreateDeviceProxyAdvanced
24WSDCreateDiscoveryProvider
25WSDCreateDiscoveryProvider2
26WSDCreateDiscoveryPublisher
27WSDCreateDiscoveryPublisher2
28WSDCreateHttpAddress
29WSDCreateHttpMessageParameters
30WSDCreateHttpTransport
31WSDCreateMetadataAgent
32WSDCreateOutboundAttachment
33WSDCreateUdpAddress
34WSDCreateUdpMessageParameters
35WSDCreateUdpTransport
36WSDDetachLinkedMemory
37WSDFreeLinkedMemory
38WSDGenerateFault
39WSDGenerateFaultEx
40WSDGenerateRandomDelay
41WSDGetConfigurationOption
42WSDProcessFault
43WSDSetConfigurationOption
44WSDUriDecode
45WSDUriEncode
46WSDXMLAddChild
47WSDXMLAddSibling
48WSDXMLBuildAnyForSingleElement
49WSDXMLCleanupElement
50WSDXMLCreateContext
51WSDXMLGetNameFromBuiltinNamespace
52WSDXMLGetValueFromAny
lib/libc/mingw/libarm32/wsmsvc.def created+3676
...@@ -0,0 +1,3676 @@
1;
2; Definition file of WsmSvc.DLL
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "WsmSvc.DLL"
7EXPORTS
8??0?$AutoCleanup@V?$AutoDelete@D@@PAD@@QAA@PAD@Z
9??0?$AutoCleanup@V?$AutoDelete@G@@PAG@@QAA@PAG@Z
10??0?$AutoCleanup@V?$AutoDelete@UIPRange@CWSManIPFilter@@@@PAUIPRange@CWSManIPFilter@@@@QAA@PAUIPRange@CWSManIPFilter@@@Z
11??0?$AutoCleanup@V?$AutoDelete@U_SID@@@@PAU_SID@@@@QAA@PAU_SID@@@Z
12??0?$AutoCleanup@V?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@PAU_WSMAN_STREAM_ID_SET@@@@QAA@PAU_WSMAN_STREAM_ID_SET@@@Z
13??0?$AutoCleanup@V?$AutoDelete@V?$Handle@VISubscription@@@@@@PAV?$Handle@VISubscription@@@@@@QAA@PAV?$Handle@VISubscription@@@@@Z
14??0?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@Z
15??0?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@Z
16??0?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@QAA@PAV?$SafeSet@PAVCCertMapping@@@@@Z
17??0?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@QAA@PAV?$SafeSet@PAVCShellUriSettings@@@@@Z
18??0?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@Z
19??0?$AutoCleanup@V?$AutoDelete@V?$SimpleStack@VCListenerOperation@@@@@@PAV?$SimpleStack@VCListenerOperation@@@@@@QAA@PAV?$SimpleStack@VCListenerOperation@@@@@Z
20??0?$AutoCleanup@V?$AutoDelete@V?$SimpleStack@VShellHostEntry@@@@@@PAV?$SimpleStack@VShellHostEntry@@@@@@QAA@PAV?$SimpleStack@VShellHostEntry@@@@@Z
21??0?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAA@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@Z
22??0?$AutoCleanup@V?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@QAA@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@Z
23??0?$AutoCleanup@V?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QAA@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@Z
24??0?$AutoCleanup@V?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@QAA@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@Z
25??0?$AutoCleanup@V?$AutoDelete@VAdminSid@CSecurity@@@@PAVAdminSid@CSecurity@@@@QAA@PAVAdminSid@CSecurity@@@Z
26??0?$AutoCleanup@V?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@@QAA@PAVBlockedRecord@@@Z
27??0?$AutoCleanup@V?$AutoDelete@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAA@PAVCBaseConfigCache@@@Z
28??0?$AutoCleanup@V?$AutoDelete@VCCertMapping@@@@PAVCCertMapping@@@@QAA@PAVCCertMapping@@@Z
29??0?$AutoCleanup@V?$AutoDelete@VCConfigChangeSource@@@@PAVCConfigChangeSource@@@@QAA@PAVCConfigChangeSource@@@Z
30??0?$AutoCleanup@V?$AutoDelete@VCListenerSettings@@@@PAVCListenerSettings@@@@QAA@PAVCListenerSettings@@@Z
31??0?$AutoCleanup@V?$AutoDelete@VCObserverConfigChangeErrors@@@@PAVCObserverConfigChangeErrors@@@@QAA@PAVCObserverConfigChangeErrors@@@Z
32??0?$AutoCleanup@V?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@@QAA@PAVCServiceWatcher@CServiceConfigCache@@@Z
33??0?$AutoCleanup@V?$AutoDelete@VCShellUriSettings@@@@PAVCShellUriSettings@@@@QAA@PAVCShellUriSettings@@@Z
34??0?$AutoCleanup@V?$AutoDelete@VCWSManEPR@@@@PAVCWSManEPR@@@@QAA@PAVCWSManEPR@@@Z
35??0?$AutoCleanup@V?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@@QAA@PAVCWSManResource@@@Z
36??0?$AutoCleanup@V?$AutoDelete@VCertHash@@@@PAVCertHash@@@@QAA@PAVCertHash@@@Z
37??0?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@QAA@PAVConfigUpdate@@@Z
38??0?$AutoCleanup@V?$AutoDelete@VCredUIDllLoader@@@@PAVCredUIDllLoader@@@@QAA@PAVCredUIDllLoader@@@Z
39??0?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAA@PAVEnumSinkEx@@@Z
40??0?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAA@XZ
41??0?$AutoCleanup@V?$AutoDelete@VEventHandler@WSMan@@@@PAVEventHandler@WSMan@@@@QAA@PAVEventHandler@WSMan@@@Z
42??0?$AutoCleanup@V?$AutoDelete@VExpiredOperationIdRecord@@@@PAVExpiredOperationIdRecord@@@@QAA@PAVExpiredOperationIdRecord@@@Z
43??0?$AutoCleanup@V?$AutoDelete@VGPApiManager@@@@PAVGPApiManager@@@@QAA@PAVGPApiManager@@@Z
44??0?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAA@PAVGeneralSinkEx@@@Z
45??0?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAA@XZ
46??0?$AutoCleanup@V?$AutoDelete@VIChannelObserverFactory@@@@PAVIChannelObserverFactory@@@@QAA@PAVIChannelObserverFactory@@@Z
47??0?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QAA@PAVIQueryDASHSMASHInterface@@@Z
48??0?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QAA@XZ
49??0?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QAA@PAVISpecification@@@Z
50??0?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QAA@XZ
51??0?$AutoCleanup@V?$AutoDelete@VInteractiveSid@CSecurity@@@@PAVInteractiveSid@CSecurity@@@@QAA@PAVInteractiveSid@CSecurity@@@Z
52??0?$AutoCleanup@V?$AutoDelete@VIpHlpApiDllLoader@@@@PAVIpHlpApiDllLoader@@@@QAA@PAVIpHlpApiDllLoader@@@Z
53??0?$AutoCleanup@V?$AutoDelete@VMachineName@@@@PAVMachineName@@@@QAA@PAVMachineName@@@Z
54??0?$AutoCleanup@V?$AutoDelete@VNetworkServiceSid@CSecurity@@@@PAVNetworkServiceSid@CSecurity@@@@QAA@PAVNetworkServiceSid@CSecurity@@@Z
55??0?$AutoCleanup@V?$AutoDelete@VNtDsApiDllLoader@@@@PAVNtDsApiDllLoader@@@@QAA@PAVNtDsApiDllLoader@@@Z
56??0?$AutoCleanup@V?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAA@PAVOptionValue@SessionOptions@Client@WSMan@@@Z
57??0?$AutoCleanup@V?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@@QAA@PAVPacketCreator@@@Z
58??0?$AutoCleanup@V?$AutoDelete@VPacketParser@@@@PAVPacketParser@@@@QAA@PAVPacketParser@@@Z
59??0?$AutoCleanup@V?$AutoDelete@VResources@Locale@@@@PAVResources@Locale@@@@QAA@PAVResources@Locale@@@Z
60??0?$AutoCleanup@V?$AutoDelete@VRunAsConfiguration@@@@PAVRunAsConfiguration@@@@QAA@PAVRunAsConfiguration@@@Z
61??0?$AutoCleanup@V?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@@QAA@PAVSecurityEntry@Catalog@@@Z
62??0?$AutoCleanup@V?$AutoDelete@VSendPacketArgs@RobustConnectionBuffer@@@@PAVSendPacketArgs@RobustConnectionBuffer@@@@QAA@PAVSendPacketArgs@RobustConnectionBuffer@@@Z
63??0?$AutoCleanup@V?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@@QAA@PAVServiceSoapProcessor@@@Z
64??0?$AutoCleanup@V?$AutoDelete@VShell32DllLoader@@@@PAVShell32DllLoader@@@@QAA@PAVShell32DllLoader@@@Z
65??0?$AutoCleanup@V?$AutoDelete@VShlWApiDllLoader@@@@PAVShlWApiDllLoader@@@@QAA@PAVShlWApiDllLoader@@@Z
66??0?$AutoCleanup@V?$AutoDelete@VSubscriptionEnumerator@@@@PAVSubscriptionEnumerator@@@@QAA@PAVSubscriptionEnumerator@@@Z
67??0?$AutoCleanup@V?$AutoDelete@VSubscriptionManager@@@@PAVSubscriptionManager@@@@QAA@PAVSubscriptionManager@@@Z
68??0?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QAA@PAVTSTRBUFFER@@@Z
69??0?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QAA@XZ
70??0?$AutoCleanup@V?$AutoDelete@VUniqueStringOverflow@@@@PAVUniqueStringOverflow@@@@QAA@PAVUniqueStringOverflow@@@Z
71??0?$AutoCleanup@V?$AutoDelete@VUser32DllLoader@@@@PAVUser32DllLoader@@@@QAA@PAVUser32DllLoader@@@Z
72??0?$AutoCleanup@V?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@PAVWSMANCONFIGTABLE_IDENTITY@@@@QAA@PAVWSMANCONFIGTABLE_IDENTITY@@@Z
73??0?$AutoCleanup@V?$AutoDelete@VWSManMemCryptManager@@@@PAVWSManMemCryptManager@@@@QAA@PAVWSManMemCryptManager@@@Z
74??0?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QAA@PAVWmiEnumContext@@@Z
75??0?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QAA@XZ
76??0?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@QAA@PAVXmlReader@@@Z
77??0?$AutoCleanup@V?$AutoDeleteVector@$$CBG@@PBG@@QAA@PBG@Z
78??0?$AutoCleanup@V?$AutoDeleteVector@D@@PAD@@QAA@PAD@Z
79??0?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QAA@PAE@Z
80??0?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QAA@XZ
81??0?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QAA@PAG@Z
82??0?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QAA@XZ
83??0?$AutoCleanup@V?$AutoDeleteVector@H@@PAH@@QAA@PAH@Z
84??0?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QAA@PAPAG@Z
85??0?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QAA@XZ
86??0?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QAA@PAPBG@Z
87??0?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QAA@XZ
88??0?$AutoCleanup@V?$AutoDeleteVector@U_CONFIG_UPDATE@@@@PAU_CONFIG_UPDATE@@@@QAA@PAU_CONFIG_UPDATE@@@Z
89??0?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAA@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@Z
90??0?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAA@XZ
91??0?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QAA@PAU_WINRS_RUN_COMMAND_ARG@@@Z
92??0?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QAA@XZ
93??0?$AutoCleanup@V?$AutoDeleteVector@U_WSMAN_OPTION@@@@PAU_WSMAN_OPTION@@@@QAA@PAU_WSMAN_OPTION@@@Z
94??0?$AutoCleanup@V?$AutoDeleteVector@X@@PAX@@QAA@PAX@Z
95??0?$AutoCleanup@V?$AutoFree@E@@PAE@@QAA@PAE@Z
96??0?$AutoCleanup@V?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@@QAA@PAVPacket@@@Z
97??0?$AutoCleanup@V?$AutoRelease@UIAppHostChildElementCollection@@@@PAUIAppHostChildElementCollection@@@@QAA@PAUIAppHostChildElementCollection@@@Z
98??0?$AutoCleanup@V?$AutoRelease@UIAppHostElement@@@@PAUIAppHostElement@@@@QAA@PAUIAppHostElement@@@Z
99??0?$AutoCleanup@V?$AutoRelease@UIAppHostElementCollection@@@@PAUIAppHostElementCollection@@@@QAA@PAUIAppHostElementCollection@@@Z
100??0?$AutoCleanup@V?$AutoRelease@UIAppHostProperty@@@@PAUIAppHostProperty@@@@QAA@PAUIAppHostProperty@@@Z
101??0?$AutoCleanup@V?$AutoRelease@UIAppHostPropertyCollection@@@@PAUIAppHostPropertyCollection@@@@QAA@PAUIAppHostPropertyCollection@@@Z
102??0?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QAA@PAUIClientSecurity@@@Z
103??0?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QAA@XZ
104??0?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QAA@PAUIEnumWbemClassObject@@@Z
105??0?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QAA@XZ
106??0?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QAA@PAUIErrorInfo@@@Z
107??0?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QAA@XZ
108??0?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QAA@PAUIUnknown@@@Z
109??0?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QAA@XZ
110??0?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QAA@PAUIWbemClassObject@@@Z
111??0?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QAA@XZ
112??0?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QAA@PAUIWbemContext@@@Z
113??0?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QAA@XZ
114??0?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QAA@PAUIWbemLocator@@@Z
115??0?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QAA@XZ
116??0?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QAA@PAUIWbemObjectTextSrc@@@Z
117??0?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QAA@XZ
118??0?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QAA@PAUIWbemPath@@@Z
119??0?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QAA@XZ
120??0?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QAA@PAUIWbemPathKeyList@@@Z
121??0?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QAA@XZ
122??0?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QAA@PAUIWbemQualifierSet@@@Z
123??0?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QAA@XZ
124??0?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QAA@PAUIWbemQuery@@@Z
125??0?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QAA@XZ
126??0?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QAA@PAUIWbemServices@@@Z
127??0?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QAA@XZ
128??0?$AutoCleanup@V?$AutoRelease@VApplication@Client@WSMan@@@@PAVApplication@Client@WSMan@@@@QAA@PAVApplication@Client@WSMan@@@Z
129??0?$AutoCleanup@V?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAA@PAVCBaseConfigCache@@@Z
130??0?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@QAA@PAVCClientConfigSettings@@@Z
131??0?$AutoCleanup@V?$AutoRelease@VCCommonConfigSettings@@@@PAVCCommonConfigSettings@@@@QAA@PAVCCommonConfigSettings@@@Z
132??0?$AutoCleanup@V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@PAVCConfigCacheMap@CBaseConfigCache@@@@QAA@PAVCConfigCacheMap@CBaseConfigCache@@@Z
133??0?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@QAA@PAVCConfigManager@@@Z
134??0?$AutoCleanup@V?$AutoRelease@VCRemoteOperation@@@@PAVCRemoteOperation@@@@QAA@PAVCRemoteOperation@@@Z
135??0?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@QAA@PAVCRemoteSession@@@Z
136??0?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@QAA@PAVCRequestContext@@@Z
137??0?$AutoCleanup@V?$AutoRelease@VCServiceCommonConfigSettings@@@@PAVCServiceCommonConfigSettings@@@@QAA@PAVCServiceCommonConfigSettings@@@Z
138??0?$AutoCleanup@V?$AutoRelease@VCServiceConfigCache@@@@PAVCServiceConfigCache@@@@QAA@PAVCServiceConfigCache@@@Z
139??0?$AutoCleanup@V?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@@QAA@PAVCServiceConfigSettings@@@Z
140??0?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QAA@PAVCWSManEPR@@@Z
141??0?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QAA@XZ
142??0?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyCache@@@@PAVCWSManGroupPolicyCache@@@@QAA@PAVCWSManGroupPolicyCache@@@Z
143??0?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@@QAA@PAVCWSManGroupPolicyManager@@@Z
144??0?$AutoCleanup@V?$AutoRelease@VCWSManObject@@@@PAVCWSManObject@@@@QAA@PAVCWSManObject@@@Z
145??0?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@QAA@PAVCWSManResource@@@Z
146??0?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QAA@PAVCWinRSPluginConfigCache@@@Z
147??0?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QAA@XZ
148??0?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@@QAA@PAVCWinRSPluginConfigSettings@@@Z
149??0?$AutoCleanup@V?$AutoRelease@VCommand@Client@WSMan@@@@PAVCommand@Client@WSMan@@@@QAA@PAVCommand@Client@WSMan@@@Z
150??0?$AutoCleanup@V?$AutoRelease@VConfigNotification@@@@PAVConfigNotification@@@@QAA@PAVConfigNotification@@@Z
151??0?$AutoCleanup@V?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@PAVConnectShellOperation@Client@WSMan@@@@QAA@PAVConnectShellOperation@Client@WSMan@@@Z
152??0?$AutoCleanup@V?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@PAVCreateShellOperation@Client@WSMan@@@@QAA@PAVCreateShellOperation@Client@WSMan@@@Z
153??0?$AutoCleanup@V?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@PAVDeleteShellOperation@Client@WSMan@@@@QAA@PAVDeleteShellOperation@Client@WSMan@@@Z
154??0?$AutoCleanup@V?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@PAVDisconnectOperation@Client@WSMan@@@@QAA@PAVDisconnectOperation@Client@WSMan@@@Z
155??0?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAA@PAVEnumSinkEx@@@Z
156??0?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAA@XZ
157??0?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAA@PAVGeneralSinkEx@@@Z
158??0?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAA@XZ
159??0?$AutoCleanup@V?$AutoRelease@VIISConfigSettings@@@@PAVIISConfigSettings@@@@QAA@PAVIISConfigSettings@@@Z
160??0?$AutoCleanup@V?$AutoRelease@VIPCSoapProcessor@@@@PAVIPCSoapProcessor@@@@QAA@PAVIPCSoapProcessor@@@Z
161??0?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QAA@PAVIRequestContext@@@Z
162??0?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QAA@XZ
163??0?$AutoCleanup@V?$AutoRelease@VISubscription@@@@PAVISubscription@@@@QAA@PAVISubscription@@@Z
164??0?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@QAA@PAVInboundRequestDetails@@@Z
165??0?$AutoCleanup@V?$AutoRelease@VReceiveOperation@Client@WSMan@@@@PAVReceiveOperation@Client@WSMan@@@@QAA@PAVReceiveOperation@Client@WSMan@@@Z
166??0?$AutoCleanup@V?$AutoRelease@VReconnectOperation@Client@WSMan@@@@PAVReconnectOperation@Client@WSMan@@@@QAA@PAVReconnectOperation@Client@WSMan@@@Z
167??0?$AutoCleanup@V?$AutoRelease@VSendOperation@Client@WSMan@@@@PAVSendOperation@Client@WSMan@@@@QAA@PAVSendOperation@Client@WSMan@@@Z
168??0?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAA@PAVShell@Client@WSMan@@@Z
169??0?$AutoCleanup@V?$AutoRelease@VShellInfo@@@@PAVShellInfo@@@@QAA@PAVShellInfo@@@Z
170??0?$AutoCleanup@V?$AutoRelease@VSignalOperation@Client@WSMan@@@@PAVSignalOperation@Client@WSMan@@@@QAA@PAVSignalOperation@Client@WSMan@@@Z
171??0?$AutoCleanup@V?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@@QAA@PAVUserRecord@@@Z
172??0?$AutoCleanup@V?$AutoRelease@VWSManHttpListener@@@@PAVWSManHttpListener@@@@QAA@PAVWSManHttpListener@@@Z
173??0?$AutoCleanup@V?$AutoReleaseEx@VHostMappingTableEntry@@@@PAVHostMappingTableEntry@@@@QAA@PAVHostMappingTableEntry@@@Z
174??0?$AutoCleanup@V?$AutoReleaseEx@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAA@PAVShell@Client@WSMan@@@Z
175??0?$AutoCleanup@VAutoBstr@@PAG@@QAA@PAG@Z
176??0?$AutoCleanup@VAutoBstr@@PAG@@QAA@XZ
177??0?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QAA@PAG@Z
178??0?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QAA@XZ
179??0?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@QAA@PBU_CERT_CONTEXT@@@Z
180??0?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@QAA@XZ
181??0?$AutoCleanup@VAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@@QAA@PBU_CERT_CHAIN_CONTEXT@@@Z
182??0?$AutoCleanup@VAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@@QAA@XZ
183??0?$AutoCleanup@VAutoCoTaskMemFree@@PAX@@QAA@PAX@Z
184??0?$AutoCleanup@VAutoCoTaskMemFree@@PAX@@QAA@XZ
185??0?$AutoCleanup@VAutoEnvironmentBlock@@PAX@@QAA@PAX@Z
186??0?$AutoCleanup@VAutoEnvironmentBlock@@PAX@@QAA@XZ
187??0?$AutoCleanup@VAutoFwXmlCloseParser@@PAX@@QAA@PAX@Z
188??0?$AutoCleanup@VAutoFwXmlCloseParser@@PAX@@QAA@XZ
189??0?$AutoCleanup@VAutoHandle@@PAX@@QAA@PAX@Z
190??0?$AutoCleanup@VAutoHandle@@PAX@@QAA@XZ
191??0?$AutoCleanup@VAutoImpersonateUser@@PAX@@QAA@PAX@Z
192??0?$AutoCleanup@VAutoImpersonateUser@@PAX@@QAA@XZ
193??0?$AutoCleanup@VAutoLibrary@@PAUHINSTANCE__@@@@QAA@PAUHINSTANCE__@@@Z
194??0?$AutoCleanup@VAutoLibrary@@PAUHINSTANCE__@@@@QAA@XZ
195??0?$AutoCleanup@VAutoLocalFree@@PAX@@QAA@PAX@Z
196??0?$AutoCleanup@VAutoLocalFree@@PAX@@QAA@XZ
197??0?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QAA@PAU_MI_Class@@@Z
198??0?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QAA@XZ
199??0?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@QAA@PAU_MI_Instance@@@Z
200??0?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@QAA@XZ
201??0?$AutoCleanup@VAutoObject@@PAUWSMAN_OBJECT@@@@QAA@PAUWSMAN_OBJECT@@@Z
202??0?$AutoCleanup@VAutoObject@@PAUWSMAN_OBJECT@@@@QAA@XZ
203??0?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@QAA@PAUHKEY__@@@Z
204??0?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@QAA@XZ
205??0?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@QAA@PAX@Z
206??0?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@QAA@XZ
207??0?$AutoCleanup@VAutoWaitHandle@@PAX@@QAA@PAX@Z
208??0?$AutoCleanup@VAutoWaitHandle@@PAX@@QAA@XZ
209??0?$AutoDelete@D@@QAA@XZ
210??0?$AutoDelete@G@@QAA@PAG@Z
211??0?$AutoDelete@G@@QAA@XZ
212??0?$AutoDelete@UIPRange@CWSManIPFilter@@@@QAA@XZ
213??0?$AutoDelete@U_SID@@@@QAA@PAU_SID@@@Z
214??0?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@QAA@PAU_WSMAN_STREAM_ID_SET@@@Z
215??0?$AutoDelete@V?$Handle@VISubscription@@@@@@QAA@PAV?$Handle@VISubscription@@@@@Z
216??0?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA@XZ
217??0?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA@XZ
218??0?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@QAA@PAV?$SafeSet@PAVCCertMapping@@@@@Z
219??0?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@QAA@XZ
220??0?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@QAA@PAV?$SafeSet@PAVCShellUriSettings@@@@@Z
221??0?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@QAA@XZ
222??0?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA@XZ
223??0?$AutoDelete@V?$SimpleStack@VCListenerOperation@@@@@@QAA@XZ
224??0?$AutoDelete@V?$SimpleStack@VShellHostEntry@@@@@@QAA@XZ
225??0?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAA@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@Z
226??0?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAA@XZ
227??0?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@QAA@XZ
228??0?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QAA@XZ
229??0?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@QAA@XZ
230??0?$AutoDelete@VAdminSid@CSecurity@@@@QAA@PAVAdminSid@CSecurity@@@Z
231??0?$AutoDelete@VBlockedRecord@@@@QAA@XZ
232??0?$AutoDelete@VCBaseConfigCache@@@@QAA@PAVCBaseConfigCache@@@Z
233??0?$AutoDelete@VCCertMapping@@@@QAA@PAVCCertMapping@@@Z
234??0?$AutoDelete@VCConfigChangeSource@@@@QAA@XZ
235??0?$AutoDelete@VCListenerSettings@@@@QAA@PAVCListenerSettings@@@Z
236??0?$AutoDelete@VCObserverConfigChangeErrors@@@@QAA@XZ
237??0?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@QAA@PAVCServiceWatcher@CServiceConfigCache@@@Z
238??0?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@QAA@XZ
239??0?$AutoDelete@VCShellUriSettings@@@@QAA@PAVCShellUriSettings@@@Z
240??0?$AutoDelete@VCWSManEPR@@@@QAA@PAVCWSManEPR@@@Z
241??0?$AutoDelete@VCWSManResource@@@@QAA@PAVCWSManResource@@@Z
242??0?$AutoDelete@VCWSManResource@@@@QAA@XZ
243??0?$AutoDelete@VCertHash@@@@QAA@PAVCertHash@@@Z
244??0?$AutoDelete@VCertHash@@@@QAA@XZ
245??0?$AutoDelete@VConfigUpdate@@@@QAA@PAVConfigUpdate@@@Z
246??0?$AutoDelete@VConfigUpdate@@@@QAA@XZ
247??0?$AutoDelete@VCredUIDllLoader@@@@QAA@PAVCredUIDllLoader@@@Z
248??0?$AutoDelete@VEnumSinkEx@@@@QAA@PAVEnumSinkEx@@@Z
249??0?$AutoDelete@VEnumSinkEx@@@@QAA@XZ
250??0?$AutoDelete@VEventHandler@WSMan@@@@QAA@PAVEventHandler@WSMan@@@Z
251??0?$AutoDelete@VExpiredOperationIdRecord@@@@QAA@PAVExpiredOperationIdRecord@@@Z
252??0?$AutoDelete@VGPApiManager@@@@QAA@XZ
253??0?$AutoDelete@VGeneralSinkEx@@@@QAA@PAVGeneralSinkEx@@@Z
254??0?$AutoDelete@VGeneralSinkEx@@@@QAA@XZ
255??0?$AutoDelete@VIChannelObserverFactory@@@@QAA@PAVIChannelObserverFactory@@@Z
256??0?$AutoDelete@VIChannelObserverFactory@@@@QAA@XZ
257??0?$AutoDelete@VIQueryDASHSMASHInterface@@@@QAA@PAVIQueryDASHSMASHInterface@@@Z
258??0?$AutoDelete@VIQueryDASHSMASHInterface@@@@QAA@XZ
259??0?$AutoDelete@VISpecification@@@@QAA@PAVISpecification@@@Z
260??0?$AutoDelete@VISpecification@@@@QAA@XZ
261??0?$AutoDelete@VInteractiveSid@CSecurity@@@@QAA@PAVInteractiveSid@CSecurity@@@Z
262??0?$AutoDelete@VIpHlpApiDllLoader@@@@QAA@PAVIpHlpApiDllLoader@@@Z
263??0?$AutoDelete@VMachineName@@@@QAA@PAVMachineName@@@Z
264??0?$AutoDelete@VNetworkServiceSid@CSecurity@@@@QAA@PAVNetworkServiceSid@CSecurity@@@Z
265??0?$AutoDelete@VNtDsApiDllLoader@@@@QAA@PAVNtDsApiDllLoader@@@Z
266??0?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@QAA@PAVOptionValue@SessionOptions@Client@WSMan@@@Z
267??0?$AutoDelete@VPacketCreator@@@@QAA@PAVPacketCreator@@@Z
268??0?$AutoDelete@VPacketCreator@@@@QAA@XZ
269??0?$AutoDelete@VPacketParser@@@@QAA@XZ
270??0?$AutoDelete@VResources@Locale@@@@QAA@PAVResources@Locale@@@Z
271??0?$AutoDelete@VRunAsConfiguration@@@@QAA@PAVRunAsConfiguration@@@Z
272??0?$AutoDelete@VSecurityEntry@Catalog@@@@QAA@PAVSecurityEntry@Catalog@@@Z
273??0?$AutoDelete@VSendPacketArgs@RobustConnectionBuffer@@@@QAA@PAVSendPacketArgs@RobustConnectionBuffer@@@Z
274??0?$AutoDelete@VServiceSoapProcessor@@@@QAA@XZ
275??0?$AutoDelete@VShell32DllLoader@@@@QAA@PAVShell32DllLoader@@@Z
276??0?$AutoDelete@VShlWApiDllLoader@@@@QAA@PAVShlWApiDllLoader@@@Z
277??0?$AutoDelete@VSubscriptionEnumerator@@@@QAA@XZ
278??0?$AutoDelete@VSubscriptionManager@@@@QAA@PAVSubscriptionManager@@@Z
279??0?$AutoDelete@VTSTRBUFFER@@@@QAA@PAVTSTRBUFFER@@@Z
280??0?$AutoDelete@VTSTRBUFFER@@@@QAA@XZ
281??0?$AutoDelete@VUniqueStringOverflow@@@@QAA@XZ
282??0?$AutoDelete@VUser32DllLoader@@@@QAA@PAVUser32DllLoader@@@Z
283??0?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@QAA@PAVWSMANCONFIGTABLE_IDENTITY@@@Z
284??0?$AutoDelete@VWSManMemCryptManager@@@@QAA@PAVWSManMemCryptManager@@@Z
285??0?$AutoDelete@VWmiEnumContext@@@@QAA@PAVWmiEnumContext@@@Z
286??0?$AutoDelete@VWmiEnumContext@@@@QAA@XZ
287??0?$AutoDelete@VXmlReader@@@@QAA@PAVXmlReader@@@Z
288??0?$AutoDelete@VXmlReader@@@@QAA@XZ
289??0?$AutoDeleteVector@$$CBG@@QAA@XZ
290??0?$AutoDeleteVector@D@@QAA@PAD@Z
291??0?$AutoDeleteVector@D@@QAA@XZ
292??0?$AutoDeleteVector@E@@QAA@PAE@Z
293??0?$AutoDeleteVector@E@@QAA@XZ
294??0?$AutoDeleteVector@G@@QAA@PAG@Z
295??0?$AutoDeleteVector@G@@QAA@XZ
296??0?$AutoDeleteVector@H@@QAA@PAH@Z
297??0?$AutoDeleteVector@PAG@@QAA@PAPAG@Z
298??0?$AutoDeleteVector@PAG@@QAA@XZ
299??0?$AutoDeleteVector@PBG@@QAA@PAPBG@Z
300??0?$AutoDeleteVector@PBG@@QAA@XZ
301??0?$AutoDeleteVector@U_CONFIG_UPDATE@@@@QAA@XZ
302??0?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAA@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@Z
303??0?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAA@XZ
304??0?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@QAA@PAU_WINRS_RUN_COMMAND_ARG@@@Z
305??0?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@QAA@XZ
306??0?$AutoDeleteVector@U_WSMAN_OPTION@@@@QAA@PAU_WSMAN_OPTION@@@Z
307??0?$AutoDeleteVector@U_WSMAN_OPTION@@@@QAA@XZ
308??0?$AutoDeleteVector@X@@QAA@PAX@Z
309??0?$AutoDeleteVector@X@@QAA@XZ
310??0?$AutoFree@E@@QAA@PAE@Z
311??0?$AutoFree@E@@QAA@XZ
312??0?$AutoLocklessItemRecycle@VPacket@@@@QAA@PAVPacket@@@Z
313??0?$AutoLocklessItemRecycle@VPacket@@@@QAA@XZ
314??0?$AutoRelease@UIAppHostChildElementCollection@@@@QAA@XZ
315??0?$AutoRelease@UIAppHostElement@@@@QAA@XZ
316??0?$AutoRelease@UIAppHostElementCollection@@@@QAA@XZ
317??0?$AutoRelease@UIAppHostProperty@@@@QAA@XZ
318??0?$AutoRelease@UIAppHostPropertyCollection@@@@QAA@XZ
319??0?$AutoRelease@UIClientSecurity@@@@QAA@PAUIClientSecurity@@@Z
320??0?$AutoRelease@UIClientSecurity@@@@QAA@XZ
321??0?$AutoRelease@UIEnumWbemClassObject@@@@QAA@PAUIEnumWbemClassObject@@@Z
322??0?$AutoRelease@UIEnumWbemClassObject@@@@QAA@XZ
323??0?$AutoRelease@UIErrorInfo@@@@QAA@PAUIErrorInfo@@@Z
324??0?$AutoRelease@UIErrorInfo@@@@QAA@XZ
325??0?$AutoRelease@UIUnknown@@@@QAA@PAUIUnknown@@@Z
326??0?$AutoRelease@UIUnknown@@@@QAA@XZ
327??0?$AutoRelease@UIWbemClassObject@@@@QAA@PAUIWbemClassObject@@@Z
328??0?$AutoRelease@UIWbemClassObject@@@@QAA@XZ
329??0?$AutoRelease@UIWbemContext@@@@QAA@PAUIWbemContext@@@Z
330??0?$AutoRelease@UIWbemContext@@@@QAA@XZ
331??0?$AutoRelease@UIWbemLocator@@@@QAA@PAUIWbemLocator@@@Z
332??0?$AutoRelease@UIWbemLocator@@@@QAA@XZ
333??0?$AutoRelease@UIWbemObjectTextSrc@@@@QAA@PAUIWbemObjectTextSrc@@@Z
334??0?$AutoRelease@UIWbemObjectTextSrc@@@@QAA@XZ
335??0?$AutoRelease@UIWbemPath@@@@QAA@PAUIWbemPath@@@Z
336??0?$AutoRelease@UIWbemPath@@@@QAA@XZ
337??0?$AutoRelease@UIWbemPathKeyList@@@@QAA@PAUIWbemPathKeyList@@@Z
338??0?$AutoRelease@UIWbemPathKeyList@@@@QAA@XZ
339??0?$AutoRelease@UIWbemQualifierSet@@@@QAA@PAUIWbemQualifierSet@@@Z
340??0?$AutoRelease@UIWbemQualifierSet@@@@QAA@XZ
341??0?$AutoRelease@UIWbemQuery@@@@QAA@PAUIWbemQuery@@@Z
342??0?$AutoRelease@UIWbemQuery@@@@QAA@XZ
343??0?$AutoRelease@UIWbemServices@@@@QAA@PAUIWbemServices@@@Z
344??0?$AutoRelease@UIWbemServices@@@@QAA@XZ
345??0?$AutoRelease@VApplication@Client@WSMan@@@@QAA@XZ
346??0?$AutoRelease@VCBaseConfigCache@@@@QAA@PAVCBaseConfigCache@@@Z
347??0?$AutoRelease@VCClientConfigSettings@@@@QAA@PAVCClientConfigSettings@@@Z
348??0?$AutoRelease@VCClientConfigSettings@@@@QAA@XZ
349??0?$AutoRelease@VCCommonConfigSettings@@@@QAA@PAVCCommonConfigSettings@@@Z
350??0?$AutoRelease@VCCommonConfigSettings@@@@QAA@XZ
351??0?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@QAA@PAVCConfigCacheMap@CBaseConfigCache@@@Z
352??0?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@QAA@XZ
353??0?$AutoRelease@VCConfigManager@@@@QAA@PAVCConfigManager@@@Z
354??0?$AutoRelease@VCConfigManager@@@@QAA@XZ
355??0?$AutoRelease@VCRemoteOperation@@@@QAA@PAVCRemoteOperation@@@Z
356??0?$AutoRelease@VCRemoteSession@@@@QAA@PAVCRemoteSession@@@Z
357??0?$AutoRelease@VCRemoteSession@@@@QAA@XZ
358??0?$AutoRelease@VCRequestContext@@@@QAA@PAVCRequestContext@@@Z
359??0?$AutoRelease@VCRequestContext@@@@QAA@XZ
360??0?$AutoRelease@VCServiceCommonConfigSettings@@@@QAA@PAVCServiceCommonConfigSettings@@@Z
361??0?$AutoRelease@VCServiceCommonConfigSettings@@@@QAA@XZ
362??0?$AutoRelease@VCServiceConfigCache@@@@QAA@PAVCServiceConfigCache@@@Z
363??0?$AutoRelease@VCServiceConfigCache@@@@QAA@XZ
364??0?$AutoRelease@VCServiceConfigSettings@@@@QAA@PAVCServiceConfigSettings@@@Z
365??0?$AutoRelease@VCServiceConfigSettings@@@@QAA@XZ
366??0?$AutoRelease@VCWSManEPR@@@@QAA@PAVCWSManEPR@@@Z
367??0?$AutoRelease@VCWSManEPR@@@@QAA@XZ
368??0?$AutoRelease@VCWSManGroupPolicyCache@@@@QAA@PAVCWSManGroupPolicyCache@@@Z
369??0?$AutoRelease@VCWSManGroupPolicyManager@@@@QAA@PAVCWSManGroupPolicyManager@@@Z
370??0?$AutoRelease@VCWSManObject@@@@QAA@PAVCWSManObject@@@Z
371??0?$AutoRelease@VCWSManResource@@@@QAA@PAVCWSManResource@@@Z
372??0?$AutoRelease@VCWSManResource@@@@QAA@XZ
373??0?$AutoRelease@VCWinRSPluginConfigCache@@@@QAA@PAVCWinRSPluginConfigCache@@@Z
374??0?$AutoRelease@VCWinRSPluginConfigCache@@@@QAA@XZ
375??0?$AutoRelease@VCWinRSPluginConfigSettings@@@@QAA@PAVCWinRSPluginConfigSettings@@@Z
376??0?$AutoRelease@VCommand@Client@WSMan@@@@QAA@PAVCommand@Client@WSMan@@@Z
377??0?$AutoRelease@VConfigNotification@@@@QAA@PAVConfigNotification@@@Z
378??0?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@QAA@PAVConnectShellOperation@Client@WSMan@@@Z
379??0?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@QAA@PAVCreateShellOperation@Client@WSMan@@@Z
380??0?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@QAA@PAVDeleteShellOperation@Client@WSMan@@@Z
381??0?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@QAA@PAVDisconnectOperation@Client@WSMan@@@Z
382??0?$AutoRelease@VEnumSinkEx@@@@QAA@PAVEnumSinkEx@@@Z
383??0?$AutoRelease@VEnumSinkEx@@@@QAA@XZ
384??0?$AutoRelease@VGeneralSinkEx@@@@QAA@PAVGeneralSinkEx@@@Z
385??0?$AutoRelease@VGeneralSinkEx@@@@QAA@XZ
386??0?$AutoRelease@VIISConfigSettings@@@@QAA@XZ
387??0?$AutoRelease@VIPCSoapProcessor@@@@QAA@PAVIPCSoapProcessor@@@Z
388??0?$AutoRelease@VIRequestContext@@@@QAA@PAVIRequestContext@@@Z
389??0?$AutoRelease@VIRequestContext@@@@QAA@XZ
390??0?$AutoRelease@VISubscription@@@@QAA@PAVISubscription@@@Z
391??0?$AutoRelease@VInboundRequestDetails@@@@QAA@XZ
392??0?$AutoRelease@VReceiveOperation@Client@WSMan@@@@QAA@PAVReceiveOperation@Client@WSMan@@@Z
393??0?$AutoRelease@VReconnectOperation@Client@WSMan@@@@QAA@PAVReconnectOperation@Client@WSMan@@@Z
394??0?$AutoRelease@VSendOperation@Client@WSMan@@@@QAA@PAVSendOperation@Client@WSMan@@@Z
395??0?$AutoRelease@VShell@Client@WSMan@@@@QAA@PAVShell@Client@WSMan@@@Z
396??0?$AutoRelease@VShellInfo@@@@QAA@XZ
397??0?$AutoRelease@VSignalOperation@Client@WSMan@@@@QAA@PAVSignalOperation@Client@WSMan@@@Z
398??0?$AutoRelease@VUserRecord@@@@QAA@XZ
399??0?$AutoRelease@VWSManHttpListener@@@@QAA@PAVWSManHttpListener@@@Z
400??0?$AutoReleaseEx@VHostMappingTableEntry@@@@QAA@XZ
401??0?$AutoReleaseEx@VShell@Client@WSMan@@@@QAA@PAVShell@Client@WSMan@@@Z
402??0?$ILoader@VAdminSid@CSecurity@@@@QAA@P8AdminSid@CSecurity@@AA_NAAVIRequestContext@@@Z1@Z
403??0?$ILoader@VCredUIDllLoader@@@@QAA@P8CredUIDllLoader@@AA_NAAVIRequestContext@@@Z1@Z
404??0?$ILoader@VEventHandler@WSMan@@@@QAA@P8EventHandler@WSMan@@AA_NAAVIRequestContext@@@Z1@Z
405??0?$ILoader@VInteractiveSid@CSecurity@@@@QAA@P8InteractiveSid@CSecurity@@AA_NAAVIRequestContext@@@Z1@Z
406??0?$ILoader@VIpHlpApiDllLoader@@@@QAA@P8IpHlpApiDllLoader@@AA_NAAVIRequestContext@@@Z1@Z
407??0?$ILoader@VMachineName@@@@QAA@P8MachineName@@AA_NAAVIRequestContext@@@Z1@Z
408??0?$ILoader@VNetworkServiceSid@CSecurity@@@@QAA@P8NetworkServiceSid@CSecurity@@AA_NAAVIRequestContext@@@Z1@Z
409??0?$ILoader@VNtDsApiDllLoader@@@@QAA@P8NtDsApiDllLoader@@AA_NAAVIRequestContext@@@Z1@Z
410??0?$ILoader@VResources@Locale@@@@QAA@P8Resources@Locale@@AA_NAAVIRequestContext@@@Z1@Z
411??0?$ILoader@VShell32DllLoader@@@@QAA@P8Shell32DllLoader@@AA_NAAVIRequestContext@@@Z1@Z
412??0?$ILoader@VShlWApiDllLoader@@@@QAA@P8ShlWApiDllLoader@@AA_NAAVIRequestContext@@@Z1@Z
413??0?$ILoader@VSubscriptionManager@@@@QAA@P8SubscriptionManager@@AA_NAAVIRequestContext@@@Z1@Z
414??0?$ILoader@VUser32DllLoader@@@@QAA@P8User32DllLoader@@AA_NAAVIRequestContext@@@Z1@Z
415??0?$ILoader@VWSManMemCryptManager@@@@QAA@P8WSManMemCryptManager@@AA_NAAVIRequestContext@@@Z1@Z
416??0?$Loader@VAdminSid@CSecurity@@$00@@QAA@XZ
417??0?$Loader@VCredUIDllLoader@@$00@@QAA@XZ
418??0?$Loader@VEventHandler@WSMan@@$00@@QAA@XZ
419??0?$Loader@VInteractiveSid@CSecurity@@$00@@QAA@XZ
420??0?$Loader@VIpHlpApiDllLoader@@$00@@QAA@XZ
421??0?$Loader@VMachineName@@$00@@QAA@XZ
422??0?$Loader@VNetworkServiceSid@CSecurity@@$00@@QAA@XZ
423??0?$Loader@VNtDsApiDllLoader@@$00@@QAA@XZ
424??0?$Loader@VResources@Locale@@$0A@@@QAA@XZ
425??0?$Loader@VShell32DllLoader@@$00@@QAA@XZ
426??0?$Loader@VShlWApiDllLoader@@$00@@QAA@XZ
427??0?$Loader@VUser32DllLoader@@$00@@QAA@XZ
428??0?$Loader@VWSManMemCryptManager@@$00@@QAA@XZ
429??0?$LoaderSerializer@VAdminSid@CSecurity@@$00@@QAA@P8AdminSid@CSecurity@@AA_NAAVIRequestContext@@@Z1@Z
430??0?$LoaderSerializer@VCredUIDllLoader@@$00@@QAA@P8CredUIDllLoader@@AA_NAAVIRequestContext@@@Z1@Z
431??0?$LoaderSerializer@VEventHandler@WSMan@@$00@@QAA@P8EventHandler@WSMan@@AA_NAAVIRequestContext@@@Z1@Z
432??0?$LoaderSerializer@VInteractiveSid@CSecurity@@$00@@QAA@P8InteractiveSid@CSecurity@@AA_NAAVIRequestContext@@@Z1@Z
433??0?$LoaderSerializer@VIpHlpApiDllLoader@@$00@@QAA@P8IpHlpApiDllLoader@@AA_NAAVIRequestContext@@@Z1@Z
434??0?$LoaderSerializer@VMachineName@@$00@@QAA@P8MachineName@@AA_NAAVIRequestContext@@@Z1@Z
435??0?$LoaderSerializer@VNetworkServiceSid@CSecurity@@$00@@QAA@P8NetworkServiceSid@CSecurity@@AA_NAAVIRequestContext@@@Z1@Z
436??0?$LoaderSerializer@VNtDsApiDllLoader@@$00@@QAA@P8NtDsApiDllLoader@@AA_NAAVIRequestContext@@@Z1@Z
437??0?$LoaderSerializer@VResources@Locale@@$0A@@@QAA@P8Resources@Locale@@AA_NAAVIRequestContext@@@Z1@Z
438??0?$LoaderSerializer@VShell32DllLoader@@$00@@QAA@P8Shell32DllLoader@@AA_NAAVIRequestContext@@@Z1@Z
439??0?$LoaderSerializer@VShlWApiDllLoader@@$00@@QAA@P8ShlWApiDllLoader@@AA_NAAVIRequestContext@@@Z1@Z
440??0?$LoaderSerializer@VSubscriptionManager@@$01@@QAA@P8SubscriptionManager@@AA_NAAVIRequestContext@@@Z1@Z
441??0?$LoaderSerializer@VUser32DllLoader@@$00@@QAA@P8User32DllLoader@@AA_NAAVIRequestContext@@@Z1@Z
442??0?$LoaderSerializer@VWSManMemCryptManager@@$00@@QAA@P8WSManMemCryptManager@@AA_NAAVIRequestContext@@@Z1@Z
443??0?$PacketElement@K@PacketParser@@QAA@XZ
444??0?$PacketElement@PAU_FWXML_ELEMENT@@@PacketParser@@QAA@XZ
445??0?$PacketElement@PBG@PacketParser@@QAA@XZ
446??0?$PacketElement@_K@PacketParser@@QAA@XZ
447??0?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@QAA@XZ
448??0?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA@XZ
449??0?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@QAA@XZ
450??0?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@QAA@XZ
451??0?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAA@XZ
452??0?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAA@XZ
453??0?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAA@XZ
454??0?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QAA@XZ
455??0?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA@XZ
456??0?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAA@XZ
457??0?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAA@XZ
458??0?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAA@XZ
459??0?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA@XZ
460??0?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAA@XZ
461??0?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QAA@AAV?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@_N@Z
462??0?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QAA@AAV?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@_N@Z
463??0?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QAA@AAV?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@_N@Z
464??0?$SafeMap_Iterator@PAXUEmpty@@@@QAA@AAV?$SafeMap@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@_N@Z
465??0?$SafeMap_Iterator@UPluginKey@@K@@QAA@AAV?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@_N@Z
466??0?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@QAA@AAV?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@_N@Z
467??0?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QAA@AAV?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@_N@Z
468??0?$SafeMap_Iterator@VKey@Locale@@K@@QAA@AAV?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@_N@Z
469??0?$SafeMap_Iterator@VStringKeyCI@@K@@QAA@AAV?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@_N@Z
470??0?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@QAA@AAV?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@_N@Z
471??0?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QAA@AAV?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@_N@Z
472??0?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@QAA@AAV?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@_N@Z
473??0?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAA@AAV?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@_N@Z
474??0?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@QAA@AAV?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@_N@Z
475??0?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@QAA@ABV?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@_N@Z
476??0?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@QAA@ABV?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@_N@Z
477??0?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@QAA@ABV?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@_N@Z
478??0?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA@ABV?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@_N@Z
479??0?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@QAA@ABV?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@_N@Z
480??0?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@QAA@ABV?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@_N@Z
481??0?$SafeMap_Lock@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@QAA@ABV?$SafeMap@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@_N@Z
482??0?$SafeMap_Lock@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@QAA@ABV?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@_N@Z
483??0?$SafeMap_Lock@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAA@ABV?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@_N@Z
484??0?$SafeMap_Lock@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAA@ABV?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@_N@Z
485??0?$SafeMap_Lock@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAA@ABV?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@_N@Z
486??0?$SafeMap_Lock@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QAA@ABV?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@_N@Z
487??0?$SafeMap_Lock@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA@ABV?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@_N@Z
488??0?$SafeMap_Lock@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@QAA@ABV?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@_N@Z
489??0?$SafeMap_Lock@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAA@ABV?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@_N@Z
490??0?$SafeMap_Lock@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAA@ABV?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@_N@Z
491??0?$SafeMap_Lock@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAA@ABV?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@_N@Z
492??0?$SafeMap_Lock@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA@ABV?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@_N@Z
493??0?$SafeMap_Lock@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAA@ABV?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@_N@Z
494??0?$SafeSet@PAVCCertMapping@@@@QAA@XZ
495??0?$SafeSet@PAVCListenerOperation@@@@QAA@XZ
496??0?$SafeSet@PAVCShellUriSettings@@@@QAA@XZ
497??0?$SafeSet@PAX@@QAA@XZ
498??0?$SafeSet_Iterator@PAVCCertMapping@@@@QAA@AAV?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@_N@Z
499??0?$SafeSet_Iterator@PAVCCertMapping@@@@QAA@AAV?$SafeSet@PAVCCertMapping@@@@@Z
500??0?$SafeSet_Iterator@PAVCListenerOperation@@@@QAA@AAV?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@_N@Z
501??0?$SafeSet_Iterator@PAVCListenerOperation@@@@QAA@AAV?$SafeSet@PAVCListenerOperation@@@@@Z
502??0?$SafeSet_Iterator@PAVCShellUriSettings@@@@QAA@AAV?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@_N@Z
503??0?$SafeSet_Iterator@PAX@@QAA@AAV?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@_N@Z
504??0?$SimpleQueue@T_LARGE_INTEGER@@@@QAA@XZ
505??0AutoBstr@@QAA@PAG@Z
506??0AutoBstr@@QAA@XZ
507??0AutoBstrNoAlloc@@QAA@PAG@Z
508??0AutoBstrNoAlloc@@QAA@XZ
509??0AutoCertContext@@QAA@PBU_CERT_CONTEXT@@@Z
510??0AutoCertContext@@QAA@XZ
511??0AutoChainContext@@QAA@PBU_CERT_CHAIN_CONTEXT@@@Z
512??0AutoChainContext@@QAA@XZ
513??0AutoCoTaskMemFree@@QAA@PAX@Z
514??0AutoCoTaskMemFree@@QAA@XZ
515??0AutoEnvironmentBlock@@QAA@PAX@Z
516??0AutoEnvironmentBlock@@QAA@XZ
517??0AutoFwXmlCloseParser@@QAA@PAX@Z
518??0AutoFwXmlCloseParser@@QAA@XZ
519??0AutoHandle@@QAA@PAX@Z
520??0AutoHandle@@QAA@XZ
521??0AutoImpersonateUser@@QAA@PAX@Z
522??0AutoImpersonateUser@@QAA@XZ
523??0AutoLibrary@@QAA@PAUHINSTANCE__@@@Z
524??0AutoLibrary@@QAA@XZ
525??0AutoLocalFree@@QAA@PAX@Z
526??0AutoLocalFree@@QAA@XZ
527??0AutoMIClass@@QAA@PAU_MI_Class@@@Z
528??0AutoMIClass@@QAA@XZ
529??0AutoMIInstance@@QAA@PAU_MI_Instance@@@Z
530??0AutoMIInstance@@QAA@XZ
531??0AutoObject@@QAA@PAUWSMAN_OBJECT@@@Z
532??0AutoObject@@QAA@XZ
533??0AutoRegKey@@QAA@PAUHKEY__@@@Z
534??0AutoRegKey@@QAA@XZ
535??0AutoSecurityDescriptor@@QAA@PAX@Z
536??0AutoSecurityDescriptor@@QAA@XZ
537??0AutoWaitHandle@@QAA@PAX@Z
538??0AutoWaitHandle@@QAA@XZ
539??0BufferFormatter@@QAA@PAEK@Z
540??0BufferFormatter@@QAA@XZ
541??0CBaseConfigCache@@IAA@W4ConfigLocation@CConfigChangeSource@@PAVFastLock@@PAVCConfigCacheMap@0@@Z
542??0CClientConfigCache@@AAA@XZ
543??0CConfigManager@@AAA@XZ
544??0CErrorContext@@QAA@_N@Z
545??0CRequestContext@@QAA@PBG@Z
546??0CRequestContext@@QAA@XZ
547??0CResourceAlias@@QAA@PBG@Z
548??0CServiceConfigCache@@AAA@XZ
549??0CServiceWatcher@CServiceConfigCache@@AAA@PAV1@PAVIServiceConfigObserver@@@Z
550??0CWSManCriticalSection@@QAA@XZ
551??0CWSManCriticalSectionWithConditionVar@@QAA@XZ
552??0CWSManEPR@@QAA@H@Z
553??0CWSManGroupPolicyManager@@AAA@XZ
554??0CWSManResource@@QAA@H@Z
555??0CWSManResourceNoResourceUri@@QAA@H@Z
556??0CWSManSecurityUI@@QAA@XZ
557??0CWinRSPluginConfigCache@@AAA@XZ
558??0ChildLifeTimeManager@@QAA@XZ
559??0CircularBufferFormatter@@QAA@XZ
560??0ConfigRegistry@@IAA@XZ
561??0EtwCorrelationHelper@@QAA@ABV0@@Z
562??0EventHandler@WSMan@@QAA@XZ
563??0ExtendedSemantic@@QAA@K@Z
564??0FastLock@@QAA@XZ
565??0Fragment@PacketParser@@QAA@XZ
566??0IConfigChangeObserver@@QAA@ABV0@@Z
567??0IConfigChangeObserver@@QAA@XZ
568??0ILifeTimeMgmt@@QAA@ABV0@@Z
569??0ILifeTimeMgmt@@QAA@XZ
570??0IRequestContext@@IAA@XZ
571??0IWSManGroupPolicyObserver@@QAA@ABV0@@Z
572??0IWSManGroupPolicyObserver@@QAA@XZ
573??0IWSManGroupPolicyPublisher@@QAA@ABV0@@Z
574??0IWSManGroupPolicyPublisher@@QAA@XZ
575??0Locale@@QAA@ABV0@@Z
576??0Locale@@QAA@PAVIRequestContext@@@Z
577??0Locale@@QAA@XZ
578??0MessageId@PacketParser@@QAA@XZ
579??0NotUnderstandSoapHeader@PacketParser@@QAA@XZ
580??0OnHTTPInitialize@@QAA@XZ
581??0OperationId@PacketParser@@QAA@XZ
582??0OwnLock@@QAA@AAVFastLock@@@Z
583??0PacketFormatter@@QAA@XZ
584??0PacketParser@@QAA@XZ
585??0RBUFFER@@QAA@I@Z
586??0RBUFFER@@QAA@PAEI@Z
587??0ReferenceParameters@PacketParser@@QAA@XZ
588??0SBUFFER@@QAA@XZ
589??0SessionId@PacketParser@@QAA@XZ
590??0ShareLock@@QAA@AAVFastLock@@@Z
591??0SoapSemanticConverter@@QAA@XZ
592??0TSTRBUFFER@@QAA@XZ
593??0UserAuthzRecord@@QAA@ABV0@@Z
594??0UserAuthzRecord@@QAA@XZ
595??0UserRecord@@QAA@XZ
596??0XmlReader@@QAA@XZ
597??1?$AutoCleanup@V?$AutoDelete@D@@PAD@@QAA@XZ
598??1?$AutoCleanup@V?$AutoDelete@G@@PAG@@QAA@XZ
599??1?$AutoCleanup@V?$AutoDelete@UIPRange@CWSManIPFilter@@@@PAUIPRange@CWSManIPFilter@@@@QAA@XZ
600??1?$AutoCleanup@V?$AutoDelete@U_SID@@@@PAU_SID@@@@QAA@XZ
601??1?$AutoCleanup@V?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@PAU_WSMAN_STREAM_ID_SET@@@@QAA@XZ
602??1?$AutoCleanup@V?$AutoDelete@V?$Handle@VISubscription@@@@@@PAV?$Handle@VISubscription@@@@@@QAA@XZ
603??1?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@QAA@XZ
604??1?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@QAA@XZ
605??1?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@QAA@XZ
606??1?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@QAA@XZ
607??1?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@PAV?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@QAA@XZ
608??1?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA@XZ
609??1?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA@XZ
610??1?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@QAA@XZ
611??1?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@QAA@XZ
612??1?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA@XZ
613??1?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCollector@@@@@@PAV?$SafeSet_Iterator@PAVCollector@@@@@@QAA@XZ
614??1?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVHostOperation@@@@@@PAV?$SafeSet_Iterator@PAVHostOperation@@@@@@QAA@XZ
615??1?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@PAV?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@QAA@XZ
616??1?$AutoCleanup@V?$AutoDelete@V?$SimpleStack@VCListenerOperation@@@@@@PAV?$SimpleStack@VCListenerOperation@@@@@@QAA@XZ
617??1?$AutoCleanup@V?$AutoDelete@V?$SimpleStack@VShellHostEntry@@@@@@PAV?$SimpleStack@VShellHostEntry@@@@@@QAA@XZ
618??1?$AutoCleanup@V?$AutoDelete@V?$queue@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$deque@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$transport_allocator@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@@@@std@@@std@@@@PAV?$queue@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$deque@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$transport_allocator@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@@@@std@@@std@@@@QAA@XZ
619??1?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAA@XZ
620??1?$AutoCleanup@V?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@QAA@XZ
621??1?$AutoCleanup@V?$AutoDelete@V?$vector@PAVCWSManRequest@@V?$transport_allocator@PAVCWSManRequest@@@@@std@@@@PAV?$vector@PAVCWSManRequest@@V?$transport_allocator@PAVCWSManRequest@@@@@std@@@@QAA@XZ
622??1?$AutoCleanup@V?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QAA@XZ
623??1?$AutoCleanup@V?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@QAA@XZ
624??1?$AutoCleanup@V?$AutoDelete@V?$vector@PAVWSManHttpSenderConnection@@V?$transport_allocator@PAVWSManHttpSenderConnection@@@@@std@@@@PAV?$vector@PAVWSManHttpSenderConnection@@V?$transport_allocator@PAVWSManHttpSenderConnection@@@@@std@@@@QAA@XZ
625??1?$AutoCleanup@V?$AutoDelete@VAdminSid@CSecurity@@@@PAVAdminSid@CSecurity@@@@QAA@XZ
626??1?$AutoCleanup@V?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@@QAA@XZ
627??1?$AutoCleanup@V?$AutoDelete@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAA@XZ
628??1?$AutoCleanup@V?$AutoDelete@VCCertMapping@@@@PAVCCertMapping@@@@QAA@XZ
629??1?$AutoCleanup@V?$AutoDelete@VCConfigChangeSource@@@@PAVCConfigChangeSource@@@@QAA@XZ
630??1?$AutoCleanup@V?$AutoDelete@VCListenerSettings@@@@PAVCListenerSettings@@@@QAA@XZ
631??1?$AutoCleanup@V?$AutoDelete@VCObserverConfigChangeErrors@@@@PAVCObserverConfigChangeErrors@@@@QAA@XZ
632??1?$AutoCleanup@V?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@@QAA@XZ
633??1?$AutoCleanup@V?$AutoDelete@VCShellUriSettings@@@@PAVCShellUriSettings@@@@QAA@XZ
634??1?$AutoCleanup@V?$AutoDelete@VCWSManEPR@@@@PAVCWSManEPR@@@@QAA@XZ
635??1?$AutoCleanup@V?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@@QAA@XZ
636??1?$AutoCleanup@V?$AutoDelete@VCertHash@@@@PAVCertHash@@@@QAA@XZ
637??1?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@QAA@XZ
638??1?$AutoCleanup@V?$AutoDelete@VCredUIDllLoader@@@@PAVCredUIDllLoader@@@@QAA@XZ
639??1?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAA@XZ
640??1?$AutoCleanup@V?$AutoDelete@VEventHandler@WSMan@@@@PAVEventHandler@WSMan@@@@QAA@XZ
641??1?$AutoCleanup@V?$AutoDelete@VExpiredOperationIdRecord@@@@PAVExpiredOperationIdRecord@@@@QAA@XZ
642??1?$AutoCleanup@V?$AutoDelete@VGPApiManager@@@@PAVGPApiManager@@@@QAA@XZ
643??1?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAA@XZ
644??1?$AutoCleanup@V?$AutoDelete@VIChannelObserverFactory@@@@PAVIChannelObserverFactory@@@@QAA@XZ
645??1?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QAA@XZ
646??1?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QAA@XZ
647??1?$AutoCleanup@V?$AutoDelete@VInteractiveSid@CSecurity@@@@PAVInteractiveSid@CSecurity@@@@QAA@XZ
648??1?$AutoCleanup@V?$AutoDelete@VIpHlpApiDllLoader@@@@PAVIpHlpApiDllLoader@@@@QAA@XZ
649??1?$AutoCleanup@V?$AutoDelete@VMachineName@@@@PAVMachineName@@@@QAA@XZ
650??1?$AutoCleanup@V?$AutoDelete@VMasterReceiveData@CListenerReceive@@@@PAVMasterReceiveData@CListenerReceive@@@@QAA@XZ
651??1?$AutoCleanup@V?$AutoDelete@VNetworkServiceSid@CSecurity@@@@PAVNetworkServiceSid@CSecurity@@@@QAA@XZ
652??1?$AutoCleanup@V?$AutoDelete@VNtDsApiDllLoader@@@@PAVNtDsApiDllLoader@@@@QAA@XZ
653??1?$AutoCleanup@V?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAA@XZ
654??1?$AutoCleanup@V?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@@QAA@XZ
655??1?$AutoCleanup@V?$AutoDelete@VPacketParser@@@@PAVPacketParser@@@@QAA@XZ
656??1?$AutoCleanup@V?$AutoDelete@VResources@Locale@@@@PAVResources@Locale@@@@QAA@XZ
657??1?$AutoCleanup@V?$AutoDelete@VRunAsConfiguration@@@@PAVRunAsConfiguration@@@@QAA@XZ
658??1?$AutoCleanup@V?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@@QAA@XZ
659??1?$AutoCleanup@V?$AutoDelete@VSendPacketArgs@RobustConnectionBuffer@@@@PAVSendPacketArgs@RobustConnectionBuffer@@@@QAA@XZ
660??1?$AutoCleanup@V?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@@QAA@XZ
661??1?$AutoCleanup@V?$AutoDelete@VShell32DllLoader@@@@PAVShell32DllLoader@@@@QAA@XZ
662??1?$AutoCleanup@V?$AutoDelete@VShlWApiDllLoader@@@@PAVShlWApiDllLoader@@@@QAA@XZ
663??1?$AutoCleanup@V?$AutoDelete@VSubscriptionEnumerator@@@@PAVSubscriptionEnumerator@@@@QAA@XZ
664??1?$AutoCleanup@V?$AutoDelete@VSubscriptionManager@@@@PAVSubscriptionManager@@@@QAA@XZ
665??1?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QAA@XZ
666??1?$AutoCleanup@V?$AutoDelete@VUniqueStringOverflow@@@@PAVUniqueStringOverflow@@@@QAA@XZ
667??1?$AutoCleanup@V?$AutoDelete@VUser32DllLoader@@@@PAVUser32DllLoader@@@@QAA@XZ
668??1?$AutoCleanup@V?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@PAVWSMANCONFIGTABLE_IDENTITY@@@@QAA@XZ
669??1?$AutoCleanup@V?$AutoDelete@VWSManMemCryptManager@@@@PAVWSManMemCryptManager@@@@QAA@XZ
670??1?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QAA@XZ
671??1?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@QAA@XZ
672??1?$AutoCleanup@V?$AutoDeleteVector@$$CBG@@PBG@@QAA@XZ
673??1?$AutoCleanup@V?$AutoDeleteVector@D@@PAD@@QAA@XZ
674??1?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QAA@XZ
675??1?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QAA@XZ
676??1?$AutoCleanup@V?$AutoDeleteVector@H@@PAH@@QAA@XZ
677??1?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QAA@XZ
678??1?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QAA@XZ
679??1?$AutoCleanup@V?$AutoDeleteVector@U_CONFIG_UPDATE@@@@PAU_CONFIG_UPDATE@@@@QAA@XZ
680??1?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAA@XZ
681??1?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QAA@XZ
682??1?$AutoCleanup@V?$AutoDeleteVector@U_WSMAN_OPTION@@@@PAU_WSMAN_OPTION@@@@QAA@XZ
683??1?$AutoCleanup@V?$AutoDeleteVector@X@@PAX@@QAA@XZ
684??1?$AutoCleanup@V?$AutoFree@E@@PAE@@QAA@XZ
685??1?$AutoCleanup@V?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@@QAA@XZ
686??1?$AutoCleanup@V?$AutoRelease@UIAppHostChildElementCollection@@@@PAUIAppHostChildElementCollection@@@@QAA@XZ
687??1?$AutoCleanup@V?$AutoRelease@UIAppHostElement@@@@PAUIAppHostElement@@@@QAA@XZ
688??1?$AutoCleanup@V?$AutoRelease@UIAppHostElementCollection@@@@PAUIAppHostElementCollection@@@@QAA@XZ
689??1?$AutoCleanup@V?$AutoRelease@UIAppHostProperty@@@@PAUIAppHostProperty@@@@QAA@XZ
690??1?$AutoCleanup@V?$AutoRelease@UIAppHostPropertyCollection@@@@PAUIAppHostPropertyCollection@@@@QAA@XZ
691??1?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QAA@XZ
692??1?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QAA@XZ
693??1?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QAA@XZ
694??1?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QAA@XZ
695??1?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QAA@XZ
696??1?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QAA@XZ
697??1?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QAA@XZ
698??1?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QAA@XZ
699??1?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QAA@XZ
700??1?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QAA@XZ
701??1?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QAA@XZ
702??1?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QAA@XZ
703??1?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QAA@XZ
704??1?$AutoCleanup@V?$AutoRelease@VApplication@Client@WSMan@@@@PAVApplication@Client@WSMan@@@@QAA@XZ
705??1?$AutoCleanup@V?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAA@XZ
706??1?$AutoCleanup@V?$AutoRelease@VCClientConfigCache@@@@PAVCClientConfigCache@@@@QAA@XZ
707??1?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@QAA@XZ
708??1?$AutoCleanup@V?$AutoRelease@VCCommonConfigSettings@@@@PAVCCommonConfigSettings@@@@QAA@XZ
709??1?$AutoCleanup@V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@PAVCConfigCacheMap@CBaseConfigCache@@@@QAA@XZ
710??1?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@QAA@XZ
711??1?$AutoCleanup@V?$AutoRelease@VCListenerCommand@@@@PAVCListenerCommand@@@@QAA@XZ
712??1?$AutoCleanup@V?$AutoRelease@VCListenerMasterOperation@@@@PAVCListenerMasterOperation@@@@QAA@XZ
713??1?$AutoCleanup@V?$AutoRelease@VCListenerReceive@@@@PAVCListenerReceive@@@@QAA@XZ
714??1?$AutoCleanup@V?$AutoRelease@VCListenerShell@@@@PAVCListenerShell@@@@QAA@XZ
715??1?$AutoCleanup@V?$AutoRelease@VCRemoteOperation@@@@PAVCRemoteOperation@@@@QAA@XZ
716??1?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@QAA@XZ
717??1?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@QAA@XZ
718??1?$AutoCleanup@V?$AutoRelease@VCServiceCommonConfigSettings@@@@PAVCServiceCommonConfigSettings@@@@QAA@XZ
719??1?$AutoCleanup@V?$AutoRelease@VCServiceConfigCache@@@@PAVCServiceConfigCache@@@@QAA@XZ
720??1?$AutoCleanup@V?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@@QAA@XZ
721??1?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QAA@XZ
722??1?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyCache@@@@PAVCWSManGroupPolicyCache@@@@QAA@XZ
723??1?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@@QAA@XZ
724??1?$AutoCleanup@V?$AutoRelease@VCWSManObject@@@@PAVCWSManObject@@@@QAA@XZ
725??1?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@QAA@XZ
726??1?$AutoCleanup@V?$AutoRelease@VCWSManSession@@@@PAVCWSManSession@@@@QAA@XZ
727??1?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QAA@XZ
728??1?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@@QAA@XZ
729??1?$AutoCleanup@V?$AutoRelease@VCommand@Client@WSMan@@@@PAVCommand@Client@WSMan@@@@QAA@XZ
730??1?$AutoCleanup@V?$AutoRelease@VConfigNotification@@@@PAVConfigNotification@@@@QAA@XZ
731??1?$AutoCleanup@V?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@PAVConnectShellOperation@Client@WSMan@@@@QAA@XZ
732??1?$AutoCleanup@V?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@PAVCreateShellOperation@Client@WSMan@@@@QAA@XZ
733??1?$AutoCleanup@V?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@PAVDeleteShellOperation@Client@WSMan@@@@QAA@XZ
734??1?$AutoCleanup@V?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@PAVDisconnectOperation@Client@WSMan@@@@QAA@XZ
735??1?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAA@XZ
736??1?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAA@XZ
737??1?$AutoCleanup@V?$AutoRelease@VHostMappingTable@@@@PAVHostMappingTable@@@@QAA@XZ
738??1?$AutoCleanup@V?$AutoRelease@VIISConfigSettings@@@@PAVIISConfigSettings@@@@QAA@XZ
739??1?$AutoCleanup@V?$AutoRelease@VIPCSoapProcessor@@@@PAVIPCSoapProcessor@@@@QAA@XZ
740??1?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QAA@XZ
741??1?$AutoCleanup@V?$AutoRelease@VISubscription@@@@PAVISubscription@@@@QAA@XZ
742??1?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@QAA@XZ
743??1?$AutoCleanup@V?$AutoRelease@VProxyManager@Client@WSMan@@@@PAVProxyManager@Client@WSMan@@@@QAA@XZ
744??1?$AutoCleanup@V?$AutoRelease@VProxySelection@Client@WSMan@@@@PAVProxySelection@Client@WSMan@@@@QAA@XZ
745??1?$AutoCleanup@V?$AutoRelease@VPushSubscribeOperation@@@@PAVPushSubscribeOperation@@@@QAA@XZ
746??1?$AutoCleanup@V?$AutoRelease@VPushSubscription@@@@PAVPushSubscription@@@@QAA@XZ
747??1?$AutoCleanup@V?$AutoRelease@VReceiveOperation@Client@WSMan@@@@PAVReceiveOperation@Client@WSMan@@@@QAA@XZ
748??1?$AutoCleanup@V?$AutoRelease@VReconnectOperation@Client@WSMan@@@@PAVReconnectOperation@Client@WSMan@@@@QAA@XZ
749??1?$AutoCleanup@V?$AutoRelease@VSendOperation@Client@WSMan@@@@PAVSendOperation@Client@WSMan@@@@QAA@XZ
750??1?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAA@XZ
751??1?$AutoCleanup@V?$AutoRelease@VShellInfo@@@@PAVShellInfo@@@@QAA@XZ
752??1?$AutoCleanup@V?$AutoRelease@VSignalOperation@Client@WSMan@@@@PAVSignalOperation@Client@WSMan@@@@QAA@XZ
753??1?$AutoCleanup@V?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@@QAA@XZ
754??1?$AutoCleanup@V?$AutoRelease@VWSManHttpListener@@@@PAVWSManHttpListener@@@@QAA@XZ
755??1?$AutoCleanup@V?$AutoReleaseEx@VHostMappingTableEntry@@@@PAVHostMappingTableEntry@@@@QAA@XZ
756??1?$AutoCleanup@V?$AutoReleaseEx@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAA@XZ
757??1?$AutoCleanup@VAutoBstr@@PAG@@QAA@XZ
758??1?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QAA@XZ
759??1?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@QAA@XZ
760??1?$AutoCleanup@VAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@@QAA@XZ
761??1?$AutoCleanup@VAutoCoTaskMemFree@@PAX@@QAA@XZ
762??1?$AutoCleanup@VAutoEnvironmentBlock@@PAX@@QAA@XZ
763??1?$AutoCleanup@VAutoFwXmlCloseParser@@PAX@@QAA@XZ
764??1?$AutoCleanup@VAutoHandle@@PAX@@QAA@XZ
765??1?$AutoCleanup@VAutoImpersonateUser@@PAX@@QAA@XZ
766??1?$AutoCleanup@VAutoLibrary@@PAUHINSTANCE__@@@@QAA@XZ
767??1?$AutoCleanup@VAutoLocalFree@@PAX@@QAA@XZ
768??1?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QAA@XZ
769??1?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@QAA@XZ
770??1?$AutoCleanup@VAutoObject@@PAUWSMAN_OBJECT@@@@QAA@XZ
771??1?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@QAA@XZ
772??1?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@QAA@XZ
773??1?$AutoCleanup@VAutoWaitHandle@@PAX@@QAA@XZ
774??1?$AutoDelete@D@@QAA@XZ
775??1?$AutoDelete@G@@QAA@XZ
776??1?$AutoDelete@UIPRange@CWSManIPFilter@@@@QAA@XZ
777??1?$AutoDelete@U_SID@@@@QAA@XZ
778??1?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@QAA@XZ
779??1?$AutoDelete@V?$Handle@VISubscription@@@@@@QAA@XZ
780??1?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@QAA@XZ
781??1?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@QAA@XZ
782??1?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@QAA@XZ
783??1?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@QAA@XZ
784??1?$AutoDelete@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@QAA@XZ
785??1?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA@XZ
786??1?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA@XZ
787??1?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@QAA@XZ
788??1?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@QAA@XZ
789??1?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA@XZ
790??1?$AutoDelete@V?$SafeSet_Iterator@PAVCollector@@@@@@QAA@XZ
791??1?$AutoDelete@V?$SafeSet_Iterator@PAVHostOperation@@@@@@QAA@XZ
792??1?$AutoDelete@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@QAA@XZ
793??1?$AutoDelete@V?$SimpleStack@VCListenerOperation@@@@@@QAA@XZ
794??1?$AutoDelete@V?$SimpleStack@VShellHostEntry@@@@@@QAA@XZ
795??1?$AutoDelete@V?$queue@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$deque@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$transport_allocator@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@@@@std@@@std@@@@QAA@XZ
796??1?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAA@XZ
797??1?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@QAA@XZ
798??1?$AutoDelete@V?$vector@PAVCWSManRequest@@V?$transport_allocator@PAVCWSManRequest@@@@@std@@@@QAA@XZ
799??1?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QAA@XZ
800??1?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@QAA@XZ
801??1?$AutoDelete@V?$vector@PAVWSManHttpSenderConnection@@V?$transport_allocator@PAVWSManHttpSenderConnection@@@@@std@@@@QAA@XZ
802??1?$AutoDelete@VAdminSid@CSecurity@@@@QAA@XZ
803??1?$AutoDelete@VBlockedRecord@@@@QAA@XZ
804??1?$AutoDelete@VCBaseConfigCache@@@@QAA@XZ
805??1?$AutoDelete@VCCertMapping@@@@QAA@XZ
806??1?$AutoDelete@VCConfigChangeSource@@@@QAA@XZ
807??1?$AutoDelete@VCListenerSettings@@@@QAA@XZ
808??1?$AutoDelete@VCObserverConfigChangeErrors@@@@QAA@XZ
809??1?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@QAA@XZ
810??1?$AutoDelete@VCShellUriSettings@@@@QAA@XZ
811??1?$AutoDelete@VCWSManEPR@@@@QAA@XZ
812??1?$AutoDelete@VCWSManResource@@@@QAA@XZ
813??1?$AutoDelete@VCertHash@@@@QAA@XZ
814??1?$AutoDelete@VConfigUpdate@@@@QAA@XZ
815??1?$AutoDelete@VCredUIDllLoader@@@@QAA@XZ
816??1?$AutoDelete@VEnumSinkEx@@@@QAA@XZ
817??1?$AutoDelete@VEventHandler@WSMan@@@@QAA@XZ
818??1?$AutoDelete@VExpiredOperationIdRecord@@@@QAA@XZ
819??1?$AutoDelete@VGPApiManager@@@@QAA@XZ
820??1?$AutoDelete@VGeneralSinkEx@@@@QAA@XZ
821??1?$AutoDelete@VIChannelObserverFactory@@@@QAA@XZ
822??1?$AutoDelete@VIQueryDASHSMASHInterface@@@@QAA@XZ
823??1?$AutoDelete@VISpecification@@@@QAA@XZ
824??1?$AutoDelete@VInteractiveSid@CSecurity@@@@QAA@XZ
825??1?$AutoDelete@VIpHlpApiDllLoader@@@@QAA@XZ
826??1?$AutoDelete@VMachineName@@@@QAA@XZ
827??1?$AutoDelete@VMasterReceiveData@CListenerReceive@@@@QAA@XZ
828??1?$AutoDelete@VNetworkServiceSid@CSecurity@@@@QAA@XZ
829??1?$AutoDelete@VNtDsApiDllLoader@@@@QAA@XZ
830??1?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@QAA@XZ
831??1?$AutoDelete@VPacketCreator@@@@QAA@XZ
832??1?$AutoDelete@VPacketParser@@@@QAA@XZ
833??1?$AutoDelete@VResources@Locale@@@@QAA@XZ
834??1?$AutoDelete@VRunAsConfiguration@@@@QAA@XZ
835??1?$AutoDelete@VSecurityEntry@Catalog@@@@QAA@XZ
836??1?$AutoDelete@VSendPacketArgs@RobustConnectionBuffer@@@@QAA@XZ
837??1?$AutoDelete@VServiceSoapProcessor@@@@QAA@XZ
838??1?$AutoDelete@VShell32DllLoader@@@@QAA@XZ
839??1?$AutoDelete@VShlWApiDllLoader@@@@QAA@XZ
840??1?$AutoDelete@VSubscriptionEnumerator@@@@QAA@XZ
841??1?$AutoDelete@VSubscriptionManager@@@@QAA@XZ
842??1?$AutoDelete@VTSTRBUFFER@@@@QAA@XZ
843??1?$AutoDelete@VUniqueStringOverflow@@@@QAA@XZ
844??1?$AutoDelete@VUser32DllLoader@@@@QAA@XZ
845??1?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@QAA@XZ
846??1?$AutoDelete@VWSManMemCryptManager@@@@QAA@XZ
847??1?$AutoDelete@VWmiEnumContext@@@@QAA@XZ
848??1?$AutoDelete@VXmlReader@@@@QAA@XZ
849??1?$AutoDeleteVector@$$CBG@@QAA@XZ
850??1?$AutoDeleteVector@D@@QAA@XZ
851??1?$AutoDeleteVector@E@@QAA@XZ
852??1?$AutoDeleteVector@G@@QAA@XZ
853??1?$AutoDeleteVector@H@@QAA@XZ
854??1?$AutoDeleteVector@PAG@@QAA@XZ
855??1?$AutoDeleteVector@PBG@@QAA@XZ
856??1?$AutoDeleteVector@U_CONFIG_UPDATE@@@@QAA@XZ
857??1?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAA@XZ
858??1?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@QAA@XZ
859??1?$AutoDeleteVector@U_WSMAN_OPTION@@@@QAA@XZ
860??1?$AutoDeleteVector@X@@QAA@XZ
861??1?$AutoFree@E@@QAA@XZ
862??1?$AutoLocklessItemRecycle@VPacket@@@@QAA@XZ
863??1?$AutoRelease@UIAppHostChildElementCollection@@@@QAA@XZ
864??1?$AutoRelease@UIAppHostElement@@@@QAA@XZ
865??1?$AutoRelease@UIAppHostElementCollection@@@@QAA@XZ
866??1?$AutoRelease@UIAppHostProperty@@@@QAA@XZ
867??1?$AutoRelease@UIAppHostPropertyCollection@@@@QAA@XZ
868??1?$AutoRelease@UIClientSecurity@@@@QAA@XZ
869??1?$AutoRelease@UIEnumWbemClassObject@@@@QAA@XZ
870??1?$AutoRelease@UIErrorInfo@@@@QAA@XZ
871??1?$AutoRelease@UIUnknown@@@@QAA@XZ
872??1?$AutoRelease@UIWbemClassObject@@@@QAA@XZ
873??1?$AutoRelease@UIWbemContext@@@@QAA@XZ
874??1?$AutoRelease@UIWbemLocator@@@@QAA@XZ
875??1?$AutoRelease@UIWbemObjectTextSrc@@@@QAA@XZ
876??1?$AutoRelease@UIWbemPath@@@@QAA@XZ
877??1?$AutoRelease@UIWbemPathKeyList@@@@QAA@XZ
878??1?$AutoRelease@UIWbemQualifierSet@@@@QAA@XZ
879??1?$AutoRelease@UIWbemQuery@@@@QAA@XZ
880??1?$AutoRelease@UIWbemServices@@@@QAA@XZ
881??1?$AutoRelease@VApplication@Client@WSMan@@@@QAA@XZ
882??1?$AutoRelease@VCBaseConfigCache@@@@QAA@XZ
883??1?$AutoRelease@VCClientConfigCache@@@@QAA@XZ
884??1?$AutoRelease@VCClientConfigSettings@@@@QAA@XZ
885??1?$AutoRelease@VCCommonConfigSettings@@@@QAA@XZ
886??1?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@QAA@XZ
887??1?$AutoRelease@VCConfigManager@@@@QAA@XZ
888??1?$AutoRelease@VCListenerCommand@@@@QAA@XZ
889??1?$AutoRelease@VCListenerMasterOperation@@@@QAA@XZ
890??1?$AutoRelease@VCListenerReceive@@@@QAA@XZ
891??1?$AutoRelease@VCListenerShell@@@@QAA@XZ
892??1?$AutoRelease@VCRemoteOperation@@@@QAA@XZ
893??1?$AutoRelease@VCRemoteSession@@@@QAA@XZ
894??1?$AutoRelease@VCRequestContext@@@@QAA@XZ
895??1?$AutoRelease@VCServiceCommonConfigSettings@@@@QAA@XZ
896??1?$AutoRelease@VCServiceConfigCache@@@@QAA@XZ
897??1?$AutoRelease@VCServiceConfigSettings@@@@QAA@XZ
898??1?$AutoRelease@VCWSManEPR@@@@QAA@XZ
899??1?$AutoRelease@VCWSManGroupPolicyCache@@@@QAA@XZ
900??1?$AutoRelease@VCWSManGroupPolicyManager@@@@QAA@XZ
901??1?$AutoRelease@VCWSManObject@@@@QAA@XZ
902??1?$AutoRelease@VCWSManResource@@@@QAA@XZ
903??1?$AutoRelease@VCWSManSession@@@@QAA@XZ
904??1?$AutoRelease@VCWinRSPluginConfigCache@@@@QAA@XZ
905??1?$AutoRelease@VCWinRSPluginConfigSettings@@@@QAA@XZ
906??1?$AutoRelease@VCommand@Client@WSMan@@@@QAA@XZ
907??1?$AutoRelease@VConfigNotification@@@@QAA@XZ
908??1?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@QAA@XZ
909??1?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@QAA@XZ
910??1?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@QAA@XZ
911??1?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@QAA@XZ
912??1?$AutoRelease@VEnumSinkEx@@@@QAA@XZ
913??1?$AutoRelease@VGeneralSinkEx@@@@QAA@XZ
914??1?$AutoRelease@VHostMappingTable@@@@QAA@XZ
915??1?$AutoRelease@VIISConfigSettings@@@@QAA@XZ
916??1?$AutoRelease@VIPCSoapProcessor@@@@QAA@XZ
917??1?$AutoRelease@VIRequestContext@@@@QAA@XZ
918??1?$AutoRelease@VISubscription@@@@QAA@XZ
919??1?$AutoRelease@VInboundRequestDetails@@@@QAA@XZ
920??1?$AutoRelease@VProxyManager@Client@WSMan@@@@QAA@XZ
921??1?$AutoRelease@VProxySelection@Client@WSMan@@@@QAA@XZ
922??1?$AutoRelease@VPushSubscribeOperation@@@@QAA@XZ
923??1?$AutoRelease@VPushSubscription@@@@QAA@XZ
924??1?$AutoRelease@VReceiveOperation@Client@WSMan@@@@QAA@XZ
925??1?$AutoRelease@VReconnectOperation@Client@WSMan@@@@QAA@XZ
926??1?$AutoRelease@VSendOperation@Client@WSMan@@@@QAA@XZ
927??1?$AutoRelease@VShell@Client@WSMan@@@@QAA@XZ
928??1?$AutoRelease@VShellInfo@@@@QAA@XZ
929??1?$AutoRelease@VSignalOperation@Client@WSMan@@@@QAA@XZ
930??1?$AutoRelease@VUserRecord@@@@QAA@XZ
931??1?$AutoRelease@VWSManHttpListener@@@@QAA@XZ
932??1?$AutoReleaseEx@VHostMappingTableEntry@@@@QAA@XZ
933??1?$AutoReleaseEx@VShell@Client@WSMan@@@@QAA@XZ
934??1?$ILoader@VAdminSid@CSecurity@@@@QAA@XZ
935??1?$ILoader@VCredUIDllLoader@@@@QAA@XZ
936??1?$ILoader@VEventHandler@WSMan@@@@QAA@XZ
937??1?$ILoader@VInteractiveSid@CSecurity@@@@QAA@XZ
938??1?$ILoader@VIpHlpApiDllLoader@@@@QAA@XZ
939??1?$ILoader@VMachineName@@@@QAA@XZ
940??1?$ILoader@VNetworkServiceSid@CSecurity@@@@QAA@XZ
941??1?$ILoader@VNtDsApiDllLoader@@@@QAA@XZ
942??1?$ILoader@VResources@Locale@@@@QAA@XZ
943??1?$ILoader@VShell32DllLoader@@@@QAA@XZ
944??1?$ILoader@VShlWApiDllLoader@@@@QAA@XZ
945??1?$ILoader@VSubscriptionManager@@@@QAA@XZ
946??1?$ILoader@VUser32DllLoader@@@@QAA@XZ
947??1?$ILoader@VWSManMemCryptManager@@@@QAA@XZ
948??1?$Loader@VAdminSid@CSecurity@@$00@@QAA@XZ
949??1?$Loader@VCredUIDllLoader@@$00@@QAA@XZ
950??1?$Loader@VEventHandler@WSMan@@$00@@QAA@XZ
951??1?$Loader@VInteractiveSid@CSecurity@@$00@@QAA@XZ
952??1?$Loader@VIpHlpApiDllLoader@@$00@@QAA@XZ
953??1?$Loader@VMachineName@@$00@@QAA@XZ
954??1?$Loader@VNetworkServiceSid@CSecurity@@$00@@QAA@XZ
955??1?$Loader@VNtDsApiDllLoader@@$00@@QAA@XZ
956??1?$Loader@VResources@Locale@@$0A@@@QAA@XZ
957??1?$Loader@VShell32DllLoader@@$00@@QAA@XZ
958??1?$Loader@VShlWApiDllLoader@@$00@@QAA@XZ
959??1?$Loader@VSubscriptionManager@@$01@@QAA@XZ
960??1?$Loader@VUser32DllLoader@@$00@@QAA@XZ
961??1?$Loader@VWSManMemCryptManager@@$00@@QAA@XZ
962??1?$LoaderSerializer@VAdminSid@CSecurity@@$00@@QAA@XZ
963??1?$LoaderSerializer@VCredUIDllLoader@@$00@@QAA@XZ
964??1?$LoaderSerializer@VEventHandler@WSMan@@$00@@QAA@XZ
965??1?$LoaderSerializer@VInteractiveSid@CSecurity@@$00@@QAA@XZ
966??1?$LoaderSerializer@VIpHlpApiDllLoader@@$00@@QAA@XZ
967??1?$LoaderSerializer@VMachineName@@$00@@QAA@XZ
968??1?$LoaderSerializer@VNetworkServiceSid@CSecurity@@$00@@QAA@XZ
969??1?$LoaderSerializer@VNtDsApiDllLoader@@$00@@QAA@XZ
970??1?$LoaderSerializer@VResources@Locale@@$0A@@@QAA@XZ
971??1?$LoaderSerializer@VShell32DllLoader@@$00@@QAA@XZ
972??1?$LoaderSerializer@VShlWApiDllLoader@@$00@@QAA@XZ
973??1?$LoaderSerializer@VSubscriptionManager@@$01@@QAA@XZ
974??1?$LoaderSerializer@VUser32DllLoader@@$00@@QAA@XZ
975??1?$LoaderSerializer@VWSManMemCryptManager@@$00@@QAA@XZ
976??1?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@QAA@XZ
977??1?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA@XZ
978??1?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@QAA@XZ
979??1?$SafeMap@PAVCollector@@UEmpty@@V?$SafeSet_Iterator@PAVCollector@@@@@@QAA@XZ
980??1?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeSet_Iterator@PAVHostOperation@@@@@@QAA@XZ
981??1?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeSet_Iterator@PAVIOperation@@@@@@QAA@XZ
982??1?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@QAA@XZ
983??1?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVPushSubscription@@@@@@QAA@XZ
984??1?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@QAA@XZ
985??1?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAA@XZ
986??1?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAA@XZ
987??1?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAA@XZ
988??1?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QAA@XZ
989??1?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA@XZ
990??1?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@QAA@XZ
991??1?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAA@XZ
992??1?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAA@XZ
993??1?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAA@XZ
994??1?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA@XZ
995??1?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAA@XZ
996??1?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QAA@XZ
997??1?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@QAA@XZ
998??1?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QAA@XZ
999??1?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@QAA@XZ
1000??1?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@QAA@XZ
1001??1?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@QAA@XZ
1002??1?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QAA@XZ
1003??1?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@QAA@XZ
1004??1?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@QAA@XZ
1005??1?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@QAA@XZ
1006??1?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@QAA@XZ
1007??1?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@QAA@XZ
1008??1?$SafeMap_Iterator@PAXUEmpty@@@@QAA@XZ
1009??1?$SafeMap_Iterator@UPluginKey@@K@@QAA@XZ
1010??1?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@QAA@XZ
1011??1?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QAA@XZ
1012??1?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@QAA@XZ
1013??1?$SafeMap_Iterator@VKey@Locale@@K@@QAA@XZ
1014??1?$SafeMap_Iterator@VStringKeyCI@@K@@QAA@XZ
1015??1?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@QAA@XZ
1016??1?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@QAA@XZ
1017??1?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QAA@XZ
1018??1?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@QAA@XZ
1019??1?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAA@XZ
1020??1?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@QAA@XZ
1021??1?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@QAA@XZ
1022??1?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@QAA@XZ
1023??1?$SafeMap_Lock@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@QAA@XZ
1024??1?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@QAA@XZ
1025??1?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA@XZ
1026??1?$SafeMap_Lock@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@QAA@XZ
1027??1?$SafeMap_Lock@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@QAA@XZ
1028??1?$SafeMap_Lock@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@QAA@XZ
1029??1?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@QAA@XZ
1030??1?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@QAA@XZ
1031??1?$SafeMap_Lock@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@QAA@XZ
1032??1?$SafeMap_Lock@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@QAA@XZ
1033??1?$SafeMap_Lock@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@QAA@XZ
1034??1?$SafeMap_Lock@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@QAA@XZ
1035??1?$SafeMap_Lock@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@QAA@XZ
1036??1?$SafeMap_Lock@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@QAA@XZ
1037??1?$SafeMap_Lock@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@QAA@XZ
1038??1?$SafeMap_Lock@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAA@XZ
1039??1?$SafeMap_Lock@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAA@XZ
1040??1?$SafeMap_Lock@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAA@XZ
1041??1?$SafeMap_Lock@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@QAA@XZ
1042??1?$SafeMap_Lock@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QAA@XZ
1043??1?$SafeMap_Lock@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA@XZ
1044??1?$SafeMap_Lock@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@QAA@XZ
1045??1?$SafeMap_Lock@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@QAA@XZ
1046??1?$SafeMap_Lock@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAA@XZ
1047??1?$SafeMap_Lock@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAA@XZ
1048??1?$SafeMap_Lock@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAA@XZ
1049??1?$SafeMap_Lock@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA@XZ
1050??1?$SafeMap_Lock@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAA@XZ
1051??1?$SafeSet@PAVCCertMapping@@@@QAA@XZ
1052??1?$SafeSet@PAVCListenerOperation@@@@QAA@XZ
1053??1?$SafeSet@PAVCShellUriSettings@@@@QAA@XZ
1054??1?$SafeSet@PAVCollector@@@@QAA@XZ
1055??1?$SafeSet@PAVHostOperation@@@@QAA@XZ
1056??1?$SafeSet@PAVIOperation@@@@QAA@XZ
1057??1?$SafeSet@PAVListenerSourceSubscription@@@@QAA@XZ
1058??1?$SafeSet@PAVPushSubscription@@@@QAA@XZ
1059??1?$SafeSet@PAX@@QAA@XZ
1060??1?$SafeSet@VStringKeyCI@@@@QAA@XZ
1061??1?$SafeSet_Iterator@PAVCCertMapping@@@@QAA@XZ
1062??1?$SafeSet_Iterator@PAVCListenerOperation@@@@QAA@XZ
1063??1?$SafeSet_Iterator@PAVCShellUriSettings@@@@QAA@XZ
1064??1?$SafeSet_Iterator@PAVCollector@@@@QAA@XZ
1065??1?$SafeSet_Iterator@PAVHostOperation@@@@QAA@XZ
1066??1?$SafeSet_Iterator@PAVIOperation@@@@QAA@XZ
1067??1?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@QAA@XZ
1068??1?$SafeSet_Iterator@PAVPushSubscription@@@@QAA@XZ
1069??1?$SafeSet_Iterator@PAX@@QAA@XZ
1070??1?$SafeSet_Iterator@VStringKeyCI@@@@QAA@XZ
1071??1?$SimpleQueue@T_LARGE_INTEGER@@@@QAA@XZ
1072??1AutoBstr@@QAA@XZ
1073??1AutoBstrNoAlloc@@QAA@XZ
1074??1AutoCertContext@@QAA@XZ
1075??1AutoChainContext@@QAA@XZ
1076??1AutoCoTaskMemFree@@QAA@XZ
1077??1AutoEnvironmentBlock@@QAA@XZ
1078??1AutoFwXmlCloseParser@@QAA@XZ
1079??1AutoHandle@@QAA@XZ
1080??1AutoImpersonateUser@@QAA@XZ
1081??1AutoLibrary@@QAA@XZ
1082??1AutoLocalFree@@QAA@XZ
1083??1AutoMIClass@@QAA@XZ
1084??1AutoMIInstance@@QAA@XZ
1085??1AutoObject@@QAA@XZ
1086??1AutoRegKey@@QAA@XZ
1087??1AutoSecurityDescriptor@@QAA@XZ
1088??1AutoWaitHandle@@QAA@XZ
1089??1BufferFormatter@@UAA@XZ
1090??1CBaseConfigCache@@UAA@XZ
1091??1CClientConfigCache@@UAA@XZ
1092??1CCommonConfigSettings@@UAA@XZ
1093??1CConfigManager@@UAA@XZ
1094??1CErrorContext@@UAA@XZ
1095??1CRequestContext@@UAA@XZ
1096??1CResourceAlias@@QAA@XZ
1097??1CServiceConfigCache@@EAA@XZ
1098??1CServiceWatcher@CServiceConfigCache@@QAA@XZ
1099??1CWSManCriticalSection@@QAA@XZ
1100??1CWSManCriticalSectionWithConditionVar@@QAA@XZ
1101??1CWSManEPR@@UAA@XZ
1102??1CWSManGroupPolicyManager@@EAA@XZ
1103??1CWSManResource@@UAA@XZ
1104??1CWSManResourceNoResourceUri@@UAA@XZ
1105??1CWSManSecurityUI@@QAA@XZ
1106??1CWinRSPluginConfigCache@@EAA@XZ
1107??1ChildLifeTimeManager@@QAA@XZ
1108??1CircularBufferFormatter@@UAA@XZ
1109??1ConfigRegistry@@IAA@XZ
1110??1EtwCorrelationHelper@@UAA@XZ
1111??1EventHandler@WSMan@@QAA@XZ
1112??1IConfigChangeObserver@@UAA@XZ
1113??1ILifeTimeMgmt@@UAA@XZ
1114??1IRequestContext@@UAA@XZ
1115??1IWSManGroupPolicyObserver@@UAA@XZ
1116??1IWSManGroupPolicyPublisher@@UAA@XZ
1117??1MessageId@PacketParser@@QAA@XZ
1118??1OnHTTPInitialize@@QAA@XZ
1119??1OperationId@PacketParser@@QAA@XZ
1120??1OwnLock@@QAA@XZ
1121??1PacketParser@@QAA@XZ
1122??1RBUFFER@@QAA@XZ
1123??1ReferenceParameters@PacketParser@@QAA@XZ
1124??1SBUFFER@@QAA@XZ
1125??1ShareLock@@QAA@XZ
1126??1SoapSemanticConverter@@QAA@XZ
1127??1TSTRBUFFER@@QAA@XZ
1128??1UserRecord@@QAA@XZ
1129??1XmlReader@@QAA@XZ
1130??4?$AutoCleanup@V?$AutoDelete@D@@PAD@@QAAAAV?$AutoDelete@D@@PAD@Z
1131??4?$AutoCleanup@V?$AutoDelete@G@@PAG@@QAAAAV?$AutoDelete@G@@PAG@Z
1132??4?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAAAV?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@Z
1133??4?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAAAV?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@Z
1134??4?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@QAAAAV?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@Z
1135??4?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@QAAAAV?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@Z
1136??4?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAAAAV?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@Z
1137??4?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAAAAV?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@Z
1138??4?$AutoCleanup@V?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@QAAAAV?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@Z
1139??4?$AutoCleanup@V?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QAAAAV?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@Z
1140??4?$AutoCleanup@V?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@QAAAAV?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@Z
1141??4?$AutoCleanup@V?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@@QAAAAV?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@Z
1142??4?$AutoCleanup@V?$AutoDelete@VCConfigChangeSource@@@@PAVCConfigChangeSource@@@@QAAAAV?$AutoDelete@VCConfigChangeSource@@@@PAVCConfigChangeSource@@@Z
1143??4?$AutoCleanup@V?$AutoDelete@VCObserverConfigChangeErrors@@@@PAVCObserverConfigChangeErrors@@@@QAAAAV?$AutoDelete@VCObserverConfigChangeErrors@@@@PAVCObserverConfigChangeErrors@@@Z
1144??4?$AutoCleanup@V?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@@QAAAAV?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@Z
1145??4?$AutoCleanup@V?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@@QAAAAV?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@Z
1146??4?$AutoCleanup@V?$AutoDelete@VCertHash@@@@PAVCertHash@@@@QAAAAV?$AutoDelete@VCertHash@@@@PAVCertHash@@@Z
1147??4?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@QAAAAV?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@Z
1148??4?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAAAV?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@Z
1149??4?$AutoCleanup@V?$AutoDelete@VGPApiManager@@@@PAVGPApiManager@@@@QAAAAV?$AutoDelete@VGPApiManager@@@@PAVGPApiManager@@@Z
1150??4?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAAAV?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@Z
1151??4?$AutoCleanup@V?$AutoDelete@VIChannelObserverFactory@@@@PAVIChannelObserverFactory@@@@QAAAAV?$AutoDelete@VIChannelObserverFactory@@@@PAVIChannelObserverFactory@@@Z
1152??4?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QAAAAV?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@Z
1153??4?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QAAAAV?$AutoDelete@VISpecification@@@@PAVISpecification@@@Z
1154??4?$AutoCleanup@V?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@@QAAAAV?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@Z
1155??4?$AutoCleanup@V?$AutoDelete@VPacketParser@@@@PAVPacketParser@@@@QAAAAV?$AutoDelete@VPacketParser@@@@PAVPacketParser@@@Z
1156??4?$AutoCleanup@V?$AutoDelete@VRunAsConfiguration@@@@PAVRunAsConfiguration@@@@QAAAAV?$AutoDelete@VRunAsConfiguration@@@@PAVRunAsConfiguration@@@Z
1157??4?$AutoCleanup@V?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@@QAAAAV?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@Z
1158??4?$AutoCleanup@V?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@@QAAAAV?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@Z
1159??4?$AutoCleanup@V?$AutoDelete@VSubscriptionEnumerator@@@@PAVSubscriptionEnumerator@@@@QAAAAV?$AutoDelete@VSubscriptionEnumerator@@@@PAVSubscriptionEnumerator@@@Z
1160??4?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QAAAAV?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@Z
1161??4?$AutoCleanup@V?$AutoDelete@VUniqueStringOverflow@@@@PAVUniqueStringOverflow@@@@QAAAAV?$AutoDelete@VUniqueStringOverflow@@@@PAVUniqueStringOverflow@@@Z
1162??4?$AutoCleanup@V?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@PAVWSMANCONFIGTABLE_IDENTITY@@@@QAAAAV?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@PAVWSMANCONFIGTABLE_IDENTITY@@@Z
1163??4?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QAAAAV?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@Z
1164??4?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@QAAAAV?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@Z
1165??4?$AutoCleanup@V?$AutoDeleteVector@$$CBG@@PBG@@QAAAAV?$AutoDeleteVector@$$CBG@@PBG@Z
1166??4?$AutoCleanup@V?$AutoDeleteVector@D@@PAD@@QAAAAV?$AutoDeleteVector@D@@PAD@Z
1167??4?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QAAAAV?$AutoDeleteVector@E@@PAE@Z
1168??4?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QAAAAV?$AutoDeleteVector@G@@PAG@Z
1169??4?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QAAAAV?$AutoDeleteVector@PAG@@PAPAG@Z
1170??4?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QAAAAV?$AutoDeleteVector@PBG@@PAPBG@Z
1171??4?$AutoCleanup@V?$AutoDeleteVector@U_CONFIG_UPDATE@@@@PAU_CONFIG_UPDATE@@@@QAAAAV?$AutoDeleteVector@U_CONFIG_UPDATE@@@@PAU_CONFIG_UPDATE@@@Z
1172??4?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAAAAV?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@Z
1173??4?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QAAAAV?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@Z
1174??4?$AutoCleanup@V?$AutoDeleteVector@U_WSMAN_OPTION@@@@PAU_WSMAN_OPTION@@@@QAAAAV?$AutoDeleteVector@U_WSMAN_OPTION@@@@PAU_WSMAN_OPTION@@@Z
1175??4?$AutoCleanup@V?$AutoDeleteVector@X@@PAX@@QAAAAV?$AutoDeleteVector@X@@PAX@Z
1176??4?$AutoCleanup@V?$AutoFree@E@@PAE@@QAAAAV?$AutoFree@E@@PAE@Z
1177??4?$AutoCleanup@V?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@@QAAAAV?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@Z
1178??4?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QAAAAV?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@Z
1179??4?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QAAAAV?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@Z
1180??4?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QAAAAV?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@Z
1181??4?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QAAAAV?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@Z
1182??4?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QAAAAV?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@Z
1183??4?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QAAAAV?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@Z
1184??4?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QAAAAV?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@Z
1185??4?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QAAAAV?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@Z
1186??4?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QAAAAV?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@Z
1187??4?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QAAAAV?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@Z
1188??4?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QAAAAV?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@Z
1189??4?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QAAAAV?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@Z
1190??4?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QAAAAV?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@Z
1191??4?$AutoCleanup@V?$AutoRelease@VApplication@Client@WSMan@@@@PAVApplication@Client@WSMan@@@@QAAAAV?$AutoRelease@VApplication@Client@WSMan@@@@PAVApplication@Client@WSMan@@@Z
1192??4?$AutoCleanup@V?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAAAAV?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@Z
1193??4?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@QAAAAV?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@Z
1194??4?$AutoCleanup@V?$AutoRelease@VCCommonConfigSettings@@@@PAVCCommonConfigSettings@@@@QAAAAV?$AutoRelease@VCCommonConfigSettings@@@@PAVCCommonConfigSettings@@@Z
1195??4?$AutoCleanup@V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@PAVCConfigCacheMap@CBaseConfigCache@@@@QAAAAV?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@PAVCConfigCacheMap@CBaseConfigCache@@@Z
1196??4?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@QAAAAV?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@Z
1197??4?$AutoCleanup@V?$AutoRelease@VCRemoteOperation@@@@PAVCRemoteOperation@@@@QAAAAV?$AutoRelease@VCRemoteOperation@@@@PAVCRemoteOperation@@@Z
1198??4?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@QAAAAV?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@Z
1199??4?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@QAAAAV?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@Z
1200??4?$AutoCleanup@V?$AutoRelease@VCServiceCommonConfigSettings@@@@PAVCServiceCommonConfigSettings@@@@QAAAAV?$AutoRelease@VCServiceCommonConfigSettings@@@@PAVCServiceCommonConfigSettings@@@Z
1201??4?$AutoCleanup@V?$AutoRelease@VCServiceConfigCache@@@@PAVCServiceConfigCache@@@@QAAAAV?$AutoRelease@VCServiceConfigCache@@@@PAVCServiceConfigCache@@@Z
1202??4?$AutoCleanup@V?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@@QAAAAV?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@Z
1203??4?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QAAAAV?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@Z
1204??4?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@@QAAAAV?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@Z
1205??4?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@QAAAAV?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@Z
1206??4?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QAAAAV?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@Z
1207??4?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@@QAAAAV?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@Z
1208??4?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAAAV?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@Z
1209??4?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAAAV?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@Z
1210??4?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QAAAAV?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@Z
1211??4?$AutoCleanup@V?$AutoRelease@VISubscription@@@@PAVISubscription@@@@QAAAAV?$AutoRelease@VISubscription@@@@PAVISubscription@@@Z
1212??4?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@QAAAAV?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@Z
1213??4?$AutoCleanup@V?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@@QAAAAV?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@Z
1214??4?$AutoCleanup@V?$AutoRelease@VWSManHttpListener@@@@PAVWSManHttpListener@@@@QAAAAV?$AutoRelease@VWSManHttpListener@@@@PAVWSManHttpListener@@@Z
1215??4?$AutoCleanup@V?$AutoReleaseEx@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAAAAV?$AutoReleaseEx@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@Z
1216??4?$AutoCleanup@VAutoBstr@@PAG@@QAAAAVAutoBstr@@PAG@Z
1217??4?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QAAAAVAutoBstrNoAlloc@@PAG@Z
1218??4?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@QAAAAVAutoCertContext@@PBU_CERT_CONTEXT@@@Z
1219??4?$AutoCleanup@VAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@@QAAAAVAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@Z
1220??4?$AutoCleanup@VAutoCoTaskMemFree@@PAX@@QAAAAVAutoCoTaskMemFree@@PAX@Z
1221??4?$AutoCleanup@VAutoEnvironmentBlock@@PAX@@QAAAAVAutoEnvironmentBlock@@PAX@Z
1222??4?$AutoCleanup@VAutoFwXmlCloseParser@@PAX@@QAAAAVAutoFwXmlCloseParser@@PAX@Z
1223??4?$AutoCleanup@VAutoHandle@@PAX@@QAAAAVAutoHandle@@PAX@Z
1224??4?$AutoCleanup@VAutoImpersonateUser@@PAX@@QAAAAVAutoImpersonateUser@@PAX@Z
1225??4?$AutoCleanup@VAutoLibrary@@PAUHINSTANCE__@@@@QAAAAVAutoLibrary@@PAUHINSTANCE__@@@Z
1226??4?$AutoCleanup@VAutoLocalFree@@PAX@@QAAAAVAutoLocalFree@@PAX@Z
1227??4?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QAAAAVAutoMIClass@@PAU_MI_Class@@@Z
1228??4?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@QAAAAVAutoMIInstance@@PAU_MI_Instance@@@Z
1229??4?$AutoCleanup@VAutoObject@@PAUWSMAN_OBJECT@@@@QAAAAVAutoObject@@PAUWSMAN_OBJECT@@@Z
1230??4?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@QAAAAVAutoRegKey@@PAUHKEY__@@@Z
1231??4?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@QAAAAVAutoSecurityDescriptor@@PAX@Z
1232??4?$AutoCleanup@VAutoWaitHandle@@PAX@@QAAAAVAutoWaitHandle@@PAX@Z
1233??4?$AutoDelete@D@@QAAAAV0@PAD@Z
1234??4?$AutoDelete@G@@QAAAAV0@PAG@Z
1235??4?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAAAV0@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@Z
1236??4?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAAAV0@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@Z
1237??4?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@QAAAAV0@PAV?$SafeSet@PAVCCertMapping@@@@@Z
1238??4?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@QAAAAV0@PAV?$SafeSet@PAVCShellUriSettings@@@@@Z
1239??4?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAAAAV0@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@Z
1240??4?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAAAAV0@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@Z
1241??4?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@QAAAAV0@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@Z
1242??4?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QAAAAV0@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@Z
1243??4?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@QAAAAV0@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@Z
1244??4?$AutoDelete@VBlockedRecord@@@@QAAAAV0@PAVBlockedRecord@@@Z
1245??4?$AutoDelete@VCConfigChangeSource@@@@QAAAAV0@PAVCConfigChangeSource@@@Z
1246??4?$AutoDelete@VCObserverConfigChangeErrors@@@@QAAAAV0@PAVCObserverConfigChangeErrors@@@Z
1247??4?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@QAAAAV0@PAVCServiceWatcher@CServiceConfigCache@@@Z
1248??4?$AutoDelete@VCWSManResource@@@@QAAAAV0@PAVCWSManResource@@@Z
1249??4?$AutoDelete@VCertHash@@@@QAAAAV0@PAVCertHash@@@Z
1250??4?$AutoDelete@VConfigUpdate@@@@QAAAAV0@PAVConfigUpdate@@@Z
1251??4?$AutoDelete@VEnumSinkEx@@@@QAAAAV0@PAVEnumSinkEx@@@Z
1252??4?$AutoDelete@VGPApiManager@@@@QAAAAV0@PAVGPApiManager@@@Z
1253??4?$AutoDelete@VGeneralSinkEx@@@@QAAAAV0@PAVGeneralSinkEx@@@Z
1254??4?$AutoDelete@VIChannelObserverFactory@@@@QAAAAV0@PAVIChannelObserverFactory@@@Z
1255??4?$AutoDelete@VIQueryDASHSMASHInterface@@@@QAAAAV0@PAVIQueryDASHSMASHInterface@@@Z
1256??4?$AutoDelete@VISpecification@@@@QAAAAV0@PAVISpecification@@@Z
1257??4?$AutoDelete@VPacketCreator@@@@QAAAAV0@PAVPacketCreator@@@Z
1258??4?$AutoDelete@VPacketParser@@@@QAAAAV0@PAVPacketParser@@@Z
1259??4?$AutoDelete@VRunAsConfiguration@@@@QAAAAV0@PAVRunAsConfiguration@@@Z
1260??4?$AutoDelete@VSecurityEntry@Catalog@@@@QAAAAV0@PAVSecurityEntry@Catalog@@@Z
1261??4?$AutoDelete@VServiceSoapProcessor@@@@QAAAAV0@PAVServiceSoapProcessor@@@Z
1262??4?$AutoDelete@VSubscriptionEnumerator@@@@QAAAAV0@PAVSubscriptionEnumerator@@@Z
1263??4?$AutoDelete@VTSTRBUFFER@@@@QAAAAV0@PAVTSTRBUFFER@@@Z
1264??4?$AutoDelete@VUniqueStringOverflow@@@@QAAAAV0@PAVUniqueStringOverflow@@@Z
1265??4?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@QAAAAV0@PAVWSMANCONFIGTABLE_IDENTITY@@@Z
1266??4?$AutoDelete@VWmiEnumContext@@@@QAAAAV0@PAVWmiEnumContext@@@Z
1267??4?$AutoDelete@VXmlReader@@@@QAAAAV0@PAVXmlReader@@@Z
1268??4?$AutoDeleteVector@$$CBG@@QAAAAV0@PBG@Z
1269??4?$AutoDeleteVector@D@@QAAAAV0@PAD@Z
1270??4?$AutoDeleteVector@E@@QAAAAV0@PAE@Z
1271??4?$AutoDeleteVector@G@@QAAAAV0@PAG@Z
1272??4?$AutoDeleteVector@PAG@@QAAAAV0@PAPAG@Z
1273??4?$AutoDeleteVector@PBG@@QAAAAV0@PAPBG@Z
1274??4?$AutoDeleteVector@U_CONFIG_UPDATE@@@@QAAAAV0@PAU_CONFIG_UPDATE@@@Z
1275??4?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAAAAV0@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@Z
1276??4?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@QAAAAV0@PAU_WINRS_RUN_COMMAND_ARG@@@Z
1277??4?$AutoDeleteVector@U_WSMAN_OPTION@@@@QAAAAV0@PAU_WSMAN_OPTION@@@Z
1278??4?$AutoDeleteVector@X@@QAAAAV0@PAX@Z
1279??4?$AutoFree@E@@QAAAAV0@PAE@Z
1280??4?$AutoLocklessItemRecycle@VPacket@@@@QAAAAV0@PAVPacket@@@Z
1281??4?$AutoRelease@UIClientSecurity@@@@QAAAAV0@PAUIClientSecurity@@@Z
1282??4?$AutoRelease@UIEnumWbemClassObject@@@@QAAAAV0@PAUIEnumWbemClassObject@@@Z
1283??4?$AutoRelease@UIErrorInfo@@@@QAAAAV0@PAUIErrorInfo@@@Z
1284??4?$AutoRelease@UIUnknown@@@@QAAAAV0@PAUIUnknown@@@Z
1285??4?$AutoRelease@UIWbemClassObject@@@@QAAAAV0@PAUIWbemClassObject@@@Z
1286??4?$AutoRelease@UIWbemContext@@@@QAAAAV0@PAUIWbemContext@@@Z
1287??4?$AutoRelease@UIWbemLocator@@@@QAAAAV0@PAUIWbemLocator@@@Z
1288??4?$AutoRelease@UIWbemObjectTextSrc@@@@QAAAAV0@PAUIWbemObjectTextSrc@@@Z
1289??4?$AutoRelease@UIWbemPath@@@@QAAAAV0@PAUIWbemPath@@@Z
1290??4?$AutoRelease@UIWbemPathKeyList@@@@QAAAAV0@PAUIWbemPathKeyList@@@Z
1291??4?$AutoRelease@UIWbemQualifierSet@@@@QAAAAV0@PAUIWbemQualifierSet@@@Z
1292??4?$AutoRelease@UIWbemQuery@@@@QAAAAV0@PAUIWbemQuery@@@Z
1293??4?$AutoRelease@UIWbemServices@@@@QAAAAV0@PAUIWbemServices@@@Z
1294??4?$AutoRelease@VApplication@Client@WSMan@@@@QAAAAV0@PAVApplication@Client@WSMan@@@Z
1295??4?$AutoRelease@VCBaseConfigCache@@@@QAAAAV0@PAVCBaseConfigCache@@@Z
1296??4?$AutoRelease@VCClientConfigSettings@@@@QAAAAV0@PAVCClientConfigSettings@@@Z
1297??4?$AutoRelease@VCCommonConfigSettings@@@@QAAAAV0@PAVCCommonConfigSettings@@@Z
1298??4?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@QAAAAV0@PAVCConfigCacheMap@CBaseConfigCache@@@Z
1299??4?$AutoRelease@VCConfigManager@@@@QAAAAV0@PAVCConfigManager@@@Z
1300??4?$AutoRelease@VCRemoteOperation@@@@QAAAAV0@PAVCRemoteOperation@@@Z
1301??4?$AutoRelease@VCRemoteSession@@@@QAAAAV0@PAVCRemoteSession@@@Z
1302??4?$AutoRelease@VCRequestContext@@@@QAAAAV0@PAVCRequestContext@@@Z
1303??4?$AutoRelease@VCServiceCommonConfigSettings@@@@QAAAAV0@PAVCServiceCommonConfigSettings@@@Z
1304??4?$AutoRelease@VCServiceConfigCache@@@@QAAAAV0@PAVCServiceConfigCache@@@Z
1305??4?$AutoRelease@VCServiceConfigSettings@@@@QAAAAV0@PAVCServiceConfigSettings@@@Z
1306??4?$AutoRelease@VCWSManEPR@@@@QAAAAV0@PAVCWSManEPR@@@Z
1307??4?$AutoRelease@VCWSManGroupPolicyManager@@@@QAAAAV0@PAVCWSManGroupPolicyManager@@@Z
1308??4?$AutoRelease@VCWSManResource@@@@QAAAAV0@PAVCWSManResource@@@Z
1309??4?$AutoRelease@VCWinRSPluginConfigCache@@@@QAAAAV0@PAVCWinRSPluginConfigCache@@@Z
1310??4?$AutoRelease@VCWinRSPluginConfigSettings@@@@QAAAAV0@PAVCWinRSPluginConfigSettings@@@Z
1311??4?$AutoRelease@VEnumSinkEx@@@@QAAAAV0@PAVEnumSinkEx@@@Z
1312??4?$AutoRelease@VGeneralSinkEx@@@@QAAAAV0@PAVGeneralSinkEx@@@Z
1313??4?$AutoRelease@VIRequestContext@@@@QAAAAV0@PAVIRequestContext@@@Z
1314??4?$AutoRelease@VISubscription@@@@QAAAAV0@PAVISubscription@@@Z
1315??4?$AutoRelease@VInboundRequestDetails@@@@QAAAAV0@PAVInboundRequestDetails@@@Z
1316??4?$AutoRelease@VUserRecord@@@@QAAAAV0@PAVUserRecord@@@Z
1317??4?$AutoRelease@VWSManHttpListener@@@@QAAAAV0@PAVWSManHttpListener@@@Z
1318??4?$AutoReleaseEx@VShell@Client@WSMan@@@@QAAAAV0@PAVShell@Client@WSMan@@@Z
1319??4?$PacketElement@K@PacketParser@@QAAAAV01@ABV01@@Z
1320??4?$PacketElement@PAU_FWXML_ELEMENT@@@PacketParser@@QAAAAV01@ABV01@@Z
1321??4?$PacketElement@PBG@PacketParser@@QAAAAV01@ABV01@@Z
1322??4?$PacketElement@_K@PacketParser@@QAAAAV01@ABV01@@Z
1323??4?$SimpleQueue@T_LARGE_INTEGER@@@@QAAAAV0@ABV0@@Z
1324??4AutoBstr@@QAAAAV0@PAG@Z
1325??4AutoBstrNoAlloc@@QAAAAV0@PAG@Z
1326??4AutoCertContext@@QAAAAV0@PBU_CERT_CONTEXT@@@Z
1327??4AutoChainContext@@QAAAAV0@PBU_CERT_CHAIN_CONTEXT@@@Z
1328??4AutoCoTaskMemFree@@QAAAAV0@PAX@Z
1329??4AutoEnvironmentBlock@@QAAAAV0@PAX@Z
1330??4AutoFwXmlCloseParser@@QAAAAV0@PAX@Z
1331??4AutoHandle@@QAAAAV0@PAX@Z
1332??4AutoImpersonateUser@@QAAAAV0@PAX@Z
1333??4AutoLibrary@@QAAAAV0@PAUHINSTANCE__@@@Z
1334??4AutoLocalFree@@QAAAAV0@PAX@Z
1335??4AutoMIClass@@QAAAAV0@PAU_MI_Class@@@Z
1336??4AutoMIInstance@@QAAAAV0@PAU_MI_Instance@@@Z
1337??4AutoObject@@QAAAAV0@PAUWSMAN_OBJECT@@@Z
1338??4AutoRegKey@@QAAAAV0@PAUHKEY__@@@Z
1339??4AutoSecurityDescriptor@@QAAAAV0@PAX@Z
1340??4AutoWaitHandle@@QAAAAV0@PAX@Z
1341??4ChildLifeTimeManager@@QAAAAV0@ABV0@@Z
1342??4ConfigRegistry@@QAAAAV0@ABV0@@Z
1343??4EtwCorrelationHelper@@QAAAAV0@ABV0@@Z
1344??4EventLog@@QAAAAV0@ABV0@@Z
1345??4ExtendedSemantic@@QAAAAV0@ABV0@@Z
1346??4FastLock@@QAAAAV0@ABV0@@Z
1347??4Fragment@PacketParser@@QAAAAV01@ABV01@@Z
1348??4IConfigChangeObserver@@QAAAAV0@ABV0@@Z
1349??4ILifeTimeMgmt@@QAAAAV0@ABV0@@Z
1350??4IWSManGroupPolicyObserver@@QAAAAV0@ABV0@@Z
1351??4IWSManGroupPolicyPublisher@@QAAAAV0@ABV0@@Z
1352??4Locale@@QAAAAV0@ABV0@@Z
1353??4NotUnderstandSoapHeader@PacketParser@@QAAAAV01@ABV01@@Z
1354??4PacketFormatter@@QAAAAV0@ABV0@@Z
1355??4RBUFFER@@QAAAAV0@ABV0@@Z
1356??4SBUFFER@@QAAAAV0@ABV0@@Z
1357??4SessionId@PacketParser@@QAAAAV01@ABV01@@Z
1358??4SoapSemanticConverter@@QAAAAV0@ABV0@@Z
1359??4UserAuthzRecord@@QAAAAV0@ABV0@@Z
1360??6BufferFormatter@@UAAAAV0@AAVBufferFormatterDataFormatDWORD@@@Z
1361??6BufferFormatter@@UAAAAV0@AAVBufferFormatterDataFormatULONGLONG@@@Z
1362??6BufferFormatter@@UAAAAV0@AAVBufferFormatterDataPCWSTR@@@Z
1363??6BufferFormatter@@UAAAAV0@AAVBufferFormatterDataPUCHAR@@@Z
1364??6BufferFormatter@@UAAAAV0@AAVBufferFormatterDataXmlEscape@@@Z
1365??6BufferFormatter@@UAAAAV0@K@Z
1366??6BufferFormatter@@UAAAAV0@PAU_FWXML_ELEMENT@@@Z
1367??7?$AutoCleanup@V?$AutoDelete@G@@PAG@@QBA_NXZ
1368??7?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@QBA_NXZ
1369??7?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@QBA_NXZ
1370??7?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QBA_NXZ
1371??7?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@QBA_NXZ
1372??7?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QBA_NXZ
1373??7?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QBA_NXZ
1374??7?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QBA_NXZ
1375??7?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QBA_NXZ
1376??7?$AutoCleanup@V?$AutoDelete@VRunAsConfiguration@@@@PAVRunAsConfiguration@@@@QBA_NXZ
1377??7?$AutoCleanup@V?$AutoDelete@VSubscriptionEnumerator@@@@PAVSubscriptionEnumerator@@@@QBA_NXZ
1378??7?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QBA_NXZ
1379??7?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QBA_NXZ
1380??7?$AutoCleanup@V?$AutoDeleteVector@D@@PAD@@QBA_NXZ
1381??7?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QBA_NXZ
1382??7?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QBA_NXZ
1383??7?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QBA_NXZ
1384??7?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QBA_NXZ
1385??7?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QBA_NXZ
1386??7?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QBA_NXZ
1387??7?$AutoCleanup@V?$AutoDeleteVector@X@@PAX@@QBA_NXZ
1388??7?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QBA_NXZ
1389??7?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QBA_NXZ
1390??7?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QBA_NXZ
1391??7?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QBA_NXZ
1392??7?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QBA_NXZ
1393??7?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QBA_NXZ
1394??7?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QBA_NXZ
1395??7?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QBA_NXZ
1396??7?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QBA_NXZ
1397??7?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QBA_NXZ
1398??7?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QBA_NXZ
1399??7?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QBA_NXZ
1400??7?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QBA_NXZ
1401??7?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@QBA_NXZ
1402??7?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@QBA_NXZ
1403??7?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@QBA_NXZ
1404??7?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@QBA_NXZ
1405??7?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QBA_NXZ
1406??7?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@QBA_NXZ
1407??7?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QBA_NXZ
1408??7?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QBA_NXZ
1409??7?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QBA_NXZ
1410??7?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QBA_NXZ
1411??7?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@QBA_NXZ
1412??7?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QBA_NXZ
1413??7?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@QBA_NXZ
1414??7?$AutoCleanup@VAutoHandle@@PAX@@QBA_NXZ
1415??7?$AutoCleanup@VAutoImpersonateUser@@PAX@@QBA_NXZ
1416??7?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QBA_NXZ
1417??7?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@QBA_NXZ
1418??7?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@QBA_NXZ
1419??A?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAAPAKABUPluginKey@@@Z
1420??A?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAAPAPAVBlockedRecord@@ABUUserKey@@@Z
1421??A?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAAPAVCertThumbprintMappedSet@CServiceConfigSettings@@ABVCertThumbprintKey@@@Z
1422??A?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAPAKABVStringKeyCI@@@Z
1423??A?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAAPAUUSER_CONTEXT_INFO@WSManHttpListener@@ABVStringKeyCI@@@Z
1424??A?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAAPAPAVExpiredOperationIdRecord@@ABVStringKeyStore@@@Z
1425??A?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAAPAPAVServerFullDuplexChannel@@ABVStringKeyStore@@@Z
1426??A?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAPAPAVOptionValue@SessionOptions@Client@WSMan@@ABW4WSManSessionOption@@@Z
1427??A?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAAPAPAVSendPacketArgs@RobustConnectionBuffer@@AB_K@Z
1428??A?$SafeSet@PAX@@QBAPBQAXABQAX@Z
1429??B?$AutoCleanup@V?$AutoDelete@D@@PAD@@QAAPADXZ
1430??B?$AutoCleanup@V?$AutoDelete@G@@PAG@@QAAPAGXZ
1431??B?$AutoCleanup@V?$AutoDelete@G@@PAG@@QBAQAGXZ
1432??B?$AutoCleanup@V?$AutoDelete@UIPRange@CWSManIPFilter@@@@PAUIPRange@CWSManIPFilter@@@@QAAPAUIPRange@CWSManIPFilter@@XZ
1433??B?$AutoCleanup@V?$AutoDelete@U_SID@@@@PAU_SID@@@@QAAPAU_SID@@XZ
1434??B?$AutoCleanup@V?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@PAU_WSMAN_STREAM_ID_SET@@@@QAAPAU_WSMAN_STREAM_ID_SET@@XZ
1435??B?$AutoCleanup@V?$AutoDelete@V?$Handle@VISubscription@@@@@@PAV?$Handle@VISubscription@@@@@@QAAPAV?$Handle@VISubscription@@@@XZ
1436??B?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAPAV?$SafeMap_Iterator@VStringKeyCI@@K@@XZ
1437??B?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAPAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@XZ
1438??B?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@QAAPAV?$SafeSet@PAVCCertMapping@@@@XZ
1439??B?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@QAAPAV?$SafeSet@PAVCShellUriSettings@@@@XZ
1440??B?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAAPAV?$SafeSet_Iterator@PAVCListenerOperation@@@@XZ
1441??B?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAAPAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@XZ
1442??B?$AutoCleanup@V?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@QAAPAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@XZ
1443??B?$AutoCleanup@V?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QAAPAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@XZ
1444??B?$AutoCleanup@V?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QBAQAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@XZ
1445??B?$AutoCleanup@V?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@QAAPAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@XZ
1446??B?$AutoCleanup@V?$AutoDelete@VAdminSid@CSecurity@@@@PAVAdminSid@CSecurity@@@@QAAPAVAdminSid@CSecurity@@XZ
1447??B?$AutoCleanup@V?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@@QAAPAVBlockedRecord@@XZ
1448??B?$AutoCleanup@V?$AutoDelete@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAAPAVCBaseConfigCache@@XZ
1449??B?$AutoCleanup@V?$AutoDelete@VCCertMapping@@@@PAVCCertMapping@@@@QAAPAVCCertMapping@@XZ
1450??B?$AutoCleanup@V?$AutoDelete@VCConfigChangeSource@@@@PAVCConfigChangeSource@@@@QAAPAVCConfigChangeSource@@XZ
1451??B?$AutoCleanup@V?$AutoDelete@VCListenerSettings@@@@PAVCListenerSettings@@@@QAAPAVCListenerSettings@@XZ
1452??B?$AutoCleanup@V?$AutoDelete@VCObserverConfigChangeErrors@@@@PAVCObserverConfigChangeErrors@@@@QAAPAVCObserverConfigChangeErrors@@XZ
1453??B?$AutoCleanup@V?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@@QAAPAVCServiceWatcher@CServiceConfigCache@@XZ
1454??B?$AutoCleanup@V?$AutoDelete@VCShellUriSettings@@@@PAVCShellUriSettings@@@@QAAPAVCShellUriSettings@@XZ
1455??B?$AutoCleanup@V?$AutoDelete@VCWSManEPR@@@@PAVCWSManEPR@@@@QAAPAVCWSManEPR@@XZ
1456??B?$AutoCleanup@V?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@@QAAPAVCWSManResource@@XZ
1457??B?$AutoCleanup@V?$AutoDelete@VCertHash@@@@PAVCertHash@@@@QAAPAVCertHash@@XZ
1458??B?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@QAAPAVConfigUpdate@@XZ
1459??B?$AutoCleanup@V?$AutoDelete@VCredUIDllLoader@@@@PAVCredUIDllLoader@@@@QAAPAVCredUIDllLoader@@XZ
1460??B?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAPAVEnumSinkEx@@XZ
1461??B?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QBAQAVEnumSinkEx@@XZ
1462??B?$AutoCleanup@V?$AutoDelete@VEventHandler@WSMan@@@@PAVEventHandler@WSMan@@@@QAAPAVEventHandler@WSMan@@XZ
1463??B?$AutoCleanup@V?$AutoDelete@VExpiredOperationIdRecord@@@@PAVExpiredOperationIdRecord@@@@QAAPAVExpiredOperationIdRecord@@XZ
1464??B?$AutoCleanup@V?$AutoDelete@VGPApiManager@@@@PAVGPApiManager@@@@QAAPAVGPApiManager@@XZ
1465??B?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAPAVGeneralSinkEx@@XZ
1466??B?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QBAQAVGeneralSinkEx@@XZ
1467??B?$AutoCleanup@V?$AutoDelete@VIChannelObserverFactory@@@@PAVIChannelObserverFactory@@@@QAAPAVIChannelObserverFactory@@XZ
1468??B?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QAAPAVIQueryDASHSMASHInterface@@XZ
1469??B?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QBAQAVIQueryDASHSMASHInterface@@XZ
1470??B?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QAAPAVISpecification@@XZ
1471??B?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QBAQAVISpecification@@XZ
1472??B?$AutoCleanup@V?$AutoDelete@VInteractiveSid@CSecurity@@@@PAVInteractiveSid@CSecurity@@@@QAAPAVInteractiveSid@CSecurity@@XZ
1473??B?$AutoCleanup@V?$AutoDelete@VIpHlpApiDllLoader@@@@PAVIpHlpApiDllLoader@@@@QAAPAVIpHlpApiDllLoader@@XZ
1474??B?$AutoCleanup@V?$AutoDelete@VMachineName@@@@PAVMachineName@@@@QAAPAVMachineName@@XZ
1475??B?$AutoCleanup@V?$AutoDelete@VNetworkServiceSid@CSecurity@@@@PAVNetworkServiceSid@CSecurity@@@@QAAPAVNetworkServiceSid@CSecurity@@XZ
1476??B?$AutoCleanup@V?$AutoDelete@VNtDsApiDllLoader@@@@PAVNtDsApiDllLoader@@@@QAAPAVNtDsApiDllLoader@@XZ
1477??B?$AutoCleanup@V?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAAPAVOptionValue@SessionOptions@Client@WSMan@@XZ
1478??B?$AutoCleanup@V?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@@QAAPAVPacketCreator@@XZ
1479??B?$AutoCleanup@V?$AutoDelete@VPacketParser@@@@PAVPacketParser@@@@QAAPAVPacketParser@@XZ
1480??B?$AutoCleanup@V?$AutoDelete@VResources@Locale@@@@PAVResources@Locale@@@@QAAPAVResources@Locale@@XZ
1481??B?$AutoCleanup@V?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@@QAAPAVSecurityEntry@Catalog@@XZ
1482??B?$AutoCleanup@V?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@@QAAPAVServiceSoapProcessor@@XZ
1483??B?$AutoCleanup@V?$AutoDelete@VShell32DllLoader@@@@PAVShell32DllLoader@@@@QAAPAVShell32DllLoader@@XZ
1484??B?$AutoCleanup@V?$AutoDelete@VShlWApiDllLoader@@@@PAVShlWApiDllLoader@@@@QAAPAVShlWApiDllLoader@@XZ
1485??B?$AutoCleanup@V?$AutoDelete@VSubscriptionManager@@@@PAVSubscriptionManager@@@@QAAPAVSubscriptionManager@@XZ
1486??B?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QAAPAVTSTRBUFFER@@XZ
1487??B?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QBAQAVTSTRBUFFER@@XZ
1488??B?$AutoCleanup@V?$AutoDelete@VUniqueStringOverflow@@@@PAVUniqueStringOverflow@@@@QAAPAVUniqueStringOverflow@@XZ
1489??B?$AutoCleanup@V?$AutoDelete@VUser32DllLoader@@@@PAVUser32DllLoader@@@@QAAPAVUser32DllLoader@@XZ
1490??B?$AutoCleanup@V?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@PAVWSMANCONFIGTABLE_IDENTITY@@@@QAAPAVWSMANCONFIGTABLE_IDENTITY@@XZ
1491??B?$AutoCleanup@V?$AutoDelete@VWSManMemCryptManager@@@@PAVWSManMemCryptManager@@@@QAAPAVWSManMemCryptManager@@XZ
1492??B?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QAAPAVWmiEnumContext@@XZ
1493??B?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QBAQAVWmiEnumContext@@XZ
1494??B?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@QAAPAVXmlReader@@XZ
1495??B?$AutoCleanup@V?$AutoDeleteVector@$$CBG@@PBG@@QAAPBGXZ
1496??B?$AutoCleanup@V?$AutoDeleteVector@D@@PAD@@QAAPADXZ
1497??B?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QAAPAEXZ
1498??B?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QBAQAEXZ
1499??B?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QAAPAGXZ
1500??B?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QBAQAGXZ
1501??B?$AutoCleanup@V?$AutoDeleteVector@H@@PAH@@QAAPAHXZ
1502??B?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QAAPAPAGXZ
1503??B?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QBAQAPAGXZ
1504??B?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QAAPAPBGXZ
1505??B?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QBAQAPBGXZ
1506??B?$AutoCleanup@V?$AutoDeleteVector@U_CONFIG_UPDATE@@@@PAU_CONFIG_UPDATE@@@@QAAPAU_CONFIG_UPDATE@@XZ
1507??B?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAAPAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@XZ
1508??B?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QBAQAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@XZ
1509??B?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QAAPAU_WINRS_RUN_COMMAND_ARG@@XZ
1510??B?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QBAQAU_WINRS_RUN_COMMAND_ARG@@XZ
1511??B?$AutoCleanup@V?$AutoDeleteVector@U_WSMAN_OPTION@@@@PAU_WSMAN_OPTION@@@@QAAPAU_WSMAN_OPTION@@XZ
1512??B?$AutoCleanup@V?$AutoDeleteVector@X@@PAX@@QAAPAXXZ
1513??B?$AutoCleanup@V?$AutoFree@E@@PAE@@QAAPAEXZ
1514??B?$AutoCleanup@V?$AutoFree@E@@PAE@@QBAQAEXZ
1515??B?$AutoCleanup@V?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@@QAAPAVPacket@@XZ
1516??B?$AutoCleanup@V?$AutoRelease@UIAppHostChildElementCollection@@@@PAUIAppHostChildElementCollection@@@@QAAPAUIAppHostChildElementCollection@@XZ
1517??B?$AutoCleanup@V?$AutoRelease@UIAppHostElement@@@@PAUIAppHostElement@@@@QAAPAUIAppHostElement@@XZ
1518??B?$AutoCleanup@V?$AutoRelease@UIAppHostElementCollection@@@@PAUIAppHostElementCollection@@@@QAAPAUIAppHostElementCollection@@XZ
1519??B?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QAAPAUIClientSecurity@@XZ
1520??B?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QBAQAUIClientSecurity@@XZ
1521??B?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QAAPAUIEnumWbemClassObject@@XZ
1522??B?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QBAQAUIEnumWbemClassObject@@XZ
1523??B?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QAAPAUIErrorInfo@@XZ
1524??B?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QBAQAUIErrorInfo@@XZ
1525??B?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QAAPAUIUnknown@@XZ
1526??B?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QBAQAUIUnknown@@XZ
1527??B?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QAAPAUIWbemClassObject@@XZ
1528??B?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QBAQAUIWbemClassObject@@XZ
1529??B?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QAAPAUIWbemContext@@XZ
1530??B?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QBAQAUIWbemContext@@XZ
1531??B?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QAAPAUIWbemLocator@@XZ
1532??B?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QBAQAUIWbemLocator@@XZ
1533??B?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QAAPAUIWbemObjectTextSrc@@XZ
1534??B?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QBAQAUIWbemObjectTextSrc@@XZ
1535??B?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QAAPAUIWbemPath@@XZ
1536??B?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QBAQAUIWbemPath@@XZ
1537??B?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QAAPAUIWbemPathKeyList@@XZ
1538??B?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QBAQAUIWbemPathKeyList@@XZ
1539??B?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QAAPAUIWbemQualifierSet@@XZ
1540??B?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QBAQAUIWbemQualifierSet@@XZ
1541??B?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QAAPAUIWbemQuery@@XZ
1542??B?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QBAQAUIWbemQuery@@XZ
1543??B?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QAAPAUIWbemServices@@XZ
1544??B?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QBAQAUIWbemServices@@XZ
1545??B?$AutoCleanup@V?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAAPAVCBaseConfigCache@@XZ
1546??B?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@QAAPAVCClientConfigSettings@@XZ
1547??B?$AutoCleanup@V?$AutoRelease@VCCommonConfigSettings@@@@PAVCCommonConfigSettings@@@@QAAPAVCCommonConfigSettings@@XZ
1548??B?$AutoCleanup@V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@PAVCConfigCacheMap@CBaseConfigCache@@@@QAAPAVCConfigCacheMap@CBaseConfigCache@@XZ
1549??B?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@QAAPAVCConfigManager@@XZ
1550??B?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@QAAPAVCRemoteSession@@XZ
1551??B?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@QAAPAVCRequestContext@@XZ
1552??B?$AutoCleanup@V?$AutoRelease@VCServiceCommonConfigSettings@@@@PAVCServiceCommonConfigSettings@@@@QAAPAVCServiceCommonConfigSettings@@XZ
1553??B?$AutoCleanup@V?$AutoRelease@VCServiceConfigCache@@@@PAVCServiceConfigCache@@@@QAAPAVCServiceConfigCache@@XZ
1554??B?$AutoCleanup@V?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@@QAAPAVCServiceConfigSettings@@XZ
1555??B?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QAAPAVCWSManEPR@@XZ
1556??B?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QBAQAVCWSManEPR@@XZ
1557??B?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyCache@@@@PAVCWSManGroupPolicyCache@@@@QAAPAVCWSManGroupPolicyCache@@XZ
1558??B?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@@QAAPAVCWSManGroupPolicyManager@@XZ
1559??B?$AutoCleanup@V?$AutoRelease@VCWSManObject@@@@PAVCWSManObject@@@@QAAPAVCWSManObject@@XZ
1560??B?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@QAAPAVCWSManResource@@XZ
1561??B?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@QBAQAVCWSManResource@@XZ
1562??B?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QAAPAVCWinRSPluginConfigCache@@XZ
1563??B?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QBAQAVCWinRSPluginConfigCache@@XZ
1564??B?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@@QAAPAVCWinRSPluginConfigSettings@@XZ
1565??B?$AutoCleanup@V?$AutoRelease@VCommand@Client@WSMan@@@@PAVCommand@Client@WSMan@@@@QAAPAVCommand@Client@WSMan@@XZ
1566??B?$AutoCleanup@V?$AutoRelease@VConfigNotification@@@@PAVConfigNotification@@@@QAAPAVConfigNotification@@XZ
1567??B?$AutoCleanup@V?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@PAVConnectShellOperation@Client@WSMan@@@@QAAPAVConnectShellOperation@Client@WSMan@@XZ
1568??B?$AutoCleanup@V?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@PAVCreateShellOperation@Client@WSMan@@@@QAAPAVCreateShellOperation@Client@WSMan@@XZ
1569??B?$AutoCleanup@V?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@PAVDeleteShellOperation@Client@WSMan@@@@QAAPAVDeleteShellOperation@Client@WSMan@@XZ
1570??B?$AutoCleanup@V?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@PAVDisconnectOperation@Client@WSMan@@@@QAAPAVDisconnectOperation@Client@WSMan@@XZ
1571??B?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAPAVEnumSinkEx@@XZ
1572??B?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QBAQAVEnumSinkEx@@XZ
1573??B?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAPAVGeneralSinkEx@@XZ
1574??B?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QBAQAVGeneralSinkEx@@XZ
1575??B?$AutoCleanup@V?$AutoRelease@VIISConfigSettings@@@@PAVIISConfigSettings@@@@QAAPAVIISConfigSettings@@XZ
1576??B?$AutoCleanup@V?$AutoRelease@VIPCSoapProcessor@@@@PAVIPCSoapProcessor@@@@QAAPAVIPCSoapProcessor@@XZ
1577??B?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QAAPAVIRequestContext@@XZ
1578??B?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QBAQAVIRequestContext@@XZ
1579??B?$AutoCleanup@V?$AutoRelease@VISubscription@@@@PAVISubscription@@@@QAAPAVISubscription@@XZ
1580??B?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@QAAPAVInboundRequestDetails@@XZ
1581??B?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@QBAQAVInboundRequestDetails@@XZ
1582??B?$AutoCleanup@V?$AutoRelease@VReceiveOperation@Client@WSMan@@@@PAVReceiveOperation@Client@WSMan@@@@QAAPAVReceiveOperation@Client@WSMan@@XZ
1583??B?$AutoCleanup@V?$AutoRelease@VReconnectOperation@Client@WSMan@@@@PAVReconnectOperation@Client@WSMan@@@@QAAPAVReconnectOperation@Client@WSMan@@XZ
1584??B?$AutoCleanup@V?$AutoRelease@VSendOperation@Client@WSMan@@@@PAVSendOperation@Client@WSMan@@@@QAAPAVSendOperation@Client@WSMan@@XZ
1585??B?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAAPAVShell@Client@WSMan@@XZ
1586??B?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QBAQAVShell@Client@WSMan@@XZ
1587??B?$AutoCleanup@V?$AutoRelease@VSignalOperation@Client@WSMan@@@@PAVSignalOperation@Client@WSMan@@@@QAAPAVSignalOperation@Client@WSMan@@XZ
1588??B?$AutoCleanup@V?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@@QAAPAVUserRecord@@XZ
1589??B?$AutoCleanup@V?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@@QBAQAVUserRecord@@XZ
1590??B?$AutoCleanup@VAutoBstr@@PAG@@QAAPAGXZ
1591??B?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QAAPAGXZ
1592??B?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QBAQAGXZ
1593??B?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@QAAPBU_CERT_CONTEXT@@XZ
1594??B?$AutoCleanup@VAutoHandle@@PAX@@QAAPAXXZ
1595??B?$AutoCleanup@VAutoHandle@@PAX@@QBAQAXXZ
1596??B?$AutoCleanup@VAutoImpersonateUser@@PAX@@QAAPAXXZ
1597??B?$AutoCleanup@VAutoImpersonateUser@@PAX@@QBAQAXXZ
1598??B?$AutoCleanup@VAutoLibrary@@PAUHINSTANCE__@@@@QAAPAUHINSTANCE__@@XZ
1599??B?$AutoCleanup@VAutoLocalFree@@PAX@@QAAPAXXZ
1600??B?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QAAPAU_MI_Class@@XZ
1601??B?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@QAAPAU_MI_Instance@@XZ
1602??B?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@QAAPAUHKEY__@@XZ
1603??B?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@QAAPAXXZ
1604??B?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QBA_NXZ
1605??B?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QBA_NXZ
1606??B?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QBA_NXZ
1607??B?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QBA_NXZ
1608??B?$SafeMap_Iterator@VKey@Locale@@K@@QBA_NXZ
1609??B?$SafeMap_Iterator@VStringKeyCI@@K@@QBA_NXZ
1610??B?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@QBA_NXZ
1611??B?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QBA_NXZ
1612??B?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QBA_NXZ
1613??C?$AutoCleanup@V?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@PAU_WSMAN_STREAM_ID_SET@@@@QAAPAU_WSMAN_STREAM_ID_SET@@XZ
1614??C?$AutoCleanup@V?$AutoDelete@V?$Handle@VISubscription@@@@@@PAV?$Handle@VISubscription@@@@@@QAAPAV?$Handle@VISubscription@@@@XZ
1615??C?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAPAV?$SafeMap_Iterator@VStringKeyCI@@K@@XZ
1616??C?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAPAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@XZ
1617??C?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@QAAPAV?$SafeSet@PAVCCertMapping@@@@XZ
1618??C?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@QAAPAV?$SafeSet@PAVCShellUriSettings@@@@XZ
1619??C?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAAPAV?$SafeSet_Iterator@PAVCListenerOperation@@@@XZ
1620??C?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAAPAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@XZ
1621??C?$AutoCleanup@V?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@QAAPAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@XZ
1622??C?$AutoCleanup@V?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@QAAPAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@XZ
1623??C?$AutoCleanup@V?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@QAAPAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@XZ
1624??C?$AutoCleanup@V?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@@QAAPAVBlockedRecord@@XZ
1625??C?$AutoCleanup@V?$AutoDelete@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAAPAVCBaseConfigCache@@XZ
1626??C?$AutoCleanup@V?$AutoDelete@VCCertMapping@@@@PAVCCertMapping@@@@QAAPAVCCertMapping@@XZ
1627??C?$AutoCleanup@V?$AutoDelete@VCConfigChangeSource@@@@PAVCConfigChangeSource@@@@QAAPAVCConfigChangeSource@@XZ
1628??C?$AutoCleanup@V?$AutoDelete@VCListenerSettings@@@@PAVCListenerSettings@@@@QAAPAVCListenerSettings@@XZ
1629??C?$AutoCleanup@V?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@@QAAPAVCServiceWatcher@CServiceConfigCache@@XZ
1630??C?$AutoCleanup@V?$AutoDelete@VCShellUriSettings@@@@PAVCShellUriSettings@@@@QAAPAVCShellUriSettings@@XZ
1631??C?$AutoCleanup@V?$AutoDelete@VCWSManEPR@@@@PAVCWSManEPR@@@@QAAPAVCWSManEPR@@XZ
1632??C?$AutoCleanup@V?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@@QAAPAVCWSManResource@@XZ
1633??C?$AutoCleanup@V?$AutoDelete@VCertHash@@@@PAVCertHash@@@@QAAPAVCertHash@@XZ
1634??C?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@QAAPAVConfigUpdate@@XZ
1635??C?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAPAVEnumSinkEx@@XZ
1636??C?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QBAQAVEnumSinkEx@@XZ
1637??C?$AutoCleanup@V?$AutoDelete@VExpiredOperationIdRecord@@@@PAVExpiredOperationIdRecord@@@@QAAPAVExpiredOperationIdRecord@@XZ
1638??C?$AutoCleanup@V?$AutoDelete@VGPApiManager@@@@PAVGPApiManager@@@@QAAPAVGPApiManager@@XZ
1639??C?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAPAVGeneralSinkEx@@XZ
1640??C?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QBAQAVGeneralSinkEx@@XZ
1641??C?$AutoCleanup@V?$AutoDelete@VIChannelObserverFactory@@@@PAVIChannelObserverFactory@@@@QAAPAVIChannelObserverFactory@@XZ
1642??C?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QAAPAVIQueryDASHSMASHInterface@@XZ
1643??C?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QBAQAVIQueryDASHSMASHInterface@@XZ
1644??C?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QAAPAVISpecification@@XZ
1645??C?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QBAQAVISpecification@@XZ
1646??C?$AutoCleanup@V?$AutoDelete@VMasterReceiveData@CListenerReceive@@@@PAVMasterReceiveData@CListenerReceive@@@@QAAPAVMasterReceiveData@CListenerReceive@@XZ
1647??C?$AutoCleanup@V?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAAPAVOptionValue@SessionOptions@Client@WSMan@@XZ
1648??C?$AutoCleanup@V?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@@QAAPAVPacketCreator@@XZ
1649??C?$AutoCleanup@V?$AutoDelete@VPacketParser@@@@PAVPacketParser@@@@QAAPAVPacketParser@@XZ
1650??C?$AutoCleanup@V?$AutoDelete@VRunAsConfiguration@@@@PAVRunAsConfiguration@@@@QAAPAVRunAsConfiguration@@XZ
1651??C?$AutoCleanup@V?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@@QAAPAVSecurityEntry@Catalog@@XZ
1652??C?$AutoCleanup@V?$AutoDelete@VSendPacketArgs@RobustConnectionBuffer@@@@PAVSendPacketArgs@RobustConnectionBuffer@@@@QAAPAVSendPacketArgs@RobustConnectionBuffer@@XZ
1653??C?$AutoCleanup@V?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@@QAAPAVServiceSoapProcessor@@XZ
1654??C?$AutoCleanup@V?$AutoDelete@VSubscriptionEnumerator@@@@PAVSubscriptionEnumerator@@@@QAAPAVSubscriptionEnumerator@@XZ
1655??C?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QAAPAVTSTRBUFFER@@XZ
1656??C?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QBAQAVTSTRBUFFER@@XZ
1657??C?$AutoCleanup@V?$AutoDelete@VUniqueStringOverflow@@@@PAVUniqueStringOverflow@@@@QAAPAVUniqueStringOverflow@@XZ
1658??C?$AutoCleanup@V?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@PAVWSMANCONFIGTABLE_IDENTITY@@@@QAAPAVWSMANCONFIGTABLE_IDENTITY@@XZ
1659??C?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QAAPAVWmiEnumContext@@XZ
1660??C?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QBAQAVWmiEnumContext@@XZ
1661??C?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@QAAPAVXmlReader@@XZ
1662??C?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QAAPAEXZ
1663??C?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QBAQAEXZ
1664??C?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QAAPAGXZ
1665??C?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QBAQAGXZ
1666??C?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QAAPAPAGXZ
1667??C?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QBAQAPAGXZ
1668??C?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QAAPAPBGXZ
1669??C?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QBAQAPBGXZ
1670??C?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAAPAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@XZ
1671??C?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QBAQAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@XZ
1672??C?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QAAPAU_WINRS_RUN_COMMAND_ARG@@XZ
1673??C?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QBAQAU_WINRS_RUN_COMMAND_ARG@@XZ
1674??C?$AutoCleanup@V?$AutoRelease@UIAppHostChildElementCollection@@@@PAUIAppHostChildElementCollection@@@@QAAPAUIAppHostChildElementCollection@@XZ
1675??C?$AutoCleanup@V?$AutoRelease@UIAppHostElementCollection@@@@PAUIAppHostElementCollection@@@@QAAPAUIAppHostElementCollection@@XZ
1676??C?$AutoCleanup@V?$AutoRelease@UIAppHostProperty@@@@PAUIAppHostProperty@@@@QAAPAUIAppHostProperty@@XZ
1677??C?$AutoCleanup@V?$AutoRelease@UIAppHostPropertyCollection@@@@PAUIAppHostPropertyCollection@@@@QAAPAUIAppHostPropertyCollection@@XZ
1678??C?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QAAPAUIClientSecurity@@XZ
1679??C?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QBAQAUIClientSecurity@@XZ
1680??C?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QAAPAUIEnumWbemClassObject@@XZ
1681??C?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QBAQAUIEnumWbemClassObject@@XZ
1682??C?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QAAPAUIErrorInfo@@XZ
1683??C?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QBAQAUIErrorInfo@@XZ
1684??C?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QAAPAUIUnknown@@XZ
1685??C?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QBAQAUIUnknown@@XZ
1686??C?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QAAPAUIWbemClassObject@@XZ
1687??C?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QBAQAUIWbemClassObject@@XZ
1688??C?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QAAPAUIWbemContext@@XZ
1689??C?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QBAQAUIWbemContext@@XZ
1690??C?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QAAPAUIWbemLocator@@XZ
1691??C?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QBAQAUIWbemLocator@@XZ
1692??C?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QAAPAUIWbemObjectTextSrc@@XZ
1693??C?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QBAQAUIWbemObjectTextSrc@@XZ
1694??C?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QAAPAUIWbemPath@@XZ
1695??C?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QBAQAUIWbemPath@@XZ
1696??C?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QAAPAUIWbemPathKeyList@@XZ
1697??C?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QBAQAUIWbemPathKeyList@@XZ
1698??C?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QAAPAUIWbemQualifierSet@@XZ
1699??C?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QBAQAUIWbemQualifierSet@@XZ
1700??C?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QAAPAUIWbemQuery@@XZ
1701??C?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QBAQAUIWbemQuery@@XZ
1702??C?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QAAPAUIWbemServices@@XZ
1703??C?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QBAQAUIWbemServices@@XZ
1704??C?$AutoCleanup@V?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAAPAVCBaseConfigCache@@XZ
1705??C?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@QAAPAVCClientConfigSettings@@XZ
1706??C?$AutoCleanup@V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@PAVCConfigCacheMap@CBaseConfigCache@@@@QAAPAVCConfigCacheMap@CBaseConfigCache@@XZ
1707??C?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@QAAPAVCConfigManager@@XZ
1708??C?$AutoCleanup@V?$AutoRelease@VCListenerReceive@@@@PAVCListenerReceive@@@@QAAPAVCListenerReceive@@XZ
1709??C?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@QAAPAVCRemoteSession@@XZ
1710??C?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@QBAQAVCRemoteSession@@XZ
1711??C?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@QAAPAVCRequestContext@@XZ
1712??C?$AutoCleanup@V?$AutoRelease@VCServiceCommonConfigSettings@@@@PAVCServiceCommonConfigSettings@@@@QAAPAVCServiceCommonConfigSettings@@XZ
1713??C?$AutoCleanup@V?$AutoRelease@VCServiceConfigCache@@@@PAVCServiceConfigCache@@@@QAAPAVCServiceConfigCache@@XZ
1714??C?$AutoCleanup@V?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@@QAAPAVCServiceConfigSettings@@XZ
1715??C?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QAAPAVCWSManEPR@@XZ
1716??C?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QBAQAVCWSManEPR@@XZ
1717??C?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyCache@@@@PAVCWSManGroupPolicyCache@@@@QAAPAVCWSManGroupPolicyCache@@XZ
1718??C?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@@QAAPAVCWSManGroupPolicyManager@@XZ
1719??C?$AutoCleanup@V?$AutoRelease@VCWSManObject@@@@PAVCWSManObject@@@@QAAPAVCWSManObject@@XZ
1720??C?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@QAAPAVCWSManResource@@XZ
1721??C?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QAAPAVCWinRSPluginConfigCache@@XZ
1722??C?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QBAQAVCWinRSPluginConfigCache@@XZ
1723??C?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@@QAAPAVCWinRSPluginConfigSettings@@XZ
1724??C?$AutoCleanup@V?$AutoRelease@VCommand@Client@WSMan@@@@PAVCommand@Client@WSMan@@@@QAAPAVCommand@Client@WSMan@@XZ
1725??C?$AutoCleanup@V?$AutoRelease@VConfigNotification@@@@PAVConfigNotification@@@@QAAPAVConfigNotification@@XZ
1726??C?$AutoCleanup@V?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@PAVConnectShellOperation@Client@WSMan@@@@QAAPAVConnectShellOperation@Client@WSMan@@XZ
1727??C?$AutoCleanup@V?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@PAVCreateShellOperation@Client@WSMan@@@@QAAPAVCreateShellOperation@Client@WSMan@@XZ
1728??C?$AutoCleanup@V?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@PAVDeleteShellOperation@Client@WSMan@@@@QAAPAVDeleteShellOperation@Client@WSMan@@XZ
1729??C?$AutoCleanup@V?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@PAVDisconnectOperation@Client@WSMan@@@@QAAPAVDisconnectOperation@Client@WSMan@@XZ
1730??C?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAPAVEnumSinkEx@@XZ
1731??C?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QBAQAVEnumSinkEx@@XZ
1732??C?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAPAVGeneralSinkEx@@XZ
1733??C?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QBAQAVGeneralSinkEx@@XZ
1734??C?$AutoCleanup@V?$AutoRelease@VIPCSoapProcessor@@@@PAVIPCSoapProcessor@@@@QAAPAVIPCSoapProcessor@@XZ
1735??C?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QAAPAVIRequestContext@@XZ
1736??C?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QBAQAVIRequestContext@@XZ
1737??C?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@QAAPAVInboundRequestDetails@@XZ
1738??C?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@QBAQAVInboundRequestDetails@@XZ
1739??C?$AutoCleanup@V?$AutoRelease@VReceiveOperation@Client@WSMan@@@@PAVReceiveOperation@Client@WSMan@@@@QAAPAVReceiveOperation@Client@WSMan@@XZ
1740??C?$AutoCleanup@V?$AutoRelease@VReconnectOperation@Client@WSMan@@@@PAVReconnectOperation@Client@WSMan@@@@QAAPAVReconnectOperation@Client@WSMan@@XZ
1741??C?$AutoCleanup@V?$AutoRelease@VSendOperation@Client@WSMan@@@@PAVSendOperation@Client@WSMan@@@@QAAPAVSendOperation@Client@WSMan@@XZ
1742??C?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAAPAVShell@Client@WSMan@@XZ
1743??C?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QBAQAVShell@Client@WSMan@@XZ
1744??C?$AutoCleanup@V?$AutoRelease@VSignalOperation@Client@WSMan@@@@PAVSignalOperation@Client@WSMan@@@@QAAPAVSignalOperation@Client@WSMan@@XZ
1745??C?$AutoCleanup@V?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@@QAAPAVUserRecord@@XZ
1746??C?$AutoCleanup@V?$AutoRelease@VWSManHttpListener@@@@PAVWSManHttpListener@@@@QAAPAVWSManHttpListener@@XZ
1747??C?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QAAPAGXZ
1748??C?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QBAQAGXZ
1749??C?$AutoCleanup@VAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@@QAAPBU_CERT_CHAIN_CONTEXT@@XZ
1750??C?$AutoCleanup@VAutoImpersonateUser@@PAX@@QAAPAXXZ
1751??C?$AutoCleanup@VAutoImpersonateUser@@PAX@@QBAQAXXZ
1752??C?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QAAPAU_MI_Class@@XZ
1753??C?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QBAAAPAVExpiredOperationIdRecord@@XZ
1754??C?$SafeSet_Iterator@PAVCListenerOperation@@@@QBAABQAVCListenerOperation@@XZ
1755??D?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QBAAAVCertThumbprintMappedSet@CServiceConfigSettings@@XZ
1756??D?$SafeMap_Iterator@VKey@Locale@@K@@QBAAAKXZ
1757??D?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QBAAAPAVExpiredOperationIdRecord@@XZ
1758??D?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QBAAAPAVOptionValue@SessionOptions@Client@WSMan@@XZ
1759??D?$SafeSet_Iterator@PAVCCertMapping@@@@QBAABQAVCCertMapping@@XZ
1760??D?$SafeSet_Iterator@PAVCListenerOperation@@@@QBAABQAVCListenerOperation@@XZ
1761??D?$SafeSet_Iterator@PAVCShellUriSettings@@@@QBAABQAVCShellUriSettings@@XZ
1762??E?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QAAXH@Z
1763??E?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QAAXH@Z
1764??E?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QAAXH@Z
1765??E?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QAAXH@Z
1766??E?$SafeMap_Iterator@VStringKeyCI@@K@@QAAXH@Z
1767??E?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@QAAXH@Z
1768??E?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QAAXH@Z
1769??E?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAAXH@Z
1770??_7?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@6B@ DATA
1771??_7?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@6B@ DATA
1772??_7?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@6B@ DATA
1773??_7?$SafeMap@PAVCollector@@UEmpty@@V?$SafeSet_Iterator@PAVCollector@@@@@@6B@ DATA
1774??_7?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeSet_Iterator@PAVHostOperation@@@@@@6B@ DATA
1775??_7?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeSet_Iterator@PAVIOperation@@@@@@6B@ DATA
1776??_7?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@6B@ DATA
1777??_7?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVPushSubscription@@@@@@6B@ DATA
1778??_7?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@6B@ DATA
1779??_7?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@6B@ DATA
1780??_7?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@6B@ DATA
1781??_7?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@6B@ DATA
1782??_7?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@6B@ DATA
1783??_7?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@6B@ DATA
1784??_7?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@6B@ DATA
1785??_7?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@6B@ DATA
1786??_7?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@6B@ DATA
1787??_7?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@6B@ DATA
1788??_7?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@6B@ DATA
1789??_7?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@6B@ DATA
1790??_7?$SafeSet@PAVCCertMapping@@@@6B@ DATA
1791??_7?$SafeSet@PAVCListenerOperation@@@@6B@ DATA
1792??_7?$SafeSet@PAVCShellUriSettings@@@@6B@ DATA
1793??_7?$SafeSet@PAX@@6B@ DATA
1794??_7BufferFormatter@@6B@ DATA
1795??_7CBaseConfigCache@@6BIConfigChangeObserver@@@ DATA
1796??_7CBaseConfigCache@@6BILifeTimeMgmt@@@ DATA
1797??_7CClientConfigCache@@6BIConfigChangeObserver@@@ DATA
1798??_7CClientConfigCache@@6BILifeTimeMgmt@@@ DATA
1799??_7CConfigManager@@6B@ DATA
1800??_7CErrorContext@@6B@ DATA
1801??_7CRequestContext@@6BCErrorContext@@@ DATA
1802??_7CRequestContext@@6BEtwCorrelationHelper@@@ DATA
1803??_7CServiceConfigCache@@6BIConfigChangeObserver@@@ DATA
1804??_7CServiceConfigCache@@6BILifeTimeMgmt@@@ DATA
1805??_7CWSManEPR@@6B@ DATA
1806??_7CWSManGroupPolicyManager@@6B@ DATA
1807??_7CWSManResource@@6B@ DATA
1808??_7CWSManResourceNoResourceUri@@6B@ DATA
1809??_7CWSManSecurityUI@@6B@ DATA
1810??_7CWinRSPluginConfigCache@@6BIConfigChangeObserver@@@ DATA
1811??_7CWinRSPluginConfigCache@@6BILifeTimeMgmt@@@ DATA
1812??_7CircularBufferFormatter@@6B@ DATA
1813??_7EtwCorrelationHelper@@6B@ DATA
1814??_7IConfigChangeObserver@@6B@ DATA
1815??_7ILifeTimeMgmt@@6B@ DATA
1816??_7IRequestContext@@6B@ DATA
1817??_7IWSManGroupPolicyObserver@@6B@ DATA
1818??_7IWSManGroupPolicyPublisher@@6B@ DATA
1819??_7PacketParser@@6B@ DATA
1820??_7UserAuthzRecord@@6B@ DATA
1821??_7UserRecord@@6B@ DATA
1822??_FCErrorContext@@QAAXXZ
1823??_FRBUFFER@@QAAXXZ
1824?Acquire@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@UBAXXZ
1825?Acquire@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@UBAXXZ
1826?Acquire@?$SafeMap@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@UBAXXZ
1827?Acquire@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@UBAXXZ
1828?Acquire@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@UBAXXZ
1829?Acquire@?$SafeMap@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@UBAXXZ
1830?Acquire@?$SafeMap@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@UBAXXZ
1831?Acquire@?$SafeMap@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@UBAXXZ
1832?Acquire@?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@UBAXXZ
1833?Acquire@?$SafeMap@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@UBAXXZ
1834?Acquire@?$SafeMap@PAVCollector@@UEmpty@@V?$SafeSet_Iterator@PAVCollector@@@@@@UBAXXZ
1835?Acquire@?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@UBAXXZ
1836?Acquire@?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeSet_Iterator@PAVHostOperation@@@@@@UBAXXZ
1837?Acquire@?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@UBAXXZ
1838?Acquire@?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeSet_Iterator@PAVIOperation@@@@@@UBAXXZ
1839?Acquire@?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@UBAXXZ
1840?Acquire@?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@UBAXXZ
1841?Acquire@?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@UBAXXZ
1842?Acquire@?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVPushSubscription@@@@@@UBAXXZ
1843?Acquire@?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@UBAXXZ
1844?Acquire@?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@UBAXXZ
1845?Acquire@?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@UBAXXZ
1846?Acquire@?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@UBAXXZ
1847?Acquire@?$SafeMap@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@UBAXXZ
1848?Acquire@?$SafeMap@VKey@CWmiPtrCache@@VMapping@2@V?$SafeMap_Iterator@VKey@CWmiPtrCache@@VMapping@2@@@@@UBAXXZ
1849?Acquire@?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@UBAXXZ
1850?Acquire@?$SafeMap@VStringKey@@PAVListenerEvents@@V?$SafeMap_Iterator@VStringKey@@PAVListenerEvents@@@@@@UBAXXZ
1851?Acquire@?$SafeMap@VStringKey@@PAVListenerSourceSubscription@@V?$SafeMap_Iterator@VStringKey@@PAVListenerSourceSubscription@@@@@@UBAXXZ
1852?Acquire@?$SafeMap@VStringKey@@UOption@WinRM_OperationOptions@@V?$SafeMap_Iterator@VStringKey@@UOption@WinRM_OperationOptions@@@@@@UBAXXZ
1853?Acquire@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@UBAXXZ
1854?Acquire@?$SafeMap@VStringKeyCI@@PAVIISEndpoint@@V?$SafeMap_Iterator@VStringKeyCI@@PAVIISEndpoint@@@@@@UBAXXZ
1855?Acquire@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@UBAXXZ
1856?Acquire@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@UBAXXZ
1857?Acquire@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@UBAXXZ
1858?Acquire@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@UBAXXZ
1859?Acquire@?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@UBAXXZ
1860?Acquire@?$SafeMap@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@V?$SafeMap_Iterator@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@@@@@UBAXXZ
1861?Acquire@?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@UBAXXZ
1862?Acquire@?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@UBAXXZ
1863?Acquire@?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@QAAXXZ
1864?Acquire@?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@QAAXXZ
1865?Acquire@?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@QAAXXZ
1866?Acquire@?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAAXXZ
1867?Acquire@?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@QAAXXZ
1868?Acquire@?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@QAAXXZ
1869?Acquire@?$SafeMap_Lock@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@QAAXXZ
1870?Acquire@?$SafeMap_Lock@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@QAAXXZ
1871?Acquire@?$SafeMap_Lock@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAAXXZ
1872?Acquire@?$SafeMap_Lock@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAAXXZ
1873?Acquire@?$SafeMap_Lock@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAAXXZ
1874?Acquire@?$SafeMap_Lock@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QAAXXZ
1875?Acquire@?$SafeMap_Lock@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAXXZ
1876?Acquire@?$SafeMap_Lock@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@QAAXXZ
1877?Acquire@?$SafeMap_Lock@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAAXXZ
1878?Acquire@?$SafeMap_Lock@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAAXXZ
1879?Acquire@?$SafeMap_Lock@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAAXXZ
1880?Acquire@?$SafeMap_Lock@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAXXZ
1881?Acquire@?$SafeMap_Lock@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAAXXZ
1882?Acquire@CWSManCriticalSection@@QAAXXZ
1883?AcquireExclusive@FastLock@@QAAXXZ
1884?AcquireShared@FastLock@@QAAXXZ
1885?Acquired@?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@QAA_NXZ
1886?Acquired@?$SafeMap_Lock@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@QAA_NXZ
1887?Acquired@?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@QAA_NXZ
1888?Acquired@?$SafeMap_Lock@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@QAA_NXZ
1889?Acquired@?$SafeMap_Lock@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@QAA_NXZ
1890?Acquired@?$SafeMap_Lock@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@QAA_NXZ
1891?Acquired@?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@QAA_NXZ
1892?Acquired@?$SafeMap_Lock@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@QAA_NXZ
1893?Acquired@?$SafeMap_Lock@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@QAA_NXZ
1894?Acquired@?$SafeMap_Lock@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@QAA_NXZ
1895?Acquired@?$SafeMap_Lock@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@QAA_NXZ
1896?Acquired@?$SafeMap_Lock@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@QAA_NXZ
1897?Acquired@?$SafeMap_Lock@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@QAA_NXZ
1898?Acquired@?$SafeMap_Lock@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAA_NXZ
1899?Acquired@?$SafeMap_Lock@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAA_NXZ
1900?Acquired@?$SafeMap_Lock@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAA_NXZ
1901?Acquired@?$SafeMap_Lock@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@QAA_NXZ
1902?Acquired@?$SafeMap_Lock@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QAA_NXZ
1903?Acquired@?$SafeMap_Lock@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA_NXZ
1904?Acquired@?$SafeMap_Lock@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@QAA_NXZ
1905?Acquired@?$SafeMap_Lock@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAA_NXZ
1906?Acquired@?$SafeMap_Lock@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAA_NXZ
1907?Acquired@?$SafeMap_Lock@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAA_NXZ
1908?Acquired@?$SafeMap_Lock@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA_NXZ
1909?Acquired@?$SafeMap_Lock@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAA_NXZ
1910?Add@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@QAA_NABQAVCCertMapping@@ABUEmpty@@AAVIRequestContext@@@Z
1911?Add@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA_NABQAVCListenerOperation@@ABUEmpty@@AAVIRequestContext@@@Z
1912?Add@?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@QAA_NABQAVCShellUriSettings@@ABUEmpty@@AAVIRequestContext@@@Z
1913?Add@?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@QAA_NABQAXABUEmpty@@AAVIRequestContext@@@Z
1914?Add@?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAA_NABUPluginKey@@ABKAAVIRequestContext@@@Z
1915?Add@?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAA_NABUUserKey@@ABQAVBlockedRecord@@AAVIRequestContext@@@Z
1916?Add@?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAA_NABVCertThumbprintKey@@ABVCertThumbprintMappedSet@CServiceConfigSettings@@AAVIRequestContext@@@Z
1917?Add@?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QAA_NABVKey@Locale@@ABKAAVIRequestContext@@@Z
1918?Add@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA_NABVStringKeyCI@@ABKAAVIRequestContext@@@Z
1919?Add@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@QAA_NABVStringKeyCI@@ABUEmpty@@AAVIRequestContext@@@Z
1920?Add@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAA_NABVStringKeyCI@@ABUUSER_CONTEXT_INFO@WSManHttpListener@@AAVIRequestContext@@@Z
1921?Add@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAA_NABVStringKeyStore@@ABQAVExpiredOperationIdRecord@@AAVIRequestContext@@@Z
1922?Add@?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAA_NABVStringKeyStore@@ABQAVServerFullDuplexChannel@@AAVIRequestContext@@@Z
1923?Add@?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAA_NABW4WSManSessionOption@@ABQAVOptionValue@SessionOptions@Client@WSMan@@AAVIRequestContext@@@Z
1924?Add@?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAA_NAB_KABQAVSendPacketArgs@RobustConnectionBuffer@@AAVIRequestContext@@@Z
1925?Add@?$SafeSet@PAVCCertMapping@@@@QAA_NABQAVCCertMapping@@AAVIRequestContext@@@Z
1926?Add@?$SafeSet@PAVCListenerOperation@@@@QAA_NABQAVCListenerOperation@@AAVIRequestContext@@@Z
1927?Add@?$SafeSet@PAVCShellUriSettings@@@@QAA_NABQAVCShellUriSettings@@AAVIRequestContext@@@Z
1928?Add@?$SafeSet@PAX@@QAA_NABQAXAAVIRequestContext@@@Z
1929?Add@?$SafeSet@VStringKeyCI@@@@QAA_NABVStringKeyCI@@AAVIRequestContext@@@Z
1930?AddDefaultPlugins@ConfigUpdate@@SAHPAVIRequestContext@@H@Z
1931?AddKey@CWSManResourceNoResourceUri@@QAAHPBG0PAVIRequestContext@@@Z
1932?AddMessage@CRequestContext@@AAAHPBGPAPAD1@Z
1933?AddOption@CWSManResourceNoResourceUri@@QAAHPBG0HPAVIRequestContext@@@Z
1934?AddOptionSet@CWSManResourceNoResourceUri@@QAAHPAU_WSMAN_OPTION_SET@@PAVIRequestContext@@@Z
1935?AddPacket@PacketParser@@QAA_NPAVPacket@@_N11@Z
1936?AddRef@CWSManSecurityUI@@UAAKXZ
1937?AddRef@ILifeTimeMgmt@@UAAJXZ
1938?AddRef@UserRecord@@QAA_NAAVIRequestContext@@@Z
1939?AddSource@CBaseConfigCache@@IAAHPAVIRequestContext@@PAVCConfigChangeSource@@@Z
1940?AddToMap@CBaseConfigCache@@AAAHPAVIRequestContext@@AAVAutoLocalFree@@@Z
1941?Alloc@WSManMemory@@SAPAXIHW4_NitsFaultMode@@@Z
1942?AllocBstr@WSManMemory@@SAPAGPBGHH@Z
1943?AllocBstrLen@WSManMemory@@SAPAGPBGIHH@Z
1944?AllocCache@CClientConfigCache@@CAPAVCBaseConfigCache@@XZ
1945?AllocCache@CServiceConfigCache@@CAPAVCBaseConfigCache@@XZ
1946?AllocCache@CWinRSPluginConfigCache@@CAPAVCBaseConfigCache@@XZ
1947?AllocSysString@TSTRBUFFER@@QBAJPAPAG@Z
1948?AllowBasic@CCommonConfigSettings@@UBAHXZ
1949?AllowClientCertificate@CCommonConfigSettings@@UBAHXZ
1950?AllowCredSsp@CCommonConfigSettings@@UBAHXZ
1951?AllowKerberos@CCommonConfigSettings@@UBAHXZ
1952?AllowNegotiate@CCommonConfigSettings@@UBAHXZ
1953?AllowUnencrypted@CCommonConfigSettings@@UBAHXZ
1954?Append@SBUFFER@@QAAJPAEI@Z
1955?Append@SBUFFER@@QAAJPAV1@@Z
1956?Append@TSTRBUFFER@@QAAJPBG@Z
1957?Append@TSTRBUFFER@@QAAJPBGII@Z
1958?AppendChar@TSTRBUFFER@@QAAJG@Z
1959?AppendEscapeXmlAttribute@TSTRBUFFER@@QAAJPBGG@Z
1960?AppendEscapeXmlContent@TSTRBUFFER@@QAAJPBG_N@Z
1961?AppendXmlElem@TSTRBUFFER@@QAAJPBG0HKPAU_XML_ATTRIB@@@Z
1962?AppendXmlElemWithNamespace@TSTRBUFFER@@QAAJPBG00HKPAU_XML_ATTRIB@@@Z
1963?AppendXmlElemWithNamespaceAndPrefix@TSTRBUFFER@@QAAJPBG000HKPAU_XML_ATTRIB@@@Z
1964?AppendXmlElemWithPrefix@TSTRBUFFER@@QAAJPBG00HKPAU_XML_ATTRIB@@@Z
1965?AppendXmlEndElem@TSTRBUFFER@@QAAJPBG@Z
1966?AppendXmlEndElemWithPrefix@TSTRBUFFER@@QAAJPBG0@Z
1967?AppendXmlEndFragment@TSTRBUFFER@@QAAJXZ
1968?AppendXmlEndItem@TSTRBUFFER@@QAAJXZ
1969?AppendXmlStartElem@TSTRBUFFER@@QAAJPBGHKPAU_XML_ATTRIB@@@Z
1970?AppendXmlStartElemWithNamespace@TSTRBUFFER@@QAAJPBG0HKPAU_XML_ATTRIB@@@Z
1971?AppendXmlStartElemWithNamespaceAndPrefix@TSTRBUFFER@@QAAJPBG00HKPAU_XML_ATTRIB@@@Z
1972?AppendXmlStartElemWithNamespaces@TSTRBUFFER@@QAAJPBGKPAU_XML_NAMESPACE_PREFIX@@HKPAU_XML_ATTRIB@@@Z
1973?AppendXmlStartElemWithNamespacesAndPrefixes@TSTRBUFFER@@QAAJPBG0KPAU_XML_NAMESPACE_PREFIX@@HKPAU_XML_ATTRIB@@@Z
1974?AppendXmlStartElemWithPrefix@TSTRBUFFER@@QAAJPBG0HKPAU_XML_ATTRIB@@@Z
1975?AppendXmlStartFragment@TSTRBUFFER@@QAAJXZ
1976?AppendXmlStartItem@TSTRBUFFER@@QAAJXZ
1977?ApplyQuota@UserRecord@@QAA_NW4OperationType@@AAVIRequestContext@@PBVProvider@Catalog@@PAVCServiceConfigSettings@@@Z
1978?ApplySecurity@ConfigRegistry@@IAAHPAVIRequestContext@@PAUHKEY__@@PBG2@Z
1979?AsReference@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@QAAAAV1@XZ
1980?AsReference@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAAAAV1@XZ
1981?AsReference@?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@QAAAAV1@XZ
1982?AsReference@?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@QAAAAV1@XZ
1983?AsReference@?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAAAAV1@XZ
1984?AsReference@?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAAAAV1@XZ
1985?AsReference@?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAAAAV1@XZ
1986?AsReference@?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QAAAAV1@XZ
1987?AsReference@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAAAV1@XZ
1988?AsReference@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAAAAV1@XZ
1989?AsReference@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAAAAV1@XZ
1990?AsReference@?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAAAAV1@XZ
1991?AsReference@?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAAAV1@XZ
1992?AsReference@?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAAAAV1@XZ
1993?AuthzComplete@UserRecord@@UAAKPAX0W4AdministratorType@UserAuthzRecord@@KPBG@Z
1994?BOMS@PacketFormatter@@0QBUBOMInfo@1@B DATA
1995?BeginRevertToSelf@CSecurity@@SAHPAPAXK@Z
1996?BuildFragmentTransfer@CWSManResourceNoResourceUri@@UAAHAAVBufferFormatter@@@Z
1997?BuildOptionSet@CWSManResourceNoResourceUri@@QAAHAAVBufferFormatter@@@Z
1998?BuildSelectorSet@CWSManEPR@@UAAHAAVBufferFormatter@@@Z
1999?BuildSelectorSet@CWSManResourceNoResourceUri@@UAAHAAVBufferFormatter@@@Z
2000?CHARSETS@PacketFormatter@@0QBUCharsetInfo@1@B DATA
2001?ChangeLogging@CServiceConfigCache@@QAAXW4ErrorLogging@@@Z
2002?CheckSharedSSLConfiguration@ConfigRegistry@@IAAHPAVIRequestContext@@PBG1HPAH@Z
2003?Clear@?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QAAXXZ
2004?Clear@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAXXZ
2005?Clear@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAAXXZ
2006?Clear@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAAXXZ
2007?ClearKeys@CWSManResourceNoResourceUri@@QAAHXZ
2008?ClearOptions@CWSManResourceNoResourceUri@@QAAHXZ
2009?ClearRegistryKeys@ConfigRegistry@@IAAHPAVIRequestContext@@@Z
2010?ClearSubKeys@@YAHPAUHKEY__@@PAVIRequestContext@@@Z
2011?CompleteWithErrorContext@CRequestContext@@QAAXPAU_WSMAN_PLUGIN_REQUEST@@@Z
2012?Confirm@ExtendedSemantic@@2KB
2013?Copy@TSTRBUFFER@@QAAJPBG@Z
2014?CopyString@@YAPAGPAVIRequestContext@@W4CallSiteId@@PBG@Z
2015?CopyString@@YAPAGPBGABHAAVIRequestContext@@@Z
2016?CopyString@MessageId@PacketParser@@QAAKPBGH@Z
2017?CopyTo@CErrorContext@@UBAXPAVIRequestContext@@@Z
2018?CopyTo@CRequestContext@@UBAXPAVIRequestContext@@@Z
2019?CreateActivityId@EventHandler@WSMan@@SAXAAU_GUID@@@Z
2020?CreateAnEvent@SoapSemanticConverter@@QAAKKPAVSemanticMessage@@AAVBufferFormatter@@PAVIRequestContext@@@Z
2021?CreateAutoConfiguredListener@CConfigManager@@AAAHPAVIRequestContext@@PAVLISTENER_IDENTITY@@@Z
2022?CreateInstance@?$ILoader@VAdminSid@CSecurity@@@@IAA_NAAVIRequestContext@@@Z
2023?CreateInstance@?$ILoader@VCredUIDllLoader@@@@IAA_NAAVIRequestContext@@@Z
2024?CreateInstance@?$ILoader@VEventHandler@WSMan@@@@IAA_NAAVIRequestContext@@@Z
2025?CreateInstance@?$ILoader@VInteractiveSid@CSecurity@@@@IAA_NAAVIRequestContext@@@Z
2026?CreateInstance@?$ILoader@VIpHlpApiDllLoader@@@@IAA_NAAVIRequestContext@@@Z
2027?CreateInstance@?$ILoader@VMachineName@@@@IAA_NAAVIRequestContext@@@Z
2028?CreateInstance@?$ILoader@VNetworkServiceSid@CSecurity@@@@IAA_NAAVIRequestContext@@@Z
2029?CreateInstance@?$ILoader@VNtDsApiDllLoader@@@@IAA_NAAVIRequestContext@@@Z
2030?CreateInstance@?$ILoader@VResources@Locale@@@@IAA_NAAVIRequestContext@@@Z
2031?CreateInstance@?$ILoader@VShell32DllLoader@@@@IAA_NAAVIRequestContext@@@Z
2032?CreateInstance@?$ILoader@VShlWApiDllLoader@@@@IAA_NAAVIRequestContext@@@Z
2033?CreateInstance@?$ILoader@VSubscriptionManager@@@@IAA_NAAVIRequestContext@@@Z
2034?CreateInstance@?$ILoader@VUser32DllLoader@@@@IAA_NAAVIRequestContext@@@Z
2035?CreateInstance@?$ILoader@VWSManMemCryptManager@@@@IAA_NAAVIRequestContext@@@Z
2036?CreateKey@ConfigRegistry@@IAAHPAVIRequestContext@@PBGPAPAUHKEY__@@1KPAK@Z
2037?CreateNew@CBaseConfigCache@@CAPAV1@PAVIRequestContext@@PAVCConfigCacheMap@1@P6APAV1@XZW4ErrorLogging@@H@Z
2038CreateProvHost
2039?CreateRenderingInformation@CWSManSecurityUI@@AAAHPAVIRequestContext@@@Z
2040?CreateResponse@SoapSemanticConverter@@QAAKKW4_MI_OperationCallback_ResponseType@@AAVBufferFormatter@@PAVIRequestContext@@@Z
2041?CreateSessionGuid@SessionId@PacketParser@@QAAKPBGH@Z
2042?Data@?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@IBAAAV?$STLMap@PAVCCertMapping@@UEmpty@@@@XZ
2043?Data@?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@IBAAAV?$STLMap@PAVCListenerOperation@@UEmpty@@@@XZ
2044?Data@?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@IBAAAV?$STLMap@PAVCShellUriSettings@@UEmpty@@@@XZ
2045?Data@?$SafeMap_Iterator@PAXUEmpty@@@@IBAAAV?$STLMap@PAXUEmpty@@@@XZ
2046?Data@?$SafeMap_Iterator@UPluginKey@@K@@IBAAAV?$STLMap@UPluginKey@@K@@XZ
2047?Data@?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@IBAAAV?$STLMap@UUserKey@@PAVBlockedRecord@@@@XZ
2048?Data@?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@IBAAAV?$STLMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@XZ
2049?Data@?$SafeMap_Iterator@VKey@Locale@@K@@IBAAAV?$STLMap@VKey@Locale@@K@@XZ
2050?Data@?$SafeMap_Iterator@VStringKeyCI@@K@@IBAAAV?$STLMap@VStringKeyCI@@K@@XZ
2051?Data@?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@IBAAAV?$STLMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@XZ
2052?Data@?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@IBAAAV?$STLMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@XZ
2053?Data@?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@IBAAAV?$STLMap@VStringKeyStore@@PAVServerFullDuplexChannel@@@@XZ
2054?Data@?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@IBAAAV?$STLMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@XZ
2055?Data@?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@IBAAAV?$STLMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@XZ
2056?DeInitialize@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2057?DeInitialize@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@UAA_NAAVIRequestContext@@@Z
2058?DeInitialize@?$SafeMap@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@UAA_NAAVIRequestContext@@@Z
2059?DeInitialize@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2060?DeInitialize@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@UAA_NAAVIRequestContext@@@Z
2061?DeInitialize@?$SafeMap@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@UAA_NAAVIRequestContext@@@Z
2062?DeInitialize@?$SafeMap@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@UAA_NAAVIRequestContext@@@Z
2063?DeInitialize@?$SafeMap@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@UAA_NAAVIRequestContext@@@Z
2064?DeInitialize@?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@UAA_NAAVIRequestContext@@@Z
2065?DeInitialize@?$SafeMap@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2066?DeInitialize@?$SafeMap@PAVCollector@@UEmpty@@V?$SafeSet_Iterator@PAVCollector@@@@@@UAA_NAAVIRequestContext@@@Z
2067?DeInitialize@?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2068?DeInitialize@?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeSet_Iterator@PAVHostOperation@@@@@@UAA_NAAVIRequestContext@@@Z
2069?DeInitialize@?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2070?DeInitialize@?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeSet_Iterator@PAVIOperation@@@@@@UAA_NAAVIRequestContext@@@Z
2071?DeInitialize@?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2072?DeInitialize@?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@UAA_NAAVIRequestContext@@@Z
2073?DeInitialize@?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2074?DeInitialize@?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVPushSubscription@@@@@@UAA_NAAVIRequestContext@@@Z
2075?DeInitialize@?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@UAA_NAAVIRequestContext@@@Z
2076?DeInitialize@?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@UAA_NAAVIRequestContext@@@Z
2077?DeInitialize@?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@UAA_NAAVIRequestContext@@@Z
2078?DeInitialize@?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@UAA_NAAVIRequestContext@@@Z
2079?DeInitialize@?$SafeMap@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@UAA_NAAVIRequestContext@@@Z
2080?DeInitialize@?$SafeMap@VKey@CWmiPtrCache@@VMapping@2@V?$SafeMap_Iterator@VKey@CWmiPtrCache@@VMapping@2@@@@@UAA_NAAVIRequestContext@@@Z
2081?DeInitialize@?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@UAA_NAAVIRequestContext@@@Z
2082?DeInitialize@?$SafeMap@VStringKey@@PAVListenerEvents@@V?$SafeMap_Iterator@VStringKey@@PAVListenerEvents@@@@@@UAA_NAAVIRequestContext@@@Z
2083?DeInitialize@?$SafeMap@VStringKey@@PAVListenerSourceSubscription@@V?$SafeMap_Iterator@VStringKey@@PAVListenerSourceSubscription@@@@@@UAA_NAAVIRequestContext@@@Z
2084?DeInitialize@?$SafeMap@VStringKey@@UOption@WinRM_OperationOptions@@V?$SafeMap_Iterator@VStringKey@@UOption@WinRM_OperationOptions@@@@@@UAA_NAAVIRequestContext@@@Z
2085?DeInitialize@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@UAA_NAAVIRequestContext@@@Z
2086?DeInitialize@?$SafeMap@VStringKeyCI@@PAVIISEndpoint@@V?$SafeMap_Iterator@VStringKeyCI@@PAVIISEndpoint@@@@@@UAA_NAAVIRequestContext@@@Z
2087?DeInitialize@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2088?DeInitialize@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@UAA_NAAVIRequestContext@@@Z
2089?DeInitialize@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@UAA_NAAVIRequestContext@@@Z
2090?DeInitialize@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@UAA_NAAVIRequestContext@@@Z
2091?DeInitialize@?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@UAA_NAAVIRequestContext@@@Z
2092?DeInitialize@?$SafeMap@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@V?$SafeMap_Iterator@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@@@@@UAA_NAAVIRequestContext@@@Z
2093?DeInitialize@?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@UAA_NAAVIRequestContext@@@Z
2094?DeInitialize@?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@UAA_NAAVIRequestContext@@@Z
2095?DeInitialize@CWSManGroupPolicyManager@@AAAHXZ
2096?DeInitialize@EventHandler@WSMan@@QAA_NAAVIRequestContext@@@Z
2097?Debug@ExtendedSemantic@@2KB
2098?Decode@PacketFormatter@@QBAKPAPAVPacket@@@Z
2099?DecodeFaultObject@CRequestContext@@AAAKPAU_FWXML_ELEMENT@@AAPBG11@Z
2100?DecodeFaultObject@CRequestContext@@AAAKPBGKAAPBG11@Z
2101?DecodeFaultObjectProvider@CRequestContext@@AAAKPAU_FWXML_ELEMENT@@AAPBG1@Z
2102?DecodeFaultObjectProviderMessage@CRequestContext@@AAAKPAU_FWXML_ELEMENT@@AAPBG@Z
2103?DecodeFaultReason@CRequestContext@@AAAKPAU_FWXML_ELEMENT@@AAPBG@Z
2104?DecreaseProfileCount@UserRecord@@QAAXXZ
2105?DeleteConfigKey@ConfigRegistry@@KAHPAVIRequestContext@@PBG1H@Z
2106?DeleteCredentialsFromCredmanStore@CConfigManager@@SAHPAVIRequestContext@@PAG@Z
2107?DeleteKey@@YAHPAVIRequestContext@@PBG1@Z
2108?DeleteKey@ConfigRegistry@@KAHPAVIRequestContext@@PBGH@Z
2109?DeleteSubkeys@ConfigRegistry@@KAHPAVIRequestContext@@PAUHKEY__@@PBGHH@Z
2110?DeleteValues@ConfigRegistry@@KAHPAVIRequestContext@@PAUHKEY__@@@Z
2111?Detach@?$AutoCleanup@V?$AutoDelete@G@@PAG@@QAAPAGXZ
2112?Detach@?$AutoCleanup@V?$AutoDelete@UIPRange@CWSManIPFilter@@@@PAUIPRange@CWSManIPFilter@@@@QAAPAUIPRange@CWSManIPFilter@@XZ
2113?Detach@?$AutoCleanup@V?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@PAU_WSMAN_STREAM_ID_SET@@@@QAAPAU_WSMAN_STREAM_ID_SET@@XZ
2114?Detach@?$AutoCleanup@V?$AutoDelete@V?$Handle@VISubscription@@@@@@PAV?$Handle@VISubscription@@@@@@QAAPAV?$Handle@VISubscription@@@@XZ
2115?Detach@?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@QAAPAV?$SafeSet@PAVCCertMapping@@@@XZ
2116?Detach@?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@QAAPAV?$SafeSet@PAVCShellUriSettings@@@@XZ
2117?Detach@?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@QAAPAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@XZ
2118?Detach@?$AutoCleanup@V?$AutoDelete@VAdminSid@CSecurity@@@@PAVAdminSid@CSecurity@@@@QAAPAVAdminSid@CSecurity@@XZ
2119?Detach@?$AutoCleanup@V?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@@QAAPAVBlockedRecord@@XZ
2120?Detach@?$AutoCleanup@V?$AutoDelete@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAAPAVCBaseConfigCache@@XZ
2121?Detach@?$AutoCleanup@V?$AutoDelete@VCCertMapping@@@@PAVCCertMapping@@@@QAAPAVCCertMapping@@XZ
2122?Detach@?$AutoCleanup@V?$AutoDelete@VCListenerSettings@@@@PAVCListenerSettings@@@@QAAPAVCListenerSettings@@XZ
2123?Detach@?$AutoCleanup@V?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@@QAAPAVCServiceWatcher@CServiceConfigCache@@XZ
2124?Detach@?$AutoCleanup@V?$AutoDelete@VCShellUriSettings@@@@PAVCShellUriSettings@@@@QAAPAVCShellUriSettings@@XZ
2125?Detach@?$AutoCleanup@V?$AutoDelete@VCWSManEPR@@@@PAVCWSManEPR@@@@QAAPAVCWSManEPR@@XZ
2126?Detach@?$AutoCleanup@V?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@@QAAPAVCWSManResource@@XZ
2127?Detach@?$AutoCleanup@V?$AutoDelete@VCertHash@@@@PAVCertHash@@@@QAAPAVCertHash@@XZ
2128?Detach@?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@QAAPAVConfigUpdate@@XZ
2129?Detach@?$AutoCleanup@V?$AutoDelete@VCredUIDllLoader@@@@PAVCredUIDllLoader@@@@QAAPAVCredUIDllLoader@@XZ
2130?Detach@?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAPAVEnumSinkEx@@XZ
2131?Detach@?$AutoCleanup@V?$AutoDelete@VEventHandler@WSMan@@@@PAVEventHandler@WSMan@@@@QAAPAVEventHandler@WSMan@@XZ
2132?Detach@?$AutoCleanup@V?$AutoDelete@VExpiredOperationIdRecord@@@@PAVExpiredOperationIdRecord@@@@QAAPAVExpiredOperationIdRecord@@XZ
2133?Detach@?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAPAVGeneralSinkEx@@XZ
2134?Detach@?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QAAPAVIQueryDASHSMASHInterface@@XZ
2135?Detach@?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QAAPAVISpecification@@XZ
2136?Detach@?$AutoCleanup@V?$AutoDelete@VInteractiveSid@CSecurity@@@@PAVInteractiveSid@CSecurity@@@@QAAPAVInteractiveSid@CSecurity@@XZ
2137?Detach@?$AutoCleanup@V?$AutoDelete@VIpHlpApiDllLoader@@@@PAVIpHlpApiDllLoader@@@@QAAPAVIpHlpApiDllLoader@@XZ
2138?Detach@?$AutoCleanup@V?$AutoDelete@VMachineName@@@@PAVMachineName@@@@QAAPAVMachineName@@XZ
2139?Detach@?$AutoCleanup@V?$AutoDelete@VNetworkServiceSid@CSecurity@@@@PAVNetworkServiceSid@CSecurity@@@@QAAPAVNetworkServiceSid@CSecurity@@XZ
2140?Detach@?$AutoCleanup@V?$AutoDelete@VNtDsApiDllLoader@@@@PAVNtDsApiDllLoader@@@@QAAPAVNtDsApiDllLoader@@XZ
2141?Detach@?$AutoCleanup@V?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAAPAVOptionValue@SessionOptions@Client@WSMan@@XZ
2142?Detach@?$AutoCleanup@V?$AutoDelete@VResources@Locale@@@@PAVResources@Locale@@@@QAAPAVResources@Locale@@XZ
2143?Detach@?$AutoCleanup@V?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@@QAAPAVSecurityEntry@Catalog@@XZ
2144?Detach@?$AutoCleanup@V?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@@QAAPAVServiceSoapProcessor@@XZ
2145?Detach@?$AutoCleanup@V?$AutoDelete@VShell32DllLoader@@@@PAVShell32DllLoader@@@@QAAPAVShell32DllLoader@@XZ
2146?Detach@?$AutoCleanup@V?$AutoDelete@VShlWApiDllLoader@@@@PAVShlWApiDllLoader@@@@QAAPAVShlWApiDllLoader@@XZ
2147?Detach@?$AutoCleanup@V?$AutoDelete@VSubscriptionManager@@@@PAVSubscriptionManager@@@@QAAPAVSubscriptionManager@@XZ
2148?Detach@?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QAAPAVTSTRBUFFER@@XZ
2149?Detach@?$AutoCleanup@V?$AutoDelete@VUser32DllLoader@@@@PAVUser32DllLoader@@@@QAAPAVUser32DllLoader@@XZ
2150?Detach@?$AutoCleanup@V?$AutoDelete@VWSManMemCryptManager@@@@PAVWSManMemCryptManager@@@@QAAPAVWSManMemCryptManager@@XZ
2151?Detach@?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QAAPAVWmiEnumContext@@XZ
2152?Detach@?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@QAAPAVXmlReader@@XZ
2153?Detach@?$AutoCleanup@V?$AutoDeleteVector@$$CBG@@PBG@@QAAPBGXZ
2154?Detach@?$AutoCleanup@V?$AutoDeleteVector@D@@PAD@@QAAPADXZ
2155?Detach@?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QAAPAEXZ
2156?Detach@?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QAAPAGXZ
2157?Detach@?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QAAPAPAGXZ
2158?Detach@?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QAAPAPBGXZ
2159?Detach@?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAAPAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@XZ
2160?Detach@?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QAAPAU_WINRS_RUN_COMMAND_ARG@@XZ
2161?Detach@?$AutoCleanup@V?$AutoDeleteVector@U_WSMAN_OPTION@@@@PAU_WSMAN_OPTION@@@@QAAPAU_WSMAN_OPTION@@XZ
2162?Detach@?$AutoCleanup@V?$AutoFree@E@@PAE@@QAAPAEXZ
2163?Detach@?$AutoCleanup@V?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@@QAAPAVPacket@@XZ
2164?Detach@?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QAAPAUIClientSecurity@@XZ
2165?Detach@?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QAAPAUIEnumWbemClassObject@@XZ
2166?Detach@?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QAAPAUIErrorInfo@@XZ
2167?Detach@?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QAAPAUIUnknown@@XZ
2168?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QAAPAUIWbemClassObject@@XZ
2169?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QAAPAUIWbemContext@@XZ
2170?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QAAPAUIWbemLocator@@XZ
2171?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QAAPAUIWbemObjectTextSrc@@XZ
2172?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QAAPAUIWbemPath@@XZ
2173?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QAAPAUIWbemPathKeyList@@XZ
2174?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QAAPAUIWbemQualifierSet@@XZ
2175?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QAAPAUIWbemQuery@@XZ
2176?Detach@?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QAAPAUIWbemServices@@XZ
2177?Detach@?$AutoCleanup@V?$AutoRelease@VApplication@Client@WSMan@@@@PAVApplication@Client@WSMan@@@@QAAPAVApplication@Client@WSMan@@XZ
2178?Detach@?$AutoCleanup@V?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@QAAPAVCBaseConfigCache@@XZ
2179?Detach@?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@QAAPAVCClientConfigSettings@@XZ
2180?Detach@?$AutoCleanup@V?$AutoRelease@VCCommonConfigSettings@@@@PAVCCommonConfigSettings@@@@QAAPAVCCommonConfigSettings@@XZ
2181?Detach@?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@QAAPAVCConfigManager@@XZ
2182?Detach@?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@QAAPAVCRemoteSession@@XZ
2183?Detach@?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@QAAPAVCRequestContext@@XZ
2184?Detach@?$AutoCleanup@V?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@@QAAPAVCServiceConfigSettings@@XZ
2185?Detach@?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QAAPAVCWSManEPR@@XZ
2186?Detach@?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyCache@@@@PAVCWSManGroupPolicyCache@@@@QAAPAVCWSManGroupPolicyCache@@XZ
2187?Detach@?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@@QAAPAVCWSManGroupPolicyManager@@XZ
2188?Detach@?$AutoCleanup@V?$AutoRelease@VCWSManObject@@@@PAVCWSManObject@@@@QAAPAVCWSManObject@@XZ
2189?Detach@?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QAAPAVCWinRSPluginConfigCache@@XZ
2190?Detach@?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@@QAAPAVCWinRSPluginConfigSettings@@XZ
2191?Detach@?$AutoCleanup@V?$AutoRelease@VCommand@Client@WSMan@@@@PAVCommand@Client@WSMan@@@@QAAPAVCommand@Client@WSMan@@XZ
2192?Detach@?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAPAVEnumSinkEx@@XZ
2193?Detach@?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAPAVGeneralSinkEx@@XZ
2194?Detach@?$AutoCleanup@V?$AutoRelease@VIPCSoapProcessor@@@@PAVIPCSoapProcessor@@@@QAAPAVIPCSoapProcessor@@XZ
2195?Detach@?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QAAPAVIRequestContext@@XZ
2196?Detach@?$AutoCleanup@V?$AutoRelease@VReceiveOperation@Client@WSMan@@@@PAVReceiveOperation@Client@WSMan@@@@QAAPAVReceiveOperation@Client@WSMan@@XZ
2197?Detach@?$AutoCleanup@V?$AutoRelease@VSendOperation@Client@WSMan@@@@PAVSendOperation@Client@WSMan@@@@QAAPAVSendOperation@Client@WSMan@@XZ
2198?Detach@?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAAPAVShell@Client@WSMan@@XZ
2199?Detach@?$AutoCleanup@V?$AutoRelease@VSignalOperation@Client@WSMan@@@@PAVSignalOperation@Client@WSMan@@@@QAAPAVSignalOperation@Client@WSMan@@XZ
2200?Detach@?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QAAPAGXZ
2201?Detach@?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@QAAPBU_CERT_CONTEXT@@XZ
2202?Detach@?$AutoCleanup@VAutoHandle@@PAX@@QAAPAXXZ
2203?Detach@?$AutoCleanup@VAutoImpersonateUser@@PAX@@QAAPAXXZ
2204?Detach@?$AutoCleanup@VAutoLocalFree@@PAX@@QAAPAXXZ
2205?Detach@?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QAAPAU_MI_Class@@XZ
2206?Detach@?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@QAAPAU_MI_Instance@@XZ
2207?Detach@?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@QAAPAUHKEY__@@XZ
2208?Detach@?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@QAAPAXXZ
2209?Detach@?$AutoCleanup@VAutoWaitHandle@@PAX@@QAAPAXXZ
2210?Detach@BufferFormatter@@QAAPAEXZ
2211?Discard@CServiceWatcher@CServiceConfigCache@@QAAXXZ
2212?DoOnChange@CBaseConfigCache@@IAAXW4ConfigChangeSources@@KW4ConfigChangeSeverityType@@@Z
2213?DoesThreadOwnLock@CWSManCriticalSection@@QAAHXZ
2214?Down@?$LoaderSerializer@VSubscriptionManager@@$01@@AAAJXZ
2215?DropData@CircularBufferFormatter@@QAAXK@Z
2216?DuplicateCurrentToken@CSecurity@@SAHPAPAXKPAU_SECURITY_ATTRIBUTES@@W4_SECURITY_IMPERSONATION_LEVEL@@W4_TOKEN_TYPE@@H@Z
2217?EnableAllPrivileges@@YAHPAPAE@Z
2218?Encode@PacketFormatter@@QBAKPAPAVPacket@@@Z
2219?Encode@PacketFormatter@@QBAKPBGKPAEKPAPAEPAK_N@Z
2220?EndOfStream@PacketParser@@QAAXK@Z
2221?EndRevertToSelf@CSecurity@@SAHPAX@Z
2222?EnsureActivityIdOnThread@EventHandler@WSMan@@SAXXZ
2223?EnsureNoActiveCaches@CClientConfigCache@@SAXXZ
2224?EnsureNoActiveCaches@CServiceConfigCache@@SAXXZ
2225?Error@EventLog@@SAXK@Z
2226?Error@EventLog@@SAXKGPAPBG@Z
2227?Error@EventLog@@SAXKPBG@Z
2228?ErrorAction@ExtendedSemantic@@2KB
2229?EventEnabled@EventHandler@WSMan@@AAA_NABU_EVENT_DESCRIPTOR@@@Z
2230?EventProviderEnabled@EventHandler@WSMan@@AAA_NXZ
2231?EventWrite@EventHandler@WSMan@@AAAXABU_EVENT_DESCRIPTOR@@KPAU_EVENT_DATA_DESCRIPTOR@@@Z
2232?ExtractContextId@PacketParser@@QAAHPAPBGKPBG@Z
2233?ExtractShellId@PacketParser@@QAAHPAVCRequestContext@@PAGK@Z
2234?ExtractSidFromToken@CSecurity@@SAHPAVIRequestContext@@PAXAAVAutoLocalFree@@@Z
2235?FindExisting@CBaseConfigCache@@CAPAV1@PAVCConfigCacheMap@1@PBGW4ErrorLogging@@@Z
2236?FindMatch@CResourceAlias@@AAAPAU_ALIAS_INFORMATION@@PBG@Z
2237?First@TSTRBUFFER@@QBAPBGXZ
2238?Format@Locale@@ABA_NKPAPADPAPAXPAGKGW4CallSiteId@@@Z
2239?FormatDataDescriptor@EventHandler@WSMan@@SAXAAU_EVENT_DATA_DESCRIPTOR@@AAG@Z
2240?FormatDataDescriptor@EventHandler@WSMan@@SAXAAU_EVENT_DATA_DESCRIPTOR@@AAJ@Z
2241?FormatDataDescriptor@EventHandler@WSMan@@SAXAAU_EVENT_DATA_DESCRIPTOR@@AAK@Z
2242?FormatDataDescriptor@EventHandler@WSMan@@SAXAAU_EVENT_DATA_DESCRIPTOR@@PBD@Z
2243?FormatDataDescriptor@EventHandler@WSMan@@SAXAAU_EVENT_DATA_DESCRIPTOR@@PBG@Z
2244?FormatWithFallback@Locale@@ABA_NKPAPAD0PAPAXPAGK@Z
2245?Free@WSManMemory@@SAXPAXH@Z
2246?FreeBstr@WSManMemory@@SAXPAGHH@Z
2247?FreeInstance@?$ILoader@VAdminSid@CSecurity@@@@QAA_NAAVIRequestContext@@_N@Z
2248?FreeInstance@?$ILoader@VCredUIDllLoader@@@@QAA_NAAVIRequestContext@@_N@Z
2249?FreeInstance@?$ILoader@VEventHandler@WSMan@@@@QAA_NAAVIRequestContext@@_N@Z
2250?FreeInstance@?$ILoader@VInteractiveSid@CSecurity@@@@QAA_NAAVIRequestContext@@_N@Z
2251?FreeInstance@?$ILoader@VIpHlpApiDllLoader@@@@QAA_NAAVIRequestContext@@_N@Z
2252?FreeInstance@?$ILoader@VMachineName@@@@QAA_NAAVIRequestContext@@_N@Z
2253?FreeInstance@?$ILoader@VNetworkServiceSid@CSecurity@@@@QAA_NAAVIRequestContext@@_N@Z
2254?FreeInstance@?$ILoader@VNtDsApiDllLoader@@@@QAA_NAAVIRequestContext@@_N@Z
2255?FreeInstance@?$ILoader@VResources@Locale@@@@QAA_NAAVIRequestContext@@_N@Z
2256?FreeInstance@?$ILoader@VShell32DllLoader@@@@QAA_NAAVIRequestContext@@_N@Z
2257?FreeInstance@?$ILoader@VShlWApiDllLoader@@@@QAA_NAAVIRequestContext@@_N@Z
2258?FreeInstance@?$ILoader@VSubscriptionManager@@@@QAA_NAAVIRequestContext@@_N@Z
2259?FreeInstance@?$ILoader@VUser32DllLoader@@@@QAA_NAAVIRequestContext@@_N@Z
2260?FreeInstance@?$ILoader@VWSManMemCryptManager@@@@QAA_NAAVIRequestContext@@_N@Z
2261?FreeInstance@?$LoaderSerializer@VSubscriptionManager@@$01@@QAA_NAAVIRequestContext@@_N@Z
2262?FreeMemory@RBUFFER@@QAAXXZ
2263?FreeMemory@SBUFFER@@QAAXXZ
2264?FreePacket@PacketParser@@QAAXXZ
2265?FreeXmlStructure@PacketParser@@QAAXXZ
2266?GenerateTransferId@EventHandler@WSMan@@SAXABU_EVENT_DESCRIPTOR@@PBU_GUID@@1@Z
2267?GenerateTransferIdImp@EventHandler@WSMan@@AAAXABU_EVENT_DESCRIPTOR@@PBU_GUID@@1@Z
2268?GetAccessRights@CWSManSecurityUI@@UAAJPBU_GUID@@KPAPAU_SI_ACCESS@@PAK2@Z
2269?GetAction@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2270?GetActionType@SoapSemanticConverter@@AAA_NPBGPAW4_MI_OperationCallback_ResponseType@@PAW4_MI_CallbackMode@@PAVIRequestContext@@@Z
2271?GetActivityIdOnCurrentThread@EventHandler@WSMan@@SAXAAU_GUID@@@Z
2272?GetBaseUri@CWSManResource@@QAAPBGXZ
2273?GetBomIndex@PacketFormatter@@QBA?AW4Charset@1@XZ
2274?GetBookmarkXml@PacketParser@@QAAABV?$PacketElement@PAU_FWXML_ELEMENT@@@1@XZ
2275?GetBool@CConfigManager@@QAAHPAVIRequestContext@@W4ConfigSetting@@PAHPAW4WSManConfigSource@@@Z
2276?GetBool@CWSManGroupPolicyManager@@QAAHPAVIRequestContext@@W4WSManGroupPolicySetting@@PAHPAW4WSManGroupPolicySettingState@@@Z
2277?GetBuffer@BufferFormatter@@UAAPAEXZ
2278?GetBuffer@BufferFormatter@@UBAPBEXZ
2279?GetBuffer@CircularBufferFormatter@@UAAPAEXZ
2280?GetBuffer@CircularBufferFormatter@@UBAPBEXZ
2281?GetBuffer@XmlReader@@QAAPBGXZ
2282?GetBufferLength@PacketParser@@UAAKXZ
2283?GetBufferPtr@PacketParser@@UAAPAPAGXZ
2284?GetBufferSize@BufferFormatter@@QBAKXZ
2285?GetCacheCount@CClientConfigCache@@SAKXZ
2286?GetCacheCount@CServiceConfigCache@@SAKXZ
2287?GetCalculationSize@BufferFormatter@@UBAK_N@Z
2288?GetCalculationSize@CircularBufferFormatter@@UBAK_N@Z
2289?GetCharInUse@TSTRBUFFER@@QBAIXZ
2290?GetCharset@PacketFormatter@@QBA?AW4Charset@1@XZ
2291?GetCharsetLen@PacketFormatter@@QBAKXZ
2292?GetCharsetName@PacketFormatter@@QBAPBDXZ
2293?GetChildCount@ChildLifeTimeManager@@QBAJXZ
2294?GetConfigCache@CBaseConfigCache@@KAPAV1@PAVIRequestContext@@W4ErrorLogging@@P6APAV1@XZPAVFastLock@@AAV?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@H@Z
2295?GetConfigCache@CClientConfigCache@@SAPAV1@PAVIRequestContext@@H@Z
2296?GetConfigCache@CServiceConfigCache@@SAPAV1@PAVIRequestContext@@W4ErrorLogging@@H@Z
2297?GetConfigCache@CWinRSPluginConfigCache@@SAPAV1@PAVIRequestContext@@W4ErrorLogging@@H@Z
2298?GetConfigManager@CConfigManager@@SAPAV1@XZ
2299?GetConfigManagerForCertMapping@CConfigManager@@SAPAV1@PAVCERTMAPPING_IDENTITY@@PAVIRequestContext@@@Z
2300?GetConfigManagerForListener@CConfigManager@@SAPAV1@PAVLISTENER_IDENTITY@@PAVIRequestContext@@@Z
2301?GetConfigManagerForShellUri@CConfigManager@@SAPAV1@PAVSHELLURI_IDENTITY@@PAVIRequestContext@@@Z
2302?GetConfigManagerForTable@CConfigManager@@SAPAV1@PAVWSMANCONFIGTABLE_IDENTITY@@PAVIRequestContext@@@Z
2303?GetConfigXml@CConfigManager@@QAAHPAVIRequestContext@@PAPBGPAPAVXmlReader@@PAH@Z
2304?GetCorrelationId@PacketParser@@QAAAAU_GUID@@XZ
2305?GetCurrentCertMappingIdentity@CConfigManager@@QAAHPAVCERTMAPPING_IDENTITY@@PAVIRequestContext@@@Z
2306?GetCurrentListenerIdentity@CConfigManager@@QAAHPAVLISTENER_IDENTITY@@PAVIRequestContext@@@Z
2307?GetCurrentSettings@CBaseConfigCache@@IAAPAVCCommonConfigSettings@@PAVIRequestContext@@@Z
2308?GetCurrentSettings@CClientConfigCache@@QAAPAVCClientConfigSettings@@PAVIRequestContext@@@Z
2309?GetCurrentSettings@CServiceConfigCache@@QAAPAVCServiceConfigSettings@@PAVIRequestContext@@@Z
2310?GetCurrentSettings@CWinRSPluginConfigCache@@QAAPAVCWinRSPluginConfigSettings@@PAVIRequestContext@@@Z
2311?GetCurrentShellUriIdentity@CConfigManager@@QAAHPAVSHELLURI_IDENTITY@@PAVIRequestContext@@@Z
2312?GetCurrentTableIdentity@CConfigManager@@QAAHPAVWSMANCONFIGTABLE_IDENTITY@@PAVIRequestContext@@@Z
2313?GetDataLocale@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2314?GetDataLocaleHelper@PacketParser@@QAAAAVLocale@@XZ
2315?GetDescriptionElement@SoapSemanticConverter@@QAAPAU_FWXML_ELEMENT@@PAU2@PAVIRequestContext@@@Z
2316?GetDestructorIter@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@QAAAAV?$SafeSet_Iterator@PAVCCertMapping@@@@XZ
2317?GetDestructorIter@?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@QAAAAV?$SafeSet_Iterator@PAVCShellUriSettings@@@@XZ
2318?GetDestructorIter@?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAAAAV?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@XZ
2319?GetDestructorIter@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAAAAV?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@XZ
2320?GetDestructorIter@?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAAAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@XZ
2321?GetDialect@Fragment@PacketParser@@QBAPBGXZ
2322?GetError@BufferFormatter@@QBAKXZ
2323?GetErrorCode@CErrorContext@@UBAKXZ
2324?GetEventType@SoapSemanticConverter@@AAAKPBGPAVIRequestContext@@@Z
2325?GetEventTypeAndResponseElement@SoapSemanticConverter@@AAAPAU_FWXML_ELEMENT@@PAU2@PAKPAVIRequestContext@@@Z
2326?GetExtendedErrorString@CErrorContext@@UAAPAGXZ
2327?GetExtendedErrorString@CRequestContext@@UAAPAGXZ
2328?GetFaultToXml@PacketParser@@QBAABVReferenceParameters@1@XZ
2329?GetFaultXML@CErrorContext@@UBAPBGXZ
2330?GetFaultXML@CRequestContext@@UBAPBGXZ
2331?GetFaultXMLPrivate@CRequestContext@@AAAXPAPAD0KHKKPBG11@Z
2332?GetFirstConfigManagerForCertMapping@CConfigManager@@SAPAV1@PBG@Z
2333?GetFirstConfigManagerForListener@CConfigManager@@SAPAV1@PBG@Z
2334?GetFirstConfigManagerForShellUri@CConfigManager@@SAPAV1@PBG@Z
2335?GetFirstConfigManagerForTable@CConfigManager@@SAPAV1@W4WSMANTableConfigType@@PBG@Z
2336?GetFormat@PacketFormatter@@QBA?AW4Charset@1@XZ
2337?GetFormatterMode@BufferFormatter@@QAA?AW4Charset@PacketFormatter@@XZ
2338?GetFragment@PacketParser@@QBAABVFragment@1@XZ
2339?GetFragmentDialect@CWSManResourceNoResourceUri@@QAAPBGXZ
2340?GetFragmentPath@CWSManResourceNoResourceUri@@QAAPBGXZ
2341?GetGroupPolicyManager@CWSManGroupPolicyManager@@SAPAV1@PAVIRequestContext@@PBG@Z
2342?GetHeap@WSManMemory@@SAPAXXZ
2343?GetIISConfiguration@CConfigManager@@SAHPAVIRequestContext@@PBGPAPAVXmlReader@@@Z
2344?GetImpersonationToken@UserRecord@@QAAPAXXZ
2345?GetInheritTypes@CWSManSecurityUI@@UAAJPAPAU_SI_INHERIT_TYPE@@PAK@Z
2346?GetInitError@CWSManCriticalSection@@QBAKXZ
2347?GetInstance@?$LoaderSerializer@VAdminSid@CSecurity@@$00@@QAAPAVAdminSid@CSecurity@@AAVIRequestContext@@@Z
2348?GetInstance@?$LoaderSerializer@VCredUIDllLoader@@$00@@QAAPAVCredUIDllLoader@@AAVIRequestContext@@@Z
2349?GetInstance@?$LoaderSerializer@VEventHandler@WSMan@@$00@@QAAPAVEventHandler@WSMan@@AAVIRequestContext@@@Z
2350?GetInstance@?$LoaderSerializer@VInteractiveSid@CSecurity@@$00@@QAAPAVInteractiveSid@CSecurity@@AAVIRequestContext@@@Z
2351?GetInstance@?$LoaderSerializer@VIpHlpApiDllLoader@@$00@@QAAPAVIpHlpApiDllLoader@@AAVIRequestContext@@@Z
2352?GetInstance@?$LoaderSerializer@VMachineName@@$00@@QAAPAVMachineName@@AAVIRequestContext@@@Z
2353?GetInstance@?$LoaderSerializer@VNetworkServiceSid@CSecurity@@$00@@QAAPAVNetworkServiceSid@CSecurity@@AAVIRequestContext@@@Z
2354?GetInstance@?$LoaderSerializer@VNtDsApiDllLoader@@$00@@QAAPAVNtDsApiDllLoader@@AAVIRequestContext@@@Z
2355?GetInstance@?$LoaderSerializer@VResources@Locale@@$0A@@@QAAPAVResources@Locale@@AAVIRequestContext@@@Z
2356?GetInstance@?$LoaderSerializer@VShell32DllLoader@@$00@@QAAPAVShell32DllLoader@@AAVIRequestContext@@@Z
2357?GetInstance@?$LoaderSerializer@VShlWApiDllLoader@@$00@@QAAPAVShlWApiDllLoader@@AAVIRequestContext@@@Z
2358?GetInstance@?$LoaderSerializer@VSubscriptionManager@@$01@@QAAPAVSubscriptionManager@@AAVIRequestContext@@@Z
2359?GetInstance@?$LoaderSerializer@VUser32DllLoader@@$00@@QAAPAVUser32DllLoader@@AAVIRequestContext@@@Z
2360?GetInstance@?$LoaderSerializer@VWSManMemCryptManager@@$00@@QAAPAVWSManMemCryptManager@@AAVIRequestContext@@@Z
2361?GetInt@CConfigManager@@QAAHPAVIRequestContext@@W4ConfigSetting@@PAKPAW4WSManConfigSource@@@Z
2362?GetInt@CWSManGroupPolicyManager@@QAAHPAVIRequestContext@@W4WSManGroupPolicySetting@@PAKPAW4WSManGroupPolicySettingState@@@Z
2363?GetKey@UserRecord@@QBA?AUUserKey@@XZ
2364?GetKeyCount@CWSManResourceNoResourceUri@@QAAKXZ
2365?GetKeyValue@CWSManResourceNoResourceUri@@QAAPBGPBG@Z
2366?GetKeys@CWSManResourceNoResourceUri@@QAAPAU_WSMAN_KEY@@XZ
2367?GetLCID@Locale@@QAAKXZ
2368?GetLength@XmlReader@@QAAIXZ
2369?GetLocale@CRequestContext@@QAAAAVLocale@@XZ
2370?GetLocale@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2371?GetLocaleHelper@PacketParser@@QAAAAVLocale@@XZ
2372?GetLocaleString@CRequestContext@@QAAPBGXZ
2373?GetLocator@CWSManResource@@QAAPAU_WSMAN_RESOURCE_LOCATOR@@XZ
2374?GetMachineId@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2375?GetMap@?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QBAAAV?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@XZ
2376?GetMap@?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@QBAAAV?$SafeMap@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@XZ
2377?GetMap@?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QBAAAV?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@XZ
2378?GetMap@?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@QBAAAV?$SafeMap@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@XZ
2379?GetMap@?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@QBAAAV?$SafeMap@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@XZ
2380?GetMap@?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@QBAAAV?$SafeMap@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@XZ
2381?GetMap@?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QBAAAV?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@XZ
2382?GetMap@?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@QBAAAV?$SafeMap@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@XZ
2383?GetMap@?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@QBAAAV?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@XZ
2384?GetMap@?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@QBAAAV?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@XZ
2385?GetMap@?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@QBAAAV?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@XZ
2386?GetMap@?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@QBAAAV?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@XZ
2387?GetMap@?$SafeMap_Iterator@PAXUEmpty@@@@QBAAAV?$SafeMap@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@XZ
2388?GetMap@?$SafeMap_Iterator@UPluginKey@@K@@QBAAAV?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@XZ
2389?GetMap@?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@QBAAAV?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@XZ
2390?GetMap@?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QBAAAV?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@XZ
2391?GetMap@?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@QBAAAV?$SafeMap@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@XZ
2392?GetMap@?$SafeMap_Iterator@VKey@Locale@@K@@QBAAAV?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@XZ
2393?GetMap@?$SafeMap_Iterator@VStringKeyCI@@K@@QBAAAV?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@XZ
2394?GetMap@?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@QBAAAV?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@XZ
2395?GetMap@?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@QBAAAV?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@XZ
2396?GetMap@?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QBAAAV?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@XZ
2397?GetMap@?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@QBAAAV?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@XZ
2398?GetMap@?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QBAAAV?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@XZ
2399?GetMap@?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@QBAAAV?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@XZ
2400?GetMap@?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@QBAABV?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@XZ
2401?GetMap@?$SafeMap_Lock@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@QBAABV?$SafeMap@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@XZ
2402?GetMap@?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@QBAABV?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@XZ
2403?GetMap@?$SafeMap_Lock@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@QBAABV?$SafeMap@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@XZ
2404?GetMap@?$SafeMap_Lock@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@QBAABV?$SafeMap@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@XZ
2405?GetMap@?$SafeMap_Lock@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@QBAABV?$SafeMap@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@XZ
2406?GetMap@?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@QBAABV?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@XZ
2407?GetMap@?$SafeMap_Lock@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@QBAABV?$SafeMap@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@XZ
2408?GetMap@?$SafeMap_Lock@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@QBAABV?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@XZ
2409?GetMap@?$SafeMap_Lock@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@QBAABV?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@XZ
2410?GetMap@?$SafeMap_Lock@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@QBAABV?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@XZ
2411?GetMap@?$SafeMap_Lock@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@QBAABV?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@XZ
2412?GetMap@?$SafeMap_Lock@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@QBAABV?$SafeMap@PAXUEmpty@@V?$SafeMap_Iterator@PAXUEmpty@@@@@@XZ
2413?GetMap@?$SafeMap_Lock@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QBAABV?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@XZ
2414?GetMap@?$SafeMap_Lock@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QBAABV?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@XZ
2415?GetMap@?$SafeMap_Lock@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QBAABV?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@XZ
2416?GetMap@?$SafeMap_Lock@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@QBAABV?$SafeMap@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@XZ
2417?GetMap@?$SafeMap_Lock@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@QBAABV?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@XZ
2418?GetMap@?$SafeMap_Lock@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QBAABV?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@XZ
2419?GetMap@?$SafeMap_Lock@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@QBAABV?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@XZ
2420?GetMap@?$SafeMap_Lock@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QBAABV?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@XZ
2421?GetMap@?$SafeMap_Lock@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QBAABV?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@XZ
2422?GetMap@?$SafeMap_Lock@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QBAABV?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@XZ
2423?GetMap@?$SafeMap_Lock@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QBAABV?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@XZ
2424?GetMap@?$SafeMap_Lock@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QBAABV?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@XZ
2425?GetMaxBatchItems@CCommonConfigSettings@@UAAKXZ
2426?GetMaxBatchSize@CCommonConfigSettings@@UAAKXZ
2427?GetMaxEnvelopeSize@CCommonConfigSettings@@UAAKXZ
2428?GetMaxEnvelopeSize@PacketParser@@QBAABV?$PacketElement@K@1@XZ
2429?GetMaxTimeOut@CCommonConfigSettings@@UAAKXZ
2430?GetMessageAlloc@Locale@@QBAPBGAAVAutoLocalFree@@KZZ
2431?GetMessageEmpty@Locale@@QBAPBGAAVAutoLocalFree@@K@Z
2432?GetMessageId@CErrorContext@@UBAKXZ
2433?GetMessageId@CRequestContext@@UBAKXZ
2434?GetMessageId@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2435?GetMessageW@Locale@@QBA_NKPAPAD0PAGK@Z
2436?GetMinBatchItems@CCommonConfigSettings@@UAAKXZ
2437?GetMinBatchSize@CCommonConfigSettings@@UAAKXZ
2438?GetMinBatchTimeout@CCommonConfigSettings@@UAAKXZ
2439?GetMinEnvelopeSize@CCommonConfigSettings@@UAAKXZ
2440?GetMinTimeOut@CCommonConfigSettings@@UAAKXZ
2441?GetNamespacePrefix@NotUnderstandSoapHeader@PacketParser@@QBAPBGXZ
2442?GetNamespaceUrl@NotUnderstandSoapHeader@PacketParser@@QBAPBGXZ
2443?GetNewStorage@RBUFFER@@IAAHI@Z
2444?GetNotUnderstandHeader@PacketParser@@QBAABVNotUnderstandSoapHeader@1@XZ
2445?GetObjectInformation@CWSManSecurityUI@@UAAJPAU_SI_OBJECT_INFO@@@Z
2446?GetObjectW@?$ILoader@VAdminSid@CSecurity@@@@IBAPAVAdminSid@CSecurity@@XZ
2447?GetObjectW@?$ILoader@VCredUIDllLoader@@@@IBAPAVCredUIDllLoader@@XZ
2448?GetObjectW@?$ILoader@VEventHandler@WSMan@@@@IBAPAVEventHandler@WSMan@@XZ
2449?GetObjectW@?$ILoader@VInteractiveSid@CSecurity@@@@IBAPAVInteractiveSid@CSecurity@@XZ
2450?GetObjectW@?$ILoader@VIpHlpApiDllLoader@@@@IBAPAVIpHlpApiDllLoader@@XZ
2451?GetObjectW@?$ILoader@VMachineName@@@@IBAPAVMachineName@@XZ
2452?GetObjectW@?$ILoader@VNetworkServiceSid@CSecurity@@@@IBAPAVNetworkServiceSid@CSecurity@@XZ
2453?GetObjectW@?$ILoader@VNtDsApiDllLoader@@@@IBAPAVNtDsApiDllLoader@@XZ
2454?GetObjectW@?$ILoader@VResources@Locale@@@@IBAPAVResources@Locale@@XZ
2455?GetObjectW@?$ILoader@VShell32DllLoader@@@@IBAPAVShell32DllLoader@@XZ
2456?GetObjectW@?$ILoader@VShlWApiDllLoader@@@@IBAPAVShlWApiDllLoader@@XZ
2457?GetObjectW@?$ILoader@VSubscriptionManager@@@@IBAPAVSubscriptionManager@@XZ
2458?GetObjectW@?$ILoader@VUser32DllLoader@@@@IBAPAVUser32DllLoader@@XZ
2459?GetObjectW@?$ILoader@VWSManMemCryptManager@@@@IBAPAVWSManMemCryptManager@@XZ
2460?GetOperationId@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2461?GetOptionCount@CWSManResourceNoResourceUri@@QAAKXZ
2462?GetOptionTypes@CWSManResourceNoResourceUri@@QAAPAPBGXZ
2463?GetOptionValue@CWSManResourceNoResourceUri@@QAAPBGPBG@Z
2464?GetOptions@CWSManResourceNoResourceUri@@QAAPAU_WSMAN_OPTION@@XZ
2465?GetOptionsMustUnderstandValue@CWSManResourceNoResourceUri@@QAAHXZ
2466?GetOptionsSetXml@PacketParser@@QAAABV?$PacketElement@PAU_FWXML_ELEMENT@@@1@XZ
2467?GetOriginalUri@CWSManResource@@QAAPBGXZ
2468?GetPacket@PacketParser@@QAAPAVPacket@@XZ
2469?GetPacketPool@PacketParser@@QAAAAVPacketPool@@XZ
2470?GetParser@XmlReader@@QAAPAXXZ
2471?GetPath@Fragment@PacketParser@@QBAPBGXZ
2472?GetPolicyLocation@CWSManGroupPolicyManager@@AAAPBGPBU_WSMAN_POLICY_INFO@@@Z
2473?GetPolicyValueForConfigSetting@CConfigManager@@AAAJW4ConfigSetting@@KPAGPAKPAW4WSManGroupPolicySettingState@@PAVIRequestContext@@@Z
2474?GetPolicyValueForConfigSetting@CConfigManager@@AAAJW4ConfigSetting@@PAKPAW4WSManGroupPolicySettingState@@PAVIRequestContext@@@Z
2475?GetProfileCount@UserRecord@@QAAJXZ
2476?GetProfileHandle@UserRecord@@QAA_JXZ
2477?GetPromptType@SoapSemanticConverter@@AAA_NPBGPAW4_MI_PromptType@@PAVIRequestContext@@@Z
2478?GetQuotaRecord@UserRecord@@QBAPBVQuotaRecord@@XZ
2479?GetRefCount@ILifeTimeMgmt@@QAAJXZ
2480?GetReferenceParameters@ReferenceParameters@PacketParser@@QBAPBGXZ
2481?GetReferenceProperties@ReferenceParameters@PacketParser@@QBAPBGXZ
2482?GetRemainderPacket@PacketParser@@QAAPAVPacket@@PAVIRequestContext@@@Z
2483?GetReplyToXml@PacketParser@@QBAABVReferenceParameters@1@XZ
2484?GetRequestedDataLocale@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2485?GetRequestedLocale@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2486?GetResourceUri@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2487?GetRoot@XmlReader@@QAAPAU_FWXML_ELEMENT@@XZ
2488?GetSecurity@CWSManSecurityUI@@UAAJKPAPAXH@Z
2489?GetSecurityDescriptor@CConfigManager@@QAAHPAVIRequestContext@@W4ConfigSetting@@PAPAXPAW4WSManConfigSource@@@Z
2490?GetSelectorSetXml@PacketParser@@QAAABV?$PacketElement@PAU_FWXML_ELEMENT@@@1@XZ
2491?GetSequenceId@PacketParser@@QBAABV?$PacketElement@_K@1@XZ
2492?GetServiceCatalog@@YAPAVCatalog@@XZ
2493?GetSessionId@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2494?GetSessionIdGuid@PacketParser@@QAAAAU_GUID@@XZ
2495?GetSessionIdGuid@SessionId@PacketParser@@QAAAAU_GUID@@XZ
2496?GetSetting@CConfigManager@@QAAHPAVIRequestContext@@W4ConfigSetting@@KPAGPAKPAW4WSManConfigSource@@@Z
2497?GetShellCompressionType@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2498?GetSid@CSecurity@@SAPAXXZ
2499?GetSizeInUse@SBUFFER@@QBAIXZ
2500?GetSoapBody@PacketParser@@QAAPAU_FWXML_ELEMENT@@XZ
2501?GetSoapHeaders@PacketParser@@QAAPAU_FWXML_ELEMENT@@XZ
2502?GetSourceSubscriptionId@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2503?GetSpaceUsed@BufferFormatter@@UBAK_N@Z
2504?GetSpaceUsed@CircularBufferFormatter@@UBAK_N@Z
2505?GetStrPtr@TSTRBUFFER@@QAAPAGXZ
2506?GetString@CConfigManager@@QAAHPAVIRequestContext@@W4ConfigSetting@@KPAGPAKPAW4WSManConfigSource@@@Z
2507?GetString@CWSManGroupPolicyManager@@QAAHPAVIRequestContext@@W4WSManGroupPolicySetting@@KPAGPAKPAW4WSManGroupPolicySettingState@@@Z
2508?GetString@Locale@@QAAPBGXZ
2509?GetStringInternal@CConfigManager@@AAAHPAVIRequestContext@@W4ConfigSetting@@KKPAGPAKPAW4WSManConfigSource@@@Z
2510?GetStringInternal@CWSManGroupPolicyManager@@AAAHPAVIRequestContext@@W4WSManGroupPolicySetting@@KKPAGPAKPAW4WSManGroupPolicySettingState@@@Z
2511?GetSubscriptionId@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2512?GetSuccessCode@OnHTTPInitialize@@QBAKXZ
2513?GetTimeout@PacketParser@@QBAABV?$PacketElement@K@1@XZ
2514?GetTo@PacketParser@@QBAABV?$PacketElement@PBG@1@XZ
2515?GetToken@CSecurity@@SAPAXXZ
2516?GetToken@UserRecord@@QAAPAXXZ
2517?GetUpdatedSDDL@CWSManSecurityUI@@QAAPAGPAVIRequestContext@@@Z
2518?GetUri@CWSManResource@@QAAPBGXZ
2519?GetUserAdministratorType@UserRecord@@QBA?AW4AdministratorType@UserAuthzRecord@@XZ
2520?GetUserNameW@UserRecord@@QAAPBGXZ
2521?GetValue@?$PacketElement@K@PacketParser@@QBAKXZ
2522?GetValue@?$PacketElement@PAU_FWXML_ELEMENT@@@PacketParser@@QBAPAU_FWXML_ELEMENT@@XZ
2523?GetValue@?$PacketElement@PBG@PacketParser@@QBAPBGXZ
2524?GetValue@?$PacketElement@_K@PacketParser@@QBA_KXZ
2525?GetWsmanData@TSTRBUFFER@@QAAXPAU_WSMAN_DATA@@@Z
2526?GetXmlDoc@PacketParser@@QAAPAUFWXML_DOCUMENT@@XZ
2527?GrowBuffer@BufferFormatter@@UAAKK@Z
2528?GrowBuffer@BufferFormatter@@UAAKXZ
2529?GrowBuffer@CircularBufferFormatter@@UAAKK@Z
2530?GrowBuffer@CircularBufferFormatter@@UAAKXZ
2531?HandleAutoConfiguredListener@CConfigManager@@QAAHPAVIRequestContext@@PAVLISTENER_IDENTITY@@@Z
2532?HandleMigration@@YAHPAVWSManMigrationContext@@@Z
2533?HasFaultXML@CRequestContext@@QBAHXZ
2534?HasHtmlError@CRequestContext@@ABAHXZ
2535?HasOption@CWSManResourceNoResourceUri@@QAAHPBG@Z
2536?ImpersonateUserOrSelf@CSecurity@@SAHW4CallSiteId@@PAX@Z
2537?IncreaseProfileCount@UserRecord@@QAAXXZ
2538?Info@EventLog@@SAXK@Z
2539?Info@EventLog@@SAXKGPAPBG@Z
2540?Info@EventLog@@SAXKPBG@Z
2541?Init@CBaseConfigCache@@IAAHPAVIRequestContext@@H@Z
2542?Init@CWSManSecurityUI@@QAAHPAG0PAVIRequestContext@@@Z
2543?Init@ConfigRegistry@@IAAHXZ
2544?Init@XmlReader@@QAAHPAVIRequestContext@@PAUWSMAN_OBJECT@@@Z
2545?Init@XmlReader@@QAAHPAVIRequestContext@@PBG@Z
2546?InitCfgMgr@CConfigManager@@AAAHPAVWSMANCONFIGTABLE_IDENTITY@@@Z
2547?InitCfgMgr@CConfigManager@@AAAHPAVWSMANCONFIGTABLE_IDENTITY@@PAUHKEY__@@1@Z
2548?InitMap@CBaseConfigCache@@CAHPAVIRequestContext@@AAV?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@@Z
2549?Initialize@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2550?Initialize@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@UAA_NAAVIRequestContext@@@Z
2551?Initialize@?$SafeMap@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@UAA_NAAVIRequestContext@@@Z
2552?Initialize@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2553?Initialize@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@UAA_NAAVIRequestContext@@@Z
2554?Initialize@?$SafeMap@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@UAA_NAAVIRequestContext@@@Z
2555?Initialize@?$SafeMap@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@UAA_NAAVIRequestContext@@@Z
2556?Initialize@?$SafeMap@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@UAA_NAAVIRequestContext@@@Z
2557?Initialize@?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@UAA_NAAVIRequestContext@@@Z
2558?Initialize@?$SafeMap@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2559?Initialize@?$SafeMap@PAVCollector@@UEmpty@@V?$SafeSet_Iterator@PAVCollector@@@@@@UAA_NAAVIRequestContext@@@Z
2560?Initialize@?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2561?Initialize@?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeSet_Iterator@PAVHostOperation@@@@@@UAA_NAAVIRequestContext@@@Z
2562?Initialize@?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2563?Initialize@?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeSet_Iterator@PAVIOperation@@@@@@UAA_NAAVIRequestContext@@@Z
2564?Initialize@?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2565?Initialize@?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@UAA_NAAVIRequestContext@@@Z
2566?Initialize@?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2567?Initialize@?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVPushSubscription@@@@@@UAA_NAAVIRequestContext@@@Z
2568?Initialize@?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@UAA_NAAVIRequestContext@@@Z
2569?Initialize@?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@UAA_NAAVIRequestContext@@@Z
2570?Initialize@?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@UAA_NAAVIRequestContext@@@Z
2571?Initialize@?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@UAA_NAAVIRequestContext@@@Z
2572?Initialize@?$SafeMap@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@UAA_NAAVIRequestContext@@@Z
2573?Initialize@?$SafeMap@VKey@CWmiPtrCache@@VMapping@2@V?$SafeMap_Iterator@VKey@CWmiPtrCache@@VMapping@2@@@@@UAA_NAAVIRequestContext@@@Z
2574?Initialize@?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@UAA_NAAVIRequestContext@@@Z
2575?Initialize@?$SafeMap@VStringKey@@PAVListenerEvents@@V?$SafeMap_Iterator@VStringKey@@PAVListenerEvents@@@@@@UAA_NAAVIRequestContext@@@Z
2576?Initialize@?$SafeMap@VStringKey@@PAVListenerSourceSubscription@@V?$SafeMap_Iterator@VStringKey@@PAVListenerSourceSubscription@@@@@@UAA_NAAVIRequestContext@@@Z
2577?Initialize@?$SafeMap@VStringKey@@UOption@WinRM_OperationOptions@@V?$SafeMap_Iterator@VStringKey@@UOption@WinRM_OperationOptions@@@@@@UAA_NAAVIRequestContext@@@Z
2578?Initialize@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@UAA_NAAVIRequestContext@@@Z
2579?Initialize@?$SafeMap@VStringKeyCI@@PAVIISEndpoint@@V?$SafeMap_Iterator@VStringKeyCI@@PAVIISEndpoint@@@@@@UAA_NAAVIRequestContext@@@Z
2580?Initialize@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@UAA_NAAVIRequestContext@@@Z
2581?Initialize@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@UAA_NAAVIRequestContext@@@Z
2582?Initialize@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@UAA_NAAVIRequestContext@@@Z
2583?Initialize@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@UAA_NAAVIRequestContext@@@Z
2584?Initialize@?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@UAA_NAAVIRequestContext@@@Z
2585?Initialize@?$SafeMap@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@V?$SafeMap_Iterator@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@@@@@UAA_NAAVIRequestContext@@@Z
2586?Initialize@?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@UAA_NAAVIRequestContext@@@Z
2587?Initialize@?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@UAA_NAAVIRequestContext@@@Z
2588?Initialize@?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QAAAAV1@XZ
2589?Initialize@?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QAAAAV1@XZ
2590?Initialize@?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QAAAAV1@XZ
2591?Initialize@?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QAAAAV1@XZ
2592?Initialize@?$SafeMap_Iterator@VStringKeyCI@@K@@QAAAAV1@XZ
2593?Initialize@?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QAAAAV1@XZ
2594?Initialize@?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAAAAV1@XZ
2595?Initialize@CWSManGroupPolicyManager@@AAAHPAVIRequestContext@@PBG@Z
2596?Initialize@EventHandler@WSMan@@QAA_NAAVIRequestContext@@@Z
2597?Initialize@UserRecord@@SAXAAV1@ABUInitializer@1@@Z
2598?InitializeSources@CBaseConfigCache@@IAAHPAVIRequestContext@@HH@Z
2599?InitializeSourcesHelper@CBaseConfigCache@@MAAHPAVIRequestContext@@H@Z
2600?InitializeSourcesHelper@CClientConfigCache@@EAAHPAVIRequestContext@@H@Z
2601?InsertAtPosition@TSTRBUFFER@@QAAJPBGI@Z
2602?InternalFailure@CErrorContext@@UAAXKZZ
2603?InternalFailure@CRequestContext@@UAAXKZZ
2604?InternalHResult@CErrorContext@@UAAXKKZZ
2605?InternalHResult@CRequestContext@@UAAXKKZZ
2606?InternalParse@CWSManEPR@@MAAHPAVIRequestContext@@@Z
2607?InternalParse@CWSManResource@@MAAHPAVIRequestContext@@@Z
2608?IsActive@ChildLifeTimeManager@@QAA_NXZ
2609?IsAdmin@UserRecord@@QBA_NXZ
2610?IsAutoListenerConfigurationOn@CConfigManager@@SAHPAVIRequestContext@@PAH@Z
2611?IsCIM_Error@CRequestContext@@QAAHXZ
2612?IsCurrentListenerAutoConfigured@CConfigManager@@QAAHPAVIRequestContext@@PAH@Z
2613?IsCurrentListenerCompat@CConfigManager@@QBA_NXZ
2614?IsDynAlloced@RBUFFER@@IBAHXZ
2615?IsEPR@CWSManEPR@@UAAHXZ
2616?IsEPR@CWSManResourceNoResourceUri@@UAAHXZ
2617?IsEmpty@?$ILoader@VAdminSid@CSecurity@@@@QBA_NXZ
2618?IsEmpty@?$ILoader@VCredUIDllLoader@@@@QBA_NXZ
2619?IsEmpty@?$ILoader@VEventHandler@WSMan@@@@QBA_NXZ
2620?IsEmpty@?$ILoader@VInteractiveSid@CSecurity@@@@QBA_NXZ
2621?IsEmpty@?$ILoader@VIpHlpApiDllLoader@@@@QBA_NXZ
2622?IsEmpty@?$ILoader@VMachineName@@@@QBA_NXZ
2623?IsEmpty@?$ILoader@VNetworkServiceSid@CSecurity@@@@QBA_NXZ
2624?IsEmpty@?$ILoader@VNtDsApiDllLoader@@@@QBA_NXZ
2625?IsEmpty@?$ILoader@VResources@Locale@@@@QBA_NXZ
2626?IsEmpty@?$ILoader@VShell32DllLoader@@@@QBA_NXZ
2627?IsEmpty@?$ILoader@VShlWApiDllLoader@@@@QBA_NXZ
2628?IsEmpty@?$ILoader@VSubscriptionManager@@@@QBA_NXZ
2629?IsEmpty@?$ILoader@VUser32DllLoader@@@@QBA_NXZ
2630?IsEmpty@?$ILoader@VWSManMemCryptManager@@@@QBA_NXZ
2631?IsEmpty@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QBA_NXZ
2632?IsEmpty@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QBA_NXZ
2633?IsEmpty@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@QBA_NXZ
2634?IsEvent@SoapSemanticConverter@@QAA_NPAU_FWXML_ELEMENT@@@Z
2635?IsEventEnabled@EventHandler@WSMan@@SA_NABU_EVENT_DESCRIPTOR@@@Z
2636?IsEventProviderEnabled@EventHandler@WSMan@@SA_NXZ
2637?IsFound@?$PacketElement@K@PacketParser@@QBAHXZ
2638?IsFound@?$PacketElement@PAU_FWXML_ELEMENT@@@PacketParser@@QBAHXZ
2639?IsFound@?$PacketElement@PBG@PacketParser@@QBAHXZ
2640?IsFound@?$PacketElement@_K@PacketParser@@QBAHXZ
2641?IsGeneratingError@CErrorContext@@UBA_NXZ
2642?IsIdentifyPacket@PacketParser@@QBAHXZ
2643?IsInCommitMode@BufferFormatter@@QAA_NXZ
2644?IsInteractive@UserRecord@@QBA_NXZ
2645?IsLocalSystemSid@CSecurity@@SAHPAX@Z
2646?IsMustUnderstand@?$PacketElement@PBG@PacketParser@@QBAHXZ
2647?IsNonOperativePacket@PacketParser@@QBAHXZ
2648?IsPolicyControlledSetting@CConfigManager@@QAAHPAVIRequestContext@@W4ConfigSetting@@PAH@Z
2649?IsRobustConnectionPacket@PacketParser@@QBAHXZ
2650?IsStreamingEvent@SoapSemanticConverter@@QAA_NPAU_FWXML_ELEMENT@@PAVIRequestContext@@@Z
2651?IsStringNullOrEmpty@@YAHPBG@Z
2652?IsValid@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QBA_NXZ
2653?IsValid@?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@QBA_NXZ
2654?IsValid@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QBA_NXZ
2655?IsValid@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QBA_NXZ
2656?IsValid@?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QBA_NXZ
2657?IsValid@?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QBA_NXZ
2658?IsValid@?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QBA_NXZ
2659?IsValid@?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@QBA_NXZ
2660?IsValid@?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QBA_NXZ
2661?IsValid@?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@QBA_NXZ
2662?IsValid@?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@QBA_NXZ
2663?IsValid@?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@QBA_NXZ
2664?IsValid@?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QBA_NXZ
2665?IsValid@?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@QBA_NXZ
2666?IsValid@?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@QBA_NXZ
2667?IsValid@?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@QBA_NXZ
2668?IsValid@?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@QBA_NXZ
2669?IsValid@?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@QBA_NXZ
2670?IsValid@?$SafeMap_Iterator@PAXUEmpty@@@@QBA_NXZ
2671?IsValid@?$SafeMap_Iterator@UPluginKey@@K@@QBA_NXZ
2672?IsValid@?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@QBA_NXZ
2673?IsValid@?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QBA_NXZ
2674?IsValid@?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@QBA_NXZ
2675?IsValid@?$SafeMap_Iterator@VKey@CWmiPtrCache@@VMapping@2@@@QBA_NXZ
2676?IsValid@?$SafeMap_Iterator@VKey@Locale@@K@@QBA_NXZ
2677?IsValid@?$SafeMap_Iterator@VStringKey@@PAVListenerEvents@@@@QBA_NXZ
2678?IsValid@?$SafeMap_Iterator@VStringKey@@PAVListenerSourceSubscription@@@@QBA_NXZ
2679?IsValid@?$SafeMap_Iterator@VStringKey@@UOption@WinRM_OperationOptions@@@@QBA_NXZ
2680?IsValid@?$SafeMap_Iterator@VStringKeyCI@@K@@QBA_NXZ
2681?IsValid@?$SafeMap_Iterator@VStringKeyCI@@PAVIISEndpoint@@@@QBA_NXZ
2682?IsValid@?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@QBA_NXZ
2683?IsValid@?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@QBA_NXZ
2684?IsValid@?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QBA_NXZ
2685?IsValid@?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@QBA_NXZ
2686?IsValid@?$SafeMap_Iterator@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@@@QBA_NXZ
2687?IsValid@?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QBA_NXZ
2688?IsValid@?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@QBA_NXZ
2689?IsValid@CWSManCriticalSection@@QBAHXZ
2690?IsValid@RBUFFER@@IBAHXZ
2691?Key@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QBAPBVStringKeyCI@@ABV2@@Z
2692?Key@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QBAPBVStringKeyCI@@ABV2@@Z
2693?Key@?$SafeMap_Iterator@VKey@Locale@@K@@QBAABV0Locale@@XZ
2694?Key@?$SafeMap_Iterator@VStringKeyCI@@K@@QBAABVStringKeyCI@@XZ
2695?Key@?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@QBAABVStringKeyCI@@XZ
2696?LogError@CBaseConfigCache@@UAAXKK@Z
2697?LogErrorCode@CErrorContext@@QAAXXZ
2698?LogErrorCode@CRequestContext@@QAAXXZ
2699?LogErrorMessage@CRequestContext@@QAAXXZ
2700?LogNotificationEvent@CWSManGroupPolicyManager@@CAXK@Z
2701?LogReadErrors@CBaseConfigCache@@IAA?AW4ErrorLogging@@W4ConfigChangeSources@@@Z
2702?LowerBound@?$SafeMap_Iterator@VKey@Locale@@K@@QAAXABVKey@Locale@@@Z
2703?MakeUrlBinding@@YAHKPAGPAKPBG222@Z
2704?MakeUrlBinding@@YAPAGPAVIRequestContext@@PBG111@Z
2705?MapGeneric@CWSManSecurityUI@@UAAJPBU_GUID@@PAEPAK@Z
2706?Me@?$AutoCleanup@V?$AutoDelete@D@@PAD@@AAAAAV?$AutoDelete@D@@XZ
2707?Me@?$AutoCleanup@V?$AutoDelete@G@@PAG@@AAAAAV?$AutoDelete@G@@XZ
2708?Me@?$AutoCleanup@V?$AutoDelete@UIPRange@CWSManIPFilter@@@@PAUIPRange@CWSManIPFilter@@@@AAAAAV?$AutoDelete@UIPRange@CWSManIPFilter@@@@XZ
2709?Me@?$AutoCleanup@V?$AutoDelete@U_SID@@@@PAU_SID@@@@AAAAAV?$AutoDelete@U_SID@@@@XZ
2710?Me@?$AutoCleanup@V?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@PAU_WSMAN_STREAM_ID_SET@@@@AAAAAV?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@XZ
2711?Me@?$AutoCleanup@V?$AutoDelete@V?$Handle@VISubscription@@@@@@PAV?$Handle@VISubscription@@@@@@AAAAAV?$AutoDelete@V?$Handle@VISubscription@@@@@@XZ
2712?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@AAAAAV?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@XZ
2713?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@AAAAAV?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@XZ
2714?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@AAAAAV?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@XZ
2715?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@AAAAAV?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@XZ
2716?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@PAV?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@AAAAAV?$AutoDelete@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@XZ
2717?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@@AAAAAV?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@XZ
2718?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@AAAAAV?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@XZ
2719?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@AAAAAV?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@XZ
2720?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@AAAAAV?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@XZ
2721?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@@AAAAAV?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@XZ
2722?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCollector@@@@@@PAV?$SafeSet_Iterator@PAVCollector@@@@@@AAAAAV?$AutoDelete@V?$SafeSet_Iterator@PAVCollector@@@@@@XZ
2723?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVHostOperation@@@@@@PAV?$SafeSet_Iterator@PAVHostOperation@@@@@@AAAAAV?$AutoDelete@V?$SafeSet_Iterator@PAVHostOperation@@@@@@XZ
2724?Me@?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@PAV?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@AAAAAV?$AutoDelete@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@XZ
2725?Me@?$AutoCleanup@V?$AutoDelete@V?$SimpleStack@VCListenerOperation@@@@@@PAV?$SimpleStack@VCListenerOperation@@@@@@AAAAAV?$AutoDelete@V?$SimpleStack@VCListenerOperation@@@@@@XZ
2726?Me@?$AutoCleanup@V?$AutoDelete@V?$SimpleStack@VShellHostEntry@@@@@@PAV?$SimpleStack@VShellHostEntry@@@@@@AAAAAV?$AutoDelete@V?$SimpleStack@VShellHostEntry@@@@@@XZ
2727?Me@?$AutoCleanup@V?$AutoDelete@V?$queue@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$deque@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$transport_allocator@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@@@@std@@@std@@@@PAV?$queue@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$deque@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$transport_allocator@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@@@@std@@@std@@@@AAAAAV?$AutoDelete@V?$queue@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$deque@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$transport_allocator@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@@@@std@@@std@@@@XZ
2728?Me@?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@AAAAAV?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@XZ
2729?Me@?$AutoCleanup@V?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@AAAAAV?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@XZ
2730?Me@?$AutoCleanup@V?$AutoDelete@V?$vector@PAVCWSManRequest@@V?$transport_allocator@PAVCWSManRequest@@@@@std@@@@PAV?$vector@PAVCWSManRequest@@V?$transport_allocator@PAVCWSManRequest@@@@@std@@@@AAAAAV?$AutoDelete@V?$vector@PAVCWSManRequest@@V?$transport_allocator@PAVCWSManRequest@@@@@std@@@@XZ
2731?Me@?$AutoCleanup@V?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@AAAAAV?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@XZ
2732?Me@?$AutoCleanup@V?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@AAAAAV?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@XZ
2733?Me@?$AutoCleanup@V?$AutoDelete@V?$vector@PAVWSManHttpSenderConnection@@V?$transport_allocator@PAVWSManHttpSenderConnection@@@@@std@@@@PAV?$vector@PAVWSManHttpSenderConnection@@V?$transport_allocator@PAVWSManHttpSenderConnection@@@@@std@@@@AAAAAV?$AutoDelete@V?$vector@PAVWSManHttpSenderConnection@@V?$transport_allocator@PAVWSManHttpSenderConnection@@@@@std@@@@XZ
2734?Me@?$AutoCleanup@V?$AutoDelete@VAdminSid@CSecurity@@@@PAVAdminSid@CSecurity@@@@AAAAAV?$AutoDelete@VAdminSid@CSecurity@@@@XZ
2735?Me@?$AutoCleanup@V?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@@AAAAAV?$AutoDelete@VBlockedRecord@@@@XZ
2736?Me@?$AutoCleanup@V?$AutoDelete@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@AAAAAV?$AutoDelete@VCBaseConfigCache@@@@XZ
2737?Me@?$AutoCleanup@V?$AutoDelete@VCCertMapping@@@@PAVCCertMapping@@@@AAAAAV?$AutoDelete@VCCertMapping@@@@XZ
2738?Me@?$AutoCleanup@V?$AutoDelete@VCConfigChangeSource@@@@PAVCConfigChangeSource@@@@AAAAAV?$AutoDelete@VCConfigChangeSource@@@@XZ
2739?Me@?$AutoCleanup@V?$AutoDelete@VCListenerSettings@@@@PAVCListenerSettings@@@@AAAAAV?$AutoDelete@VCListenerSettings@@@@XZ
2740?Me@?$AutoCleanup@V?$AutoDelete@VCObserverConfigChangeErrors@@@@PAVCObserverConfigChangeErrors@@@@AAAAAV?$AutoDelete@VCObserverConfigChangeErrors@@@@XZ
2741?Me@?$AutoCleanup@V?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@@AAAAAV?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@XZ
2742?Me@?$AutoCleanup@V?$AutoDelete@VCShellUriSettings@@@@PAVCShellUriSettings@@@@AAAAAV?$AutoDelete@VCShellUriSettings@@@@XZ
2743?Me@?$AutoCleanup@V?$AutoDelete@VCWSManEPR@@@@PAVCWSManEPR@@@@AAAAAV?$AutoDelete@VCWSManEPR@@@@XZ
2744?Me@?$AutoCleanup@V?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@@AAAAAV?$AutoDelete@VCWSManResource@@@@XZ
2745?Me@?$AutoCleanup@V?$AutoDelete@VCertHash@@@@PAVCertHash@@@@AAAAAV?$AutoDelete@VCertHash@@@@XZ
2746?Me@?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@AAAAAV?$AutoDelete@VConfigUpdate@@@@XZ
2747?Me@?$AutoCleanup@V?$AutoDelete@VCredUIDllLoader@@@@PAVCredUIDllLoader@@@@AAAAAV?$AutoDelete@VCredUIDllLoader@@@@XZ
2748?Me@?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@AAAAAV?$AutoDelete@VEnumSinkEx@@@@XZ
2749?Me@?$AutoCleanup@V?$AutoDelete@VEventHandler@WSMan@@@@PAVEventHandler@WSMan@@@@AAAAAV?$AutoDelete@VEventHandler@WSMan@@@@XZ
2750?Me@?$AutoCleanup@V?$AutoDelete@VExpiredOperationIdRecord@@@@PAVExpiredOperationIdRecord@@@@AAAAAV?$AutoDelete@VExpiredOperationIdRecord@@@@XZ
2751?Me@?$AutoCleanup@V?$AutoDelete@VGPApiManager@@@@PAVGPApiManager@@@@AAAAAV?$AutoDelete@VGPApiManager@@@@XZ
2752?Me@?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@AAAAAV?$AutoDelete@VGeneralSinkEx@@@@XZ
2753?Me@?$AutoCleanup@V?$AutoDelete@VIChannelObserverFactory@@@@PAVIChannelObserverFactory@@@@AAAAAV?$AutoDelete@VIChannelObserverFactory@@@@XZ
2754?Me@?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@AAAAAV?$AutoDelete@VIQueryDASHSMASHInterface@@@@XZ
2755?Me@?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@AAAAAV?$AutoDelete@VISpecification@@@@XZ
2756?Me@?$AutoCleanup@V?$AutoDelete@VInteractiveSid@CSecurity@@@@PAVInteractiveSid@CSecurity@@@@AAAAAV?$AutoDelete@VInteractiveSid@CSecurity@@@@XZ
2757?Me@?$AutoCleanup@V?$AutoDelete@VIpHlpApiDllLoader@@@@PAVIpHlpApiDllLoader@@@@AAAAAV?$AutoDelete@VIpHlpApiDllLoader@@@@XZ
2758?Me@?$AutoCleanup@V?$AutoDelete@VMachineName@@@@PAVMachineName@@@@AAAAAV?$AutoDelete@VMachineName@@@@XZ
2759?Me@?$AutoCleanup@V?$AutoDelete@VMasterReceiveData@CListenerReceive@@@@PAVMasterReceiveData@CListenerReceive@@@@AAAAAV?$AutoDelete@VMasterReceiveData@CListenerReceive@@@@XZ
2760?Me@?$AutoCleanup@V?$AutoDelete@VNetworkServiceSid@CSecurity@@@@PAVNetworkServiceSid@CSecurity@@@@AAAAAV?$AutoDelete@VNetworkServiceSid@CSecurity@@@@XZ
2761?Me@?$AutoCleanup@V?$AutoDelete@VNtDsApiDllLoader@@@@PAVNtDsApiDllLoader@@@@AAAAAV?$AutoDelete@VNtDsApiDllLoader@@@@XZ
2762?Me@?$AutoCleanup@V?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@PAVOptionValue@SessionOptions@Client@WSMan@@@@AAAAAV?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@XZ
2763?Me@?$AutoCleanup@V?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@@AAAAAV?$AutoDelete@VPacketCreator@@@@XZ
2764?Me@?$AutoCleanup@V?$AutoDelete@VPacketParser@@@@PAVPacketParser@@@@AAAAAV?$AutoDelete@VPacketParser@@@@XZ
2765?Me@?$AutoCleanup@V?$AutoDelete@VResources@Locale@@@@PAVResources@Locale@@@@AAAAAV?$AutoDelete@VResources@Locale@@@@XZ
2766?Me@?$AutoCleanup@V?$AutoDelete@VRunAsConfiguration@@@@PAVRunAsConfiguration@@@@AAAAAV?$AutoDelete@VRunAsConfiguration@@@@XZ
2767?Me@?$AutoCleanup@V?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@@AAAAAV?$AutoDelete@VSecurityEntry@Catalog@@@@XZ
2768?Me@?$AutoCleanup@V?$AutoDelete@VSendPacketArgs@RobustConnectionBuffer@@@@PAVSendPacketArgs@RobustConnectionBuffer@@@@AAAAAV?$AutoDelete@VSendPacketArgs@RobustConnectionBuffer@@@@XZ
2769?Me@?$AutoCleanup@V?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@@AAAAAV?$AutoDelete@VServiceSoapProcessor@@@@XZ
2770?Me@?$AutoCleanup@V?$AutoDelete@VShell32DllLoader@@@@PAVShell32DllLoader@@@@AAAAAV?$AutoDelete@VShell32DllLoader@@@@XZ
2771?Me@?$AutoCleanup@V?$AutoDelete@VShlWApiDllLoader@@@@PAVShlWApiDllLoader@@@@AAAAAV?$AutoDelete@VShlWApiDllLoader@@@@XZ
2772?Me@?$AutoCleanup@V?$AutoDelete@VSubscriptionEnumerator@@@@PAVSubscriptionEnumerator@@@@AAAAAV?$AutoDelete@VSubscriptionEnumerator@@@@XZ
2773?Me@?$AutoCleanup@V?$AutoDelete@VSubscriptionManager@@@@PAVSubscriptionManager@@@@AAAAAV?$AutoDelete@VSubscriptionManager@@@@XZ
2774?Me@?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@AAAAAV?$AutoDelete@VTSTRBUFFER@@@@XZ
2775?Me@?$AutoCleanup@V?$AutoDelete@VUniqueStringOverflow@@@@PAVUniqueStringOverflow@@@@AAAAAV?$AutoDelete@VUniqueStringOverflow@@@@XZ
2776?Me@?$AutoCleanup@V?$AutoDelete@VUser32DllLoader@@@@PAVUser32DllLoader@@@@AAAAAV?$AutoDelete@VUser32DllLoader@@@@XZ
2777?Me@?$AutoCleanup@V?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@PAVWSMANCONFIGTABLE_IDENTITY@@@@AAAAAV?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@XZ
2778?Me@?$AutoCleanup@V?$AutoDelete@VWSManMemCryptManager@@@@PAVWSManMemCryptManager@@@@AAAAAV?$AutoDelete@VWSManMemCryptManager@@@@XZ
2779?Me@?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@AAAAAV?$AutoDelete@VWmiEnumContext@@@@XZ
2780?Me@?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@AAAAAV?$AutoDelete@VXmlReader@@@@XZ
2781?Me@?$AutoCleanup@V?$AutoDeleteVector@$$CBG@@PBG@@AAAAAV?$AutoDeleteVector@$$CBG@@XZ
2782?Me@?$AutoCleanup@V?$AutoDeleteVector@D@@PAD@@AAAAAV?$AutoDeleteVector@D@@XZ
2783?Me@?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@AAAAAV?$AutoDeleteVector@E@@XZ
2784?Me@?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@AAAAAV?$AutoDeleteVector@G@@XZ
2785?Me@?$AutoCleanup@V?$AutoDeleteVector@H@@PAH@@AAAAAV?$AutoDeleteVector@H@@XZ
2786?Me@?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@AAAAAV?$AutoDeleteVector@PAG@@XZ
2787?Me@?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@AAAAAV?$AutoDeleteVector@PBG@@XZ
2788?Me@?$AutoCleanup@V?$AutoDeleteVector@U_CONFIG_UPDATE@@@@PAU_CONFIG_UPDATE@@@@AAAAAV?$AutoDeleteVector@U_CONFIG_UPDATE@@@@XZ
2789?Me@?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@AAAAAV?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@XZ
2790?Me@?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@AAAAAV?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@XZ
2791?Me@?$AutoCleanup@V?$AutoDeleteVector@U_WSMAN_OPTION@@@@PAU_WSMAN_OPTION@@@@AAAAAV?$AutoDeleteVector@U_WSMAN_OPTION@@@@XZ
2792?Me@?$AutoCleanup@V?$AutoDeleteVector@X@@PAX@@AAAAAV?$AutoDeleteVector@X@@XZ
2793?Me@?$AutoCleanup@V?$AutoFree@E@@PAE@@AAAAAV?$AutoFree@E@@XZ
2794?Me@?$AutoCleanup@V?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@@AAAAAV?$AutoLocklessItemRecycle@VPacket@@@@XZ
2795?Me@?$AutoCleanup@V?$AutoRelease@UIAppHostChildElementCollection@@@@PAUIAppHostChildElementCollection@@@@AAAAAV?$AutoRelease@UIAppHostChildElementCollection@@@@XZ
2796?Me@?$AutoCleanup@V?$AutoRelease@UIAppHostElement@@@@PAUIAppHostElement@@@@AAAAAV?$AutoRelease@UIAppHostElement@@@@XZ
2797?Me@?$AutoCleanup@V?$AutoRelease@UIAppHostElementCollection@@@@PAUIAppHostElementCollection@@@@AAAAAV?$AutoRelease@UIAppHostElementCollection@@@@XZ
2798?Me@?$AutoCleanup@V?$AutoRelease@UIAppHostProperty@@@@PAUIAppHostProperty@@@@AAAAAV?$AutoRelease@UIAppHostProperty@@@@XZ
2799?Me@?$AutoCleanup@V?$AutoRelease@UIAppHostPropertyCollection@@@@PAUIAppHostPropertyCollection@@@@AAAAAV?$AutoRelease@UIAppHostPropertyCollection@@@@XZ
2800?Me@?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@AAAAAV?$AutoRelease@UIClientSecurity@@@@XZ
2801?Me@?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@AAAAAV?$AutoRelease@UIEnumWbemClassObject@@@@XZ
2802?Me@?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@AAAAAV?$AutoRelease@UIErrorInfo@@@@XZ
2803?Me@?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@AAAAAV?$AutoRelease@UIUnknown@@@@XZ
2804?Me@?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@AAAAAV?$AutoRelease@UIWbemClassObject@@@@XZ
2805?Me@?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@AAAAAV?$AutoRelease@UIWbemContext@@@@XZ
2806?Me@?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@AAAAAV?$AutoRelease@UIWbemLocator@@@@XZ
2807?Me@?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@AAAAAV?$AutoRelease@UIWbemObjectTextSrc@@@@XZ
2808?Me@?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@AAAAAV?$AutoRelease@UIWbemPath@@@@XZ
2809?Me@?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@AAAAAV?$AutoRelease@UIWbemPathKeyList@@@@XZ
2810?Me@?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@AAAAAV?$AutoRelease@UIWbemQualifierSet@@@@XZ
2811?Me@?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@AAAAAV?$AutoRelease@UIWbemQuery@@@@XZ
2812?Me@?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@AAAAAV?$AutoRelease@UIWbemServices@@@@XZ
2813?Me@?$AutoCleanup@V?$AutoRelease@VApplication@Client@WSMan@@@@PAVApplication@Client@WSMan@@@@AAAAAV?$AutoRelease@VApplication@Client@WSMan@@@@XZ
2814?Me@?$AutoCleanup@V?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@AAAAAV?$AutoRelease@VCBaseConfigCache@@@@XZ
2815?Me@?$AutoCleanup@V?$AutoRelease@VCClientConfigCache@@@@PAVCClientConfigCache@@@@AAAAAV?$AutoRelease@VCClientConfigCache@@@@XZ
2816?Me@?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@AAAAAV?$AutoRelease@VCClientConfigSettings@@@@XZ
2817?Me@?$AutoCleanup@V?$AutoRelease@VCCommonConfigSettings@@@@PAVCCommonConfigSettings@@@@AAAAAV?$AutoRelease@VCCommonConfigSettings@@@@XZ
2818?Me@?$AutoCleanup@V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@PAVCConfigCacheMap@CBaseConfigCache@@@@AAAAAV?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@XZ
2819?Me@?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@AAAAAV?$AutoRelease@VCConfigManager@@@@XZ
2820?Me@?$AutoCleanup@V?$AutoRelease@VCListenerCommand@@@@PAVCListenerCommand@@@@AAAAAV?$AutoRelease@VCListenerCommand@@@@XZ
2821?Me@?$AutoCleanup@V?$AutoRelease@VCListenerMasterOperation@@@@PAVCListenerMasterOperation@@@@AAAAAV?$AutoRelease@VCListenerMasterOperation@@@@XZ
2822?Me@?$AutoCleanup@V?$AutoRelease@VCListenerReceive@@@@PAVCListenerReceive@@@@AAAAAV?$AutoRelease@VCListenerReceive@@@@XZ
2823?Me@?$AutoCleanup@V?$AutoRelease@VCListenerShell@@@@PAVCListenerShell@@@@AAAAAV?$AutoRelease@VCListenerShell@@@@XZ
2824?Me@?$AutoCleanup@V?$AutoRelease@VCRemoteOperation@@@@PAVCRemoteOperation@@@@AAAAAV?$AutoRelease@VCRemoteOperation@@@@XZ
2825?Me@?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@AAAAAV?$AutoRelease@VCRemoteSession@@@@XZ
2826?Me@?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@AAAAAV?$AutoRelease@VCRequestContext@@@@XZ
2827?Me@?$AutoCleanup@V?$AutoRelease@VCServiceCommonConfigSettings@@@@PAVCServiceCommonConfigSettings@@@@AAAAAV?$AutoRelease@VCServiceCommonConfigSettings@@@@XZ
2828?Me@?$AutoCleanup@V?$AutoRelease@VCServiceConfigCache@@@@PAVCServiceConfigCache@@@@AAAAAV?$AutoRelease@VCServiceConfigCache@@@@XZ
2829?Me@?$AutoCleanup@V?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@@AAAAAV?$AutoRelease@VCServiceConfigSettings@@@@XZ
2830?Me@?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@AAAAAV?$AutoRelease@VCWSManEPR@@@@XZ
2831?Me@?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyCache@@@@PAVCWSManGroupPolicyCache@@@@AAAAAV?$AutoRelease@VCWSManGroupPolicyCache@@@@XZ
2832?Me@?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@@AAAAAV?$AutoRelease@VCWSManGroupPolicyManager@@@@XZ
2833?Me@?$AutoCleanup@V?$AutoRelease@VCWSManObject@@@@PAVCWSManObject@@@@AAAAAV?$AutoRelease@VCWSManObject@@@@XZ
2834?Me@?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@AAAAAV?$AutoRelease@VCWSManResource@@@@XZ
2835?Me@?$AutoCleanup@V?$AutoRelease@VCWSManSession@@@@PAVCWSManSession@@@@AAAAAV?$AutoRelease@VCWSManSession@@@@XZ
2836?Me@?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@AAAAAV?$AutoRelease@VCWinRSPluginConfigCache@@@@XZ
2837?Me@?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@@AAAAAV?$AutoRelease@VCWinRSPluginConfigSettings@@@@XZ
2838?Me@?$AutoCleanup@V?$AutoRelease@VCommand@Client@WSMan@@@@PAVCommand@Client@WSMan@@@@AAAAAV?$AutoRelease@VCommand@Client@WSMan@@@@XZ
2839?Me@?$AutoCleanup@V?$AutoRelease@VConfigNotification@@@@PAVConfigNotification@@@@AAAAAV?$AutoRelease@VConfigNotification@@@@XZ
2840?Me@?$AutoCleanup@V?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@PAVConnectShellOperation@Client@WSMan@@@@AAAAAV?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@XZ
2841?Me@?$AutoCleanup@V?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@PAVCreateShellOperation@Client@WSMan@@@@AAAAAV?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@XZ
2842?Me@?$AutoCleanup@V?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@PAVDeleteShellOperation@Client@WSMan@@@@AAAAAV?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@XZ
2843?Me@?$AutoCleanup@V?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@PAVDisconnectOperation@Client@WSMan@@@@AAAAAV?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@XZ
2844?Me@?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@AAAAAV?$AutoRelease@VEnumSinkEx@@@@XZ
2845?Me@?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@AAAAAV?$AutoRelease@VGeneralSinkEx@@@@XZ
2846?Me@?$AutoCleanup@V?$AutoRelease@VHostMappingTable@@@@PAVHostMappingTable@@@@AAAAAV?$AutoRelease@VHostMappingTable@@@@XZ
2847?Me@?$AutoCleanup@V?$AutoRelease@VIISConfigSettings@@@@PAVIISConfigSettings@@@@AAAAAV?$AutoRelease@VIISConfigSettings@@@@XZ
2848?Me@?$AutoCleanup@V?$AutoRelease@VIPCSoapProcessor@@@@PAVIPCSoapProcessor@@@@AAAAAV?$AutoRelease@VIPCSoapProcessor@@@@XZ
2849?Me@?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@AAAAAV?$AutoRelease@VIRequestContext@@@@XZ
2850?Me@?$AutoCleanup@V?$AutoRelease@VISubscription@@@@PAVISubscription@@@@AAAAAV?$AutoRelease@VISubscription@@@@XZ
2851?Me@?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@AAAAAV?$AutoRelease@VInboundRequestDetails@@@@XZ
2852?Me@?$AutoCleanup@V?$AutoRelease@VProxyManager@Client@WSMan@@@@PAVProxyManager@Client@WSMan@@@@AAAAAV?$AutoRelease@VProxyManager@Client@WSMan@@@@XZ
2853?Me@?$AutoCleanup@V?$AutoRelease@VProxySelection@Client@WSMan@@@@PAVProxySelection@Client@WSMan@@@@AAAAAV?$AutoRelease@VProxySelection@Client@WSMan@@@@XZ
2854?Me@?$AutoCleanup@V?$AutoRelease@VPushSubscribeOperation@@@@PAVPushSubscribeOperation@@@@AAAAAV?$AutoRelease@VPushSubscribeOperation@@@@XZ
2855?Me@?$AutoCleanup@V?$AutoRelease@VPushSubscription@@@@PAVPushSubscription@@@@AAAAAV?$AutoRelease@VPushSubscription@@@@XZ
2856?Me@?$AutoCleanup@V?$AutoRelease@VReceiveOperation@Client@WSMan@@@@PAVReceiveOperation@Client@WSMan@@@@AAAAAV?$AutoRelease@VReceiveOperation@Client@WSMan@@@@XZ
2857?Me@?$AutoCleanup@V?$AutoRelease@VReconnectOperation@Client@WSMan@@@@PAVReconnectOperation@Client@WSMan@@@@AAAAAV?$AutoRelease@VReconnectOperation@Client@WSMan@@@@XZ
2858?Me@?$AutoCleanup@V?$AutoRelease@VSendOperation@Client@WSMan@@@@PAVSendOperation@Client@WSMan@@@@AAAAAV?$AutoRelease@VSendOperation@Client@WSMan@@@@XZ
2859?Me@?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@AAAAAV?$AutoRelease@VShell@Client@WSMan@@@@XZ
2860?Me@?$AutoCleanup@V?$AutoRelease@VShellInfo@@@@PAVShellInfo@@@@AAAAAV?$AutoRelease@VShellInfo@@@@XZ
2861?Me@?$AutoCleanup@V?$AutoRelease@VSignalOperation@Client@WSMan@@@@PAVSignalOperation@Client@WSMan@@@@AAAAAV?$AutoRelease@VSignalOperation@Client@WSMan@@@@XZ
2862?Me@?$AutoCleanup@V?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@@AAAAAV?$AutoRelease@VUserRecord@@@@XZ
2863?Me@?$AutoCleanup@V?$AutoRelease@VWSManHttpListener@@@@PAVWSManHttpListener@@@@AAAAAV?$AutoRelease@VWSManHttpListener@@@@XZ
2864?Me@?$AutoCleanup@V?$AutoReleaseEx@VHostMappingTableEntry@@@@PAVHostMappingTableEntry@@@@AAAAAV?$AutoReleaseEx@VHostMappingTableEntry@@@@XZ
2865?Me@?$AutoCleanup@V?$AutoReleaseEx@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@AAAAAV?$AutoReleaseEx@VShell@Client@WSMan@@@@XZ
2866?Me@?$AutoCleanup@VAutoBstr@@PAG@@AAAAAVAutoBstr@@XZ
2867?Me@?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@AAAAAVAutoBstrNoAlloc@@XZ
2868?Me@?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@AAAAAVAutoCertContext@@XZ
2869?Me@?$AutoCleanup@VAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@@AAAAAVAutoChainContext@@XZ
2870?Me@?$AutoCleanup@VAutoCoTaskMemFree@@PAX@@AAAAAVAutoCoTaskMemFree@@XZ
2871?Me@?$AutoCleanup@VAutoEnvironmentBlock@@PAX@@AAAAAVAutoEnvironmentBlock@@XZ
2872?Me@?$AutoCleanup@VAutoFwXmlCloseParser@@PAX@@AAAAAVAutoFwXmlCloseParser@@XZ
2873?Me@?$AutoCleanup@VAutoHandle@@PAX@@AAAAAVAutoHandle@@XZ
2874?Me@?$AutoCleanup@VAutoImpersonateUser@@PAX@@AAAAAVAutoImpersonateUser@@XZ
2875?Me@?$AutoCleanup@VAutoLibrary@@PAUHINSTANCE__@@@@AAAAAVAutoLibrary@@XZ
2876?Me@?$AutoCleanup@VAutoLocalFree@@PAX@@AAAAAVAutoLocalFree@@XZ
2877?Me@?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@AAAAAVAutoMIClass@@XZ
2878?Me@?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@AAAAAVAutoMIInstance@@XZ
2879?Me@?$AutoCleanup@VAutoObject@@PAUWSMAN_OBJECT@@@@AAAAAVAutoObject@@XZ
2880?Me@?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@AAAAAVAutoRegKey@@XZ
2881?Me@?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@AAAAAVAutoSecurityDescriptor@@XZ
2882?Me@?$AutoCleanup@VAutoWaitHandle@@PAX@@AAAAAVAutoWaitHandle@@XZ
2883?MoveSettingsToMigrationKey@@YAHPAVIRequestContext@@_N@Z
2884?NUM_BOMS@PacketFormatter@@0HB
2885?NUM_CHARSETS@PacketFormatter@@0HB
2886?Next@TSTRBUFFER@@QBAPBGPBG@Z
2887?NextCertMapping@CConfigManager@@QAAHXZ
2888?NextListener@CConfigManager@@QAAHXZ
2889?NextRow@CConfigManager@@QAAHXZ
2890?NextShellUri@CConfigManager@@QAAHXZ
2891?NoSemantics@ExtendedSemantic@@2KB
2892?NotifyObservers@CWSManGroupPolicyManager@@UAAHPAVIRequestContext@@PAVIWSManGroupPolicyCacheDataProvider@@@Z
2893?OnChange@CBaseConfigCache@@UAAXW4ConfigChangeSources@@KW4ConfigChangeSeverityType@@@Z
2894?OpenRegKey@ConfigRegistry@@IAAJPAU_CONFIG_INFO@@KPAVWSMANCONFIGTABLE_IDENTITY@@PAVAutoRegKey@@PAUHKEY__@@@Z
2895?OverrideMaxEnvelopeSize@PacketParser@@QAAXK@Z
2896?OverrideTimeout@PacketParser@@QAAXK@Z
2897?Parse@CWSManResource@@SAPAV1@PAVIRequestContext@@PBG11PAU_WSMAN_SELECTOR_SET@@PAU_WSMAN_OPTION_SET@@H@Z
2898?Parse@CWSManResource@@SAPAV1@PAVIRequestContext@@PBGH@Z
2899?Parse@XmlReader@@AAAHPAVIRequestContext@@@Z
2900?ParseAction@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@_N@Z
2901?ParseActivityId@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2902?ParseBookmark@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2903?ParseDataLocale@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2904?ParseEprElement@CWSManEPR@@SAPAV1@PAVIRequestContext@@PAU_FWXML_ELEMENT@@@Z
2905?ParseEvent@SoapSemanticConverter@@QAAPAVSemanticMessage@@PAU_FWXML_ELEMENT@@PAKPAVIRequestContext@@@Z
2906?ParseFaultTo@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2907?ParseFragment@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2908?ParseHeader@PacketParser@@AAAHPAVCRequestContext@@PAU_FWXML_ELEMENT@@HPAVCServiceCommonConfigSettings@@@Z
2909?ParseHeaders@CWSManResourceNoResourceUri@@QAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@11@Z
2910?ParseHeaders@PacketParser@@AAAHPAVCRequestContext@@PAVCServiceCommonConfigSettings@@@Z
2911?ParseLocale@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2912?ParseMachineID@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@@Z
2913?ParseMaxEnvelopeSize@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@HPAVCServiceCommonConfigSettings@@@Z
2914?ParseMessageId@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@_N@Z
2915?ParseOperationId@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2916?ParseOptionSet@CWSManResourceNoResourceUri@@QAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@@Z
2917?ParseOptions@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2918?ParsePacket@PacketParser@@QAAHPAVCRequestContext@@PAVPacket@@PAVCServiceCommonConfigSettings@@@Z
2919?ParsePacketInternal@PacketParser@@AAAHPAVCRequestContext@@PAU_FWXML_ELEMENT@@PAVCServiceCommonConfigSettings@@@Z
2920?ParseReplyTo@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@@Z
2921?ParseResourceLocator@CWSManResource@@SAPAV1@PAVIRequestContext@@PAU_WSMAN_RESOURCE_LOCATOR@@@Z
2922?ParseResourceUri@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2923?ParseResponse@SoapSemanticConverter@@QAA_NPAU_FWXML_ELEMENT@@PAKPA_NPAVIRequestContext@@@Z
2924?ParseRobustConnectionAckSequenceId@PacketParser@@AAAKPA_K@Z
2925?ParseRobustConnectionMessages@PacketParser@@QAAKPAW4PacketType@1@PA_NPA_K2@Z
2926?ParseSelectors@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2927?ParseSequenceId@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@@Z
2928?ParseSessionId@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2929?ParseShellCompression@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2930?ParseStream@PacketParser@@QAAXPAVCRequestContext@@PAVITransportReceiver@@PAVPacket@@PAVCServiceCommonConfigSettings@@@Z
2931?ParseSubscriptionAgentPacket@PacketParser@@QAAHPAVCRequestContext@@PAVPacket@@PAVCServiceConfigSettings@@@Z
2932?ParseSubscriptionID@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@H@Z
2933?ParseTimeout@PacketParser@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@HPAVCServiceCommonConfigSettings@@@Z
2934?ParseToAddress@PacketParser@@AAAHPAVCRequestContext@@PAU_FWXML_ELEMENT@@@Z
2935?Passed@CErrorContext@@UBAHXZ
2936?PolicyChanged@CWSManGroupPolicyManager@@AAAXE@Z
2937?PostChange@CBaseConfigCache@@MAAHPAVIRequestContext@@PAVCCommonConfigSettings@@1@Z
2938?PostChange@CServiceConfigCache@@EAAHPAVIRequestContext@@PAVCCommonConfigSettings@@1@Z
2939?PostError@CBaseConfigCache@@MAAXK@Z
2940?PostError@CServiceConfigCache@@EAAXK@Z
2941?PrepareToCommitWithSize@BufferFormatter@@UAAKK@Z
2942?PrepareToCommitWithSize@CircularBufferFormatter@@UAAKK@Z
2943?PrintHandleTrace@@YAXPAX@Z
2944?PrintReleaseTrace@@YAXPAXJ@Z
2945?PrintUnregisterWaitTrace@@YAXPAX@Z
2946?ProcessContext@CErrorContext@@UAAHHPAKPAU_WSMAN_FAULT_OBJECT@@@Z
2947?ProcessContext@CErrorContext@@UAAHHPAU_WSMAN_ERROR@@@Z
2948?ProcessContext@CRequestContext@@QAAHHPAU_WSMAN_ENUMERATOR_RESULT@@@Z
2949?ProcessContext@CRequestContext@@QAAHHPAU_WSMAN_EVENTS_RESULT@@@Z
2950?ProcessContext@CRequestContext@@QAAHHPAU_WSMAN_RESULT@@@Z
2951?ProcessContext@CRequestContext@@QAAHHPAU_WSMAN_STATUS@@@Z
2952?ProcessContext@CRequestContext@@UAAHHPAKPAU_WSMAN_FAULT_OBJECT@@@Z
2953?ProcessContext@CRequestContext@@UAAHHPAU_WSMAN_ERROR@@@Z
2954?ProcessEPR@CWSManEPR@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@@Z
2955?ProcessFragmentDialect@CWSManResourceNoResourceUri@@IAAHPAVIRequestContext@@PBGK@Z
2956?ProcessFragmentPath@CWSManResourceNoResourceUri@@IAAHPAVIRequestContext@@PBGK@Z
2957?ProcessKey@CWSManResourceNoResourceUri@@IAAHPAVIRequestContext@@PBG1@Z
2958?ProcessNestedEPR@CWSManResourceNoResourceUri@@IAAHPAVIRequestContext@@PBGPAU_FWXML_ELEMENT@@@Z
2959?ProcessOption@CWSManResourceNoResourceUri@@IAAHPAVIRequestContext@@PBG11H@Z
2960?ProcessRefParameters@CWSManEPR@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@@Z
2961?ProcessRefProperties@CWSManEPR@@AAAHPAVIRequestContext@@PAU_FWXML_ELEMENT@@@Z
2962?ProcessUri@CWSManResource@@QAAHPAVIRequestContext@@PBGK@Z
2963?Progress@ExtendedSemantic@@2KB
2964?PropertySheetPageCallback@CWSManSecurityUI@@UAAJPAUHWND__@@IW4_SI_PAGE_TYPE@@@Z
2965?ProviderFailure@CErrorContext@@UBAHXZ
2966?ProviderShutdownCleanup@CWinRSPluginConfigCache@@SAXXZ
2967?PutOverrideValue@?$PacketElement@K@PacketParser@@QAAXK@Z
2968?PutOverrideValue@?$PacketElement@PBG@PacketParser@@QAAXPBG@Z
2969?PutValue@?$PacketElement@K@PacketParser@@QAAXKH@Z
2970?PutValue@?$PacketElement@PAU_FWXML_ELEMENT@@@PacketParser@@QAAXPAU_FWXML_ELEMENT@@H@Z
2971?PutValue@?$PacketElement@PBG@PacketParser@@QAAXPBGH@Z
2972?PutValue@?$PacketElement@_K@PacketParser@@QAAX_KH@Z
2973?PutValue@Fragment@PacketParser@@QAAXPBG0H@Z
2974?PutValue@NotUnderstandSoapHeader@PacketParser@@QAAXPBG00@Z
2975?PutValue@ReferenceParameters@PacketParser@@QAAKPAU_FWXML_ELEMENT@@H@Z
2976?QueryInterface@CWSManSecurityUI@@UAAJABU_GUID@@PAPAX@Z
2977?QueryPtr@RBUFFER@@QBAPAXXZ
2978?QueryRegValue@CConfigManager@@AAAJPAU_CONFIG_INFO@@PAKKPAE1@Z
2979?QueryRegValue@CWSManGroupPolicyManager@@AAAJPAVIRequestContext@@PBU_WSMAN_POLICY_INFO@@PAKKPAE2@Z
2980?QuerySize@RBUFFER@@QBAIXZ
2981?QueryStr@TSTRBUFFER@@QBAPBGXZ
2982?QuotaComplete@UserRecord@@UAAXPAU_WSMAN_AUTHZ_QUOTA@@KPBG@Z
2983?ReAlloc@WSManMemory@@SAPAXPAXIHW4_NitsFaultMode@@@Z
2984?ReadCertMappingRegistryKey@CConfigManager@@SAHPAVIRequestContext@@PAVCERTMAPPING_IDENTITY@@PAG@Z
2985?ReadCredentialsFromCredmanStore@CConfigManager@@SAHPAVIRequestContext@@PAG1@Z
2986?ReadCurrentSettings@CClientConfigCache@@EAAPAVCCommonConfigSettings@@PAVIRequestContext@@W4ErrorLogging@@@Z
2987?ReadCurrentSettings@CServiceConfigCache@@EAAPAVCCommonConfigSettings@@PAVIRequestContext@@W4ErrorLogging@@@Z
2988?ReadCurrentSettings@CWinRSPluginConfigCache@@EAAPAVCCommonConfigSettings@@PAVIRequestContext@@W4ErrorLogging@@@Z
2989?ReadDefaultSettings@CClientConfigCache@@EAAPAVCCommonConfigSettings@@PAVIRequestContext@@@Z
2990?ReadDefaultSettings@CServiceConfigCache@@EAAPAVCCommonConfigSettings@@PAVIRequestContext@@@Z
2991?ReadDefaultSettings@CWinRSPluginConfigCache@@EAAPAVCCommonConfigSettings@@PAVIRequestContext@@@Z
2992?ReadShellUriRegistryKey@CConfigManager@@SAHPAVIRequestContext@@PAVSHELLURI_IDENTITY@@PAG@Z
2993?ReadTableRegistryKey@CConfigManager@@SAHPAVIRequestContext@@PAVWSMANCONFIGTABLE_IDENTITY@@PAG@Z
2994?ReallocStorage@RBUFFER@@IAAHI@Z
2995?RecordAccessDenied@CErrorContext@@UAAXXZ
2996?RecordAccessDenied@CRequestContext@@UAAXXZ
2997?RecordAccessDeniedWithDetail@CErrorContext@@UAAXKZZ
2998?RecordAccessDeniedWithDetail@CRequestContext@@UAAXKZZ
2999?RecordFailure@CErrorContext@@UAAXK@Z
3000?RecordFailure@CErrorContext@@UAAXKKZZ
3001?RecordFailure@CErrorContext@@UAAXPAU_WSMAN_FAULT_OBJECT@@@Z
3002?RecordFailure@CErrorContext@@UAAXW4_MI_Result@@KKZZ
3003?RecordFailure@CRequestContext@@AAAXKKPAPAD0@Z
3004?RecordFailure@CRequestContext@@UAAXK@Z
3005?RecordFailure@CRequestContext@@UAAXKKZZ
3006?RecordFailure@CRequestContext@@UAAXPAU_WSMAN_FAULT_OBJECT@@@Z
3007?RecordFailure@CRequestContext@@UAAXW4_MI_Result@@KKZZ
3008?RecordHresult@CErrorContext@@UAAXKKZZ
3009?RecordHresult@CRequestContext@@UAAXKKZZ
3010?RecordHtmlError@CRequestContext@@QAAHKPAU_FWXML_ELEMENT@@@Z
3011?RecordHtmlError@CRequestContext@@QAAHKPBGK@Z
3012?RecordMIFailure@IRequestContext@@QAAXW4_MI_Result@@K@Z
3013?RecordOutOfMemory@CErrorContext@@UAAXXZ
3014?RecordOutOfMemory@CRequestContext@@UAAXXZ
3015?RecordProviderFailure@CErrorContext@@UAAXPAU_WSMAN_FAULT_OBJECT@@PBG1@Z
3016?RecordProviderFailure@CRequestContext@@QAAXKHPBG00@Z
3017?RecordProviderFailure@CRequestContext@@UAAXPAU_WSMAN_FAULT_OBJECT@@PBG1@Z
3018?RecordSoapError@CErrorContext@@UAAHKPBG@Z
3019?RecordSoapError@CRequestContext@@QAAHKPAU_FWXML_ELEMENT@@@Z
3020?RecordSoapError@CRequestContext@@UAAHKPBG@Z
3021?RecordText@CRequestContext@@AAAHKPBGIK@Z
3022?RecordXml@CRequestContext@@AAAHKPAU_FWXML_ELEMENT@@K@Z
3023?Refresh@UserRecord@@QAAXXZ
3024?RegisterChild@ChildLifeTimeManager@@QAA_NXZ
3025?RegisterChunkBoundary@CircularBufferFormatter@@QAAKXZ
3026?RegisterConfigChangeNotification@CConfigManager@@QAAPAVConfigNotification@@PAX@Z
3027?RegisterForPolicyNotification@CWSManGroupPolicyManager@@AAAHPAVIRequestContext@@H@Z
3028RegisterModule
3029?Release@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@UBAXXZ
3030?Release@?$SafeMap@PAVCCertMapping@@UEmpty@@V?$SafeSet_Iterator@PAVCCertMapping@@@@@@UBAXXZ
3031?Release@?$SafeMap@PAVCListenerConnect@@PAV1@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@UBAXXZ
3032?Release@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@UBAXXZ
3033?Release@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@UBAXXZ
3034?Release@?$SafeMap@PAVCListenerReceive@@PAV1@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@UBAXXZ
3035?Release@?$SafeMap@PAVCListenerSend@@PAV1@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@UBAXXZ
3036?Release@?$SafeMap@PAVCListenerSignal@@PAV1@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@UBAXXZ
3037?Release@?$SafeMap@PAVCShellUriSettings@@UEmpty@@V?$SafeSet_Iterator@PAVCShellUriSettings@@@@@@UBAXXZ
3038?Release@?$SafeMap@PAVCollector@@UEmpty@@V?$SafeMap_Iterator@PAVCollector@@UEmpty@@@@@@UBAXXZ
3039?Release@?$SafeMap@PAVCollector@@UEmpty@@V?$SafeSet_Iterator@PAVCollector@@@@@@UBAXXZ
3040?Release@?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeMap_Iterator@PAVHostOperation@@UEmpty@@@@@@UBAXXZ
3041?Release@?$SafeMap@PAVHostOperation@@UEmpty@@V?$SafeSet_Iterator@PAVHostOperation@@@@@@UBAXXZ
3042?Release@?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeMap_Iterator@PAVIOperation@@UEmpty@@@@@@UBAXXZ
3043?Release@?$SafeMap@PAVIOperation@@UEmpty@@V?$SafeSet_Iterator@PAVIOperation@@@@@@UBAXXZ
3044?Release@?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVListenerSourceSubscription@@UEmpty@@@@@@UBAXXZ
3045?Release@?$SafeMap@PAVListenerSourceSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@UBAXXZ
3046?Release@?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeMap_Iterator@PAVPushSubscription@@UEmpty@@@@@@UBAXXZ
3047?Release@?$SafeMap@PAVPushSubscription@@UEmpty@@V?$SafeSet_Iterator@PAVPushSubscription@@@@@@UBAXXZ
3048?Release@?$SafeMap@PAXUEmpty@@V?$SafeSet_Iterator@PAX@@@@UBAXXZ
3049?Release@?$SafeMap@UPluginKey@@KV?$SafeMap_Iterator@UPluginKey@@K@@@@UBAXXZ
3050?Release@?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@UBAXXZ
3051?Release@?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@UBAXXZ
3052?Release@?$SafeMap@VGuidKey@@PAVCListenerCommand@@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@UBAXXZ
3053?Release@?$SafeMap@VKey@CWmiPtrCache@@VMapping@2@V?$SafeMap_Iterator@VKey@CWmiPtrCache@@VMapping@2@@@@@UBAXXZ
3054?Release@?$SafeMap@VKey@Locale@@KV?$SafeMap_Iterator@VKey@Locale@@K@@@@UBAXXZ
3055?Release@?$SafeMap@VStringKey@@PAVListenerEvents@@V?$SafeMap_Iterator@VStringKey@@PAVListenerEvents@@@@@@UBAXXZ
3056?Release@?$SafeMap@VStringKey@@PAVListenerSourceSubscription@@V?$SafeMap_Iterator@VStringKey@@PAVListenerSourceSubscription@@@@@@UBAXXZ
3057?Release@?$SafeMap@VStringKey@@UOption@WinRM_OperationOptions@@V?$SafeMap_Iterator@VStringKey@@UOption@WinRM_OperationOptions@@@@@@UBAXXZ
3058?Release@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@UBAXXZ
3059?Release@?$SafeMap@VStringKeyCI@@PAVIISEndpoint@@V?$SafeMap_Iterator@VStringKeyCI@@PAVIISEndpoint@@@@@@UBAXXZ
3060?Release@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeMap_Iterator@VStringKeyCI@@UEmpty@@@@@@UBAXXZ
3061?Release@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@UBAXXZ
3062?Release@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@UBAXXZ
3063?Release@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@UBAXXZ
3064?Release@?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@UBAXXZ
3065?Release@?$SafeMap@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@V?$SafeMap_Iterator@VTokenCacheKey@ServiceSoapProcessor@@VTokenCacheMapping@2@@@@@UBAXXZ
3066?Release@?$SafeMap@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@UBAXXZ
3067?Release@?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@UBAXXZ
3068?Release@?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QAAXXZ
3069?Release@?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QAAXXZ
3070?Release@?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QAAXXZ
3071?Release@?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QAAXXZ
3072?Release@?$SafeMap_Iterator@VStringKeyCI@@K@@QAAXXZ
3073?Release@?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QAAXXZ
3074?Release@?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAAXXZ
3075?Release@?$SafeMap_Lock@PAVCCertMapping@@UEmpty@@V?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@@@QAAXXZ
3076?Release@?$SafeMap_Lock@PAVCListenerOperation@@UEmpty@@V?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@@@QAAXXZ
3077?Release@?$SafeMap_Lock@PAVCShellUriSettings@@UEmpty@@V?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@@@QAAXXZ
3078?Release@?$SafeMap_Lock@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QAAXXZ
3079?Release@?$SafeMap_Lock@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAAXXZ
3080?Release@?$SafeMap_Lock@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAAXXZ
3081?Release@?$SafeMap_Lock@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@QAAXXZ
3082?Release@CBaseConfigCache@@UAAJP6AXPAX@Z0@Z
3083?Release@CWSManCriticalSection@@QAAXXZ
3084?Release@CWSManSecurityUI@@UAAKXZ
3085?Release@ILifeTimeMgmt@@UAAJP6AXPAX@Z0@Z
3086?Release@UserRecord@@QAAJXZ
3087?ReleaseExclusive@FastLock@@QAAXXZ
3088?ReleasePtr@?$AutoCleanup@V?$AutoDelete@D@@PAD@@AAAXXZ
3089?ReleasePtr@?$AutoCleanup@V?$AutoDelete@G@@PAG@@AAAXXZ
3090?ReleasePtr@?$AutoCleanup@V?$AutoDelete@UIPRange@CWSManIPFilter@@@@PAUIPRange@CWSManIPFilter@@@@AAAXXZ
3091?ReleasePtr@?$AutoCleanup@V?$AutoDelete@U_SID@@@@PAU_SID@@@@AAAXXZ
3092?ReleasePtr@?$AutoCleanup@V?$AutoDelete@U_WSMAN_STREAM_ID_SET@@@@PAU_WSMAN_STREAM_ID_SET@@@@AAAXXZ
3093?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$Handle@VISubscription@@@@@@PAV?$Handle@VISubscription@@@@@@AAAXXZ
3094?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerConnect@@PAV1@@@@@AAAXXZ
3095?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerReceive@@PAV1@@@@@AAAXXZ
3096?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerSend@@PAV1@@@@@AAAXXZ
3097?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@PAV?$SafeMap_Iterator@PAVCListenerSignal@@PAV1@@@@@AAAXXZ
3098?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@PAV?$SafeMap_Iterator@VGuidKey@@PAVCListenerCommand@@@@@@AAAXXZ
3099?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@VStringKeyCI@@K@@@@PAV?$SafeMap_Iterator@VStringKeyCI@@K@@@@AAAXXZ
3100?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@PAV?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@@@AAAXXZ
3101?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCCertMapping@@@@@@PAV?$SafeSet@PAVCCertMapping@@@@@@AAAXXZ
3102?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeSet@PAVCShellUriSettings@@@@@@PAV?$SafeSet@PAVCShellUriSettings@@@@@@AAAXXZ
3103?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@PAV?$SafeSet_Iterator@PAVCListenerOperation@@@@@@AAAXXZ
3104?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVCollector@@@@@@PAV?$SafeSet_Iterator@PAVCollector@@@@@@AAAXXZ
3105?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVHostOperation@@@@@@PAV?$SafeSet_Iterator@PAVHostOperation@@@@@@AAAXXZ
3106?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@PAV?$SafeSet_Iterator@PAVListenerSourceSubscription@@@@@@AAAXXZ
3107?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SimpleStack@VCListenerOperation@@@@@@PAV?$SimpleStack@VCListenerOperation@@@@@@AAAXXZ
3108?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$SimpleStack@VShellHostEntry@@@@@@PAV?$SimpleStack@VShellHostEntry@@@@@@AAAXXZ
3109?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$queue@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$deque@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$transport_allocator@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@@@@std@@@std@@@@PAV?$queue@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$deque@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@V?$transport_allocator@PAU_WSMAN_PUBLISHER_EVENT_STRUCT@@@@@std@@@std@@@@AAAXXZ
3110?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@PAV?$set@PAVCListenerSettings@@VCListenerSettingsLessFunctor@CServiceConfigSettings@@V?$transport_allocator@PAVCListenerSettings@@@@@std@@@@AAAXXZ
3111?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@PAV?$set@Usockaddr_storage@@VSockAddrLessFunctor@CListenerSettings@@V?$transport_allocator@Usockaddr_storage@@@@@std@@@@AAAXXZ
3112?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$vector@PAVCWSManRequest@@V?$transport_allocator@PAVCWSManRequest@@@@@std@@@@PAV?$vector@PAVCWSManRequest@@V?$transport_allocator@PAVCWSManRequest@@@@@std@@@@AAAXXZ
3113?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@PAV?$vector@PAVHandleImpl@Client@WSMan@@V?$transport_allocator@PAVHandleImpl@Client@WSMan@@@@@std@@@@AAAXXZ
3114?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@PAV?$vector@PAVIServiceConfigObserver@@V?$transport_allocator@PAVIServiceConfigObserver@@@@@std@@@@AAAXXZ
3115?ReleasePtr@?$AutoCleanup@V?$AutoDelete@V?$vector@PAVWSManHttpSenderConnection@@V?$transport_allocator@PAVWSManHttpSenderConnection@@@@@std@@@@PAV?$vector@PAVWSManHttpSenderConnection@@V?$transport_allocator@PAVWSManHttpSenderConnection@@@@@std@@@@AAAXXZ
3116?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VAdminSid@CSecurity@@@@PAVAdminSid@CSecurity@@@@AAAXXZ
3117?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VBlockedRecord@@@@PAVBlockedRecord@@@@AAAXXZ
3118?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@AAAXXZ
3119?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCCertMapping@@@@PAVCCertMapping@@@@AAAXXZ
3120?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCConfigChangeSource@@@@PAVCConfigChangeSource@@@@AAAXXZ
3121?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCListenerSettings@@@@PAVCListenerSettings@@@@AAAXXZ
3122?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCObserverConfigChangeErrors@@@@PAVCObserverConfigChangeErrors@@@@AAAXXZ
3123?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCServiceWatcher@CServiceConfigCache@@@@PAVCServiceWatcher@CServiceConfigCache@@@@AAAXXZ
3124?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCShellUriSettings@@@@PAVCShellUriSettings@@@@AAAXXZ
3125?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCWSManEPR@@@@PAVCWSManEPR@@@@AAAXXZ
3126?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCWSManResource@@@@PAVCWSManResource@@@@AAAXXZ
3127?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCertHash@@@@PAVCertHash@@@@AAAXXZ
3128?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VConfigUpdate@@@@PAVConfigUpdate@@@@AAAXXZ
3129?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VCredUIDllLoader@@@@PAVCredUIDllLoader@@@@AAAXXZ
3130?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@AAAXXZ
3131?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VEventHandler@WSMan@@@@PAVEventHandler@WSMan@@@@AAAXXZ
3132?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VExpiredOperationIdRecord@@@@PAVExpiredOperationIdRecord@@@@AAAXXZ
3133?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VGPApiManager@@@@PAVGPApiManager@@@@AAAXXZ
3134?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@AAAXXZ
3135?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VIChannelObserverFactory@@@@PAVIChannelObserverFactory@@@@AAAXXZ
3136?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@AAAXXZ
3137?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@AAAXXZ
3138?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VInteractiveSid@CSecurity@@@@PAVInteractiveSid@CSecurity@@@@AAAXXZ
3139?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VIpHlpApiDllLoader@@@@PAVIpHlpApiDllLoader@@@@AAAXXZ
3140?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VMachineName@@@@PAVMachineName@@@@AAAXXZ
3141?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VMasterReceiveData@CListenerReceive@@@@PAVMasterReceiveData@CListenerReceive@@@@AAAXXZ
3142?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VNetworkServiceSid@CSecurity@@@@PAVNetworkServiceSid@CSecurity@@@@AAAXXZ
3143?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VNtDsApiDllLoader@@@@PAVNtDsApiDllLoader@@@@AAAXXZ
3144?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VOptionValue@SessionOptions@Client@WSMan@@@@PAVOptionValue@SessionOptions@Client@WSMan@@@@AAAXXZ
3145?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@@AAAXXZ
3146?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VPacketParser@@@@PAVPacketParser@@@@AAAXXZ
3147?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VResources@Locale@@@@PAVResources@Locale@@@@AAAXXZ
3148?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VRunAsConfiguration@@@@PAVRunAsConfiguration@@@@AAAXXZ
3149?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VSecurityEntry@Catalog@@@@PAVSecurityEntry@Catalog@@@@AAAXXZ
3150?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VSendPacketArgs@RobustConnectionBuffer@@@@PAVSendPacketArgs@RobustConnectionBuffer@@@@AAAXXZ
3151?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VServiceSoapProcessor@@@@PAVServiceSoapProcessor@@@@AAAXXZ
3152?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VShell32DllLoader@@@@PAVShell32DllLoader@@@@AAAXXZ
3153?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VShlWApiDllLoader@@@@PAVShlWApiDllLoader@@@@AAAXXZ
3154?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VSubscriptionEnumerator@@@@PAVSubscriptionEnumerator@@@@AAAXXZ
3155?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VSubscriptionManager@@@@PAVSubscriptionManager@@@@AAAXXZ
3156?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@AAAXXZ
3157?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VUniqueStringOverflow@@@@PAVUniqueStringOverflow@@@@AAAXXZ
3158?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VUser32DllLoader@@@@PAVUser32DllLoader@@@@AAAXXZ
3159?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VWSMANCONFIGTABLE_IDENTITY@@@@PAVWSMANCONFIGTABLE_IDENTITY@@@@AAAXXZ
3160?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VWSManMemCryptManager@@@@PAVWSManMemCryptManager@@@@AAAXXZ
3161?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@AAAXXZ
3162?ReleasePtr@?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@AAAXXZ
3163?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@$$CBG@@PBG@@AAAXXZ
3164?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@D@@PAD@@AAAXXZ
3165?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@AAAXXZ
3166?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@AAAXXZ
3167?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@H@@PAH@@AAAXXZ
3168?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@AAAXXZ
3169?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@AAAXXZ
3170?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@U_CONFIG_UPDATE@@@@PAU_CONFIG_UPDATE@@@@AAAXXZ
3171?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@AAAXXZ
3172?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@AAAXXZ
3173?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@U_WSMAN_OPTION@@@@PAU_WSMAN_OPTION@@@@AAAXXZ
3174?ReleasePtr@?$AutoCleanup@V?$AutoDeleteVector@X@@PAX@@AAAXXZ
3175?ReleasePtr@?$AutoCleanup@V?$AutoFree@E@@PAE@@AAAXXZ
3176?ReleasePtr@?$AutoCleanup@V?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@@AAAXXZ
3177?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIAppHostChildElementCollection@@@@PAUIAppHostChildElementCollection@@@@AAAXXZ
3178?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIAppHostElement@@@@PAUIAppHostElement@@@@AAAXXZ
3179?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIAppHostElementCollection@@@@PAUIAppHostElementCollection@@@@AAAXXZ
3180?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIAppHostProperty@@@@PAUIAppHostProperty@@@@AAAXXZ
3181?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIAppHostPropertyCollection@@@@PAUIAppHostPropertyCollection@@@@AAAXXZ
3182?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@AAAXXZ
3183?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@AAAXXZ
3184?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@AAAXXZ
3185?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@AAAXXZ
3186?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@AAAXXZ
3187?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@AAAXXZ
3188?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@AAAXXZ
3189?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@AAAXXZ
3190?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@AAAXXZ
3191?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@AAAXXZ
3192?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@AAAXXZ
3193?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@AAAXXZ
3194?ReleasePtr@?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@AAAXXZ
3195?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VApplication@Client@WSMan@@@@PAVApplication@Client@WSMan@@@@AAAXXZ
3196?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCBaseConfigCache@@@@PAVCBaseConfigCache@@@@AAAXXZ
3197?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCClientConfigCache@@@@PAVCClientConfigCache@@@@AAAXXZ
3198?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCClientConfigSettings@@@@PAVCClientConfigSettings@@@@AAAXXZ
3199?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCCommonConfigSettings@@@@PAVCCommonConfigSettings@@@@AAAXXZ
3200?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@PAVCConfigCacheMap@CBaseConfigCache@@@@AAAXXZ
3201?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCConfigManager@@@@PAVCConfigManager@@@@AAAXXZ
3202?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCListenerCommand@@@@PAVCListenerCommand@@@@AAAXXZ
3203?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCListenerMasterOperation@@@@PAVCListenerMasterOperation@@@@AAAXXZ
3204?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCListenerReceive@@@@PAVCListenerReceive@@@@AAAXXZ
3205?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCListenerShell@@@@PAVCListenerShell@@@@AAAXXZ
3206?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCRemoteOperation@@@@PAVCRemoteOperation@@@@AAAXXZ
3207?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCRemoteSession@@@@PAVCRemoteSession@@@@AAAXXZ
3208?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCRequestContext@@@@PAVCRequestContext@@@@AAAXXZ
3209?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCServiceCommonConfigSettings@@@@PAVCServiceCommonConfigSettings@@@@AAAXXZ
3210?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCServiceConfigCache@@@@PAVCServiceConfigCache@@@@AAAXXZ
3211?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCServiceConfigSettings@@@@PAVCServiceConfigSettings@@@@AAAXXZ
3212?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@AAAXXZ
3213?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyCache@@@@PAVCWSManGroupPolicyCache@@@@AAAXXZ
3214?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCWSManGroupPolicyManager@@@@PAVCWSManGroupPolicyManager@@@@AAAXXZ
3215?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCWSManObject@@@@PAVCWSManObject@@@@AAAXXZ
3216?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCWSManResource@@@@PAVCWSManResource@@@@AAAXXZ
3217?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCWSManSession@@@@PAVCWSManSession@@@@AAAXXZ
3218?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@AAAXXZ
3219?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigSettings@@@@PAVCWinRSPluginConfigSettings@@@@AAAXXZ
3220?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCommand@Client@WSMan@@@@PAVCommand@Client@WSMan@@@@AAAXXZ
3221?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VConfigNotification@@@@PAVConfigNotification@@@@AAAXXZ
3222?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VConnectShellOperation@Client@WSMan@@@@PAVConnectShellOperation@Client@WSMan@@@@AAAXXZ
3223?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VCreateShellOperation@Client@WSMan@@@@PAVCreateShellOperation@Client@WSMan@@@@AAAXXZ
3224?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VDeleteShellOperation@Client@WSMan@@@@PAVDeleteShellOperation@Client@WSMan@@@@AAAXXZ
3225?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VDisconnectOperation@Client@WSMan@@@@PAVDisconnectOperation@Client@WSMan@@@@AAAXXZ
3226?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@AAAXXZ
3227?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@AAAXXZ
3228?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VHostMappingTable@@@@PAVHostMappingTable@@@@AAAXXZ
3229?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VIISConfigSettings@@@@PAVIISConfigSettings@@@@AAAXXZ
3230?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VIPCSoapProcessor@@@@PAVIPCSoapProcessor@@@@AAAXXZ
3231?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@AAAXXZ
3232?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VISubscription@@@@PAVISubscription@@@@AAAXXZ
3233?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VInboundRequestDetails@@@@PAVInboundRequestDetails@@@@AAAXXZ
3234?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VProxyManager@Client@WSMan@@@@PAVProxyManager@Client@WSMan@@@@AAAXXZ
3235?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VProxySelection@Client@WSMan@@@@PAVProxySelection@Client@WSMan@@@@AAAXXZ
3236?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VPushSubscribeOperation@@@@PAVPushSubscribeOperation@@@@AAAXXZ
3237?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VPushSubscription@@@@PAVPushSubscription@@@@AAAXXZ
3238?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VReceiveOperation@Client@WSMan@@@@PAVReceiveOperation@Client@WSMan@@@@AAAXXZ
3239?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VReconnectOperation@Client@WSMan@@@@PAVReconnectOperation@Client@WSMan@@@@AAAXXZ
3240?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VSendOperation@Client@WSMan@@@@PAVSendOperation@Client@WSMan@@@@AAAXXZ
3241?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@AAAXXZ
3242?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VShellInfo@@@@PAVShellInfo@@@@AAAXXZ
3243?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VSignalOperation@Client@WSMan@@@@PAVSignalOperation@Client@WSMan@@@@AAAXXZ
3244?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VUserRecord@@@@PAVUserRecord@@@@AAAXXZ
3245?ReleasePtr@?$AutoCleanup@V?$AutoRelease@VWSManHttpListener@@@@PAVWSManHttpListener@@@@AAAXXZ
3246?ReleasePtr@?$AutoCleanup@V?$AutoReleaseEx@VHostMappingTableEntry@@@@PAVHostMappingTableEntry@@@@AAAXXZ
3247?ReleasePtr@?$AutoCleanup@V?$AutoReleaseEx@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@AAAXXZ
3248?ReleasePtr@?$AutoCleanup@VAutoBstr@@PAG@@AAAXXZ
3249?ReleasePtr@?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@AAAXXZ
3250?ReleasePtr@?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@AAAXXZ
3251?ReleasePtr@?$AutoCleanup@VAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@@AAAXXZ
3252?ReleasePtr@?$AutoCleanup@VAutoCoTaskMemFree@@PAX@@AAAXXZ
3253?ReleasePtr@?$AutoCleanup@VAutoEnvironmentBlock@@PAX@@AAAXXZ
3254?ReleasePtr@?$AutoCleanup@VAutoFwXmlCloseParser@@PAX@@AAAXXZ
3255?ReleasePtr@?$AutoCleanup@VAutoHandle@@PAX@@AAAXXZ
3256?ReleasePtr@?$AutoCleanup@VAutoImpersonateUser@@PAX@@AAAXXZ
3257?ReleasePtr@?$AutoCleanup@VAutoLibrary@@PAUHINSTANCE__@@@@AAAXXZ
3258?ReleasePtr@?$AutoCleanup@VAutoLocalFree@@PAX@@AAAXXZ
3259?ReleasePtr@?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@AAAXXZ
3260?ReleasePtr@?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@AAAXXZ
3261?ReleasePtr@?$AutoCleanup@VAutoObject@@PAUWSMAN_OBJECT@@@@AAAXXZ
3262?ReleasePtr@?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@AAAXXZ
3263?ReleasePtr@?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@AAAXXZ
3264?ReleasePtr@?$AutoCleanup@VAutoWaitHandle@@PAX@@AAAXXZ
3265?ReleaseQuota@UserRecord@@QAAXW4OperationType@@PBVProvider@Catalog@@@Z
3266?ReleaseShared@FastLock@@QAAXXZ
3267?Remove@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QAA_NABQAVCListenerOperation@@@Z
3268?Remove@?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QAA_NABUUserKey@@@Z
3269?Remove@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QAA_NABVStringKeyCI@@@Z
3270?Remove@?$SafeMap@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@V?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@@@QAA_NABVStringKeyCI@@@Z
3271?Remove@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QAA_NABVStringKeyStore@@@Z
3272?Remove@?$SafeMap@VStringKeyStore@@PAVServerFullDuplexChannel@@V?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@@@QAA_NABVStringKeyStore@@@Z
3273?Remove@?$SafeMap@_KPAVSendPacketArgs@RobustConnectionBuffer@@V?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@@@QAA_NAB_K@Z
3274?RemoveAll@CBaseConfigCache@@KAXPAVFastLock@@AAV?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@@Z
3275?RemoveFromMap@CBaseConfigCache@@AAAHXZ
3276?RemoveHttpsBinding@@YAXPBG@Z
3277?RemoveHttpsCertificate@@YAXPBG0@Z
3278?RemoveObserver@CServiceConfigCache@@AAAHPAVIServiceConfigObserver@@@Z
3279?ReportEventW@EventLog@@SAXGKGPAPBG@Z
3280?Reset@?$PacketElement@K@PacketParser@@QAAX_N@Z
3281?Reset@?$PacketElement@PAU_FWXML_ELEMENT@@@PacketParser@@QAAX_N@Z
3282?Reset@?$PacketElement@PBG@PacketParser@@QAAX_N@Z
3283?Reset@?$PacketElement@_K@PacketParser@@QAAX_N@Z
3284?Reset@?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@QAAXXZ
3285?Reset@?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@QAAXXZ
3286?Reset@?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@QAAXXZ
3287?Reset@?$SafeMap_Iterator@PAXUEmpty@@@@QAAXXZ
3288?Reset@?$SafeMap_Iterator@UPluginKey@@K@@QAAXXZ
3289?Reset@?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@QAAXXZ
3290?Reset@?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@QAAXXZ
3291?Reset@?$SafeMap_Iterator@VKey@Locale@@K@@QAAXXZ
3292?Reset@?$SafeMap_Iterator@VStringKeyCI@@K@@QAAXXZ
3293?Reset@?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@QAAXXZ
3294?Reset@?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@QAAXXZ
3295?Reset@?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@QAAXXZ
3296?Reset@?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@QAAXXZ
3297?Reset@?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@QAAXXZ
3298?Reset@BufferFormatter@@UAAXXZ
3299?Reset@CErrorContext@@UAAXH@Z
3300?Reset@CRequestContext@@UAAXH@Z
3301?Reset@CircularBufferFormatter@@UAAXXZ
3302?Reset@Locale@@QAAXXZ
3303?Reset@TSTRBUFFER@@QAAXXZ
3304?Reset@UserRecord@@QAAXXZ
3305?ResetProfileCount@UserRecord@@QAAXXZ
3306?ResetRobustConnectionHeaders@PacketParser@@AAAXXZ
3307?Resize@RBUFFER@@QAAHI@Z
3308?Resize@RBUFFER@@QAAHII@Z
3309?ResizeOptionList@CWSManResourceNoResourceUri@@IAA_NIAAVIRequestContext@@@Z
3310?RestoreAllPrivileges@@YAHPAU_TOKEN_PRIVILEGES@@@Z
3311?RetrieveCertMappingIdentity@CConfigManager@@AAAHPAUHKEY__@@PAVCERTMAPPING_IDENTITY@@@Z
3312?RetrieveListenerIdentity@CConfigManager@@AAAHPAUHKEY__@@PAGPAPAGPAVLISTENER_IDENTITY@@@Z
3313?RetrieveShellUriIdentity@CConfigManager@@AAAHPAUHKEY__@@PAVSHELLURI_IDENTITY@@@Z
3314?RetrieveTableIdentity@CConfigManager@@AAAHPAUHKEY__@@PAVWSMANCONFIGTABLE_IDENTITY@@@Z
3315?RevertToSelf@CSecurity@@SAHXZ
3316?RtlSecureZeroMemory@XmlReader@@QAAXXZ
3317?SafeStringToUI64@@YAJPBGEHPA_KPAVIRequestContext@@K@Z
3318?SetBOM@PacketFormatter@@QAA_NPAVPacket@@@Z
3319?SetBOM@PacketFormatter@@QAA_NPBEK@Z
3320?SetCIM_Error@CErrorContext@@UAAXXZ
3321?SetCIM_Error@CRequestContext@@UAAXXZ
3322?SetCharset@PacketFormatter@@QAAXW4Charset@1@@Z
3323?SetCharset@PacketFormatter@@QAA_NPBDK_NPA_N@Z
3324?SetCharsetAndBom@PacketFormatter@@QAAXW4Charset@1@0@Z
3325?SetConfigToUseDefaults@CErrorContext@@UAAXH@Z
3326?SetErrorAction@ExtendedSemantic@@QAAXW4_MI_OperationCallback_ResponseType@@W4_MI_CallbackMode@@@Z
3327?SetErrorState@CBaseConfigCache@@AAAXPAVCRequestContext@@K@Z
3328?SetExactCharSize@TSTRBUFFER@@QAAJI@Z
3329?SetExtendedErrorString@CErrorContext@@UAAXPAG@Z
3330?SetExtendedErrorString@CRequestContext@@UAAXPAG@Z
3331?SetExtraLogInfo@CErrorContext@@QAAXPBG000@Z
3332?SetFault@CErrorContext@@UAAXKKKPBG@Z
3333?SetFault@CRequestContext@@EAAXKKKPBG@Z
3334?SetFinishValue@ConfigRegistry@@IAAHPAVIRequestContext@@@Z
3335?SetFormatterMode@BufferFormatter@@QAAXW4Charset@PacketFormatter@@0@Z
3336?SetFragmentDialect@CWSManResourceNoResourceUri@@QAAHPBGPAVIRequestContext@@@Z
3337?SetFragmentPath@CWSManResourceNoResourceUri@@QAAHPBGPAVIRequestContext@@@Z
3338?SetGeneratingError@CErrorContext@@UAAXXZ
3339?SetLocale@CRequestContext@@QAA_NPBGK@Z
3340?SetLocale@Locale@@QAA_NKPBGPAVIRequestContext@@@Z
3341?SetMachineName@CRequestContext@@QAAKPBG@Z
3342?SetMachineName@CRequestContext@@QAAKPBGI@Z
3343?SetMachineName@CRequestContext@@QAAKXZ
3344?SetMaxEnvelopeSize@CircularBufferFormatter@@QAAXK@Z
3345?SetOptionsMustUnderstandValue@CWSManResourceNoResourceUri@@QAAXH@Z
3346?SetProfileHandle@UserRecord@@QAAX_J@Z
3347?SetProviderFailure@CErrorContext@@UAAXH@Z
3348?SetSecurity@CWSManSecurityUI@@UAAJKPAX@Z
3349?SetSize@TSTRBUFFER@@QAAJII@Z
3350?SetSizeInUse@SBUFFER@@QAAXI@Z
3351?SetThreadUILanguage@Locale@@QAA_NPAVIRequestContext@@@Z
3352?SetUpdateMode@BufferFormatter@@UAAXW4Mode@1@@Z
3353?SetUpdateMode@CircularBufferFormatter@@UAAXW4Mode@BufferFormatter@@@Z
3354?SetUri@CWSManResource@@QAAHPBGPAVIRequestContext@@@Z
3355?SetValid@RBUFFER@@IAAXH@Z
3356?SetXml@ReferenceParameters@PacketParser@@AAAKAAVBufferFormatter@@PAU_FWXML_ELEMENT@@@Z
3357?Shutdown@CBaseConfigCache@@IAAXXZ
3358?Shutdown@CConfigManager@@SAHXZ
3359?Shutdown@CWSManGroupPolicyManager@@SAHXZ
3360?Shutdown@ChildLifeTimeManager@@QAAXXZ
3361?ShutdownLocaleMap@Locale@@SAXXZ
3362?Size@?$SafeMap@PAVCListenerOperation@@UEmpty@@V?$SafeSet_Iterator@PAVCListenerOperation@@@@@@QBAHXZ
3363?Size@?$SafeMap@UUserKey@@PAVBlockedRecord@@V?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@@@QBAHXZ
3364?Size@?$SafeMap@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@V?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@@@QBAHXZ
3365?Size@?$SafeMap@VStringKeyCI@@KV?$SafeMap_Iterator@VStringKeyCI@@K@@@@QBAHXZ
3366?Size@?$SafeMap@VStringKeyCI@@UEmpty@@V?$SafeSet_Iterator@VStringKeyCI@@@@@@QBAHXZ
3367?Size@?$SafeMap@VStringKeyStore@@PAVExpiredOperationIdRecord@@V?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@@@QBAHXZ
3368?SkipOrphans@?$SafeMap_Iterator@PAVCCertMapping@@UEmpty@@@@IAAXXZ
3369?SkipOrphans@?$SafeMap_Iterator@PAVCListenerOperation@@UEmpty@@@@IAAXXZ
3370?SkipOrphans@?$SafeMap_Iterator@PAVCShellUriSettings@@UEmpty@@@@IAAXXZ
3371?SkipOrphans@?$SafeMap_Iterator@PAXUEmpty@@@@IAAXXZ
3372?SkipOrphans@?$SafeMap_Iterator@UPluginKey@@K@@IAAXXZ
3373?SkipOrphans@?$SafeMap_Iterator@UUserKey@@PAVBlockedRecord@@@@IAAXXZ
3374?SkipOrphans@?$SafeMap_Iterator@VCertThumbprintKey@@VCertThumbprintMappedSet@CServiceConfigSettings@@@@IAAXXZ
3375?SkipOrphans@?$SafeMap_Iterator@VKey@Locale@@K@@IAAXXZ
3376?SkipOrphans@?$SafeMap_Iterator@VStringKeyCI@@K@@IAAXXZ
3377?SkipOrphans@?$SafeMap_Iterator@VStringKeyCI@@UUSER_CONTEXT_INFO@WSManHttpListener@@@@IAAXXZ
3378?SkipOrphans@?$SafeMap_Iterator@VStringKeyStore@@PAVExpiredOperationIdRecord@@@@IAAXXZ
3379?SkipOrphans@?$SafeMap_Iterator@VStringKeyStore@@PAVServerFullDuplexChannel@@@@IAAXXZ
3380?SkipOrphans@?$SafeMap_Iterator@W4WSManSessionOption@@PAVOptionValue@SessionOptions@Client@WSMan@@@@IAAXXZ
3381?SkipOrphans@?$SafeMap_Iterator@_KPAVSendPacketArgs@RobustConnectionBuffer@@@@IAAXXZ
3382StartSoapProcessor
3383StopSoapProcessor
3384?Storage@?$AutoCleanup@V?$AutoDelete@G@@PAG@@QAAPAPAGXZ
3385?Storage@?$AutoCleanup@V?$AutoDelete@UIPRange@CWSManIPFilter@@@@PAUIPRange@CWSManIPFilter@@@@QAAPAPAUIPRange@CWSManIPFilter@@XZ
3386?Storage@?$AutoCleanup@V?$AutoDelete@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAPAPAVEnumSinkEx@@XZ
3387?Storage@?$AutoCleanup@V?$AutoDelete@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAPAPAVGeneralSinkEx@@XZ
3388?Storage@?$AutoCleanup@V?$AutoDelete@VIQueryDASHSMASHInterface@@@@PAVIQueryDASHSMASHInterface@@@@QAAPAPAVIQueryDASHSMASHInterface@@XZ
3389?Storage@?$AutoCleanup@V?$AutoDelete@VISpecification@@@@PAVISpecification@@@@QAAPAPAVISpecification@@XZ
3390?Storage@?$AutoCleanup@V?$AutoDelete@VPacketCreator@@@@PAVPacketCreator@@@@QAAPAPAVPacketCreator@@XZ
3391?Storage@?$AutoCleanup@V?$AutoDelete@VTSTRBUFFER@@@@PAVTSTRBUFFER@@@@QAAPAPAVTSTRBUFFER@@XZ
3392?Storage@?$AutoCleanup@V?$AutoDelete@VWmiEnumContext@@@@PAVWmiEnumContext@@@@QAAPAPAVWmiEnumContext@@XZ
3393?Storage@?$AutoCleanup@V?$AutoDelete@VXmlReader@@@@PAVXmlReader@@@@QAAPAPAVXmlReader@@XZ
3394?Storage@?$AutoCleanup@V?$AutoDeleteVector@$$CBG@@PBG@@QAAPAPBGXZ
3395?Storage@?$AutoCleanup@V?$AutoDeleteVector@E@@PAE@@QAAPAPAEXZ
3396?Storage@?$AutoCleanup@V?$AutoDeleteVector@G@@PAG@@QAAPAPAGXZ
3397?Storage@?$AutoCleanup@V?$AutoDeleteVector@PAG@@PAPAG@@QAAPAPAPAGXZ
3398?Storage@?$AutoCleanup@V?$AutoDeleteVector@PBG@@PAPBG@@QAAPAPAPBGXZ
3399?Storage@?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@PAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@@@QAAPAPAU_WINRS_CREATE_SHELL_ENVIRONMENT_VARIABLE@@XZ
3400?Storage@?$AutoCleanup@V?$AutoDeleteVector@U_WINRS_RUN_COMMAND_ARG@@@@PAU_WINRS_RUN_COMMAND_ARG@@@@QAAPAPAU_WINRS_RUN_COMMAND_ARG@@XZ
3401?Storage@?$AutoCleanup@V?$AutoDeleteVector@X@@PAX@@QAAPAPAXXZ
3402?Storage@?$AutoCleanup@V?$AutoFree@E@@PAE@@QAAPAPAEXZ
3403?Storage@?$AutoCleanup@V?$AutoLocklessItemRecycle@VPacket@@@@PAVPacket@@@@QAAPAPAVPacket@@XZ
3404?Storage@?$AutoCleanup@V?$AutoRelease@UIAppHostChildElementCollection@@@@PAUIAppHostChildElementCollection@@@@QAAPAPAUIAppHostChildElementCollection@@XZ
3405?Storage@?$AutoCleanup@V?$AutoRelease@UIAppHostElement@@@@PAUIAppHostElement@@@@QAAPAPAUIAppHostElement@@XZ
3406?Storage@?$AutoCleanup@V?$AutoRelease@UIAppHostElementCollection@@@@PAUIAppHostElementCollection@@@@QAAPAPAUIAppHostElementCollection@@XZ
3407?Storage@?$AutoCleanup@V?$AutoRelease@UIAppHostProperty@@@@PAUIAppHostProperty@@@@QAAPAPAUIAppHostProperty@@XZ
3408?Storage@?$AutoCleanup@V?$AutoRelease@UIAppHostPropertyCollection@@@@PAUIAppHostPropertyCollection@@@@QAAPAPAUIAppHostPropertyCollection@@XZ
3409?Storage@?$AutoCleanup@V?$AutoRelease@UIClientSecurity@@@@PAUIClientSecurity@@@@QAAPAPAUIClientSecurity@@XZ
3410?Storage@?$AutoCleanup@V?$AutoRelease@UIEnumWbemClassObject@@@@PAUIEnumWbemClassObject@@@@QAAPAPAUIEnumWbemClassObject@@XZ
3411?Storage@?$AutoCleanup@V?$AutoRelease@UIErrorInfo@@@@PAUIErrorInfo@@@@QAAPAPAUIErrorInfo@@XZ
3412?Storage@?$AutoCleanup@V?$AutoRelease@UIUnknown@@@@PAUIUnknown@@@@QAAPAPAUIUnknown@@XZ
3413?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemClassObject@@@@PAUIWbemClassObject@@@@QAAPAPAUIWbemClassObject@@XZ
3414?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemContext@@@@PAUIWbemContext@@@@QAAPAPAUIWbemContext@@XZ
3415?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemLocator@@@@PAUIWbemLocator@@@@QAAPAPAUIWbemLocator@@XZ
3416?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemObjectTextSrc@@@@PAUIWbemObjectTextSrc@@@@QAAPAPAUIWbemObjectTextSrc@@XZ
3417?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemPath@@@@PAUIWbemPath@@@@QAAPAPAUIWbemPath@@XZ
3418?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemPathKeyList@@@@PAUIWbemPathKeyList@@@@QAAPAPAUIWbemPathKeyList@@XZ
3419?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemQualifierSet@@@@PAUIWbemQualifierSet@@@@QAAPAPAUIWbemQualifierSet@@XZ
3420?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemQuery@@@@PAUIWbemQuery@@@@QAAPAPAUIWbemQuery@@XZ
3421?Storage@?$AutoCleanup@V?$AutoRelease@UIWbemServices@@@@PAUIWbemServices@@@@QAAPAPAUIWbemServices@@XZ
3422?Storage@?$AutoCleanup@V?$AutoRelease@VCWSManEPR@@@@PAVCWSManEPR@@@@QAAPAPAVCWSManEPR@@XZ
3423?Storage@?$AutoCleanup@V?$AutoRelease@VCWinRSPluginConfigCache@@@@PAVCWinRSPluginConfigCache@@@@QAAPAPAVCWinRSPluginConfigCache@@XZ
3424?Storage@?$AutoCleanup@V?$AutoRelease@VCommand@Client@WSMan@@@@PAVCommand@Client@WSMan@@@@QAAPAPAVCommand@Client@WSMan@@XZ
3425?Storage@?$AutoCleanup@V?$AutoRelease@VEnumSinkEx@@@@PAVEnumSinkEx@@@@QAAPAPAVEnumSinkEx@@XZ
3426?Storage@?$AutoCleanup@V?$AutoRelease@VGeneralSinkEx@@@@PAVGeneralSinkEx@@@@QAAPAPAVGeneralSinkEx@@XZ
3427?Storage@?$AutoCleanup@V?$AutoRelease@VIRequestContext@@@@PAVIRequestContext@@@@QAAPAPAVIRequestContext@@XZ
3428?Storage@?$AutoCleanup@V?$AutoRelease@VReceiveOperation@Client@WSMan@@@@PAVReceiveOperation@Client@WSMan@@@@QAAPAPAVReceiveOperation@Client@WSMan@@XZ
3429?Storage@?$AutoCleanup@V?$AutoRelease@VSendOperation@Client@WSMan@@@@PAVSendOperation@Client@WSMan@@@@QAAPAPAVSendOperation@Client@WSMan@@XZ
3430?Storage@?$AutoCleanup@V?$AutoRelease@VShell@Client@WSMan@@@@PAVShell@Client@WSMan@@@@QAAPAPAVShell@Client@WSMan@@XZ
3431?Storage@?$AutoCleanup@V?$AutoRelease@VSignalOperation@Client@WSMan@@@@PAVSignalOperation@Client@WSMan@@@@QAAPAPAVSignalOperation@Client@WSMan@@XZ
3432?Storage@?$AutoCleanup@VAutoBstr@@PAG@@QAAPAPAGXZ
3433?Storage@?$AutoCleanup@VAutoBstrNoAlloc@@PAG@@QAAPAPAGXZ
3434?Storage@?$AutoCleanup@VAutoCertContext@@PBU_CERT_CONTEXT@@@@QAAPAPBU_CERT_CONTEXT@@XZ
3435?Storage@?$AutoCleanup@VAutoChainContext@@PBU_CERT_CHAIN_CONTEXT@@@@QAAPAPBU_CERT_CHAIN_CONTEXT@@XZ
3436?Storage@?$AutoCleanup@VAutoHandle@@PAX@@QAAPAPAXXZ
3437?Storage@?$AutoCleanup@VAutoImpersonateUser@@PAX@@QAAPAPAXXZ
3438?Storage@?$AutoCleanup@VAutoLocalFree@@PAX@@QAAPAPAXXZ
3439?Storage@?$AutoCleanup@VAutoMIClass@@PAU_MI_Class@@@@QAAPAPAU_MI_Class@@XZ
3440?Storage@?$AutoCleanup@VAutoMIInstance@@PAU_MI_Instance@@@@QAAPAPAU_MI_Instance@@XZ
3441?Storage@?$AutoCleanup@VAutoRegKey@@PAUHKEY__@@@@QAAPAPAUHKEY__@@XZ
3442?Storage@?$AutoCleanup@VAutoSecurityDescriptor@@PAX@@QAAPAPAXXZ
3443?Storage@?$AutoCleanup@VAutoWaitHandle@@PAX@@QAAPAPAXXZ
3444?StoreData@CWSManResource@@AAAHPAVIRequestContext@@PBG11PAU_WSMAN_SELECTOR_SET@@PAU_WSMAN_OPTION_SET@@@Z
3445?StoreData@CWSManResource@@QAAHPAVIRequestContext@@PBG@Z
3446?StoreDataFromResourceLocator@CWSManResource@@AAAHPAVIRequestContext@@PAU_WSMAN_RESOURCE_LOCATOR@@@Z
3447?StoreExpansion@CResourceAlias@@AAAXPBGPAU_ALIAS_INFORMATION@@@Z
3448?StreamingOutput@ExtendedSemantic@@2KB
3449?StringCchEndsWithCI@@YAHPBG0@Z
3450?StringCchEquals@@YAHPBG0@Z
3451?StringCchEqualsCI@@YAHPBG0@Z
3452?StringCchStartsWith@@YAHPBG0@Z
3453?StringCchStartsWithCI@@YAHPBG0@Z
3454?StringConcatenate@CWSManResourceNoResourceUri@@IAAHAAPAGAAKKPAG@Z
3455?StringIsBlank@@YAHPBG@Z
3456?StringToDword@@YAHPBDPAK@Z
3457?StringToDword@@YAHPBGPAK@Z
3458?StringTrimWhitespace@@YAPAGPAG@Z
3459?Subscribe@CWSManGroupPolicyManager@@UAAHPAVIRequestContext@@PAVIWSManGroupPolicyObserver@@H@Z
3460?TruncateAt@TSTRBUFFER@@QAAXI@Z
3461?TryAcquire@CWSManCriticalSection@@QAAHXZ
3462?UnSubscribe@CWSManGroupPolicyManager@@UAAHPAVIRequestContext@@PAVIWSManGroupPolicyObserver@@@Z
3463?UninstallMigration@@YAHPAVIRequestContext@@@Z
3464?UnregisterChild@ChildLifeTimeManager@@QAAXXZ
3465?UnregisterPolicyNotification@CWSManGroupPolicyManager@@AAAHXZ
3466?Up@?$LoaderSerializer@VSubscriptionManager@@$01@@AAAJXZ
3467?UpdateCredentialsInCredmanStore@CConfigManager@@SAHPAVIRequestContext@@PAG1@Z
3468?UpdateHttpsBinding@@YAHPAVIRequestContext@@PBG1PAH@Z
3469?UpdateHttpsCertificate@@YAHPAVIRequestContext@@PBG11PAHHU_GUID@@@Z
3470?UpdateKey@CWSManResourceNoResourceUri@@QAAHPAVIRequestContext@@PBG1@Z
3471?Uri@CResourceAlias@@QAAPBGXZ
3472?UseClientToken@UserRecord@@QAA_NXZ
3473?UseDefaultConfig@CErrorContext@@UBAHXZ
3474?UsingDefaultLCID@Locale@@QAA_NXZ
3475?Validate@Locale@@SA_NPAU_WSMAN_DATA@@@Z
3476?Validate@Locale@@SA_NPBG@Z
3477?ValidateCBTHardeningLevel@ConfigRegistry@@IAAHPAVIRequestContext@@PBG@Z
3478?ValidateCertificateHash@ConfigRegistry@@IAAHPAVIRequestContext@@PBG111@Z
3479?ValidateHeaders@PacketParser@@QAAHPAVIRequestContext@@K@Z
3480?ValidateHostnameAndCertificateCN@ConfigRegistry@@IAAHPAVIRequestContext@@PBG1@Z
3481?ValidateIPFilter@ConfigRegistry@@IAAHPAVIRequestContext@@W4ConfigSetting@@PBG@Z
3482?ValidateInt@CWSManGroupPolicyManager@@AAAHPAVIRequestContext@@PBU_WSMAN_POLICY_INFO@@K@Z
3483?ValidateInt@ConfigRegistry@@IAAHPAVIRequestContext@@PAU_CONFIG_INFO@@KPBG@Z
3484?ValidateString@CWSManGroupPolicyManager@@AAAHPAVIRequestContext@@PBU_WSMAN_POLICY_INFO@@PBG@Z
3485?ValidateString@ConfigRegistry@@IAAHPAVIRequestContext@@PAU_CONFIG_INFO@@PBG@Z
3486?ValidateTrustedHosts@ConfigRegistry@@IAAHPAVIRequestContext@@PBG@Z
3487?ValidateUrlPrefix@ConfigRegistry@@IAAHPAVIRequestContext@@PBG@Z
3488?Verbose@ExtendedSemantic@@2KB
3489?VerifyState@RBUFFER@@IBAXXZ
3490?WSManError@@YAXPBGK0KPAVIRequestContext@@@Z
3491?WSManMemoryOperation@@YAHW4WSMANMEMOPERATION@@PAXKK@Z
3492?WSManPostThreadMessageW@@YAHKIIJ@Z
3493?WaitForAllChildrenToUnregister@ChildLifeTimeManager@@QAAXK@Z
3494?WaitForConditionVar@CWSManCriticalSectionWithConditionVar@@QAAKK@Z
3495?WaitForMore@PacketParser@@UAA_NXZ
3496?WakeAllWaitingForConditionVar@CWSManCriticalSectionWithConditionVar@@QAAXXZ
3497?WakeAllWaitingOnNoOfChildren@ChildLifeTimeManager@@AAAXXZ
3498?Warning@EventLog@@SAXK@Z
3499?Warning@EventLog@@SAXKGPAPBG@Z
3500?Warning@EventLog@@SAXKPBG@Z
3501?Warning@ExtendedSemantic@@2KB
3502?WatchForChanges@CServiceConfigCache@@QAAPAVCServiceWatcher@1@PAVIRequestContext@@PAVIServiceConfigObserver@@@Z
3503?WrapperCoSetProxyBlanket@@YAJPAUIUnknown@@KKPAGKKPAXKW4BehaviourForNoInterfaceError@@@Z
3504?Write@EventHandler@WSMan@@SAXABU_EVENT_DESCRIPTOR@@KPAU_EVENT_DATA_DESCRIPTOR@@@Z
3505?WriteCredentialsToCredmanStore@CConfigManager@@SAHPAVIRequestContext@@PAG1H@Z
3506?WriteSoapA@EventHandler@WSMan@@SAXABU_EVENT_DESCRIPTOR@@PBDK@Z
3507?WriteSoapMessageA@EventHandler@WSMan@@AAAXABU_EVENT_DESCRIPTOR@@PBDK@Z
3508?WriteSoapMessageW@EventHandler@WSMan@@AAAXABU_EVENT_DESCRIPTOR@@PBGK@Z
3509?WriteSoapMessageW_BE@EventHandler@WSMan@@AAAXABU_EVENT_DESCRIPTOR@@PBGK@Z
3510?WriteSoapW@EventHandler@WSMan@@SAXABU_EVENT_DESCRIPTOR@@PBGK@Z
3511?WriteSoapW_BE@EventHandler@WSMan@@SAXABU_EVENT_DESCRIPTOR@@PBGK@Z
3512?_PolicyChangedCallback@CWSManGroupPolicyManager@@CAXPAXE@Z
3513?back@?$SimpleQueue@T_LARGE_INTEGER@@@@QBA?BT_LARGE_INTEGER@@XZ
3514?empty@?$SimpleQueue@T_LARGE_INTEGER@@@@QBA_NXZ
3515?front@?$SimpleQueue@T_LARGE_INTEGER@@@@QBA?BT_LARGE_INTEGER@@XZ
3516?g_Resources@Locale@@0V?$Loader@VResources@Locale@@$0A@@@A DATA
3517?pop@?$SimpleQueue@T_LARGE_INTEGER@@@@QAAXXZ
3518?push@?$SimpleQueue@T_LARGE_INTEGER@@@@QAAKT_LARGE_INTEGER@@@Z
3519?s_cacheMap@CClientConfigCache@@0V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@A DATA
3520?s_cacheMap@CServiceConfigCache@@0V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@A DATA
3521?s_cacheMap@CWinRSPluginConfigCache@@0V?$AutoRelease@VCConfigCacheMap@CBaseConfigCache@@@@A DATA
3522?s_config@CConfigManager@@0V?$AutoRelease@VCConfigManager@@@@A DATA
3523?s_lock@CConfigManager@@0VFastLock@@A DATA
3524?s_lock@CWSManGroupPolicyManager@@0VFastLock@@A DATA
3525?s_mapLock@CClientConfigCache@@0VFastLock@@A DATA
3526?s_mapLock@CServiceConfigCache@@0VFastLock@@A DATA
3527?s_mapLock@CWinRSPluginConfigCache@@0VFastLock@@A DATA
3528?s_policyManager@CWSManGroupPolicyManager@@0V?$AutoRelease@VCWSManGroupPolicyManager@@@@A DATA
3529EnumServiceUserResources
3530FwGetParsedDocument
3531FwGetRootElement
3532FwIsXmlEscapedProperly
3533FwXmlAddAttributeToAttributeList
3534FwXmlCloseParser
3535FwXmlCompareAttributeName
3536FwXmlCompareAttributeNameEx
3537FwXmlCompareElementName
3538FwXmlCompareElementNameEx
3539FwXmlCompareElementNameLen
3540FwXmlCompareElementNameSpace
3541FwXmlCompareName
3542FwXmlCreateXmlFromElement
3543FwXmlDecodeXmlEscapes
3544FwXmlEncodeXmlEscapes
3545FwXmlFindAttribute
3546FwXmlFindAttributeEx
3547FwXmlFindChildElement
3548FwXmlFindChildElementEx
3549FwXmlGetAttribute
3550FwXmlGetAttributeNameEx
3551FwXmlGetAttributeNamespacePrefix
3552FwXmlGetAttributeValue
3553FwXmlGetAttributeValueDWord
3554FwXmlGetBooleanValue
3555FwXmlGetBuffer
3556FwXmlGetChild
3557FwXmlGetElementName
3558FwXmlGetElementNameEx
3559FwXmlGetElementNamespacePrefix
3560FwXmlGetElementNamespaceUrl
3561FwXmlGetEntryNameEx
3562FwXmlGetNamespaceForPrefix
3563FwXmlGetNormalizedString
3564FwXmlGetReferenceXmlFromElement
3565FwXmlGetRemainder
3566FwXmlGetSimpleContent
3567FwXmlGetSimpleContentEx
3568FwXmlGetSimpleContentEx2
3569FwXmlHasText
3570FwXmlIsEmpty
3571FwXmlIsMustUnderstand
3572FwXmlIsNull
3573FwXmlIsSimpleContent
3574FwXmlIsSimpleContentOrEmpty
3575FwXmlIsTrueValue
3576FwXmlNumAttributes
3577FwXmlNumChildren
3578FwXmlNumChildrenWithName
3579FwXmlNumConsecutiveChildrenWithName
3580FwXmlParsePrefixedXML
3581FwXmlParseStream
3582FwXmlParseText
3583FwXmlParserCreate
3584FwXmlUpdatePrefixes
3585GetServiceSecurity
3586MI_Application_InitializeV1
3587ServiceMain
3588SetServiceSecurity
3589SubscriptionsProvEnumerate
3590SvchostPushServiceGlobals
3591WSManAckEvents
3592WSManAddSubscriptionManagerInternal
3593WSManCloseCommand
3594WSManCloseEnumerationHandle
3595WSManCloseEnumeratorHandle
3596WSManCloseObjectHandle
3597WSManCloseOperation
3598WSManClosePublisherHandle
3599WSManCloseSession
3600WSManCloseSessionHandle
3601WSManCloseShell
3602WSManCloseSubscriptionHandle
3603WSManConnectShell
3604WSManConnectShellCommand
3605WSManConstructError
3606WSManCreateEnumeratorInternal
3607WSManCreateInternal
3608WSManCreateInternalEx
3609WSManCreatePullSubscription
3610WSManCreatePushSubscription
3611WSManCreateSession
3612WSManCreateSessionInternal
3613WSManCreateShell
3614WSManCreateShellEx
3615WSManDecodeObject
3616WSManDeinitialize
3617WSManDeleteInternal
3618WSManDeleteInternalEx
3619WSManDeliverEndSubscriptionNotification
3620WSManDeliverEvent
3621WSManDisconnectShell
3622WSManEncodeObject
3623WSManEncodeObjectEx
3624WSManEncodeObjectInternal
3625WSManEnumerateInternal
3626WSManEnumerateInternalEx
3627WSManEnumeratorAddEvent
3628WSManEnumeratorAddObject
3629WSManEnumeratorBatchPolicyViolated
3630WSManEnumeratorNextObject
3631WSManEnumeratorObjectCount
3632WSManGetErrorMessage
3633WSManGetInternal
3634WSManGetInternalEx
3635WSManGetSessionOptionAsDword
3636WSManGetSessionOptionAsString
3637WSManIdentifyInternal
3638WSManInitialize
3639WSManInvokeInternal
3640WSManInvokeInternalEx
3641WSManPluginAuthzOperationComplete
3642WSManPluginAuthzQueryQuotaComplete
3643WSManPluginAuthzUserComplete
3644WSManPluginFreeRequestDetails
3645WSManPluginGetConfiguration
3646WSManPluginGetOperationParameters
3647WSManPluginInteractiveCallback
3648WSManPluginObjectAndBookmarkResult
3649WSManPluginObjectAndEprResult
3650WSManPluginObjectResult
3651WSManPluginOperationComplete
3652WSManPluginReceiveResult
3653WSManPluginReportCompletion
3654WSManPluginReportContext
3655WSManPluginShutdown
3656WSManPluginStartup
3657WSManProvCreate
3658WSManProvDelete
3659WSManProvEnumerate
3660WSManProvGet
3661WSManProvInvoke
3662WSManProvPut
3663WSManPull
3664WSManPullEvents
3665WSManPutInternal
3666WSManPutInternalEx
3667WSManReceiveShellOutput
3668WSManReconnectShell
3669WSManReconnectShellCommand
3670WSManRemoveSubscriptionManagerInternal
3671WSManRunShellCommand
3672WSManRunShellCommandEx
3673WSManSendShellInput
3674WSManSetSessionOption
3675WSManSignalShell
3676mi_clientFT_V1 DATA
lib/libc/mingw/libarm32/wsnmp32.def created+58
...@@ -0,0 +1,58 @@
1;
2; Definition file of wsnmp32.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "wsnmp32.dll"
7EXPORTS
8SnmpGetTranslateMode
9SnmpSetTranslateMode
10SnmpGetRetransmitMode
11SnmpSetRetransmitMode
12SnmpGetTimeout
13SnmpSetTimeout
14SnmpGetRetry
15SnmpSetRetry
16SnmpConveyAgentAddress
17SnmpSetAgentAddress
18SnmpGetVendorInfo
19SnmpStartup
20SnmpCleanup
21SnmpOpen
22SnmpClose
23SnmpSendMsg
24SnmpRecvMsg
25SnmpRegister
26SnmpCreateSession
27SnmpListen
28SnmpCancelMsg
29SnmpStartupEx
30SnmpCleanupEx
31SnmpListenEx
32SnmpStrToEntity
33SnmpEntityToStr
34SnmpFreeEntity
35SnmpSetPort
36SnmpStrToContext
37SnmpContextToStr
38SnmpFreeContext
39SnmpCreatePdu
40SnmpGetPduData
41SnmpSetPduData
42SnmpDuplicatePdu
43SnmpFreePdu
44SnmpCreateVbl
45SnmpDuplicateVbl
46SnmpFreeVbl
47SnmpCountVbl
48SnmpGetVb
49SnmpSetVb
50SnmpDeleteVb
51SnmpFreeDescriptor
52SnmpEncodeMsg
53SnmpDecodeMsg
54SnmpStrToOid
55SnmpOidToStr
56SnmpOidCopy
57SnmpOidCompare
58SnmpGetLastError
lib/libc/mingw/libarm32/xmllite.def created+13
...@@ -0,0 +1,13 @@
1;
2; Definition file of XmlLite.dll
3; Automatic generated by gendef
4; written by Kai Tietz 2008-2014
5;
6LIBRARY "XmlLite.dll"
7EXPORTS
8CreateXmlReader
9CreateXmlReaderInputWithEncodingCodePage
10CreateXmlReaderInputWithEncodingName
11CreateXmlWriter
12CreateXmlWriterOutputWithEncodingCodePage
13CreateXmlWriterOutputWithEncodingName
lib/libc/musl/arch/aarch64/bits/hwcap.h+10
...@@ -38,3 +38,13 @@...@@ -38,3 +38,13 @@
38#define HWCAP2_SVEBITPERM (1 << 4)38#define HWCAP2_SVEBITPERM (1 << 4)
39#define HWCAP2_SVESHA3 (1 << 5)39#define HWCAP2_SVESHA3 (1 << 5)
40#define HWCAP2_SVESM4 (1 << 6)40#define HWCAP2_SVESM4 (1 << 6)
41#define HWCAP2_FLAGM2 (1 << 7)
42#define HWCAP2_FRINT (1 << 8)
43#define HWCAP2_SVEI8MM (1 << 9)
44#define HWCAP2_SVEF32MM (1 << 10)
45#define HWCAP2_SVEF64MM (1 << 11)
46#define HWCAP2_SVEBF16 (1 << 12)
47#define HWCAP2_I8MM (1 << 13)
48#define HWCAP2_BF16 (1 << 14)
49#define HWCAP2_DGH (1 << 15)
50#define HWCAP2_RNG (1 << 16)
lib/libc/musl/arch/aarch64/bits/signal.h+2-2
...@@ -11,7 +11,7 @@ typedef unsigned long greg_t;...@@ -11,7 +11,7 @@ typedef unsigned long greg_t;
11typedef unsigned long gregset_t[34];11typedef unsigned long gregset_t[34];
1212
13typedef struct {13typedef struct {
14 long double vregs[32];14 __uint128_t vregs[32];
15 unsigned int fpsr;15 unsigned int fpsr;
16 unsigned int fpcr;16 unsigned int fpcr;
17} fpregset_t;17} fpregset_t;
...@@ -34,7 +34,7 @@ struct fpsimd_context {...@@ -34,7 +34,7 @@ struct fpsimd_context {
34 struct _aarch64_ctx head;34 struct _aarch64_ctx head;
35 unsigned int fpsr;35 unsigned int fpsr;
36 unsigned int fpcr;36 unsigned int fpcr;
37 long double vregs[32];37 __uint128_t vregs[32];
38};38};
39struct esr_context {39struct esr_context {
40 struct _aarch64_ctx head;40 struct _aarch64_ctx head;
lib/libc/musl/arch/aarch64/bits/syscall.h.in+4
...@@ -289,4 +289,8 @@...@@ -289,4 +289,8 @@
289#define __NR_fspick 433289#define __NR_fspick 433
290#define __NR_pidfd_open 434290#define __NR_pidfd_open 434
291#define __NR_clone3 435291#define __NR_clone3 435
292#define __NR_close_range 436
293#define __NR_openat2 437
294#define __NR_pidfd_getfd 438
295#define __NR_faccessat2 439
292296
lib/libc/musl/arch/aarch64/bits/user.h+1-1
...@@ -6,7 +6,7 @@ struct user_regs_struct {...@@ -6,7 +6,7 @@ struct user_regs_struct {
6};6};
77
8struct user_fpsimd_struct {8struct user_fpsimd_struct {
9 long double vregs[32];9 __uint128_t vregs[32];
10 unsigned int fpsr;10 unsigned int fpsr;
11 unsigned int fpcr;11 unsigned int fpcr;
12};12};
lib/libc/musl/arch/aarch64/pthread_arch.h+4-5
...@@ -1,12 +1,11 @@...@@ -1,12 +1,11 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3 char *self;3 uintptr_t tp;
4 __asm__ ("mrs %0,tpidr_el0" : "=r"(self));4 __asm__ ("mrs %0,tpidr_el0" : "=r"(tp));
5 return (void*)(self - sizeof(struct pthread));5 return tp;
6}6}
77
8#define TLS_ABOVE_TP8#define TLS_ABOVE_TP
9#define GAP_ABOVE_TP 169#define GAP_ABOVE_TP 16
10#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread))
1110
12#define MC_PC pc11#define MC_PC pc
lib/libc/musl/arch/arm/bits/syscall.h.in+4
...@@ -389,6 +389,10 @@...@@ -389,6 +389,10 @@
389#define __NR_fspick 433389#define __NR_fspick 433
390#define __NR_pidfd_open 434390#define __NR_pidfd_open 434
391#define __NR_clone3 435391#define __NR_clone3 435
392#define __NR_close_range 436
393#define __NR_openat2 437
394#define __NR_pidfd_getfd 438
395#define __NR_faccessat2 439
392396
393#define __ARM_NR_breakpoint 0x0f0001397#define __ARM_NR_breakpoint 0x0f0001
394#define __ARM_NR_cacheflush 0x0f0002398#define __ARM_NR_cacheflush 0x0f0002
lib/libc/musl/arch/arm/pthread_arch.h+8-9
...@@ -1,11 +1,11 @@...@@ -1,11 +1,11 @@
1#if ((__ARM_ARCH_6K__ || __ARM_ARCH_6KZ__ || __ARM_ARCH_6ZK__) && !__thumb__) \1#if ((__ARM_ARCH_6K__ || __ARM_ARCH_6KZ__ || __ARM_ARCH_6ZK__) && !__thumb__) \
2 || __ARM_ARCH_7A__ || __ARM_ARCH_7R__ || __ARM_ARCH >= 72 || __ARM_ARCH_7A__ || __ARM_ARCH_7R__ || __ARM_ARCH >= 7
33
4static inline pthread_t __pthread_self()4static inline uintptr_t __get_tp()
5{5{
6 char *p;6 uintptr_t tp;
7 __asm__ ( "mrc p15,0,%0,c13,c0,3" : "=r"(p) );7 __asm__ ( "mrc p15,0,%0,c13,c0,3" : "=r"(tp) );
8 return (void *)(p-sizeof(struct pthread));8 return tp;
9}9}
1010
11#else11#else
...@@ -16,18 +16,17 @@ static inline pthread_t __pthread_self()...@@ -16,18 +16,17 @@ static inline pthread_t __pthread_self()
16#define BLX "blx"16#define BLX "blx"
17#endif17#endif
1818
19static inline pthread_t __pthread_self()19static inline uintptr_t __get_tp()
20{20{
21 extern hidden uintptr_t __a_gettp_ptr;21 extern hidden uintptr_t __a_gettp_ptr;
22 register uintptr_t p __asm__("r0");22 register uintptr_t tp __asm__("r0");
23 __asm__ ( BLX " %1" : "=r"(p) : "r"(__a_gettp_ptr) : "cc", "lr" );23 __asm__ ( BLX " %1" : "=r"(tp) : "r"(__a_gettp_ptr) : "cc", "lr" );
24 return (void *)(p-sizeof(struct pthread));24 return tp;
25}25}
2626
27#endif27#endif
2828
29#define TLS_ABOVE_TP29#define TLS_ABOVE_TP
30#define GAP_ABOVE_TP 830#define GAP_ABOVE_TP 8
31#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread))
3231
33#define MC_PC arm_pc32#define MC_PC arm_pc
lib/libc/musl/arch/generic/bits/fcntl.h+6
...@@ -30,9 +30,15 @@...@@ -30,9 +30,15 @@
30#define F_SETSIG 1030#define F_SETSIG 10
31#define F_GETSIG 1131#define F_GETSIG 11
3232
33#if __LONG_MAX == 0x7fffffffL
33#define F_GETLK 1234#define F_GETLK 12
34#define F_SETLK 1335#define F_SETLK 13
35#define F_SETLKW 1436#define F_SETLKW 14
37#else
38#define F_GETLK 5
39#define F_SETLK 6
40#define F_SETLKW 7
41#endif
3642
37#define F_SETOWN_EX 1543#define F_SETOWN_EX 15
38#define F_GETOWN_EX 1644#define F_GETOWN_EX 16
lib/libc/musl/arch/i386/bits/syscall.h.in+4
...@@ -426,4 +426,8 @@...@@ -426,4 +426,8 @@
426#define __NR_fspick 433426#define __NR_fspick 433
427#define __NR_pidfd_open 434427#define __NR_pidfd_open 434
428#define __NR_clone3 435428#define __NR_clone3 435
429#define __NR_close_range 436
430#define __NR_openat2 437
431#define __NR_pidfd_getfd 438
432#define __NR_faccessat2 439
429433
lib/libc/musl/arch/i386/pthread_arch.h+4-6
...@@ -1,10 +1,8 @@...@@ -1,10 +1,8 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3 struct pthread *self;3 uintptr_t tp;
4 __asm__ ("movl %%gs:0,%0" : "=r" (self) );4 __asm__ ("movl %%gs:0,%0" : "=r" (tp) );
5 return self;5 return tp;
6}6}
77
8#define TP_ADJ(p) (p)
9
10#define MC_PC gregs[REG_EIP]8#define MC_PC gregs[REG_EIP]
lib/libc/musl/arch/i386/syscall_arch.h-2
...@@ -87,5 +87,3 @@ static inline long __syscall6(long n, long a1, long a2, long a3, long a4, long a...@@ -87,5 +87,3 @@ static inline long __syscall6(long n, long a1, long a2, long a3, long a4, long a
87#define VDSO_CGT32_VER "LINUX_2.6"87#define VDSO_CGT32_VER "LINUX_2.6"
88#define VDSO_CGT_SYM "__vdso_clock_gettime64"88#define VDSO_CGT_SYM "__vdso_clock_gettime64"
89#define VDSO_CGT_VER "LINUX_2.6"89#define VDSO_CGT_VER "LINUX_2.6"
90
91#define SYSCALL_USE_SOCKETCALL
lib/libc/musl/arch/mips/bits/syscall.h.in+4
...@@ -408,4 +408,8 @@...@@ -408,4 +408,8 @@
408#define __NR_fspick 4433408#define __NR_fspick 4433
409#define __NR_pidfd_open 4434409#define __NR_pidfd_open 4434
410#define __NR_clone3 4435410#define __NR_clone3 4435
411#define __NR_close_range 4436
412#define __NR_openat2 4437
413#define __NR_pidfd_getfd 4438
414#define __NR_faccessat2 4439
411415
lib/libc/musl/arch/mips/pthread_arch.h+5-5
...@@ -1,19 +1,19 @@...@@ -1,19 +1,19 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3#if __mips_isa_rev < 23#if __mips_isa_rev < 2
4 register char *tp __asm__("$3");4 register uintptr_t tp __asm__("$3");
5 __asm__ (".word 0x7c03e83b" : "=r" (tp) );5 __asm__ (".word 0x7c03e83b" : "=r" (tp) );
6#else6#else
7 char *tp;7 uintptr_t tp;
8 __asm__ ("rdhwr %0, $29" : "=r" (tp) );8 __asm__ ("rdhwr %0, $29" : "=r" (tp) );
9#endif9#endif
10 return (pthread_t)(tp - 0x7000 - sizeof(struct pthread));10 return tp;
11}11}
1212
13#define TLS_ABOVE_TP13#define TLS_ABOVE_TP
14#define GAP_ABOVE_TP 014#define GAP_ABOVE_TP 0
15#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) + 0x7000)
1615
16#define TP_OFFSET 0x7000
17#define DTP_OFFSET 0x800017#define DTP_OFFSET 0x8000
1818
19#define MC_PC pc19#define MC_PC pc
lib/libc/musl/arch/mips/syscall_arch.h+2
...@@ -149,3 +149,5 @@ static inline long __syscall7(long n, long a, long b, long c, long d, long e, lo...@@ -149,3 +149,5 @@ static inline long __syscall7(long n, long a, long b, long c, long d, long e, lo
149149
150#define SO_SNDTIMEO_OLD 0x1005150#define SO_SNDTIMEO_OLD 0x1005
151#define SO_RCVTIMEO_OLD 0x1006151#define SO_RCVTIMEO_OLD 0x1006
152
153#undef SYS_socketcall
lib/libc/musl/arch/mips64/bits/fcntl.h+1-1
...@@ -13,7 +13,7 @@...@@ -13,7 +13,7 @@
1313
14#define O_ASYNC 01000014#define O_ASYNC 010000
15#define O_DIRECT 010000015#define O_DIRECT 0100000
16#define O_LARGEFILE 016#define O_LARGEFILE 020000
17#define O_NOATIME 0100000017#define O_NOATIME 01000000
18#define O_PATH 01000000018#define O_PATH 010000000
19#define O_TMPFILE 02020000019#define O_TMPFILE 020200000
lib/libc/musl/arch/mips64/bits/syscall.h.in+4
...@@ -338,4 +338,8 @@...@@ -338,4 +338,8 @@
338#define __NR_fspick 5433338#define __NR_fspick 5433
339#define __NR_pidfd_open 5434339#define __NR_pidfd_open 5434
340#define __NR_clone3 5435340#define __NR_clone3 5435
341#define __NR_close_range 5436
342#define __NR_openat2 5437
343#define __NR_pidfd_getfd 5438
344#define __NR_faccessat2 5439
341345
lib/libc/musl/arch/mips64/pthread_arch.h+5-5
...@@ -1,19 +1,19 @@...@@ -1,19 +1,19 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3#if __mips_isa_rev < 23#if __mips_isa_rev < 2
4 register char *tp __asm__("$3");4 register uintptr_t tp __asm__("$3");
5 __asm__ (".word 0x7c03e83b" : "=r" (tp) );5 __asm__ (".word 0x7c03e83b" : "=r" (tp) );
6#else6#else
7 char *tp;7 uintptr_t tp;
8 __asm__ ("rdhwr %0, $29" : "=r" (tp) );8 __asm__ ("rdhwr %0, $29" : "=r" (tp) );
9#endif9#endif
10 return (pthread_t)(tp - 0x7000 - sizeof(struct pthread));10 return tp;
11}11}
1212
13#define TLS_ABOVE_TP13#define TLS_ABOVE_TP
14#define GAP_ABOVE_TP 014#define GAP_ABOVE_TP 0
15#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) + 0x7000)
1615
16#define TP_OFFSET 0x7000
17#define DTP_OFFSET 0x800017#define DTP_OFFSET 0x8000
1818
19#define MC_PC pc19#define MC_PC pc
lib/libc/musl/arch/powerpc/bits/syscall.h.in+4
...@@ -415,4 +415,8 @@...@@ -415,4 +415,8 @@
415#define __NR_fspick 433415#define __NR_fspick 433
416#define __NR_pidfd_open 434416#define __NR_pidfd_open 434
417#define __NR_clone3 435417#define __NR_clone3 435
418#define __NR_close_range 436
419#define __NR_openat2 437
420#define __NR_pidfd_getfd 438
421#define __NR_faccessat2 439
418422
lib/libc/musl/arch/powerpc/pthread_arch.h+4-6
...@@ -1,18 +1,16 @@...@@ -1,18 +1,16 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3 register char *tp __asm__("r2");3 register uintptr_t tp __asm__("r2");
4 __asm__ ("" : "=r" (tp) );4 __asm__ ("" : "=r" (tp) );
5 return (pthread_t)(tp - 0x7000 - sizeof(struct pthread));5 return tp;
6}6}
7 7
8#define TLS_ABOVE_TP8#define TLS_ABOVE_TP
9#define GAP_ABOVE_TP 09#define GAP_ABOVE_TP 0
10#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) + 0x7000)
1110
11#define TP_OFFSET 0x7000
12#define DTP_OFFSET 0x800012#define DTP_OFFSET 0x8000
1313
14// the kernel calls the ip "nip", it's the first saved value after the 3214// the kernel calls the ip "nip", it's the first saved value after the 32
15// GPRs.15// GPRs.
16#define MC_PC gregs[32]16#define MC_PC gregs[32]
17
18#define CANARY canary_at_end
lib/libc/musl/arch/powerpc64/bits/syscall.h.in+4
...@@ -387,4 +387,8 @@...@@ -387,4 +387,8 @@
387#define __NR_fspick 433387#define __NR_fspick 433
388#define __NR_pidfd_open 434388#define __NR_pidfd_open 434
389#define __NR_clone3 435389#define __NR_clone3 435
390#define __NR_close_range 436
391#define __NR_openat2 437
392#define __NR_pidfd_getfd 438
393#define __NR_faccessat2 439
390394
lib/libc/musl/arch/powerpc64/pthread_arch.h+4-6
...@@ -1,18 +1,16 @@...@@ -1,18 +1,16 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3 register char *tp __asm__("r13");3 register uintptr_t tp __asm__("r13");
4 __asm__ ("" : "=r" (tp) );4 __asm__ ("" : "=r" (tp) );
5 return (pthread_t)(tp - 0x7000 - sizeof(struct pthread));5 return tp;
6}6}
77
8#define TLS_ABOVE_TP8#define TLS_ABOVE_TP
9#define GAP_ABOVE_TP 09#define GAP_ABOVE_TP 0
10#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) + 0x7000)
1110
11#define TP_OFFSET 0x7000
12#define DTP_OFFSET 0x800012#define DTP_OFFSET 0x8000
1313
14// the kernel calls the ip "nip", it's the first saved value after the 3214// the kernel calls the ip "nip", it's the first saved value after the 32
15// GPRs.15// GPRs.
16#define MC_PC gp_regs[32]16#define MC_PC gp_regs[32]
17
18#define CANARY canary_at_end
lib/libc/musl/arch/riscv64/bits/fcntl.h deleted-38
...@@ -1,38 +0,0 @@
1#define O_CREAT 0100
2#define O_EXCL 0200
3#define O_NOCTTY 0400
4#define O_TRUNC 01000
5#define O_APPEND 02000
6#define O_NONBLOCK 04000
7#define O_DSYNC 010000
8#define O_SYNC 04010000
9#define O_RSYNC 04010000
10#define O_DIRECTORY 0200000
11#define O_NOFOLLOW 0400000
12#define O_CLOEXEC 02000000
13
14#define O_ASYNC 020000
15#define O_DIRECT 040000
16#define O_LARGEFILE 0100000
17#define O_NOATIME 01000000
18#define O_PATH 010000000
19#define O_TMPFILE 020200000
20#define O_NDELAY O_NONBLOCK
21
22#define F_DUPFD 0
23#define F_GETFD 1
24#define F_SETFD 2
25#define F_GETFL 3
26#define F_SETFL 4
27#define F_GETLK 5
28#define F_SETLK 6
29#define F_SETLKW 7
30#define F_SETOWN 8
31#define F_GETOWN 9
32#define F_SETSIG 10
33#define F_GETSIG 11
34
35#define F_SETOWN_EX 15
36#define F_GETOWN_EX 16
37
38#define F_GETOWNER_UIDS 17
lib/libc/musl/arch/riscv64/bits/signal.h+2-2
...@@ -60,10 +60,10 @@ struct sigaltstack {...@@ -60,10 +60,10 @@ struct sigaltstack {
60 size_t ss_size;60 size_t ss_size;
61};61};
6262
63typedef struct ucontext_t63typedef struct __ucontext
64{64{
65 unsigned long uc_flags;65 unsigned long uc_flags;
66 struct ucontext_t *uc_link;66 struct __ucontext *uc_link;
67 stack_t uc_stack;67 stack_t uc_stack;
68 sigset_t uc_sigmask;68 sigset_t uc_sigmask;
69 mcontext_t uc_mcontext;69 mcontext_t uc_mcontext;
lib/libc/musl/arch/riscv64/bits/syscall.h.in+4
...@@ -289,6 +289,10 @@...@@ -289,6 +289,10 @@
289#define __NR_fspick 433289#define __NR_fspick 433
290#define __NR_pidfd_open 434290#define __NR_pidfd_open 434
291#define __NR_clone3 435291#define __NR_clone3 435
292#define __NR_close_range 436
293#define __NR_openat2 437
294#define __NR_pidfd_getfd 438
295#define __NR_faccessat2 439
292296
293#define __NR_sysriscv __NR_arch_specific_syscall297#define __NR_sysriscv __NR_arch_specific_syscall
294#define __NR_riscv_flush_icache (__NR_sysriscv + 15)298#define __NR_riscv_flush_icache (__NR_sysriscv + 15)
lib/libc/musl/arch/riscv64/pthread_arch.h+3-4
...@@ -1,13 +1,12 @@...@@ -1,13 +1,12 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3 char *tp;3 uintptr_t tp;
4 __asm__ __volatile__("mv %0, tp" : "=r"(tp));4 __asm__ __volatile__("mv %0, tp" : "=r"(tp));
5 return (void *)(tp - sizeof(struct pthread));5 return tp;
6}6}
77
8#define TLS_ABOVE_TP8#define TLS_ABOVE_TP
9#define GAP_ABOVE_TP 09#define GAP_ABOVE_TP 0
10#define TP_ADJ(p) ((char *)p + sizeof(struct pthread))
1110
12#define DTP_OFFSET 0x80011#define DTP_OFFSET 0x800
1312
lib/libc/musl/arch/s390x/bits/alltypes.h.in+4
...@@ -9,7 +9,11 @@...@@ -9,7 +9,11 @@
9TYPEDEF int wchar_t;9TYPEDEF int wchar_t;
10#endif10#endif
1111
12#if defined(__FLT_EVAL_METHOD__) && __FLT_EVAL_METHOD__ == 1
12TYPEDEF double float_t;13TYPEDEF double float_t;
14#else
15TYPEDEF float float_t;
16#endif
13TYPEDEF double double_t;17TYPEDEF double double_t;
1418
15TYPEDEF struct { long long __ll; long double __ld; } max_align_t;19TYPEDEF struct { long long __ll; long double __ld; } max_align_t;
lib/libc/musl/arch/s390x/bits/float.h+5-1
...@@ -1,4 +1,8 @@...@@ -1,4 +1,8 @@
1#define FLT_EVAL_METHOD 11#ifdef __FLT_EVAL_METHOD__
2#define FLT_EVAL_METHOD __FLT_EVAL_METHOD__
3#else
4#define FLT_EVAL_METHOD 0
5#endif
26
3#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L7#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L
4#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L8#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L
lib/libc/musl/arch/s390x/bits/syscall.h.in+4
...@@ -352,4 +352,8 @@...@@ -352,4 +352,8 @@
352#define __NR_fspick 433352#define __NR_fspick 433
353#define __NR_pidfd_open 434353#define __NR_pidfd_open 434
354#define __NR_clone3 435354#define __NR_clone3 435
355#define __NR_close_range 436
356#define __NR_openat2 437
357#define __NR_pidfd_getfd 438
358#define __NR_faccessat2 439
355359
lib/libc/musl/arch/s390x/pthread_arch.h+4-6
...@@ -1,14 +1,12 @@...@@ -1,14 +1,12 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3 struct pthread *self;3 uintptr_t tp;
4 __asm__ (4 __asm__ (
5 "ear %0, %%a0\n"5 "ear %0, %%a0\n"
6 "sllg %0, %0, 32\n"6 "sllg %0, %0, 32\n"
7 "ear %0, %%a1\n"7 "ear %0, %%a1\n"
8 : "=r"(self));8 : "=r"(tp));
9 return self;9 return tp;
10}10}
1111
12#define TP_ADJ(p) (p)
13
14#define MC_PC psw.addr12#define MC_PC psw.addr
lib/libc/musl/arch/s390x/syscall_arch.h-2
...@@ -72,5 +72,3 @@ static inline long __syscall6(long n, long a, long b, long c, long d, long e, lo...@@ -72,5 +72,3 @@ static inline long __syscall6(long n, long a, long b, long c, long d, long e, lo
72 register long r7 __asm__("r7") = f;72 register long r7 __asm__("r7") = f;
73 __asm_syscall("+r"(r2), "r"(r1), "r"(r3), "r"(r4), "r"(r5), "r"(r6), "r"(r7));73 __asm_syscall("+r"(r2), "r"(r1), "r"(r3), "r"(r4), "r"(r5), "r"(r6), "r"(r7));
74}74}
75
76#define SYSCALL_USE_SOCKETCALL
lib/libc/musl/arch/x86_64/bits/fcntl.h deleted-40
...@@ -1,40 +0,0 @@
1#define O_CREAT 0100
2#define O_EXCL 0200
3#define O_NOCTTY 0400
4#define O_TRUNC 01000
5#define O_APPEND 02000
6#define O_NONBLOCK 04000
7#define O_DSYNC 010000
8#define O_SYNC 04010000
9#define O_RSYNC 04010000
10#define O_DIRECTORY 0200000
11#define O_NOFOLLOW 0400000
12#define O_CLOEXEC 02000000
13
14#define O_ASYNC 020000
15#define O_DIRECT 040000
16#define O_LARGEFILE 0
17#define O_NOATIME 01000000
18#define O_PATH 010000000
19#define O_TMPFILE 020200000
20#define O_NDELAY O_NONBLOCK
21
22#define F_DUPFD 0
23#define F_GETFD 1
24#define F_SETFD 2
25#define F_GETFL 3
26#define F_SETFL 4
27
28#define F_SETOWN 8
29#define F_GETOWN 9
30#define F_SETSIG 10
31#define F_GETSIG 11
32
33#define F_GETLK 5
34#define F_SETLK 6
35#define F_SETLKW 7
36
37#define F_SETOWN_EX 15
38#define F_GETOWN_EX 16
39
40#define F_GETOWNER_UIDS 17
lib/libc/musl/arch/x86_64/bits/syscall.h.in+4
...@@ -345,4 +345,8 @@...@@ -345,4 +345,8 @@
345#define __NR_fspick 433345#define __NR_fspick 433
346#define __NR_pidfd_open 434346#define __NR_pidfd_open 434
347#define __NR_clone3 435347#define __NR_clone3 435
348#define __NR_close_range 436
349#define __NR_openat2 437
350#define __NR_pidfd_getfd 438
351#define __NR_faccessat2 439
348352
lib/libc/musl/arch/x86_64/pthread_arch.h+4-6
...@@ -1,10 +1,8 @@...@@ -1,10 +1,8 @@
1static inline struct pthread *__pthread_self()1static inline uintptr_t __get_tp()
2{2{
3 struct pthread *self;3 uintptr_t tp;
4 __asm__ ("mov %%fs:0,%0" : "=r" (self) );4 __asm__ ("mov %%fs:0,%0" : "=r" (tp) );
5 return self;5 return tp;
6}6}
77
8#define TP_ADJ(p) (p)
9
10#define MC_PC gregs[REG_RIP]8#define MC_PC gregs[REG_RIP]
lib/libc/musl/include/alltypes.h.in+2
...@@ -77,6 +77,8 @@ TYPEDEF struct __sigset_t { unsigned long __bits[128/sizeof(long)]; } sigset_t;...@@ -77,6 +77,8 @@ TYPEDEF struct __sigset_t { unsigned long __bits[128/sizeof(long)]; } sigset_t;
7777
78STRUCT iovec { void *iov_base; size_t iov_len; };78STRUCT iovec { void *iov_base; size_t iov_len; };
7979
80STRUCT winsize { unsigned short ws_row, ws_col, ws_xpixel, ws_ypixel; };
81
80TYPEDEF unsigned socklen_t;82TYPEDEF unsigned socklen_t;
81TYPEDEF unsigned short sa_family_t;83TYPEDEF unsigned short sa_family_t;
8284
lib/libc/musl/include/elf.h+2
...@@ -603,6 +603,7 @@ typedef struct {...@@ -603,6 +603,7 @@ typedef struct {
603#define PT_GNU_EH_FRAME 0x6474e550603#define PT_GNU_EH_FRAME 0x6474e550
604#define PT_GNU_STACK 0x6474e551604#define PT_GNU_STACK 0x6474e551
605#define PT_GNU_RELRO 0x6474e552605#define PT_GNU_RELRO 0x6474e552
606#define PT_GNU_PROPERTY 0x6474e553
606#define PT_LOSUNW 0x6ffffffa607#define PT_LOSUNW 0x6ffffffa
607#define PT_SUNWBSS 0x6ffffffa608#define PT_SUNWBSS 0x6ffffffa
608#define PT_SUNWSTACK 0x6ffffffb609#define PT_SUNWSTACK 0x6ffffffb
...@@ -1085,6 +1086,7 @@ typedef struct {...@@ -1085,6 +1086,7 @@ typedef struct {
10851086
1086#define NT_GNU_BUILD_ID 31087#define NT_GNU_BUILD_ID 3
1087#define NT_GNU_GOLD_VERSION 41088#define NT_GNU_GOLD_VERSION 4
1089#define NT_GNU_PROPERTY_TYPE_0 5
10881090
10891091
10901092
lib/libc/musl/include/netinet/if_ether.h+1
...@@ -59,6 +59,7 @@...@@ -59,6 +59,7 @@
59#define ETH_P_PREAUTH 0x88C759#define ETH_P_PREAUTH 0x88C7
60#define ETH_P_TIPC 0x88CA60#define ETH_P_TIPC 0x88CA
61#define ETH_P_LLDP 0x88CC61#define ETH_P_LLDP 0x88CC
62#define ETH_P_MRP 0x88E3
62#define ETH_P_MACSEC 0x88E563#define ETH_P_MACSEC 0x88E5
63#define ETH_P_8021AH 0x88E764#define ETH_P_8021AH 0x88E7
64#define ETH_P_MVRP 0x88F565#define ETH_P_MVRP 0x88F5
lib/libc/musl/include/netinet/in.h+4-1
...@@ -101,8 +101,10 @@ uint16_t ntohs(uint16_t);...@@ -101,8 +101,10 @@ uint16_t ntohs(uint16_t);
101#define IPPROTO_MH 135101#define IPPROTO_MH 135
102#define IPPROTO_UDPLITE 136102#define IPPROTO_UDPLITE 136
103#define IPPROTO_MPLS 137103#define IPPROTO_MPLS 137
104#define IPPROTO_ETHERNET 143
104#define IPPROTO_RAW 255105#define IPPROTO_RAW 255
105#define IPPROTO_MAX 256106#define IPPROTO_MPTCP 262
107#define IPPROTO_MAX 263
106108
107#define IN6_IS_ADDR_UNSPECIFIED(a) \109#define IN6_IS_ADDR_UNSPECIFIED(a) \
108 (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \110 (((uint32_t *) (a))[0] == 0 && ((uint32_t *) (a))[1] == 0 && \
...@@ -200,6 +202,7 @@ uint16_t ntohs(uint16_t);...@@ -200,6 +202,7 @@ uint16_t ntohs(uint16_t);
200#define IP_CHECKSUM 23202#define IP_CHECKSUM 23
201#define IP_BIND_ADDRESS_NO_PORT 24203#define IP_BIND_ADDRESS_NO_PORT 24
202#define IP_RECVFRAGSIZE 25204#define IP_RECVFRAGSIZE 25
205#define IP_RECVERR_RFC4884 26
203#define IP_MULTICAST_IF 32206#define IP_MULTICAST_IF 32
204#define IP_MULTICAST_TTL 33207#define IP_MULTICAST_TTL 33
205#define IP_MULTICAST_LOOP 34208#define IP_MULTICAST_LOOP 34
lib/libc/musl/include/netinet/tcp.h+15-3
...@@ -78,6 +78,8 @@ enum {...@@ -78,6 +78,8 @@ enum {
78 TCP_NLA_DSACK_DUPS,78 TCP_NLA_DSACK_DUPS,
79 TCP_NLA_REORD_SEEN,79 TCP_NLA_REORD_SEEN,
80 TCP_NLA_SRTT,80 TCP_NLA_SRTT,
81 TCP_NLA_TIMEOUT_REHASH,
82 TCP_NLA_BYTES_NOTSENT,
81};83};
8284
83#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)85#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE)
...@@ -181,6 +183,13 @@ struct tcphdr {...@@ -181,6 +183,13 @@ struct tcphdr {
181#define TCP_CA_Recovery 3183#define TCP_CA_Recovery 3
182#define TCP_CA_Loss 4184#define TCP_CA_Loss 4
183185
186enum tcp_fastopen_client_fail {
187 TFO_STATUS_UNSPEC,
188 TFO_COOKIE_UNAVAILABLE,
189 TFO_DATA_NOT_ACKED,
190 TFO_SYN_RETRANSMITTED,
191};
192
184struct tcp_info {193struct tcp_info {
185 uint8_t tcpi_state;194 uint8_t tcpi_state;
186 uint8_t tcpi_ca_state;195 uint8_t tcpi_ca_state;
...@@ -189,7 +198,7 @@ struct tcp_info {...@@ -189,7 +198,7 @@ struct tcp_info {
189 uint8_t tcpi_backoff;198 uint8_t tcpi_backoff;
190 uint8_t tcpi_options;199 uint8_t tcpi_options;
191 uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;200 uint8_t tcpi_snd_wscale : 4, tcpi_rcv_wscale : 4;
192 uint8_t tcpi_delivery_rate_app_limited : 1;201 uint8_t tcpi_delivery_rate_app_limited : 1, tcpi_fastopen_client_fail : 2;
193 uint32_t tcpi_rto;202 uint32_t tcpi_rto;
194 uint32_t tcpi_ato;203 uint32_t tcpi_ato;
195 uint32_t tcpi_snd_mss;204 uint32_t tcpi_snd_mss;
...@@ -240,14 +249,15 @@ struct tcp_info {...@@ -240,14 +249,15 @@ struct tcp_info {
240249
241#define TCP_MD5SIG_MAXKEYLEN 80250#define TCP_MD5SIG_MAXKEYLEN 80
242251
243#define TCP_MD5SIG_FLAG_PREFIX 1252#define TCP_MD5SIG_FLAG_PREFIX 0x1
253#define TCP_MD5SIG_FLAG_IFINDEX 0x2
244254
245struct tcp_md5sig {255struct tcp_md5sig {
246 struct sockaddr_storage tcpm_addr;256 struct sockaddr_storage tcpm_addr;
247 uint8_t tcpm_flags;257 uint8_t tcpm_flags;
248 uint8_t tcpm_prefixlen;258 uint8_t tcpm_prefixlen;
249 uint16_t tcpm_keylen;259 uint16_t tcpm_keylen;
250 uint32_t __tcpm_pad;260 int tcpm_ifindex;
251 uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];261 uint8_t tcpm_key[TCP_MD5SIG_MAXKEYLEN];
252};262};
253263
...@@ -275,6 +285,8 @@ struct tcp_zerocopy_receive {...@@ -275,6 +285,8 @@ struct tcp_zerocopy_receive {
275 uint64_t address;285 uint64_t address;
276 uint32_t length;286 uint32_t length;
277 uint32_t recv_skip_hint;287 uint32_t recv_skip_hint;
288 uint32_t inq;
289 int32_t err;
278};290};
279291
280#endif292#endif
lib/libc/musl/include/netinet/udp.h+1
...@@ -35,6 +35,7 @@ struct udphdr {...@@ -35,6 +35,7 @@ struct udphdr {
35#define UDP_ENCAP_GTP0 435#define UDP_ENCAP_GTP0 4
36#define UDP_ENCAP_GTP1U 536#define UDP_ENCAP_GTP1U 5
37#define UDP_ENCAP_RXRPC 637#define UDP_ENCAP_RXRPC 6
38#define TCP_ENCAP_ESPINTCP 7
3839
39#define SOL_UDP 1740#define SOL_UDP 17
4041
lib/libc/musl/include/sched.h+1
...@@ -49,6 +49,7 @@ int sched_yield(void);...@@ -49,6 +49,7 @@ int sched_yield(void);
4949
50#ifdef _GNU_SOURCE50#ifdef _GNU_SOURCE
51#define CSIGNAL 0x000000ff51#define CSIGNAL 0x000000ff
52#define CLONE_NEWTIME 0x00000080
52#define CLONE_VM 0x0000010053#define CLONE_VM 0x00000100
53#define CLONE_FS 0x0000020054#define CLONE_FS 0x00000200
54#define CLONE_FILES 0x0000040055#define CLONE_FILES 0x00000400
lib/libc/musl/include/signal.h+13-3
...@@ -180,14 +180,24 @@ struct sigevent {...@@ -180,14 +180,24 @@ struct sigevent {
180 union sigval sigev_value;180 union sigval sigev_value;
181 int sigev_signo;181 int sigev_signo;
182 int sigev_notify;182 int sigev_notify;
183 void (*sigev_notify_function)(union sigval);183 union {
184 pthread_attr_t *sigev_notify_attributes;184 char __pad[64 - 2*sizeof(int) - sizeof(union sigval)];
185 char __pad[56-3*sizeof(long)];185 pid_t sigev_notify_thread_id;
186 struct {
187 void (*sigev_notify_function)(union sigval);
188 pthread_attr_t *sigev_notify_attributes;
189 } __sev_thread;
190 } __sev_fields;
186};191};
187192
193#define sigev_notify_thread_id __sev_fields.sigev_notify_thread_id
194#define sigev_notify_function __sev_fields.__sev_thread.sigev_notify_function
195#define sigev_notify_attributes __sev_fields.__sev_thread.sigev_notify_attributes
196
188#define SIGEV_SIGNAL 0197#define SIGEV_SIGNAL 0
189#define SIGEV_NONE 1198#define SIGEV_NONE 1
190#define SIGEV_THREAD 2199#define SIGEV_THREAD 2
200#define SIGEV_THREAD_ID 4
191201
192int __libc_current_sigrtmin(void);202int __libc_current_sigrtmin(void);
193int __libc_current_sigrtmax(void);203int __libc_current_sigrtmax(void);
lib/libc/musl/include/stdlib.h+1
...@@ -145,6 +145,7 @@ int getloadavg(double *, int);...@@ -145,6 +145,7 @@ int getloadavg(double *, int);
145int clearenv(void);145int clearenv(void);
146#define WCOREDUMP(s) ((s) & 0x80)146#define WCOREDUMP(s) ((s) & 0x80)
147#define WIFCONTINUED(s) ((s) == 0xffff)147#define WIFCONTINUED(s) ((s) == 0xffff)
148void *reallocarray (void *, size_t, size_t);
148#endif149#endif
149150
150#ifdef _GNU_SOURCE151#ifdef _GNU_SOURCE
lib/libc/musl/include/sys/fanotify.h+7-1
...@@ -55,8 +55,9 @@ struct fanotify_response {...@@ -55,8 +55,9 @@ struct fanotify_response {
55#define FAN_OPEN_PERM 0x1000055#define FAN_OPEN_PERM 0x10000
56#define FAN_ACCESS_PERM 0x2000056#define FAN_ACCESS_PERM 0x20000
57#define FAN_OPEN_EXEC_PERM 0x4000057#define FAN_OPEN_EXEC_PERM 0x40000
58#define FAN_ONDIR 0x4000000058#define FAN_DIR_MODIFY 0x00080000
59#define FAN_EVENT_ON_CHILD 0x0800000059#define FAN_EVENT_ON_CHILD 0x08000000
60#define FAN_ONDIR 0x40000000
60#define FAN_CLOSE (FAN_CLOSE_WRITE | FAN_CLOSE_NOWRITE)61#define FAN_CLOSE (FAN_CLOSE_WRITE | FAN_CLOSE_NOWRITE)
61#define FAN_MOVE (FAN_MOVED_FROM | FAN_MOVED_TO)62#define FAN_MOVE (FAN_MOVED_FROM | FAN_MOVED_TO)
62#define FAN_CLOEXEC 0x0163#define FAN_CLOEXEC 0x01
...@@ -70,6 +71,9 @@ struct fanotify_response {...@@ -70,6 +71,9 @@ struct fanotify_response {
70#define FAN_ENABLE_AUDIT 0x4071#define FAN_ENABLE_AUDIT 0x40
71#define FAN_REPORT_TID 0x10072#define FAN_REPORT_TID 0x100
72#define FAN_REPORT_FID 0x20073#define FAN_REPORT_FID 0x200
74#define FAN_REPORT_DIR_FID 0x00000400
75#define FAN_REPORT_NAME 0x00000800
76#define FAN_REPORT_DFID_NAME (FAN_REPORT_DIR_FID | FAN_REPORT_NAME)
73#define FAN_ALL_INIT_FLAGS (FAN_CLOEXEC | FAN_NONBLOCK | FAN_ALL_CLASS_BITS | FAN_UNLIMITED_QUEUE | FAN_UNLIMITED_MARKS)77#define FAN_ALL_INIT_FLAGS (FAN_CLOEXEC | FAN_NONBLOCK | FAN_ALL_CLASS_BITS | FAN_UNLIMITED_QUEUE | FAN_UNLIMITED_MARKS)
74#define FAN_MARK_ADD 0x0178#define FAN_MARK_ADD 0x01
75#define FAN_MARK_REMOVE 0x0279#define FAN_MARK_REMOVE 0x02
...@@ -88,6 +92,8 @@ struct fanotify_response {...@@ -88,6 +92,8 @@ struct fanotify_response {
88#define FAN_ALL_OUTGOING_EVENTS (FAN_ALL_EVENTS | FAN_ALL_PERM_EVENTS | FAN_Q_OVERFLOW)92#define FAN_ALL_OUTGOING_EVENTS (FAN_ALL_EVENTS | FAN_ALL_PERM_EVENTS | FAN_Q_OVERFLOW)
89#define FANOTIFY_METADATA_VERSION 393#define FANOTIFY_METADATA_VERSION 3
90#define FAN_EVENT_INFO_TYPE_FID 194#define FAN_EVENT_INFO_TYPE_FID 1
95#define FAN_EVENT_INFO_TYPE_DFID_NAME 2
96#define FAN_EVENT_INFO_TYPE_DFID 3
91#define FAN_ALLOW 0x0197#define FAN_ALLOW 0x01
92#define FAN_DENY 0x0298#define FAN_DENY 0x02
93#define FAN_AUDIT 0x1099#define FAN_AUDIT 0x10
lib/libc/musl/include/sys/ioctl.h+2-7
...@@ -4,6 +4,8 @@...@@ -4,6 +4,8 @@
4extern "C" {4extern "C" {
5#endif5#endif
66
7#define __NEED_struct_winsize
8
7#include <bits/alltypes.h>9#include <bits/alltypes.h>
8#include <bits/ioctl.h>10#include <bits/ioctl.h>
911
...@@ -47,13 +49,6 @@ extern "C" {...@@ -47,13 +49,6 @@ extern "C" {
4749
48#define TIOCSER_TEMT 150#define TIOCSER_TEMT 1
4951
50struct winsize {
51 unsigned short ws_row;
52 unsigned short ws_col;
53 unsigned short ws_xpixel;
54 unsigned short ws_ypixel;
55};
56
57#define SIOCADDRT 0x890B52#define SIOCADDRT 0x890B
58#define SIOCDELRT 0x890C53#define SIOCDELRT 0x890C
59#define SIOCRTMSG 0x890D54#define SIOCRTMSG 0x890D
lib/libc/musl/include/sys/mman.h+1
...@@ -101,6 +101,7 @@ extern "C" {...@@ -101,6 +101,7 @@ extern "C" {
101#ifdef _GNU_SOURCE101#ifdef _GNU_SOURCE
102#define MREMAP_MAYMOVE 1102#define MREMAP_MAYMOVE 1
103#define MREMAP_FIXED 2103#define MREMAP_FIXED 2
104#define MREMAP_DONTUNMAP 4
104105
105#define MLOCK_ONFAULT 0x01106#define MLOCK_ONFAULT 0x01
106107
lib/libc/musl/include/sys/personality.h+3
...@@ -5,7 +5,9 @@...@@ -5,7 +5,9 @@
5extern "C" {5extern "C" {
6#endif6#endif
77
8#define UNAME26 0x0020000
8#define ADDR_NO_RANDOMIZE 0x00400009#define ADDR_NO_RANDOMIZE 0x0040000
10#define FDPIC_FUNCPTRS 0x0080000
9#define MMAP_PAGE_ZERO 0x010000011#define MMAP_PAGE_ZERO 0x0100000
10#define ADDR_COMPAT_LAYOUT 0x020000012#define ADDR_COMPAT_LAYOUT 0x0200000
11#define READ_IMPLIES_EXEC 0x040000013#define READ_IMPLIES_EXEC 0x0400000
...@@ -17,6 +19,7 @@ extern "C" {...@@ -17,6 +19,7 @@ extern "C" {
1719
18#define PER_LINUX 020#define PER_LINUX 0
19#define PER_LINUX_32BIT ADDR_LIMIT_32BIT21#define PER_LINUX_32BIT ADDR_LIMIT_32BIT
22#define PER_LINUX_FDPIC FDPIC_FUNCPTRS
20#define PER_SVR4 (1 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO)23#define PER_SVR4 (1 | STICKY_TIMEOUTS | MMAP_PAGE_ZERO)
21#define PER_SVR3 (2 | STICKY_TIMEOUTS | SHORT_INODE)24#define PER_SVR3 (2 | STICKY_TIMEOUTS | SHORT_INODE)
22#define PER_SCOSVR3 (3 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE)25#define PER_SCOSVR3 (3 | STICKY_TIMEOUTS | WHOLE_SECONDS | SHORT_INODE)
lib/libc/musl/include/sys/prctl.h+3
...@@ -158,6 +158,9 @@ struct prctl_mm_map {...@@ -158,6 +158,9 @@ struct prctl_mm_map {
158#define PR_GET_TAGGED_ADDR_CTRL 56158#define PR_GET_TAGGED_ADDR_CTRL 56
159#define PR_TAGGED_ADDR_ENABLE (1UL << 0)159#define PR_TAGGED_ADDR_ENABLE (1UL << 0)
160160
161#define PR_SET_IO_FLUSHER 57
162#define PR_GET_IO_FLUSHER 58
163
161int prctl (int, ...);164int prctl (int, ...);
162165
163#ifdef __cplusplus166#ifdef __cplusplus
lib/libc/musl/include/sys/random.h+1
...@@ -10,6 +10,7 @@ extern "C" {...@@ -10,6 +10,7 @@ extern "C" {
1010
11#define GRND_NONBLOCK 0x000111#define GRND_NONBLOCK 0x0001
12#define GRND_RANDOM 0x000212#define GRND_RANDOM 0x0002
13#define GRND_INSECURE 0x0004
1314
14ssize_t getrandom(void *, size_t, unsigned);15ssize_t getrandom(void *, size_t, unsigned);
1516
lib/libc/musl/include/termios.h+4
...@@ -8,6 +8,7 @@ extern "C" {...@@ -8,6 +8,7 @@ extern "C" {
8#include <features.h>8#include <features.h>
99
10#define __NEED_pid_t10#define __NEED_pid_t
11#define __NEED_struct_winsize
1112
12#include <bits/alltypes.h>13#include <bits/alltypes.h>
1314
...@@ -27,6 +28,9 @@ int cfsetispeed (struct termios *, speed_t);...@@ -27,6 +28,9 @@ int cfsetispeed (struct termios *, speed_t);
27int tcgetattr (int, struct termios *);28int tcgetattr (int, struct termios *);
28int tcsetattr (int, int, const struct termios *);29int tcsetattr (int, int, const struct termios *);
2930
31int tcgetwinsize (int, struct winsize *);
32int tcsetwinsize (int, const struct winsize *);
33
30int tcsendbreak (int, int);34int tcsendbreak (int, int);
31int tcdrain (int);35int tcdrain (int);
32int tcflush (int, int);36int tcflush (int, int);
lib/libc/musl/include/unistd.h+2
...@@ -82,6 +82,7 @@ unsigned sleep(unsigned);...@@ -82,6 +82,7 @@ unsigned sleep(unsigned);
82int pause(void);82int pause(void);
8383
84pid_t fork(void);84pid_t fork(void);
85pid_t _Fork(void);
85int execve(const char *, char *const [], char *const []);86int execve(const char *, char *const [], char *const []);
86int execv(const char *, char *const []);87int execv(const char *, char *const []);
87int execle(const char *, const char *, ...);88int execle(const char *, const char *, ...);
...@@ -190,6 +191,7 @@ int syncfs(int);...@@ -190,6 +191,7 @@ int syncfs(int);
190int euidaccess(const char *, int);191int euidaccess(const char *, int);
191int eaccess(const char *, int);192int eaccess(const char *, int);
192ssize_t copy_file_range(int, off_t *, int, off_t *, size_t, unsigned);193ssize_t copy_file_range(int, off_t *, int, off_t *, size_t, unsigned);
194pid_t gettid(void);
193#endif195#endif
194196
195#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)197#if defined(_LARGEFILE64_SOURCE) || defined(_GNU_SOURCE)
lib/libc/musl/libc.s+16-1
...@@ -105,6 +105,9 @@ in6addr_loopback:...@@ -105,6 +105,9 @@ in6addr_loopback:
105.globl _Exit105.globl _Exit
106.type _Exit, %function;106.type _Exit, %function;
107_Exit:107_Exit:
108.globl _Fork
109.type _Fork, %function;
110_Fork:
108.weak _IO_feof_unlocked111.weak _IO_feof_unlocked
109.type _IO_feof_unlocked, %function;112.type _IO_feof_unlocked, %function;
110_IO_feof_unlocked:113_IO_feof_unlocked:
...@@ -2116,6 +2119,9 @@ getsubopt:...@@ -2116,6 +2119,9 @@ getsubopt:
2116.globl gettext2119.globl gettext
2117.type gettext, %function;2120.type gettext, %function;
2118gettext:2121gettext:
2122.globl gettid
2123.type gettid, %function;
2124gettid:
2119.globl gettimeofday2125.globl gettimeofday
2120.type gettimeofday, %function;2126.type gettimeofday, %function;
2121gettimeofday:2127gettimeofday:
...@@ -2728,7 +2734,7 @@ lutimes:...@@ -2728,7 +2734,7 @@ lutimes:
2728.weak madvise2734.weak madvise
2729.type madvise, %function;2735.type madvise, %function;
2730madvise:2736madvise:
2731.globl malloc2737.weak malloc
2732.type malloc, %function;2738.type malloc, %function;
2733malloc:2739malloc:
2734.globl malloc_usable_size2740.globl malloc_usable_size
...@@ -3709,6 +3715,9 @@ readv:...@@ -3709,6 +3715,9 @@ readv:
3709.globl realloc3715.globl realloc
3710.type realloc, %function;3716.type realloc, %function;
3711realloc:3717realloc:
3718.globl reallocarray
3719.type reallocarray, %function;
3720reallocarray:
3712.globl realpath3721.globl realpath
3713.type realpath, %function;3722.type realpath, %function;
3714realpath:3723realpath:
...@@ -4543,6 +4552,9 @@ tcgetpgrp:...@@ -4543,6 +4552,9 @@ tcgetpgrp:
4543.globl tcgetsid4552.globl tcgetsid
4544.type tcgetsid, %function;4553.type tcgetsid, %function;
4545tcgetsid:4554tcgetsid:
4555.globl tcgetwinsize
4556.type tcgetwinsize, %function;
4557tcgetwinsize:
4546.globl tcsendbreak4558.globl tcsendbreak
4547.type tcsendbreak, %function;4559.type tcsendbreak, %function;
4548tcsendbreak:4560tcsendbreak:
...@@ -4552,6 +4564,9 @@ tcsetattr:...@@ -4552,6 +4564,9 @@ tcsetattr:
4552.globl tcsetpgrp4564.globl tcsetpgrp
4553.type tcsetpgrp, %function;4565.type tcsetpgrp, %function;
4554tcsetpgrp:4566tcsetpgrp:
4567.globl tcsetwinsize
4568.type tcsetwinsize, %function;
4569tcsetwinsize:
4555.globl tdelete4570.globl tdelete
4556.type tdelete, %function;4571.type tdelete, %function;
4557tdelete:4572tdelete:
lib/libc/musl/src/aio/aio.c+28-10
...@@ -9,6 +9,12 @@...@@ -9,6 +9,12 @@
9#include "syscall.h"9#include "syscall.h"
10#include "atomic.h"10#include "atomic.h"
11#include "pthread_impl.h"11#include "pthread_impl.h"
12#include "aio_impl.h"
13
14#define malloc __libc_malloc
15#define calloc __libc_calloc
16#define realloc __libc_realloc
17#define free __libc_free
1218
13/* The following is a threads-based implementation of AIO with minimal19/* The following is a threads-based implementation of AIO with minimal
14 * dependence on implementation details. Most synchronization is20 * dependence on implementation details. Most synchronization is
...@@ -70,6 +76,10 @@ static struct aio_queue *****map;...@@ -70,6 +76,10 @@ static struct aio_queue *****map;
70static volatile int aio_fd_cnt;76static volatile int aio_fd_cnt;
71volatile int __aio_fut;77volatile int __aio_fut;
7278
79static size_t io_thread_stack_size;
80
81#define MAX(a,b) ((a)>(b) ? (a) : (b))
82
73static struct aio_queue *__aio_get_queue(int fd, int need)83static struct aio_queue *__aio_get_queue(int fd, int need)
74{84{
75 if (fd < 0) {85 if (fd < 0) {
...@@ -84,6 +94,10 @@ static struct aio_queue *__aio_get_queue(int fd, int need)...@@ -84,6 +94,10 @@ static struct aio_queue *__aio_get_queue(int fd, int need)
84 pthread_rwlock_unlock(&maplock);94 pthread_rwlock_unlock(&maplock);
85 if (fcntl(fd, F_GETFD) < 0) return 0;95 if (fcntl(fd, F_GETFD) < 0) return 0;
86 pthread_rwlock_wrlock(&maplock);96 pthread_rwlock_wrlock(&maplock);
97 if (!io_thread_stack_size) {
98 unsigned long val = __getauxval(AT_MINSIGSTKSZ);
99 io_thread_stack_size = MAX(MINSIGSTKSZ+2048, val+512);
100 }
87 if (!map) map = calloc(sizeof *map, (-1U/2+1)>>24);101 if (!map) map = calloc(sizeof *map, (-1U/2+1)>>24);
88 if (!map) goto out;102 if (!map) goto out;
89 if (!map[a]) map[a] = calloc(sizeof **map, 256);103 if (!map[a]) map[a] = calloc(sizeof **map, 256);
...@@ -259,15 +273,6 @@ static void *io_thread_func(void *ctx)...@@ -259,15 +273,6 @@ static void *io_thread_func(void *ctx)
259 return 0;273 return 0;
260}274}
261275
262static size_t io_thread_stack_size = MINSIGSTKSZ+2048;
263static pthread_once_t init_stack_size_once;
264
265static void init_stack_size()
266{
267 unsigned long val = __getauxval(AT_MINSIGSTKSZ);
268 if (val > MINSIGSTKSZ) io_thread_stack_size = val + 512;
269}
270
271static int submit(struct aiocb *cb, int op)276static int submit(struct aiocb *cb, int op)
272{277{
273 int ret = 0;278 int ret = 0;
...@@ -293,7 +298,6 @@ static int submit(struct aiocb *cb, int op)...@@ -293,7 +298,6 @@ static int submit(struct aiocb *cb, int op)
293 else298 else
294 pthread_attr_init(&a);299 pthread_attr_init(&a);
295 } else {300 } else {
296 pthread_once(&init_stack_size_once, init_stack_size);
297 pthread_attr_init(&a);301 pthread_attr_init(&a);
298 pthread_attr_setstacksize(&a, io_thread_stack_size);302 pthread_attr_setstacksize(&a, io_thread_stack_size);
299 pthread_attr_setguardsize(&a, 0);303 pthread_attr_setguardsize(&a, 0);
...@@ -392,6 +396,20 @@ int __aio_close(int fd)...@@ -392,6 +396,20 @@ int __aio_close(int fd)
392 return fd;396 return fd;
393}397}
394398
399void __aio_atfork(int who)
400{
401 if (who<0) {
402 pthread_rwlock_rdlock(&maplock);
403 return;
404 }
405 if (who>0 && map) for (int a=0; a<(-1U/2+1)>>24; a++)
406 if (map[a]) for (int b=0; b<256; b++)
407 if (map[a][b]) for (int c=0; c<256; c++)
408 if (map[a][b][c]) for (int d=0; d<256; d++)
409 map[a][b][c][d] = 0;
410 pthread_rwlock_unlock(&maplock);
411}
412
395weak_alias(aio_cancel, aio_cancel64);413weak_alias(aio_cancel, aio_cancel64);
396weak_alias(aio_error, aio_error64);414weak_alias(aio_error, aio_error64);
397weak_alias(aio_fsync, aio_fsync64);415weak_alias(aio_fsync, aio_fsync64);
lib/libc/musl/src/aio/aio_suspend.c+1
...@@ -3,6 +3,7 @@...@@ -3,6 +3,7 @@
3#include <time.h>3#include <time.h>
4#include "atomic.h"4#include "atomic.h"
5#include "pthread_impl.h"5#include "pthread_impl.h"
6#include "aio_impl.h"
67
7int aio_suspend(const struct aiocb *const cbs[], int cnt, const struct timespec *ts)8int aio_suspend(const struct aiocb *const cbs[], int cnt, const struct timespec *ts)
8{9{
lib/libc/musl/src/crypt/crypt_blowfish.c+23-15
...@@ -15,7 +15,7 @@...@@ -15,7 +15,7 @@
15 * No copyright is claimed, and the software is hereby placed in the public15 * No copyright is claimed, and the software is hereby placed in the public
16 * domain. In case this attempt to disclaim copyright and place the software16 * domain. In case this attempt to disclaim copyright and place the software
17 * in the public domain is deemed null and void, then the software is17 * in the public domain is deemed null and void, then the software is
18 * Copyright (c) 1998-2012 Solar Designer and it is hereby released to the18 * Copyright (c) 1998-2014 Solar Designer and it is hereby released to the
19 * general public under the following terms:19 * general public under the following terms:
20 *20 *
21 * Redistribution and use in source and binary forms, with or without21 * Redistribution and use in source and binary forms, with or without
...@@ -31,12 +31,12 @@...@@ -31,12 +31,12 @@
31 * you place this code and any modifications you make under a license31 * you place this code and any modifications you make under a license
32 * of your choice.32 * of your choice.
33 *33 *
34 * This implementation is mostly compatible with OpenBSD's bcrypt.c (prefix34 * This implementation is fully compatible with OpenBSD's bcrypt.c for prefix
35 * "$2a$") by Niels Provos <provos at citi.umich.edu>, and uses some of his35 * "$2b$", originally by Niels Provos <provos at citi.umich.edu>, and it uses
36 * ideas. The password hashing algorithm was designed by David Mazieres36 * some of his ideas. The password hashing algorithm was designed by David
37 * <dm at lcs.mit.edu>. For more information on the level of compatibility,37 * Mazieres <dm at lcs.mit.edu>. For information on the level of
38 * please refer to the comments in BF_set_key() below and to the included38 * compatibility for bcrypt hash prefixes other than "$2b$", please refer to
39 * crypt(3) man page.39 * the comments in BF_set_key() below and to the included crypt(3) man page.
40 *40 *
41 * There's a paper on the algorithm that explains its design decisions:41 * There's a paper on the algorithm that explains its design decisions:
42 *42 *
...@@ -533,6 +533,7 @@ static void BF_set_key(const char *key, BF_key expanded, BF_key initial,...@@ -533,6 +533,7 @@ static void BF_set_key(const char *key, BF_key expanded, BF_key initial,
533 * Valid combinations of settings are:533 * Valid combinations of settings are:
534 *534 *
535 * Prefix "$2a$": bug = 0, safety = 0x10000535 * Prefix "$2a$": bug = 0, safety = 0x10000
536 * Prefix "$2b$": bug = 0, safety = 0
536 * Prefix "$2x$": bug = 1, safety = 0537 * Prefix "$2x$": bug = 1, safety = 0
537 * Prefix "$2y$": bug = 0, safety = 0538 * Prefix "$2y$": bug = 0, safety = 0
538 */539 */
...@@ -596,12 +597,14 @@ static void BF_set_key(const char *key, BF_key expanded, BF_key initial,...@@ -596,12 +597,14 @@ static void BF_set_key(const char *key, BF_key expanded, BF_key initial,
596 initial[0] ^= sign;597 initial[0] ^= sign;
597}598}
598599
600static const unsigned char flags_by_subtype[26] = {
601 2, 4, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
602 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 0
603};
604
599static char *BF_crypt(const char *key, const char *setting,605static char *BF_crypt(const char *key, const char *setting,
600 char *output, BF_word min)606 char *output, BF_word min)
601{607{
602 static const unsigned char flags_by_subtype[26] =
603 {2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
604 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 4, 0};
605 struct {608 struct {
606 BF_ctx ctx;609 BF_ctx ctx;
607 BF_key expanded_key;610 BF_key expanded_key;
...@@ -746,9 +749,11 @@ char *__crypt_blowfish(const char *key, const char *setting, char *output)...@@ -746,9 +749,11 @@ char *__crypt_blowfish(const char *key, const char *setting, char *output)
746{749{
747 const char *test_key = "8b \xd0\xc1\xd2\xcf\xcc\xd8";750 const char *test_key = "8b \xd0\xc1\xd2\xcf\xcc\xd8";
748 const char *test_setting = "$2a$00$abcdefghijklmnopqrstuu";751 const char *test_setting = "$2a$00$abcdefghijklmnopqrstuu";
749 static const char test_hash[2][34] =752 static const char test_hashes[2][34] = {
750 {"VUrPmXD6q/nVSSp7pNDhCR9071IfIRe\0\x55", /* $2x$ */753 "i1D709vfamulimlGcq0qq3UvuUasvEa\0\x55", /* 'a', 'b', 'y' */
751 "i1D709vfamulimlGcq0qq3UvuUasvEa\0\x55"}; /* $2a$, $2y$ */754 "VUrPmXD6q/nVSSp7pNDhCR9071IfIRe\0\x55", /* 'x' */
755 };
756 const char *test_hash = test_hashes[0];
752 char *retval;757 char *retval;
753 const char *p;758 const char *p;
754 int ok;759 int ok;
...@@ -768,8 +773,11 @@ char *__crypt_blowfish(const char *key, const char *setting, char *output)...@@ -768,8 +773,11 @@ char *__crypt_blowfish(const char *key, const char *setting, char *output)
768 * detected by the self-test.773 * detected by the self-test.
769 */774 */
770 memcpy(buf.s, test_setting, sizeof(buf.s));775 memcpy(buf.s, test_setting, sizeof(buf.s));
771 if (retval)776 if (retval) {
777 unsigned int flags = flags_by_subtype[setting[2] - 'a'];
778 test_hash = test_hashes[flags & 1];
772 buf.s[2] = setting[2];779 buf.s[2] = setting[2];
780 }
773 memset(buf.o, 0x55, sizeof(buf.o));781 memset(buf.o, 0x55, sizeof(buf.o));
774 buf.o[sizeof(buf.o) - 1] = 0;782 buf.o[sizeof(buf.o) - 1] = 0;
775 p = BF_crypt(test_key, buf.s, buf.o, 1);783 p = BF_crypt(test_key, buf.s, buf.o, 1);
...@@ -777,7 +785,7 @@ char *__crypt_blowfish(const char *key, const char *setting, char *output)...@@ -777,7 +785,7 @@ char *__crypt_blowfish(const char *key, const char *setting, char *output)
777 ok = (p == buf.o &&785 ok = (p == buf.o &&
778 !memcmp(p, buf.s, 7 + 22) &&786 !memcmp(p, buf.s, 7 + 22) &&
779 !memcmp(p + (7 + 22),787 !memcmp(p + (7 + 22),
780 test_hash[buf.s[2] & 1],788 test_hash,
781 31 + 1 + 1 + 1));789 31 + 1 + 1 + 1));
782790
783 {791 {
lib/libc/musl/src/env/__init_tls.c+1-1
...@@ -67,7 +67,7 @@ void *__copy_tls(unsigned char *mem)...@@ -67,7 +67,7 @@ void *__copy_tls(unsigned char *mem)
67 }67 }
68#endif68#endif
69 dtv[0] = libc.tls_cnt;69 dtv[0] = libc.tls_cnt;
70 td->dtv = td->dtv_copy = dtv;70 td->dtv = dtv;
71 return td;71 return td;
72}72}
7373
lib/libc/musl/src/env/__stack_chk_fail.c+1-1
...@@ -9,7 +9,7 @@ void __init_ssp(void *entropy)...@@ -9,7 +9,7 @@ void __init_ssp(void *entropy)
9 if (entropy) memcpy(&__stack_chk_guard, entropy, sizeof(uintptr_t));9 if (entropy) memcpy(&__stack_chk_guard, entropy, sizeof(uintptr_t));
10 else __stack_chk_guard = (uintptr_t)&__stack_chk_guard * 1103515245;10 else __stack_chk_guard = (uintptr_t)&__stack_chk_guard * 1103515245;
1111
12 __pthread_self()->CANARY = __stack_chk_guard;12 __pthread_self()->canary = __stack_chk_guard;
13}13}
1414
15void __stack_chk_fail(void)15void __stack_chk_fail(void)
lib/libc/musl/src/exit/abort.c-2
...@@ -6,8 +6,6 @@...@@ -6,8 +6,6 @@
6#include "lock.h"6#include "lock.h"
7#include "ksigaction.h"7#include "ksigaction.h"
88
9hidden volatile int __abort_lock[1];
10
11_Noreturn void abort(void)9_Noreturn void abort(void)
12{10{
13 raise(SIGABRT);11 raise(SIGABRT);
lib/libc/musl/src/exit/abort_lock.c created+3
...@@ -0,0 +1,3 @@
1#include "pthread_impl.h"
2
3volatile int __abort_lock[1];
lib/libc/musl/src/exit/assert.c-1
...@@ -4,6 +4,5 @@...@@ -4,6 +4,5 @@
4_Noreturn void __assert_fail(const char *expr, const char *file, int line, const char *func)4_Noreturn void __assert_fail(const char *expr, const char *file, int line, const char *func)
5{5{
6 fprintf(stderr, "Assertion failed: %s (%s: %s: %d)\n", expr, file, func, line);6 fprintf(stderr, "Assertion failed: %s (%s: %s: %d)\n", expr, file, func, line);
7 fflush(NULL);
8 abort();7 abort();
9}8}
lib/libc/musl/src/exit/at_quick_exit.c+2
...@@ -1,12 +1,14 @@...@@ -1,12 +1,14 @@
1#include <stdlib.h>1#include <stdlib.h>
2#include "libc.h"2#include "libc.h"
3#include "lock.h"3#include "lock.h"
4#include "fork_impl.h"
45
5#define COUNT 326#define COUNT 32
67
7static void (*funcs[COUNT])(void);8static void (*funcs[COUNT])(void);
8static int count;9static int count;
9static volatile int lock[1];10static volatile int lock[1];
11volatile int *const __at_quick_exit_lockptr = lock;
1012
11void __funcs_on_quick_exit()13void __funcs_on_quick_exit()
12{14{
lib/libc/musl/src/exit/atexit.c+7
...@@ -2,6 +2,12 @@...@@ -2,6 +2,12 @@
2#include <stdint.h>2#include <stdint.h>
3#include "libc.h"3#include "libc.h"
4#include "lock.h"4#include "lock.h"
5#include "fork_impl.h"
6
7#define malloc __libc_malloc
8#define calloc __libc_calloc
9#define realloc undef
10#define free undef
511
6/* Ensure that at least 32 atexit handlers can be registered without malloc */12/* Ensure that at least 32 atexit handlers can be registered without malloc */
7#define COUNT 3213#define COUNT 32
...@@ -15,6 +21,7 @@ static struct fl...@@ -15,6 +21,7 @@ static struct fl
1521
16static int slot;22static int slot;
17static volatile int lock[1];23static volatile int lock[1];
24volatile int *const __atexit_lockptr = lock;
1825
19void __funcs_on_exit()26void __funcs_on_exit()
20{27{
lib/libc/musl/src/include/stdlib.h+6
...@@ -9,4 +9,10 @@ hidden int __mkostemps(char *, int, int);...@@ -9,4 +9,10 @@ hidden int __mkostemps(char *, int, int);
9hidden int __ptsname_r(int, char *, size_t);9hidden int __ptsname_r(int, char *, size_t);
10hidden char *__randname(char *);10hidden char *__randname(char *);
1111
12hidden void *__libc_malloc(size_t);
13hidden void *__libc_malloc_impl(size_t);
14hidden void *__libc_calloc(size_t, size_t);
15hidden void *__libc_realloc(void *, size_t);
16hidden void __libc_free(void *);
17
12#endif18#endif
lib/libc/musl/src/include/unistd.h-1
...@@ -8,7 +8,6 @@ extern char **__environ;...@@ -8,7 +8,6 @@ extern char **__environ;
8hidden int __dup3(int, int, int);8hidden int __dup3(int, int, int);
9hidden int __mkostemps(char *, int, int);9hidden int __mkostemps(char *, int, int);
10hidden int __execvpe(const char *, char *const *, char *const *);10hidden int __execvpe(const char *, char *const *, char *const *);
11hidden int __aio_close(int);
12hidden off_t __lseek(int, off_t, int);11hidden off_t __lseek(int, off_t, int);
1312
14#endif13#endif
lib/libc/musl/src/internal/aio_impl.h created+9
...@@ -0,0 +1,9 @@
1#ifndef AIO_IMPL_H
2#define AIO_IMPL_H
3
4extern hidden volatile int __aio_fut;
5
6extern hidden int __aio_close(int);
7extern hidden void __aio_atfork(int);
8
9#endif
lib/libc/musl/src/internal/fork_impl.h created+19
...@@ -0,0 +1,19 @@
1#include <features.h>
2
3extern hidden volatile int *const __at_quick_exit_lockptr;
4extern hidden volatile int *const __atexit_lockptr;
5extern hidden volatile int *const __dlerror_lockptr;
6extern hidden volatile int *const __gettext_lockptr;
7extern hidden volatile int *const __locale_lockptr;
8extern hidden volatile int *const __random_lockptr;
9extern hidden volatile int *const __sem_open_lockptr;
10extern hidden volatile int *const __stdio_ofl_lockptr;
11extern hidden volatile int *const __syslog_lockptr;
12extern hidden volatile int *const __timezone_lockptr;
13
14extern hidden volatile int *const __bump_lockptr;
15
16extern hidden volatile int *const __vmlock_lockptr;
17
18hidden void __malloc_atfork(int);
19hidden void __ldso_atfork(int);
lib/libc/musl/src/internal/libm.h+3
...@@ -267,5 +267,8 @@ hidden double __math_uflow(uint32_t);...@@ -267,5 +267,8 @@ hidden double __math_uflow(uint32_t);
267hidden double __math_oflow(uint32_t);267hidden double __math_oflow(uint32_t);
268hidden double __math_divzero(uint32_t);268hidden double __math_divzero(uint32_t);
269hidden double __math_invalid(double);269hidden double __math_invalid(double);
270#if LDBL_MANT_DIG != DBL_MANT_DIG
271hidden long double __math_invalidl(long double);
272#endif
270273
271#endif274#endif
lib/libc/musl/src/internal/locale_impl.h+2
...@@ -15,6 +15,8 @@ struct __locale_map {...@@ -15,6 +15,8 @@ struct __locale_map {
15 const struct __locale_map *next;15 const struct __locale_map *next;
16};16};
1717
18extern hidden volatile int __locale_lock[1];
19
18extern hidden const struct __locale_map __c_dot_utf8;20extern hidden const struct __locale_map __c_dot_utf8;
19extern hidden const struct __locale_struct __c_locale;21extern hidden const struct __locale_struct __c_locale;
20extern hidden const struct __locale_struct __c_dot_utf8_locale;22extern hidden const struct __locale_struct __c_dot_utf8_locale;
lib/libc/musl/src/internal/pthread_impl.h+29-14
...@@ -11,16 +11,25 @@...@@ -11,16 +11,25 @@
11#include "atomic.h"11#include "atomic.h"
12#include "futex.h"12#include "futex.h"
1313
14#include "pthread_arch.h"
15
14#define pthread __pthread16#define pthread __pthread
1517
16struct pthread {18struct pthread {
17 /* Part 1 -- these fields may be external or19 /* Part 1 -- these fields may be external or
18 * internal (accessed via asm) ABI. Do not change. */20 * internal (accessed via asm) ABI. Do not change. */
19 struct pthread *self;21 struct pthread *self;
22#ifndef TLS_ABOVE_TP
20 uintptr_t *dtv;23 uintptr_t *dtv;
24#endif
21 struct pthread *prev, *next; /* non-ABI */25 struct pthread *prev, *next; /* non-ABI */
22 uintptr_t sysinfo;26 uintptr_t sysinfo;
23 uintptr_t canary, canary2;27#ifndef TLS_ABOVE_TP
28#ifdef CANARY_PAD
29 uintptr_t canary_pad;
30#endif
31 uintptr_t canary;
32#endif
2433
25 /* Part 2 -- implementation details, non-ABI. */34 /* Part 2 -- implementation details, non-ABI. */
26 int tid;35 int tid;
...@@ -43,6 +52,7 @@ struct pthread {...@@ -43,6 +52,7 @@ struct pthread {
43 long off;52 long off;
44 volatile void *volatile pending;53 volatile void *volatile pending;
45 } robust_list;54 } robust_list;
55 int h_errno_val;
46 volatile int timer_id;56 volatile int timer_id;
47 locale_t locale;57 locale_t locale;
48 volatile int killlock[1];58 volatile int killlock[1];
...@@ -51,21 +61,19 @@ struct pthread {...@@ -51,21 +61,19 @@ struct pthread {
5161
52 /* Part 3 -- the positions of these fields relative to62 /* Part 3 -- the positions of these fields relative to
53 * the end of the structure is external and internal ABI. */63 * the end of the structure is external and internal ABI. */
54 uintptr_t canary_at_end;64#ifdef TLS_ABOVE_TP
55 uintptr_t *dtv_copy;65 uintptr_t canary;
66 uintptr_t *dtv;
67#endif
56};68};
5769
58enum {70enum {
59 DT_EXITING = 0,71 DT_EXITED = 0,
72 DT_EXITING,
60 DT_JOINABLE,73 DT_JOINABLE,
61 DT_DETACHED,74 DT_DETACHED,
62};75};
6376
64struct __timer {
65 int timerid;
66 pthread_t thread;
67};
68
69#define __SU (sizeof(size_t)/sizeof(int))77#define __SU (sizeof(size_t)/sizeof(int))
7078
71#define _a_stacksize __u.__s[0]79#define _a_stacksize __u.__s[0]
...@@ -98,16 +106,22 @@ struct __timer {...@@ -98,16 +106,22 @@ struct __timer {
98#define _b_waiters2 __u.__vi[4]106#define _b_waiters2 __u.__vi[4]
99#define _b_inst __u.__p[3]107#define _b_inst __u.__p[3]
100108
101#include "pthread_arch.h"109#ifndef TP_OFFSET
102110#define TP_OFFSET 0
103#ifndef CANARY
104#define CANARY canary
105#endif111#endif
106112
107#ifndef DTP_OFFSET113#ifndef DTP_OFFSET
108#define DTP_OFFSET 0114#define DTP_OFFSET 0
109#endif115#endif
110116
117#ifdef TLS_ABOVE_TP
118#define TP_ADJ(p) ((char *)(p) + sizeof(struct pthread) + TP_OFFSET)
119#define __pthread_self() ((pthread_t)(__get_tp() - sizeof(struct __pthread) - TP_OFFSET))
120#else
121#define TP_ADJ(p) (p)
122#define __pthread_self() ((pthread_t)__get_tp())
123#endif
124
111#ifndef tls_mod_off_t125#ifndef tls_mod_off_t
112#define tls_mod_off_t size_t126#define tls_mod_off_t size_t
113#endif127#endif
...@@ -141,7 +155,6 @@ hidden int __pthread_key_delete_impl(pthread_key_t);...@@ -141,7 +155,6 @@ hidden int __pthread_key_delete_impl(pthread_key_t);
141155
142extern hidden volatile size_t __pthread_tsd_size;156extern hidden volatile size_t __pthread_tsd_size;
143extern hidden void *__pthread_tsd_main[];157extern hidden void *__pthread_tsd_main[];
144extern hidden volatile int __aio_fut;
145extern hidden volatile int __eintr_valid_flag;158extern hidden volatile int __eintr_valid_flag;
146159
147hidden int __clone(int (*)(void *), void *, int, void *, ...);160hidden int __clone(int (*)(void *), void *, int, void *, ...);
...@@ -176,6 +189,8 @@ hidden void __tl_sync(pthread_t);...@@ -176,6 +189,8 @@ hidden void __tl_sync(pthread_t);
176189
177extern hidden volatile int __thread_list_lock;190extern hidden volatile int __thread_list_lock;
178191
192extern hidden volatile int __abort_lock[1];
193
179extern hidden unsigned __default_stacksize;194extern hidden unsigned __default_stacksize;
180extern hidden unsigned __default_guardsize;195extern hidden unsigned __default_guardsize;
181196
lib/libc/musl/src/internal/syscall.h+23-9
...@@ -2,6 +2,7 @@...@@ -2,6 +2,7 @@
2#define _INTERNAL_SYSCALL_H2#define _INTERNAL_SYSCALL_H
33
4#include <features.h>4#include <features.h>
5#include <errno.h>
5#include <sys/syscall.h>6#include <sys/syscall.h>
6#include "syscall_arch.h"7#include "syscall_arch.h"
78
...@@ -57,15 +58,22 @@ hidden long __syscall_ret(unsigned long),...@@ -57,15 +58,22 @@ hidden long __syscall_ret(unsigned long),
57#define __syscall_cp(...) __SYSCALL_DISP(__syscall_cp,__VA_ARGS__)58#define __syscall_cp(...) __SYSCALL_DISP(__syscall_cp,__VA_ARGS__)
58#define syscall_cp(...) __syscall_ret(__syscall_cp(__VA_ARGS__))59#define syscall_cp(...) __syscall_ret(__syscall_cp(__VA_ARGS__))
5960
60#ifndef SYSCALL_USE_SOCKETCALL61static inline long __alt_socketcall(int sys, int sock, int cp, long a, long b, long c, long d, long e, long f)
61#define __socketcall(nm,a,b,c,d,e,f) __syscall(SYS_##nm, a, b, c, d, e, f)62{
62#define __socketcall_cp(nm,a,b,c,d,e,f) __syscall_cp(SYS_##nm, a, b, c, d, e, f)63 long r;
63#else64 if (cp) r = __syscall_cp(sys, a, b, c, d, e, f);
64#define __socketcall(nm,a,b,c,d,e,f) __syscall(SYS_socketcall, __SC_##nm, \65 else r = __syscall(sys, a, b, c, d, e, f);
65 ((long [6]){ (long)a, (long)b, (long)c, (long)d, (long)e, (long)f }))66 if (r != -ENOSYS) return r;
66#define __socketcall_cp(nm,a,b,c,d,e,f) __syscall_cp(SYS_socketcall, __SC_##nm, \67#ifdef SYS_socketcall
67 ((long [6]){ (long)a, (long)b, (long)c, (long)d, (long)e, (long)f }))68 if (cp) r = __syscall_cp(SYS_socketcall, sock, ((long[6]){a, b, c, d, e, f}));
68#endif69 else r = __syscall(SYS_socketcall, sock, ((long[6]){a, b, c, d, e, f}));
70#endif
71 return r;
72}
73#define __socketcall(nm, a, b, c, d, e, f) __alt_socketcall(SYS_##nm, __SC_##nm, 0, \
74 (long)(a), (long)(b), (long)(c), (long)(d), (long)(e), (long)(f))
75#define __socketcall_cp(nm, a, b, c, d, e, f) __alt_socketcall(SYS_##nm, __SC_##nm, 1, \
76 (long)(a), (long)(b), (long)(c), (long)(d), (long)(e), (long)(f))
6977
70/* fixup legacy 16-bit junk */78/* fixup legacy 16-bit junk */
7179
...@@ -338,6 +346,12 @@ hidden long __syscall_ret(unsigned long),...@@ -338,6 +346,12 @@ hidden long __syscall_ret(unsigned long),
338#define __SC_recvmmsg 19346#define __SC_recvmmsg 19
339#define __SC_sendmmsg 20347#define __SC_sendmmsg 20
340348
349/* This is valid only because all socket syscalls are made via
350 * socketcall, which always fills unused argument slots with zeros. */
351#ifndef SYS_accept
352#define SYS_accept SYS_accept4
353#endif
354
341#ifndef SO_RCVTIMEO_OLD355#ifndef SO_RCVTIMEO_OLD
342#define SO_RCVTIMEO_OLD 20356#define SO_RCVTIMEO_OLD 20
343#endif357#endif
lib/libc/musl/src/internal/version.h+1-1
...@@ -1 +1 @@...@@ -1 +1 @@
1#define VERSION "1.2.1"1#define VERSION "1.2.2"
lib/libc/musl/src/ldso/dlerror.c+15-5
...@@ -4,6 +4,12 @@...@@ -4,6 +4,12 @@
4#include "pthread_impl.h"4#include "pthread_impl.h"
5#include "dynlink.h"5#include "dynlink.h"
6#include "lock.h"6#include "lock.h"
7#include "fork_impl.h"
8
9#define malloc __libc_malloc
10#define calloc __libc_calloc
11#define realloc __libc_realloc
12#define free __libc_free
713
8char *dlerror()14char *dlerror()
9{15{
...@@ -19,6 +25,7 @@ char *dlerror()...@@ -19,6 +25,7 @@ char *dlerror()
1925
20static volatile int freebuf_queue_lock[1];26static volatile int freebuf_queue_lock[1];
21static void **freebuf_queue;27static void **freebuf_queue;
28volatile int *const __dlerror_lockptr = freebuf_queue_lock;
2229
23void __dl_thread_cleanup(void)30void __dl_thread_cleanup(void)
24{31{
...@@ -35,13 +42,16 @@ void __dl_thread_cleanup(void)...@@ -35,13 +42,16 @@ void __dl_thread_cleanup(void)
35hidden void __dl_vseterr(const char *fmt, va_list ap)42hidden void __dl_vseterr(const char *fmt, va_list ap)
36{43{
37 LOCK(freebuf_queue_lock);44 LOCK(freebuf_queue_lock);
38 while (freebuf_queue) {45 void **q = freebuf_queue;
39 void **p = freebuf_queue;46 freebuf_queue = 0;
40 freebuf_queue = *p;
41 free(p);
42 }
43 UNLOCK(freebuf_queue_lock);47 UNLOCK(freebuf_queue_lock);
4448
49 while (q) {
50 void **p = *q;
51 free(q);
52 q = p;
53 }
54
45 va_list ap2;55 va_list ap2;
46 va_copy(ap2, ap);56 va_copy(ap2, ap);
47 pthread_t self = __pthread_self();57 pthread_t self = __pthread_self();
lib/libc/musl/src/legacy/lutimes.c+7-5
...@@ -6,9 +6,11 @@...@@ -6,9 +6,11 @@
6int lutimes(const char *filename, const struct timeval tv[2])6int lutimes(const char *filename, const struct timeval tv[2])
7{7{
8 struct timespec times[2];8 struct timespec times[2];
9 times[0].tv_sec = tv[0].tv_sec;9 if (tv) {
10 times[0].tv_nsec = tv[0].tv_usec * 1000;10 times[0].tv_sec = tv[0].tv_sec;
11 times[1].tv_sec = tv[1].tv_sec;11 times[0].tv_nsec = tv[0].tv_usec * 1000;
12 times[1].tv_nsec = tv[1].tv_usec * 1000;12 times[1].tv_sec = tv[1].tv_sec;
13 return utimensat(AT_FDCWD, filename, times, AT_SYMLINK_NOFOLLOW);13 times[1].tv_nsec = tv[1].tv_usec * 1000;
14 }
15 return utimensat(AT_FDCWD, filename, tv ? times : 0, AT_SYMLINK_NOFOLLOW);
14}16}
lib/libc/musl/src/linux/gettid.c created+8
...@@ -0,0 +1,8 @@
1#define _GNU_SOURCE
2#include <unistd.h>
3#include "pthread_impl.h"
4
5pid_t gettid(void)
6{
7 return __pthread_self()->tid;
8}
lib/libc/musl/src/linux/membarrier.c-5
...@@ -9,13 +9,8 @@ static void dummy_0(void)...@@ -9,13 +9,8 @@ static void dummy_0(void)
9{9{
10}10}
1111
12static void dummy_1(pthread_t t)
13{
14}
15
16weak_alias(dummy_0, __tl_lock);12weak_alias(dummy_0, __tl_lock);
17weak_alias(dummy_0, __tl_unlock);13weak_alias(dummy_0, __tl_unlock);
18weak_alias(dummy_1, __tl_sync);
1914
20static sem_t barrier_sem;15static sem_t barrier_sem;
2116
lib/libc/musl/src/linux/setgroups.c+29-1
...@@ -1,8 +1,36 @@...@@ -1,8 +1,36 @@
1#define _GNU_SOURCE1#define _GNU_SOURCE
2#include <unistd.h>2#include <unistd.h>
3#include <signal.h>
3#include "syscall.h"4#include "syscall.h"
5#include "libc.h"
6
7struct ctx {
8 size_t count;
9 const gid_t *list;
10 int ret;
11};
12
13static void do_setgroups(void *p)
14{
15 struct ctx *c = p;
16 if (c->ret<0) return;
17 int ret = __syscall(SYS_setgroups, c->count, c->list);
18 if (ret && !c->ret) {
19 /* If one thread fails to set groups after another has already
20 * succeeded, forcibly killing the process is the only safe
21 * thing to do. State is inconsistent and dangerous. Use
22 * SIGKILL because it is uncatchable. */
23 __block_all_sigs(0);
24 __syscall(SYS_kill, __syscall(SYS_getpid), SIGKILL);
25 }
26 c->ret = ret;
27}
428
5int setgroups(size_t count, const gid_t list[])29int setgroups(size_t count, const gid_t list[])
6{30{
7 return syscall(SYS_setgroups, count, list);31 /* ret is initially nonzero so that failure of the first thread does not
32 * trigger the safety kill above. */
33 struct ctx c = { .count = count, .list = list, .ret = 1 };
34 __synccall(do_setgroups, &c);
35 return __syscall_ret(c.ret);
8}36}
lib/libc/musl/src/locale/dcngettext.c+9-1
...@@ -10,6 +10,12 @@...@@ -10,6 +10,12 @@
10#include "atomic.h"10#include "atomic.h"
11#include "pleval.h"11#include "pleval.h"
12#include "lock.h"12#include "lock.h"
13#include "fork_impl.h"
14
15#define malloc __libc_malloc
16#define calloc __libc_calloc
17#define realloc undef
18#define free undef
1319
14struct binding {20struct binding {
15 struct binding *next;21 struct binding *next;
...@@ -34,9 +40,11 @@ static char *gettextdir(const char *domainname, size_t *dirlen)...@@ -34,9 +40,11 @@ static char *gettextdir(const char *domainname, size_t *dirlen)
34 return 0;40 return 0;
35}41}
3642
43static volatile int lock[1];
44volatile int *const __gettext_lockptr = lock;
45
37char *bindtextdomain(const char *domainname, const char *dirname)46char *bindtextdomain(const char *domainname, const char *dirname)
38{47{
39 static volatile int lock[1];
40 struct binding *p, *q;48 struct binding *p, *q;
4149
42 if (!domainname) return 0;50 if (!domainname) return 0;
lib/libc/musl/src/locale/freelocale.c+5
...@@ -1,6 +1,11 @@...@@ -1,6 +1,11 @@
1#include <stdlib.h>1#include <stdlib.h>
2#include "locale_impl.h"2#include "locale_impl.h"
33
4#define malloc undef
5#define calloc undef
6#define realloc undef
7#define free __libc_free
8
4void freelocale(locale_t l)9void freelocale(locale_t l)
5{10{
6 if (__loc_is_allocated(l)) free(l);11 if (__loc_is_allocated(l)) free(l);
lib/libc/musl/src/locale/locale_map.c+11-11
...@@ -1,9 +1,16 @@...@@ -1,9 +1,16 @@
1#include <locale.h>1#include <locale.h>
2#include <string.h>2#include <string.h>
3#include <sys/mman.h>3#include <sys/mman.h>
4#include <stdlib.h>
4#include "locale_impl.h"5#include "locale_impl.h"
5#include "libc.h"6#include "libc.h"
6#include "lock.h"7#include "lock.h"
8#include "fork_impl.h"
9
10#define malloc __libc_malloc
11#define calloc undef
12#define realloc undef
13#define free undef
714
8const char *__lctrans_impl(const char *msg, const struct __locale_map *lm)15const char *__lctrans_impl(const char *msg, const struct __locale_map *lm)
9{16{
...@@ -21,9 +28,11 @@ static const char envvars[][12] = {...@@ -21,9 +28,11 @@ static const char envvars[][12] = {
21 "LC_MESSAGES",28 "LC_MESSAGES",
22};29};
2330
31volatile int __locale_lock[1];
32volatile int *const __locale_lockptr = __locale_lock;
33
24const struct __locale_map *__get_locale(int cat, const char *val)34const struct __locale_map *__get_locale(int cat, const char *val)
25{35{
26 static volatile int lock[1];
27 static void *volatile loc_head;36 static void *volatile loc_head;
28 const struct __locale_map *p;37 const struct __locale_map *p;
29 struct __locale_map *new = 0;38 struct __locale_map *new = 0;
...@@ -54,20 +63,12 @@ const struct __locale_map *__get_locale(int cat, const char *val)...@@ -54,20 +63,12 @@ const struct __locale_map *__get_locale(int cat, const char *val)
54 for (p=loc_head; p; p=p->next)63 for (p=loc_head; p; p=p->next)
55 if (!strcmp(val, p->name)) return p;64 if (!strcmp(val, p->name)) return p;
5665
57 LOCK(lock);
58
59 for (p=loc_head; p; p=p->next)
60 if (!strcmp(val, p->name)) {
61 UNLOCK(lock);
62 return p;
63 }
64
65 if (!libc.secure) path = getenv("MUSL_LOCPATH");66 if (!libc.secure) path = getenv("MUSL_LOCPATH");
66 /* FIXME: add a default path? */67 /* FIXME: add a default path? */
6768
68 if (path) for (; *path; path=z+!!*z) {69 if (path) for (; *path; path=z+!!*z) {
69 z = __strchrnul(path, ':');70 z = __strchrnul(path, ':');
70 l = z - path - !!*z;71 l = z - path;
71 if (l >= sizeof buf - n - 2) continue;72 if (l >= sizeof buf - n - 2) continue;
72 memcpy(buf, path, l);73 memcpy(buf, path, l);
73 buf[l] = '/';74 buf[l] = '/';
...@@ -108,6 +109,5 @@ const struct __locale_map *__get_locale(int cat, const char *val)...@@ -108,6 +109,5 @@ const struct __locale_map *__get_locale(int cat, const char *val)
108 * requested name was "C" or "POSIX". */109 * requested name was "C" or "POSIX". */
109 if (!new && cat == LC_CTYPE) new = (void *)&__c_dot_utf8;110 if (!new && cat == LC_CTYPE) new = (void *)&__c_dot_utf8;
110111
111 UNLOCK(lock);
112 return new;112 return new;
113}113}
lib/libc/musl/src/locale/newlocale.c+22-10
...@@ -2,16 +2,15 @@...@@ -2,16 +2,15 @@
2#include <string.h>2#include <string.h>
3#include <pthread.h>3#include <pthread.h>
4#include "locale_impl.h"4#include "locale_impl.h"
5#include "lock.h"
56
6static pthread_once_t default_locale_once;7#define malloc __libc_malloc
7static struct __locale_struct default_locale, default_ctype_locale;8#define calloc undef
9#define realloc undef
10#define free undef
811
9static void default_locale_init(void)12static int default_locale_init_done;
10{13static struct __locale_struct default_locale, default_ctype_locale;
11 for (int i=0; i<LC_ALL; i++)
12 default_locale.cat[i] = __get_locale(i, "");
13 default_ctype_locale.cat[LC_CTYPE] = default_locale.cat[LC_CTYPE];
14}
1514
16int __loc_is_allocated(locale_t loc)15int __loc_is_allocated(locale_t loc)
17{16{
...@@ -19,7 +18,7 @@ int __loc_is_allocated(locale_t loc)...@@ -19,7 +18,7 @@ int __loc_is_allocated(locale_t loc)
19 && loc != &default_locale && loc != &default_ctype_locale;18 && loc != &default_locale && loc != &default_ctype_locale;
20}19}
2120
22locale_t __newlocale(int mask, const char *name, locale_t loc)21static locale_t do_newlocale(int mask, const char *name, locale_t loc)
23{22{
24 struct __locale_struct tmp;23 struct __locale_struct tmp;
2524
...@@ -44,7 +43,12 @@ locale_t __newlocale(int mask, const char *name, locale_t loc)...@@ -44,7 +43,12 @@ locale_t __newlocale(int mask, const char *name, locale_t loc)
4443
45 /* And provide builtins for the initial default locale, and a44 /* And provide builtins for the initial default locale, and a
46 * variant of the C locale honoring the default locale's encoding. */45 * variant of the C locale honoring the default locale's encoding. */
47 pthread_once(&default_locale_once, default_locale_init);46 if (!default_locale_init_done) {
47 for (int i=0; i<LC_ALL; i++)
48 default_locale.cat[i] = __get_locale(i, "");
49 default_ctype_locale.cat[LC_CTYPE] = default_locale.cat[LC_CTYPE];
50 default_locale_init_done = 1;
51 }
48 if (!memcmp(&tmp, &default_locale, sizeof tmp)) return &default_locale;52 if (!memcmp(&tmp, &default_locale, sizeof tmp)) return &default_locale;
49 if (!memcmp(&tmp, &default_ctype_locale, sizeof tmp))53 if (!memcmp(&tmp, &default_ctype_locale, sizeof tmp))
50 return &default_ctype_locale;54 return &default_ctype_locale;
...@@ -55,4 +59,12 @@ locale_t __newlocale(int mask, const char *name, locale_t loc)...@@ -55,4 +59,12 @@ locale_t __newlocale(int mask, const char *name, locale_t loc)
55 return loc;59 return loc;
56}60}
5761
62locale_t __newlocale(int mask, const char *name, locale_t loc)
63{
64 LOCK(__locale_lock);
65 loc = do_newlocale(mask, name, loc);
66 UNLOCK(__locale_lock);
67 return loc;
68}
69
58weak_alias(__newlocale, newlocale);70weak_alias(__newlocale, newlocale);
lib/libc/musl/src/locale/setlocale.c+5-6
...@@ -9,12 +9,11 @@ static char buf[LC_ALL*(LOCALE_NAME_MAX+1)];...@@ -9,12 +9,11 @@ static char buf[LC_ALL*(LOCALE_NAME_MAX+1)];
99
10char *setlocale(int cat, const char *name)10char *setlocale(int cat, const char *name)
11{11{
12 static volatile int lock[1];
13 const struct __locale_map *lm;12 const struct __locale_map *lm;
1413
15 if ((unsigned)cat > LC_ALL) return 0;14 if ((unsigned)cat > LC_ALL) return 0;
1615
17 LOCK(lock);16 LOCK(__locale_lock);
1817
19 /* For LC_ALL, setlocale is required to return a string which18 /* For LC_ALL, setlocale is required to return a string which
20 * encodes the current setting for all categories. The format of19 * encodes the current setting for all categories. The format of
...@@ -36,7 +35,7 @@ char *setlocale(int cat, const char *name)...@@ -36,7 +35,7 @@ char *setlocale(int cat, const char *name)
36 }35 }
37 lm = __get_locale(i, part);36 lm = __get_locale(i, part);
38 if (lm == LOC_MAP_FAILED) {37 if (lm == LOC_MAP_FAILED) {
39 UNLOCK(lock);38 UNLOCK(__locale_lock);
40 return 0;39 return 0;
41 }40 }
42 tmp_locale.cat[i] = lm;41 tmp_locale.cat[i] = lm;
...@@ -57,14 +56,14 @@ char *setlocale(int cat, const char *name)...@@ -57,14 +56,14 @@ char *setlocale(int cat, const char *name)
57 s += l+1;56 s += l+1;
58 }57 }
59 *--s = 0;58 *--s = 0;
60 UNLOCK(lock);59 UNLOCK(__locale_lock);
61 return same==LC_ALL ? (char *)part : buf;60 return same==LC_ALL ? (char *)part : buf;
62 }61 }
6362
64 if (name) {63 if (name) {
65 lm = __get_locale(cat, name);64 lm = __get_locale(cat, name);
66 if (lm == LOC_MAP_FAILED) {65 if (lm == LOC_MAP_FAILED) {
67 UNLOCK(lock);66 UNLOCK(__locale_lock);
68 return 0;67 return 0;
69 }68 }
70 libc.global_locale.cat[cat] = lm;69 libc.global_locale.cat[cat] = lm;
...@@ -73,7 +72,7 @@ char *setlocale(int cat, const char *name)...@@ -73,7 +72,7 @@ char *setlocale(int cat, const char *name)
73 }72 }
74 char *ret = lm ? (char *)lm->name : "C";73 char *ret = lm ? (char *)lm->name : "C";
7574
76 UNLOCK(lock);75 UNLOCK(__locale_lock);
7776
78 return ret;77 return ret;
79}78}
lib/libc/musl/src/malloc/free.c created+6
...@@ -0,0 +1,6 @@
1#include <stdlib.h>
2
3void free(void *p)
4{
5 return __libc_free(p);
6}
lib/libc/musl/src/malloc/libc_calloc.c created+4
...@@ -0,0 +1,4 @@
1#define calloc __libc_calloc
2#define malloc __libc_malloc
3
4#include "calloc.c"
lib/libc/musl/src/malloc/lite_malloc.c+17-2
...@@ -6,6 +6,7 @@...@@ -6,6 +6,7 @@
6#include "libc.h"6#include "libc.h"
7#include "lock.h"7#include "lock.h"
8#include "syscall.h"8#include "syscall.h"
9#include "fork_impl.h"
910
10#define ALIGN 1611#define ALIGN 16
1112
...@@ -31,10 +32,12 @@ static int traverses_stack_p(uintptr_t old, uintptr_t new)...@@ -31,10 +32,12 @@ static int traverses_stack_p(uintptr_t old, uintptr_t new)
31 return 0;32 return 0;
32}33}
3334
35static volatile int lock[1];
36volatile int *const __bump_lockptr = lock;
37
34static void *__simple_malloc(size_t n)38static void *__simple_malloc(size_t n)
35{39{
36 static uintptr_t brk, cur, end;40 static uintptr_t brk, cur, end;
37 static volatile int lock[1];
38 static unsigned mmap_step;41 static unsigned mmap_step;
39 size_t align=1;42 size_t align=1;
40 void *p;43 void *p;
...@@ -100,4 +103,16 @@ static void *__simple_malloc(size_t n)...@@ -100,4 +103,16 @@ static void *__simple_malloc(size_t n)
100 return p;103 return p;
101}104}
102105
103weak_alias(__simple_malloc, malloc);106weak_alias(__simple_malloc, __libc_malloc_impl);
107
108void *__libc_malloc(size_t n)
109{
110 return __libc_malloc_impl(n);
111}
112
113static void *default_malloc(size_t n)
114{
115 return __libc_malloc_impl(n);
116}
117
118weak_alias(default_malloc, malloc);
lib/libc/musl/src/malloc/mallocng/glue.h+17-1
...@@ -20,6 +20,10 @@...@@ -20,6 +20,10 @@
20#define is_allzero __malloc_allzerop20#define is_allzero __malloc_allzerop
21#define dump_heap __dump_heap21#define dump_heap __dump_heap
2222
23#define malloc __libc_malloc_impl
24#define realloc __libc_realloc
25#define free __libc_free
26
23#if USE_REAL_ASSERT27#if USE_REAL_ASSERT
24#include <assert.h>28#include <assert.h>
25#else29#else
...@@ -56,7 +60,8 @@ __attribute__((__visibility__("hidden")))...@@ -56,7 +60,8 @@ __attribute__((__visibility__("hidden")))
56extern int __malloc_lock[1];60extern int __malloc_lock[1];
5761
58#define LOCK_OBJ_DEF \62#define LOCK_OBJ_DEF \
59int __malloc_lock[1];63int __malloc_lock[1]; \
64void __malloc_atfork(int who) { malloc_atfork(who); }
6065
61static inline void rdlock()66static inline void rdlock()
62{67{
...@@ -73,5 +78,16 @@ static inline void unlock()...@@ -73,5 +78,16 @@ static inline void unlock()
73static inline void upgradelock()78static inline void upgradelock()
74{79{
75}80}
81static inline void resetlock()
82{
83 __malloc_lock[0] = 0;
84}
85
86static inline void malloc_atfork(int who)
87{
88 if (who<0) rdlock();
89 else if (who>0) resetlock();
90 else unlock();
91}
7692
77#endif93#endif
lib/libc/musl/src/malloc/mallocng/malloc_usable_size.c+1
...@@ -3,6 +3,7 @@...@@ -3,6 +3,7 @@
33
4size_t malloc_usable_size(void *p)4size_t malloc_usable_size(void *p)
5{5{
6 if (!p) return 0;
6 struct meta *g = get_meta(p);7 struct meta *g = get_meta(p);
7 int idx = get_slot_index(p);8 int idx = get_slot_index(p);
8 size_t stride = get_stride(g);9 size_t stride = get_stride(g);
lib/libc/musl/src/malloc/oldmalloc/aligned_alloc.c created+53
...@@ -0,0 +1,53 @@
1#include <stdlib.h>
2#include <stdint.h>
3#include <errno.h>
4#include "malloc_impl.h"
5
6void *aligned_alloc(size_t align, size_t len)
7{
8 unsigned char *mem, *new;
9
10 if ((align & -align) != align) {
11 errno = EINVAL;
12 return 0;
13 }
14
15 if (len > SIZE_MAX - align ||
16 (__malloc_replaced && !__aligned_alloc_replaced)) {
17 errno = ENOMEM;
18 return 0;
19 }
20
21 if (align <= SIZE_ALIGN)
22 return malloc(len);
23
24 if (!(mem = malloc(len + align-1)))
25 return 0;
26
27 new = (void *)((uintptr_t)mem + align-1 & -align);
28 if (new == mem) return mem;
29
30 struct chunk *c = MEM_TO_CHUNK(mem);
31 struct chunk *n = MEM_TO_CHUNK(new);
32
33 if (IS_MMAPPED(c)) {
34 /* Apply difference between aligned and original
35 * address to the "extra" field of mmapped chunk. */
36 n->psize = c->psize + (new-mem);
37 n->csize = c->csize - (new-mem);
38 return new;
39 }
40
41 struct chunk *t = NEXT_CHUNK(c);
42
43 /* Split the allocated chunk into two chunks. The aligned part
44 * that will be used has the size in its footer reduced by the
45 * difference between the aligned and original addresses, and
46 * the resulting size copied to its header. A new header and
47 * footer are written for the split-off part to be freed. */
48 n->psize = c->csize = C_INUSE | (new-mem);
49 n->csize = t->psize -= new-mem;
50
51 __bin_chunk(c);
52 return new;
53}
lib/libc/musl/src/malloc/oldmalloc/malloc.c created+552
...@@ -0,0 +1,552 @@
1#define _GNU_SOURCE
2#include <stdlib.h>
3#include <string.h>
4#include <limits.h>
5#include <stdint.h>
6#include <errno.h>
7#include <sys/mman.h>
8#include "libc.h"
9#include "atomic.h"
10#include "pthread_impl.h"
11#include "malloc_impl.h"
12#include "fork_impl.h"
13
14#define malloc __libc_malloc
15#define realloc __libc_realloc
16#define free __libc_free
17
18#if defined(__GNUC__) && defined(__PIC__)
19#define inline inline __attribute__((always_inline))
20#endif
21
22static struct {
23 volatile uint64_t binmap;
24 struct bin bins[64];
25 volatile int split_merge_lock[2];
26} mal;
27
28/* Synchronization tools */
29
30static inline void lock(volatile int *lk)
31{
32 int need_locks = libc.need_locks;
33 if (need_locks) {
34 while(a_swap(lk, 1)) __wait(lk, lk+1, 1, 1);
35 if (need_locks < 0) libc.need_locks = 0;
36 }
37}
38
39static inline void unlock(volatile int *lk)
40{
41 if (lk[0]) {
42 a_store(lk, 0);
43 if (lk[1]) __wake(lk, 1, 1);
44 }
45}
46
47static inline void lock_bin(int i)
48{
49 lock(mal.bins[i].lock);
50 if (!mal.bins[i].head)
51 mal.bins[i].head = mal.bins[i].tail = BIN_TO_CHUNK(i);
52}
53
54static inline void unlock_bin(int i)
55{
56 unlock(mal.bins[i].lock);
57}
58
59static int first_set(uint64_t x)
60{
61#if 1
62 return a_ctz_64(x);
63#else
64 static const char debruijn64[64] = {
65 0, 1, 2, 53, 3, 7, 54, 27, 4, 38, 41, 8, 34, 55, 48, 28,
66 62, 5, 39, 46, 44, 42, 22, 9, 24, 35, 59, 56, 49, 18, 29, 11,
67 63, 52, 6, 26, 37, 40, 33, 47, 61, 45, 43, 21, 23, 58, 17, 10,
68 51, 25, 36, 32, 60, 20, 57, 16, 50, 31, 19, 15, 30, 14, 13, 12
69 };
70 static const char debruijn32[32] = {
71 0, 1, 23, 2, 29, 24, 19, 3, 30, 27, 25, 11, 20, 8, 4, 13,
72 31, 22, 28, 18, 26, 10, 7, 12, 21, 17, 9, 6, 16, 5, 15, 14
73 };
74 if (sizeof(long) < 8) {
75 uint32_t y = x;
76 if (!y) {
77 y = x>>32;
78 return 32 + debruijn32[(y&-y)*0x076be629 >> 27];
79 }
80 return debruijn32[(y&-y)*0x076be629 >> 27];
81 }
82 return debruijn64[(x&-x)*0x022fdd63cc95386dull >> 58];
83#endif
84}
85
86static const unsigned char bin_tab[60] = {
87 32,33,34,35,36,36,37,37,38,38,39,39,
88 40,40,40,40,41,41,41,41,42,42,42,42,43,43,43,43,
89 44,44,44,44,44,44,44,44,45,45,45,45,45,45,45,45,
90 46,46,46,46,46,46,46,46,47,47,47,47,47,47,47,47,
91};
92
93static int bin_index(size_t x)
94{
95 x = x / SIZE_ALIGN - 1;
96 if (x <= 32) return x;
97 if (x < 512) return bin_tab[x/8-4];
98 if (x > 0x1c00) return 63;
99 return bin_tab[x/128-4] + 16;
100}
101
102static int bin_index_up(size_t x)
103{
104 x = x / SIZE_ALIGN - 1;
105 if (x <= 32) return x;
106 x--;
107 if (x < 512) return bin_tab[x/8-4] + 1;
108 return bin_tab[x/128-4] + 17;
109}
110
111#if 0
112void __dump_heap(int x)
113{
114 struct chunk *c;
115 int i;
116 for (c = (void *)mal.heap; CHUNK_SIZE(c); c = NEXT_CHUNK(c))
117 fprintf(stderr, "base %p size %zu (%d) flags %d/%d\n",
118 c, CHUNK_SIZE(c), bin_index(CHUNK_SIZE(c)),
119 c->csize & 15,
120 NEXT_CHUNK(c)->psize & 15);
121 for (i=0; i<64; i++) {
122 if (mal.bins[i].head != BIN_TO_CHUNK(i) && mal.bins[i].head) {
123 fprintf(stderr, "bin %d: %p\n", i, mal.bins[i].head);
124 if (!(mal.binmap & 1ULL<<i))
125 fprintf(stderr, "missing from binmap!\n");
126 } else if (mal.binmap & 1ULL<<i)
127 fprintf(stderr, "binmap wrongly contains %d!\n", i);
128 }
129}
130#endif
131
132/* This function returns true if the interval [old,new]
133 * intersects the 'len'-sized interval below &libc.auxv
134 * (interpreted as the main-thread stack) or below &b
135 * (the current stack). It is used to defend against
136 * buggy brk implementations that can cross the stack. */
137
138static int traverses_stack_p(uintptr_t old, uintptr_t new)
139{
140 const uintptr_t len = 8<<20;
141 uintptr_t a, b;
142
143 b = (uintptr_t)libc.auxv;
144 a = b > len ? b-len : 0;
145 if (new>a && old<b) return 1;
146
147 b = (uintptr_t)&b;
148 a = b > len ? b-len : 0;
149 if (new>a && old<b) return 1;
150
151 return 0;
152}
153
154/* Expand the heap in-place if brk can be used, or otherwise via mmap,
155 * using an exponential lower bound on growth by mmap to make
156 * fragmentation asymptotically irrelevant. The size argument is both
157 * an input and an output, since the caller needs to know the size
158 * allocated, which will be larger than requested due to page alignment
159 * and mmap minimum size rules. The caller is responsible for locking
160 * to prevent concurrent calls. */
161
162static void *__expand_heap(size_t *pn)
163{
164 static uintptr_t brk;
165 static unsigned mmap_step;
166 size_t n = *pn;
167
168 if (n > SIZE_MAX/2 - PAGE_SIZE) {
169 errno = ENOMEM;
170 return 0;
171 }
172 n += -n & PAGE_SIZE-1;
173
174 if (!brk) {
175 brk = __syscall(SYS_brk, 0);
176 brk += -brk & PAGE_SIZE-1;
177 }
178
179 if (n < SIZE_MAX-brk && !traverses_stack_p(brk, brk+n)
180 && __syscall(SYS_brk, brk+n)==brk+n) {
181 *pn = n;
182 brk += n;
183 return (void *)(brk-n);
184 }
185
186 size_t min = (size_t)PAGE_SIZE << mmap_step/2;
187 if (n < min) n = min;
188 void *area = __mmap(0, n, PROT_READ|PROT_WRITE,
189 MAP_PRIVATE|MAP_ANONYMOUS, -1, 0);
190 if (area == MAP_FAILED) return 0;
191 *pn = n;
192 mmap_step++;
193 return area;
194}
195
196static struct chunk *expand_heap(size_t n)
197{
198 static void *end;
199 void *p;
200 struct chunk *w;
201
202 /* The argument n already accounts for the caller's chunk
203 * overhead needs, but if the heap can't be extended in-place,
204 * we need room for an extra zero-sized sentinel chunk. */
205 n += SIZE_ALIGN;
206
207 p = __expand_heap(&n);
208 if (!p) return 0;
209
210 /* If not just expanding existing space, we need to make a
211 * new sentinel chunk below the allocated space. */
212 if (p != end) {
213 /* Valid/safe because of the prologue increment. */
214 n -= SIZE_ALIGN;
215 p = (char *)p + SIZE_ALIGN;
216 w = MEM_TO_CHUNK(p);
217 w->psize = 0 | C_INUSE;
218 }
219
220 /* Record new heap end and fill in footer. */
221 end = (char *)p + n;
222 w = MEM_TO_CHUNK(end);
223 w->psize = n | C_INUSE;
224 w->csize = 0 | C_INUSE;
225
226 /* Fill in header, which may be new or may be replacing a
227 * zero-size sentinel header at the old end-of-heap. */
228 w = MEM_TO_CHUNK(p);
229 w->csize = n | C_INUSE;
230
231 return w;
232}
233
234static int adjust_size(size_t *n)
235{
236 /* Result of pointer difference must fit in ptrdiff_t. */
237 if (*n-1 > PTRDIFF_MAX - SIZE_ALIGN - PAGE_SIZE) {
238 if (*n) {
239 errno = ENOMEM;
240 return -1;
241 } else {
242 *n = SIZE_ALIGN;
243 return 0;
244 }
245 }
246 *n = (*n + OVERHEAD + SIZE_ALIGN - 1) & SIZE_MASK;
247 return 0;
248}
249
250static void unbin(struct chunk *c, int i)
251{
252 if (c->prev == c->next)
253 a_and_64(&mal.binmap, ~(1ULL<<i));
254 c->prev->next = c->next;
255 c->next->prev = c->prev;
256 c->csize |= C_INUSE;
257 NEXT_CHUNK(c)->psize |= C_INUSE;
258}
259
260static void bin_chunk(struct chunk *self, int i)
261{
262 self->next = BIN_TO_CHUNK(i);
263 self->prev = mal.bins[i].tail;
264 self->next->prev = self;
265 self->prev->next = self;
266 if (self->prev == BIN_TO_CHUNK(i))
267 a_or_64(&mal.binmap, 1ULL<<i);
268}
269
270static void trim(struct chunk *self, size_t n)
271{
272 size_t n1 = CHUNK_SIZE(self);
273 struct chunk *next, *split;
274
275 if (n >= n1 - DONTCARE) return;
276
277 next = NEXT_CHUNK(self);
278 split = (void *)((char *)self + n);
279
280 split->psize = n | C_INUSE;
281 split->csize = n1-n;
282 next->psize = n1-n;
283 self->csize = n | C_INUSE;
284
285 int i = bin_index(n1-n);
286 lock_bin(i);
287
288 bin_chunk(split, i);
289
290 unlock_bin(i);
291}
292
293void *malloc(size_t n)
294{
295 struct chunk *c;
296 int i, j;
297 uint64_t mask;
298
299 if (adjust_size(&n) < 0) return 0;
300
301 if (n > MMAP_THRESHOLD) {
302 size_t len = n + OVERHEAD + PAGE_SIZE - 1 & -PAGE_SIZE;
303 char *base = __mmap(0, len, PROT_READ|PROT_WRITE,
304 MAP_PRIVATE|MAP_ANONYMOUS, -1, 0);
305 if (base == (void *)-1) return 0;
306 c = (void *)(base + SIZE_ALIGN - OVERHEAD);
307 c->csize = len - (SIZE_ALIGN - OVERHEAD);
308 c->psize = SIZE_ALIGN - OVERHEAD;
309 return CHUNK_TO_MEM(c);
310 }
311
312 i = bin_index_up(n);
313 if (i<63 && (mal.binmap & (1ULL<<i))) {
314 lock_bin(i);
315 c = mal.bins[i].head;
316 if (c != BIN_TO_CHUNK(i) && CHUNK_SIZE(c)-n <= DONTCARE) {
317 unbin(c, i);
318 unlock_bin(i);
319 return CHUNK_TO_MEM(c);
320 }
321 unlock_bin(i);
322 }
323 lock(mal.split_merge_lock);
324 for (mask = mal.binmap & -(1ULL<<i); mask; mask -= (mask&-mask)) {
325 j = first_set(mask);
326 lock_bin(j);
327 c = mal.bins[j].head;
328 if (c != BIN_TO_CHUNK(j)) {
329 unbin(c, j);
330 unlock_bin(j);
331 break;
332 }
333 unlock_bin(j);
334 }
335 if (!mask) {
336 c = expand_heap(n);
337 if (!c) {
338 unlock(mal.split_merge_lock);
339 return 0;
340 }
341 }
342 trim(c, n);
343 unlock(mal.split_merge_lock);
344 return CHUNK_TO_MEM(c);
345}
346
347int __malloc_allzerop(void *p)
348{
349 return IS_MMAPPED(MEM_TO_CHUNK(p));
350}
351
352void *realloc(void *p, size_t n)
353{
354 struct chunk *self, *next;
355 size_t n0, n1;
356 void *new;
357
358 if (!p) return malloc(n);
359
360 if (adjust_size(&n) < 0) return 0;
361
362 self = MEM_TO_CHUNK(p);
363 n1 = n0 = CHUNK_SIZE(self);
364
365 if (n<=n0 && n0-n<=DONTCARE) return p;
366
367 if (IS_MMAPPED(self)) {
368 size_t extra = self->psize;
369 char *base = (char *)self - extra;
370 size_t oldlen = n0 + extra;
371 size_t newlen = n + extra;
372 /* Crash on realloc of freed chunk */
373 if (extra & 1) a_crash();
374 if (newlen < PAGE_SIZE && (new = malloc(n-OVERHEAD))) {
375 n0 = n;
376 goto copy_free_ret;
377 }
378 newlen = (newlen + PAGE_SIZE-1) & -PAGE_SIZE;
379 if (oldlen == newlen) return p;
380 base = __mremap(base, oldlen, newlen, MREMAP_MAYMOVE);
381 if (base == (void *)-1)
382 goto copy_realloc;
383 self = (void *)(base + extra);
384 self->csize = newlen - extra;
385 return CHUNK_TO_MEM(self);
386 }
387
388 next = NEXT_CHUNK(self);
389
390 /* Crash on corrupted footer (likely from buffer overflow) */
391 if (next->psize != self->csize) a_crash();
392
393 if (n < n0) {
394 int i = bin_index_up(n);
395 int j = bin_index(n0);
396 if (i<j && (mal.binmap & (1ULL << i)))
397 goto copy_realloc;
398 struct chunk *split = (void *)((char *)self + n);
399 self->csize = split->psize = n | C_INUSE;
400 split->csize = next->psize = n0-n | C_INUSE;
401 __bin_chunk(split);
402 return CHUNK_TO_MEM(self);
403 }
404
405 lock(mal.split_merge_lock);
406
407 size_t nsize = next->csize & C_INUSE ? 0 : CHUNK_SIZE(next);
408 if (n0+nsize >= n) {
409 int i = bin_index(nsize);
410 lock_bin(i);
411 if (!(next->csize & C_INUSE)) {
412 unbin(next, i);
413 unlock_bin(i);
414 next = NEXT_CHUNK(next);
415 self->csize = next->psize = n0+nsize | C_INUSE;
416 trim(self, n);
417 unlock(mal.split_merge_lock);
418 return CHUNK_TO_MEM(self);
419 }
420 unlock_bin(i);
421 }
422 unlock(mal.split_merge_lock);
423
424copy_realloc:
425 /* As a last resort, allocate a new chunk and copy to it. */
426 new = malloc(n-OVERHEAD);
427 if (!new) return 0;
428copy_free_ret:
429 memcpy(new, p, (n<n0 ? n : n0) - OVERHEAD);
430 free(CHUNK_TO_MEM(self));
431 return new;
432}
433
434void __bin_chunk(struct chunk *self)
435{
436 struct chunk *next = NEXT_CHUNK(self);
437
438 /* Crash on corrupted footer (likely from buffer overflow) */
439 if (next->psize != self->csize) a_crash();
440
441 lock(mal.split_merge_lock);
442
443 size_t osize = CHUNK_SIZE(self), size = osize;
444
445 /* Since we hold split_merge_lock, only transition from free to
446 * in-use can race; in-use to free is impossible */
447 size_t psize = self->psize & C_INUSE ? 0 : CHUNK_PSIZE(self);
448 size_t nsize = next->csize & C_INUSE ? 0 : CHUNK_SIZE(next);
449
450 if (psize) {
451 int i = bin_index(psize);
452 lock_bin(i);
453 if (!(self->psize & C_INUSE)) {
454 struct chunk *prev = PREV_CHUNK(self);
455 unbin(prev, i);
456 self = prev;
457 size += psize;
458 }
459 unlock_bin(i);
460 }
461 if (nsize) {
462 int i = bin_index(nsize);
463 lock_bin(i);
464 if (!(next->csize & C_INUSE)) {
465 unbin(next, i);
466 next = NEXT_CHUNK(next);
467 size += nsize;
468 }
469 unlock_bin(i);
470 }
471
472 int i = bin_index(size);
473 lock_bin(i);
474
475 self->csize = size;
476 next->psize = size;
477 bin_chunk(self, i);
478 unlock(mal.split_merge_lock);
479
480 /* Replace middle of large chunks with fresh zero pages */
481 if (size > RECLAIM && (size^(size-osize)) > size-osize) {
482 uintptr_t a = (uintptr_t)self + SIZE_ALIGN+PAGE_SIZE-1 & -PAGE_SIZE;
483 uintptr_t b = (uintptr_t)next - SIZE_ALIGN & -PAGE_SIZE;
484#if 1
485 __madvise((void *)a, b-a, MADV_DONTNEED);
486#else
487 __mmap((void *)a, b-a, PROT_READ|PROT_WRITE,
488 MAP_PRIVATE|MAP_ANONYMOUS|MAP_FIXED, -1, 0);
489#endif
490 }
491
492 unlock_bin(i);
493}
494
495static void unmap_chunk(struct chunk *self)
496{
497 size_t extra = self->psize;
498 char *base = (char *)self - extra;
499 size_t len = CHUNK_SIZE(self) + extra;
500 /* Crash on double free */
501 if (extra & 1) a_crash();
502 __munmap(base, len);
503}
504
505void free(void *p)
506{
507 if (!p) return;
508
509 struct chunk *self = MEM_TO_CHUNK(p);
510
511 if (IS_MMAPPED(self))
512 unmap_chunk(self);
513 else
514 __bin_chunk(self);
515}
516
517void __malloc_donate(char *start, char *end)
518{
519 size_t align_start_up = (SIZE_ALIGN-1) & (-(uintptr_t)start - OVERHEAD);
520 size_t align_end_down = (SIZE_ALIGN-1) & (uintptr_t)end;
521
522 /* Getting past this condition ensures that the padding for alignment
523 * and header overhead will not overflow and will leave a nonzero
524 * multiple of SIZE_ALIGN bytes between start and end. */
525 if (end - start <= OVERHEAD + align_start_up + align_end_down)
526 return;
527 start += align_start_up + OVERHEAD;
528 end -= align_end_down;
529
530 struct chunk *c = MEM_TO_CHUNK(start), *n = MEM_TO_CHUNK(end);
531 c->psize = n->csize = C_INUSE;
532 c->csize = n->psize = C_INUSE | (end-start);
533 __bin_chunk(c);
534}
535
536void __malloc_atfork(int who)
537{
538 if (who<0) {
539 lock(mal.split_merge_lock);
540 for (int i=0; i<64; i++)
541 lock(mal.bins[i].lock);
542 } else if (!who) {
543 for (int i=0; i<64; i++)
544 unlock(mal.bins[i].lock);
545 unlock(mal.split_merge_lock);
546 } else {
547 for (int i=0; i<64; i++)
548 mal.bins[i].lock[0] = mal.bins[i].lock[1] = 0;
549 mal.split_merge_lock[1] = 0;
550 mal.split_merge_lock[0] = 0;
551 }
552}
lib/libc/musl/src/malloc/oldmalloc/malloc_impl.h created+39
...@@ -0,0 +1,39 @@
1#ifndef MALLOC_IMPL_H
2#define MALLOC_IMPL_H
3
4#include <sys/mman.h>
5#include "dynlink.h"
6
7struct chunk {
8 size_t psize, csize;
9 struct chunk *next, *prev;
10};
11
12struct bin {
13 volatile int lock[2];
14 struct chunk *head;
15 struct chunk *tail;
16};
17
18#define SIZE_ALIGN (4*sizeof(size_t))
19#define SIZE_MASK (-SIZE_ALIGN)
20#define OVERHEAD (2*sizeof(size_t))
21#define MMAP_THRESHOLD (0x1c00*SIZE_ALIGN)
22#define DONTCARE 16
23#define RECLAIM 163840
24
25#define CHUNK_SIZE(c) ((c)->csize & -2)
26#define CHUNK_PSIZE(c) ((c)->psize & -2)
27#define PREV_CHUNK(c) ((struct chunk *)((char *)(c) - CHUNK_PSIZE(c)))
28#define NEXT_CHUNK(c) ((struct chunk *)((char *)(c) + CHUNK_SIZE(c)))
29#define MEM_TO_CHUNK(p) (struct chunk *)((char *)(p) - OVERHEAD)
30#define CHUNK_TO_MEM(c) (void *)((char *)(c) + OVERHEAD)
31#define BIN_TO_CHUNK(i) (MEM_TO_CHUNK(&mal.bins[i].head))
32
33#define C_INUSE ((size_t)1)
34
35#define IS_MMAPPED(c) !((c)->csize & (C_INUSE))
36
37hidden void __bin_chunk(struct chunk *);
38
39#endif
lib/libc/musl/src/malloc/oldmalloc/malloc_usable_size.c created+9
...@@ -0,0 +1,9 @@
1#include <malloc.h>
2#include "malloc_impl.h"
3
4hidden void *(*const __realloc_dep)(void *, size_t) = realloc;
5
6size_t malloc_usable_size(void *p)
7{
8 return p ? CHUNK_SIZE(MEM_TO_CHUNK(p)) - OVERHEAD : 0;
9}
lib/libc/musl/src/malloc/realloc.c created+6
...@@ -0,0 +1,6 @@
1#include <stdlib.h>
2
3void *realloc(void *p, size_t n)
4{
5 return __libc_realloc(p, n);
6}
lib/libc/musl/src/malloc/reallocarray.c created+13
...@@ -0,0 +1,13 @@
1#define _BSD_SOURCE
2#include <errno.h>
3#include <stdlib.h>
4
5void *reallocarray(void *ptr, size_t m, size_t n)
6{
7 if (n && m > -1 / n) {
8 errno = ENOMEM;
9 return 0;
10 }
11
12 return realloc(ptr, m * n);
13}
lib/libc/musl/src/math/__math_invalidl.c created+9
...@@ -0,0 +1,9 @@
1#include <float.h>
2#include "libm.h"
3
4#if LDBL_MANT_DIG != DBL_MANT_DIG
5long double __math_invalidl(long double x)
6{
7 return (x - x) / (x - x);
8}
9#endif
lib/libc/musl/src/math/arm/fabs.c+1-1
...@@ -1,6 +1,6 @@...@@ -1,6 +1,6 @@
1#include <math.h>1#include <math.h>
22
3#if __ARM_PCS_VFP3#if __ARM_PCS_VFP && __ARM_FP&8
44
5double fabs(double x)5double fabs(double x)
6{6{
lib/libc/musl/src/math/arm/sqrt.c+1-1
...@@ -1,6 +1,6 @@...@@ -1,6 +1,6 @@
1#include <math.h>1#include <math.h>
22
3#if __ARM_PCS_VFP || (__VFP_FP__ && !__SOFTFP__)3#if (__ARM_PCS_VFP || (__VFP_FP__ && !__SOFTFP__)) && (__ARM_FP&8)
44
5double sqrt(double x)5double sqrt(double x)
6{6{
lib/libc/musl/src/math/sqrt.c+147-173
...@@ -1,184 +1,158 @@...@@ -1,184 +1,158 @@
1/* origin: FreeBSD /usr/src/lib/msun/src/e_sqrt.c */1#include <stdint.h>
2/*2#include <math.h>
3 * ====================================================
4 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
5 *
6 * Developed at SunSoft, a Sun Microsystems, Inc. business.
7 * Permission to use, copy, modify, and distribute this
8 * software is freely granted, provided that this notice
9 * is preserved.
10 * ====================================================
11 */
12/* sqrt(x)
13 * Return correctly rounded sqrt.
14 * ------------------------------------------
15 * | Use the hardware sqrt if you have one |
16 * ------------------------------------------
17 * Method:
18 * Bit by bit method using integer arithmetic. (Slow, but portable)
19 * 1. Normalization
20 * Scale x to y in [1,4) with even powers of 2:
21 * find an integer k such that 1 <= (y=x*2^(2k)) < 4, then
22 * sqrt(x) = 2^k * sqrt(y)
23 * 2. Bit by bit computation
24 * Let q = sqrt(y) truncated to i bit after binary point (q = 1),
25 * i 0
26 * i+1 2
27 * s = 2*q , and y = 2 * ( y - q ). (1)
28 * i i i i
29 *
30 * To compute q from q , one checks whether
31 * i+1 i
32 *
33 * -(i+1) 2
34 * (q + 2 ) <= y. (2)
35 * i
36 * -(i+1)
37 * If (2) is false, then q = q ; otherwise q = q + 2 .
38 * i+1 i i+1 i
39 *
40 * With some algebric manipulation, it is not difficult to see
41 * that (2) is equivalent to
42 * -(i+1)
43 * s + 2 <= y (3)
44 * i i
45 *
46 * The advantage of (3) is that s and y can be computed by
47 * i i
48 * the following recurrence formula:
49 * if (3) is false
50 *
51 * s = s , y = y ; (4)
52 * i+1 i i+1 i
53 *
54 * otherwise,
55 * -i -(i+1)
56 * s = s + 2 , y = y - s - 2 (5)
57 * i+1 i i+1 i i
58 *
59 * One may easily use induction to prove (4) and (5).
60 * Note. Since the left hand side of (3) contain only i+2 bits,
61 * it does not necessary to do a full (53-bit) comparison
62 * in (3).
63 * 3. Final rounding
64 * After generating the 53 bits result, we compute one more bit.
65 * Together with the remainder, we can decide whether the
66 * result is exact, bigger than 1/2ulp, or less than 1/2ulp
67 * (it will never equal to 1/2ulp).
68 * The rounding mode can be detected by checking whether
69 * huge + tiny is equal to huge, and whether huge - tiny is
70 * equal to huge for some floating point number "huge" and "tiny".
71 *
72 * Special cases:
73 * sqrt(+-0) = +-0 ... exact
74 * sqrt(inf) = inf
75 * sqrt(-ve) = NaN ... with invalid signal
76 * sqrt(NaN) = NaN ... with invalid signal for signaling NaN
77 */
78
79#include "libm.h"3#include "libm.h"
4#include "sqrt_data.h"
805
81static const double tiny = 1.0e-300;6#define FENV_SUPPORT 1
827
83double sqrt(double x)8/* returns a*b*2^-32 - e, with error 0 <= e < 1. */
9static inline uint32_t mul32(uint32_t a, uint32_t b)
84{10{
85 double z;11 return (uint64_t)a*b >> 32;
86 int32_t sign = (int)0x80000000;12}
87 int32_t ix0,s0,q,m,t,i;
88 uint32_t r,t1,s1,ix1,q1;
8913
90 EXTRACT_WORDS(ix0, ix1, x);14/* returns a*b*2^-64 - e, with error 0 <= e < 3. */
15static inline uint64_t mul64(uint64_t a, uint64_t b)
16{
17 uint64_t ahi = a>>32;
18 uint64_t alo = a&0xffffffff;
19 uint64_t bhi = b>>32;
20 uint64_t blo = b&0xffffffff;
21 return ahi*bhi + (ahi*blo >> 32) + (alo*bhi >> 32);
22}
9123
92 /* take care of Inf and NaN */24double sqrt(double x)
93 if ((ix0&0x7ff00000) == 0x7ff00000) {25{
94 return x*x + x; /* sqrt(NaN)=NaN, sqrt(+inf)=+inf, sqrt(-inf)=sNaN */26 uint64_t ix, top, m;
95 }
96 /* take care of zero */
97 if (ix0 <= 0) {
98 if (((ix0&~sign)|ix1) == 0)
99 return x; /* sqrt(+-0) = +-0 */
100 if (ix0 < 0)
101 return (x-x)/(x-x); /* sqrt(-ve) = sNaN */
102 }
103 /* normalize x */
104 m = ix0>>20;
105 if (m == 0) { /* subnormal x */
106 while (ix0 == 0) {
107 m -= 21;
108 ix0 |= (ix1>>11);
109 ix1 <<= 21;
110 }
111 for (i=0; (ix0&0x00100000) == 0; i++)
112 ix0<<=1;
113 m -= i - 1;
114 ix0 |= ix1>>(32-i);
115 ix1 <<= i;
116 }
117 m -= 1023; /* unbias exponent */
118 ix0 = (ix0&0x000fffff)|0x00100000;
119 if (m & 1) { /* odd m, double x to make it even */
120 ix0 += ix0 + ((ix1&sign)>>31);
121 ix1 += ix1;
122 }
123 m >>= 1; /* m = [m/2] */
124
125 /* generate sqrt(x) bit by bit */
126 ix0 += ix0 + ((ix1&sign)>>31);
127 ix1 += ix1;
128 q = q1 = s0 = s1 = 0; /* [q,q1] = sqrt(x) */
129 r = 0x00200000; /* r = moving bit from right to left */
130
131 while (r != 0) {
132 t = s0 + r;
133 if (t <= ix0) {
134 s0 = t + r;
135 ix0 -= t;
136 q += r;
137 }
138 ix0 += ix0 + ((ix1&sign)>>31);
139 ix1 += ix1;
140 r >>= 1;
141 }
14227
143 r = sign;28 /* special case handling. */
144 while (r != 0) {29 ix = asuint64(x);
145 t1 = s1 + r;30 top = ix >> 52;
146 t = s0;31 if (predict_false(top - 0x001 >= 0x7ff - 0x001)) {
147 if (t < ix0 || (t == ix0 && t1 <= ix1)) {32 /* x < 0x1p-1022 or inf or nan. */
148 s1 = t1 + r;33 if (ix * 2 == 0)
149 if ((t1&sign) == sign && (s1&sign) == 0)34 return x;
150 s0++;35 if (ix == 0x7ff0000000000000)
151 ix0 -= t;36 return x;
152 if (ix1 < t1)37 if (ix > 0x7ff0000000000000)
153 ix0--;38 return __math_invalid(x);
154 ix1 -= t1;39 /* x is subnormal, normalize it. */
155 q1 += r;40 ix = asuint64(x * 0x1p52);
156 }41 top = ix >> 52;
157 ix0 += ix0 + ((ix1&sign)>>31);42 top -= 52;
158 ix1 += ix1;
159 r >>= 1;
160 }43 }
16144
162 /* use floating add to find out rounding direction */45 /* argument reduction:
163 if ((ix0|ix1) != 0) {46 x = 4^e m; with integer e, and m in [1, 4)
164 z = 1.0 - tiny; /* raise inexact flag */47 m: fixed point representation [2.62]
165 if (z >= 1.0) {48 2^e is the exponent part of the result. */
166 z = 1.0 + tiny;49 int even = top & 1;
167 if (q1 == (uint32_t)0xffffffff) {50 m = (ix << 11) | 0x8000000000000000;
168 q1 = 0;51 if (even) m >>= 1;
169 q++;52 top = (top + 0x3ff) >> 1;
170 } else if (z > 1.0) {53
171 if (q1 == (uint32_t)0xfffffffe)54 /* approximate r ~ 1/sqrt(m) and s ~ sqrt(m) when m in [1,4)
172 q++;55
173 q1 += 2;56 initial estimate:
174 } else57 7bit table lookup (1bit exponent and 6bit significand).
175 q1 += q1 & 1;58
176 }59 iterative approximation:
60 using 2 goldschmidt iterations with 32bit int arithmetics
61 and a final iteration with 64bit int arithmetics.
62
63 details:
64
65 the relative error (e = r0 sqrt(m)-1) of a linear estimate
66 (r0 = a m + b) is |e| < 0.085955 ~ 0x1.6p-4 at best,
67 a table lookup is faster and needs one less iteration
68 6 bit lookup table (128b) gives |e| < 0x1.f9p-8
69 7 bit lookup table (256b) gives |e| < 0x1.fdp-9
70 for single and double prec 6bit is enough but for quad
71 prec 7bit is needed (or modified iterations). to avoid
72 one more iteration >=13bit table would be needed (16k).
73
74 a newton-raphson iteration for r is
75 w = r*r
76 u = 3 - m*w
77 r = r*u/2
78 can use a goldschmidt iteration for s at the end or
79 s = m*r
80
81 first goldschmidt iteration is
82 s = m*r
83 u = 3 - s*r
84 r = r*u/2
85 s = s*u/2
86 next goldschmidt iteration is
87 u = 3 - s*r
88 r = r*u/2
89 s = s*u/2
90 and at the end r is not computed only s.
91
92 they use the same amount of operations and converge at the
93 same quadratic rate, i.e. if
94 r1 sqrt(m) - 1 = e, then
95 r2 sqrt(m) - 1 = -3/2 e^2 - 1/2 e^3
96 the advantage of goldschmidt is that the mul for s and r
97 are independent (computed in parallel), however it is not
98 "self synchronizing": it only uses the input m in the
99 first iteration so rounding errors accumulate. at the end
100 or when switching to larger precision arithmetics rounding
101 errors dominate so the first iteration should be used.
102
103 the fixed point representations are
104 m: 2.30 r: 0.32, s: 2.30, d: 2.30, u: 2.30, three: 2.30
105 and after switching to 64 bit
106 m: 2.62 r: 0.64, s: 2.62, d: 2.62, u: 2.62, three: 2.62 */
107
108 static const uint64_t three = 0xc0000000;
109 uint64_t r, s, d, u, i;
110
111 i = (ix >> 46) % 128;
112 r = (uint32_t)__rsqrt_tab[i] << 16;
113 /* |r sqrt(m) - 1| < 0x1.fdp-9 */
114 s = mul32(m>>32, r);
115 /* |s/sqrt(m) - 1| < 0x1.fdp-9 */
116 d = mul32(s, r);
117 u = three - d;
118 r = mul32(r, u) << 1;
119 /* |r sqrt(m) - 1| < 0x1.7bp-16 */
120 s = mul32(s, u) << 1;
121 /* |s/sqrt(m) - 1| < 0x1.7bp-16 */
122 d = mul32(s, r);
123 u = three - d;
124 r = mul32(r, u) << 1;
125 /* |r sqrt(m) - 1| < 0x1.3704p-29 (measured worst-case) */
126 r = r << 32;
127 s = mul64(m, r);
128 d = mul64(s, r);
129 u = (three<<32) - d;
130 s = mul64(s, u); /* repr: 3.61 */
131 /* -0x1p-57 < s - sqrt(m) < 0x1.8001p-61 */
132 s = (s - 2) >> 9; /* repr: 12.52 */
133 /* -0x1.09p-52 < s - sqrt(m) < -0x1.fffcp-63 */
134
135 /* s < sqrt(m) < s + 0x1.09p-52,
136 compute nearest rounded result:
137 the nearest result to 52 bits is either s or s+0x1p-52,
138 we can decide by comparing (2^52 s + 0.5)^2 to 2^104 m. */
139 uint64_t d0, d1, d2;
140 double y, t;
141 d0 = (m << 42) - s*s;
142 d1 = s - d0;
143 d2 = d1 + s + 1;
144 s += d1 >> 63;
145 s &= 0x000fffffffffffff;
146 s |= top << 52;
147 y = asdouble(s);
148 if (FENV_SUPPORT) {
149 /* handle rounding modes and inexact exception:
150 only (s+1)^2 == 2^42 m case is exact otherwise
151 add a tiny value to cause the fenv effects. */
152 uint64_t tiny = predict_false(d2==0) ? 0 : 0x0010000000000000;
153 tiny |= (d1^d2) & 0x8000000000000000;
154 t = asdouble(tiny);
155 y = eval_as_double(y + t);
177 }156 }
178 ix0 = (q>>1) + 0x3fe00000;157 return y;
179 ix1 = q1>>1;
180 if (q&1)
181 ix1 |= sign;
182 INSERT_WORDS(z, ix0 + ((uint32_t)m << 20), ix1);
183 return z;
184}158}
lib/libc/musl/src/math/sqrt_data.c created+19
...@@ -0,0 +1,19 @@
1#include "sqrt_data.h"
2const uint16_t __rsqrt_tab[128] = {
30xb451,0xb2f0,0xb196,0xb044,0xaef9,0xadb6,0xac79,0xab43,
40xaa14,0xa8eb,0xa7c8,0xa6aa,0xa592,0xa480,0xa373,0xa26b,
50xa168,0xa06a,0x9f70,0x9e7b,0x9d8a,0x9c9d,0x9bb5,0x9ad1,
60x99f0,0x9913,0x983a,0x9765,0x9693,0x95c4,0x94f8,0x9430,
70x936b,0x92a9,0x91ea,0x912e,0x9075,0x8fbe,0x8f0a,0x8e59,
80x8daa,0x8cfe,0x8c54,0x8bac,0x8b07,0x8a64,0x89c4,0x8925,
90x8889,0x87ee,0x8756,0x86c0,0x862b,0x8599,0x8508,0x8479,
100x83ec,0x8361,0x82d8,0x8250,0x81c9,0x8145,0x80c2,0x8040,
110xff02,0xfd0e,0xfb25,0xf947,0xf773,0xf5aa,0xf3ea,0xf234,
120xf087,0xeee3,0xed47,0xebb3,0xea27,0xe8a3,0xe727,0xe5b2,
130xe443,0xe2dc,0xe17a,0xe020,0xdecb,0xdd7d,0xdc34,0xdaf1,
140xd9b3,0xd87b,0xd748,0xd61a,0xd4f1,0xd3cd,0xd2ad,0xd192,
150xd07b,0xcf69,0xce5b,0xcd51,0xcc4a,0xcb48,0xca4a,0xc94f,
160xc858,0xc764,0xc674,0xc587,0xc49d,0xc3b7,0xc2d4,0xc1f4,
170xc116,0xc03c,0xbf65,0xbe90,0xbdbe,0xbcef,0xbc23,0xbb59,
180xba91,0xb9cc,0xb90a,0xb84a,0xb78c,0xb6d0,0xb617,0xb560,
19};
lib/libc/musl/src/math/sqrt_data.h created+13
...@@ -0,0 +1,13 @@
1#ifndef _SQRT_DATA_H
2#define _SQRT_DATA_H
3
4#include <features.h>
5#include <stdint.h>
6
7/* if x in [1,2): i = (int)(64*x);
8 if x in [2,4): i = (int)(32*x-64);
9 __rsqrt_tab[i]*2^-16 is estimating 1/sqrt(x) with small relative error:
10 |__rsqrt_tab[i]*0x1p-16*sqrt(x) - 1| < -0x1.fdp-9 < 2^-8 */
11extern hidden const uint16_t __rsqrt_tab[128];
12
13#endif
lib/libc/musl/src/math/sqrtf.c+70-70
...@@ -1,83 +1,83 @@...@@ -1,83 +1,83 @@
1/* origin: FreeBSD /usr/src/lib/msun/src/e_sqrtf.c */1#include <stdint.h>
2/*2#include <math.h>
3 * Conversion to float by Ian Lance Taylor, Cygnus Support, ian@cygnus.com.
4 */
5/*
6 * ====================================================
7 * Copyright (C) 1993 by Sun Microsystems, Inc. All rights reserved.
8 *
9 * Developed at SunPro, a Sun Microsystems, Inc. business.
10 * Permission to use, copy, modify, and distribute this
11 * software is freely granted, provided that this notice
12 * is preserved.
13 * ====================================================
14 */
15
16#include "libm.h"3#include "libm.h"
4#include "sqrt_data.h"
175
18static const float tiny = 1.0e-30;6#define FENV_SUPPORT 1
197
20float sqrtf(float x)8static inline uint32_t mul32(uint32_t a, uint32_t b)
21{9{
22 float z;10 return (uint64_t)a*b >> 32;
23 int32_t sign = (int)0x80000000;11}
24 int32_t ix,s,q,m,t,i;
25 uint32_t r;
2612
27 GET_FLOAT_WORD(ix, x);13/* see sqrt.c for more detailed comments. */
2814
29 /* take care of Inf and NaN */15float sqrtf(float x)
30 if ((ix&0x7f800000) == 0x7f800000)16{
31 return x*x + x; /* sqrt(NaN)=NaN, sqrt(+inf)=+inf, sqrt(-inf)=sNaN */17 uint32_t ix, m, m1, m0, even, ey;
3218
33 /* take care of zero */19 ix = asuint(x);
34 if (ix <= 0) {20 if (predict_false(ix - 0x00800000 >= 0x7f800000 - 0x00800000)) {
35 if ((ix&~sign) == 0)21 /* x < 0x1p-126 or inf or nan. */
36 return x; /* sqrt(+-0) = +-0 */22 if (ix * 2 == 0)
37 if (ix < 0)23 return x;
38 return (x-x)/(x-x); /* sqrt(-ve) = sNaN */24 if (ix == 0x7f800000)
39 }25 return x;
40 /* normalize x */26 if (ix > 0x7f800000)
41 m = ix>>23;27 return __math_invalidf(x);
42 if (m == 0) { /* subnormal x */28 /* x is subnormal, normalize it. */
43 for (i = 0; (ix&0x00800000) == 0; i++)29 ix = asuint(x * 0x1p23f);
44 ix<<=1;30 ix -= 23 << 23;
45 m -= i - 1;
46 }31 }
47 m -= 127; /* unbias exponent */
48 ix = (ix&0x007fffff)|0x00800000;
49 if (m&1) /* odd m, double x to make it even */
50 ix += ix;
51 m >>= 1; /* m = [m/2] */
5232
53 /* generate sqrt(x) bit by bit */33 /* x = 4^e m; with int e and m in [1, 4). */
54 ix += ix;34 even = ix & 0x00800000;
55 q = s = 0; /* q = sqrt(x) */35 m1 = (ix << 8) | 0x80000000;
56 r = 0x01000000; /* r = moving bit from right to left */36 m0 = (ix << 7) & 0x7fffffff;
37 m = even ? m0 : m1;
5738
58 while (r != 0) {39 /* 2^e is the exponent part of the return value. */
59 t = s + r;40 ey = ix >> 1;
60 if (t <= ix) {41 ey += 0x3f800000 >> 1;
61 s = t+r;42 ey &= 0x7f800000;
62 ix -= t;43
63 q += r;44 /* compute r ~ 1/sqrt(m), s ~ sqrt(m) with 2 goldschmidt iterations. */
64 }45 static const uint32_t three = 0xc0000000;
65 ix += ix;46 uint32_t r, s, d, u, i;
66 r >>= 1;47 i = (ix >> 17) % 128;
67 }48 r = (uint32_t)__rsqrt_tab[i] << 16;
49 /* |r*sqrt(m) - 1| < 0x1p-8 */
50 s = mul32(m, r);
51 /* |s/sqrt(m) - 1| < 0x1p-8 */
52 d = mul32(s, r);
53 u = three - d;
54 r = mul32(r, u) << 1;
55 /* |r*sqrt(m) - 1| < 0x1.7bp-16 */
56 s = mul32(s, u) << 1;
57 /* |s/sqrt(m) - 1| < 0x1.7bp-16 */
58 d = mul32(s, r);
59 u = three - d;
60 s = mul32(s, u);
61 /* -0x1.03p-28 < s/sqrt(m) - 1 < 0x1.fp-31 */
62 s = (s - 1)>>6;
63 /* s < sqrt(m) < s + 0x1.08p-23 */
6864
69 /* use floating add to find out rounding direction */65 /* compute nearest rounded result. */
70 if (ix != 0) {66 uint32_t d0, d1, d2;
71 z = 1.0f - tiny; /* raise inexact flag */67 float y, t;
72 if (z >= 1.0f) {68 d0 = (m << 16) - s*s;
73 z = 1.0f + tiny;69 d1 = s - d0;
74 if (z > 1.0f)70 d2 = d1 + s + 1;
75 q += 2;71 s += d1 >> 31;
76 else72 s &= 0x007fffff;
77 q += q & 1;73 s |= ey;
78 }74 y = asfloat(s);
75 if (FENV_SUPPORT) {
76 /* handle rounding and inexact exception. */
77 uint32_t tiny = predict_false(d2==0) ? 0 : 0x01000000;
78 tiny |= (d1^d2) & 0x80000000;
79 t = asfloat(tiny);
80 y = eval_as_float(y + t);
79 }81 }
80 ix = (q>>1) + 0x3f000000;82 return y;
81 SET_FLOAT_WORD(z, ix + ((uint32_t)m << 23));
82 return z;
83}83}
lib/libc/musl/src/math/sqrtl.c+253-1
...@@ -1,7 +1,259 @@...@@ -1,7 +1,259 @@
1#include <stdint.h>
1#include <math.h>2#include <math.h>
3#include <float.h>
4#include "libm.h"
25
6#if LDBL_MANT_DIG == 53 && LDBL_MAX_EXP == 1024
3long double sqrtl(long double x)7long double sqrtl(long double x)
4{8{
5 /* FIXME: implement in C, this is for LDBL_MANT_DIG == 64 only */
6 return sqrt(x);9 return sqrt(x);
7}10}
11#elif (LDBL_MANT_DIG == 113 || LDBL_MANT_DIG == 64) && LDBL_MAX_EXP == 16384
12#include "sqrt_data.h"
13
14#define FENV_SUPPORT 1
15
16typedef struct {
17 uint64_t hi;
18 uint64_t lo;
19} u128;
20
21/* top: 16 bit sign+exponent, x: significand. */
22static inline long double mkldbl(uint64_t top, u128 x)
23{
24 union ldshape u;
25#if LDBL_MANT_DIG == 113
26 u.i2.hi = x.hi;
27 u.i2.lo = x.lo;
28 u.i2.hi &= 0x0000ffffffffffff;
29 u.i2.hi |= top << 48;
30#elif LDBL_MANT_DIG == 64
31 u.i.se = top;
32 u.i.m = x.lo;
33 /* force the top bit on non-zero (and non-subnormal) results. */
34 if (top & 0x7fff)
35 u.i.m |= 0x8000000000000000;
36#endif
37 return u.f;
38}
39
40/* return: top 16 bit is sign+exp and following bits are the significand. */
41static inline u128 asu128(long double x)
42{
43 union ldshape u = {.f=x};
44 u128 r;
45#if LDBL_MANT_DIG == 113
46 r.hi = u.i2.hi;
47 r.lo = u.i2.lo;
48#elif LDBL_MANT_DIG == 64
49 r.lo = u.i.m<<49;
50 /* ignore the top bit: pseudo numbers are not handled. */
51 r.hi = u.i.m>>15;
52 r.hi &= 0x0000ffffffffffff;
53 r.hi |= (uint64_t)u.i.se << 48;
54#endif
55 return r;
56}
57
58/* returns a*b*2^-32 - e, with error 0 <= e < 1. */
59static inline uint32_t mul32(uint32_t a, uint32_t b)
60{
61 return (uint64_t)a*b >> 32;
62}
63
64/* returns a*b*2^-64 - e, with error 0 <= e < 3. */
65static inline uint64_t mul64(uint64_t a, uint64_t b)
66{
67 uint64_t ahi = a>>32;
68 uint64_t alo = a&0xffffffff;
69 uint64_t bhi = b>>32;
70 uint64_t blo = b&0xffffffff;
71 return ahi*bhi + (ahi*blo >> 32) + (alo*bhi >> 32);
72}
73
74static inline u128 add64(u128 a, uint64_t b)
75{
76 u128 r;
77 r.lo = a.lo + b;
78 r.hi = a.hi;
79 if (r.lo < a.lo)
80 r.hi++;
81 return r;
82}
83
84static inline u128 add128(u128 a, u128 b)
85{
86 u128 r;
87 r.lo = a.lo + b.lo;
88 r.hi = a.hi + b.hi;
89 if (r.lo < a.lo)
90 r.hi++;
91 return r;
92}
93
94static inline u128 sub64(u128 a, uint64_t b)
95{
96 u128 r;
97 r.lo = a.lo - b;
98 r.hi = a.hi;
99 if (a.lo < b)
100 r.hi--;
101 return r;
102}
103
104static inline u128 sub128(u128 a, u128 b)
105{
106 u128 r;
107 r.lo = a.lo - b.lo;
108 r.hi = a.hi - b.hi;
109 if (a.lo < b.lo)
110 r.hi--;
111 return r;
112}
113
114/* a<<n, 0 <= n <= 127 */
115static inline u128 lsh(u128 a, int n)
116{
117 if (n == 0)
118 return a;
119 if (n >= 64) {
120 a.hi = a.lo<<(n-64);
121 a.lo = 0;
122 } else {
123 a.hi = (a.hi<<n) | (a.lo>>(64-n));
124 a.lo = a.lo<<n;
125 }
126 return a;
127}
128
129/* a>>n, 0 <= n <= 127 */
130static inline u128 rsh(u128 a, int n)
131{
132 if (n == 0)
133 return a;
134 if (n >= 64) {
135 a.lo = a.hi>>(n-64);
136 a.hi = 0;
137 } else {
138 a.lo = (a.lo>>n) | (a.hi<<(64-n));
139 a.hi = a.hi>>n;
140 }
141 return a;
142}
143
144/* returns a*b exactly. */
145static inline u128 mul64_128(uint64_t a, uint64_t b)
146{
147 u128 r;
148 uint64_t ahi = a>>32;
149 uint64_t alo = a&0xffffffff;
150 uint64_t bhi = b>>32;
151 uint64_t blo = b&0xffffffff;
152 uint64_t lo1 = ((ahi*blo)&0xffffffff) + ((alo*bhi)&0xffffffff) + (alo*blo>>32);
153 uint64_t lo2 = (alo*blo)&0xffffffff;
154 r.hi = ahi*bhi + (ahi*blo>>32) + (alo*bhi>>32) + (lo1>>32);
155 r.lo = (lo1<<32) + lo2;
156 return r;
157}
158
159/* returns a*b*2^-128 - e, with error 0 <= e < 7. */
160static inline u128 mul128(u128 a, u128 b)
161{
162 u128 hi = mul64_128(a.hi, b.hi);
163 uint64_t m1 = mul64(a.hi, b.lo);
164 uint64_t m2 = mul64(a.lo, b.hi);
165 return add64(add64(hi, m1), m2);
166}
167
168/* returns a*b % 2^128. */
169static inline u128 mul128_tail(u128 a, u128 b)
170{
171 u128 lo = mul64_128(a.lo, b.lo);
172 lo.hi += a.hi*b.lo + a.lo*b.hi;
173 return lo;
174}
175
176
177/* see sqrt.c for detailed comments. */
178
179long double sqrtl(long double x)
180{
181 u128 ix, ml;
182 uint64_t top;
183
184 ix = asu128(x);
185 top = ix.hi >> 48;
186 if (predict_false(top - 0x0001 >= 0x7fff - 0x0001)) {
187 /* x < 0x1p-16382 or inf or nan. */
188 if (2*ix.hi == 0 && ix.lo == 0)
189 return x;
190 if (ix.hi == 0x7fff000000000000 && ix.lo == 0)
191 return x;
192 if (top >= 0x7fff)
193 return __math_invalidl(x);
194 /* x is subnormal, normalize it. */
195 ix = asu128(x * 0x1p112);
196 top = ix.hi >> 48;
197 top -= 112;
198 }
199
200 /* x = 4^e m; with int e and m in [1, 4) */
201 int even = top & 1;
202 ml = lsh(ix, 15);
203 ml.hi |= 0x8000000000000000;
204 if (even) ml = rsh(ml, 1);
205 top = (top + 0x3fff) >> 1;
206
207 /* r ~ 1/sqrt(m) */
208 static const uint64_t three = 0xc0000000;
209 uint64_t r, s, d, u, i;
210 i = (ix.hi >> 42) % 128;
211 r = (uint32_t)__rsqrt_tab[i] << 16;
212 /* |r sqrt(m) - 1| < 0x1p-8 */
213 s = mul32(ml.hi>>32, r);
214 d = mul32(s, r);
215 u = three - d;
216 r = mul32(u, r) << 1;
217 /* |r sqrt(m) - 1| < 0x1.7bp-16, switch to 64bit */
218 r = r<<32;
219 s = mul64(ml.hi, r);
220 d = mul64(s, r);
221 u = (three<<32) - d;
222 r = mul64(u, r) << 1;
223 /* |r sqrt(m) - 1| < 0x1.a5p-31 */
224 s = mul64(u, s) << 1;
225 d = mul64(s, r);
226 u = (three<<32) - d;
227 r = mul64(u, r) << 1;
228 /* |r sqrt(m) - 1| < 0x1.c001p-59, switch to 128bit */
229
230 static const u128 threel = {.hi=three<<32, .lo=0};
231 u128 rl, sl, dl, ul;
232 rl.hi = r;
233 rl.lo = 0;
234 sl = mul128(ml, rl);
235 dl = mul128(sl, rl);
236 ul = sub128(threel, dl);
237 sl = mul128(ul, sl); /* repr: 3.125 */
238 /* -0x1p-116 < s - sqrt(m) < 0x3.8001p-125 */
239 sl = rsh(sub64(sl, 4), 125-(LDBL_MANT_DIG-1));
240 /* s < sqrt(m) < s + 1 ULP + tiny */
241
242 long double y;
243 u128 d2, d1, d0;
244 d0 = sub128(lsh(ml, 2*(LDBL_MANT_DIG-1)-126), mul128_tail(sl,sl));
245 d1 = sub128(sl, d0);
246 d2 = add128(add64(sl, 1), d1);
247 sl = add64(sl, d1.hi >> 63);
248 y = mkldbl(top, sl);
249 if (FENV_SUPPORT) {
250 /* handle rounding modes and inexact exception. */
251 top = predict_false((d2.hi|d2.lo)==0) ? 0 : 1;
252 top |= ((d1.hi^d2.hi)&0x8000000000000000) >> 48;
253 y += mkldbl(top, (u128){0});
254 }
255 return y;
256}
257#else
258#error unsupported long double format
259#endif
lib/libc/musl/src/misc/ioctl.c+13-5
...@@ -4,6 +4,7 @@...@@ -4,6 +4,7 @@
4#include <time.h>4#include <time.h>
5#include <sys/time.h>5#include <sys/time.h>
6#include <stddef.h>6#include <stddef.h>
7#include <stdint.h>
7#include <string.h>8#include <string.h>
8#include "syscall.h"9#include "syscall.h"
910
...@@ -28,6 +29,12 @@ struct ioctl_compat_map {...@@ -28,6 +29,12 @@ struct ioctl_compat_map {
28 * number producing macros; only size of result is meaningful. */29 * number producing macros; only size of result is meaningful. */
29#define new_misaligned(n) struct { int i; time_t t; char c[(n)-4]; }30#define new_misaligned(n) struct { int i; time_t t; char c[(n)-4]; }
3031
32struct v4l2_event {
33 uint32_t a;
34 uint64_t b[8];
35 uint32_t c[2], ts[2], d[9];
36};
37
31static const struct ioctl_compat_map compat_map[] = {38static const struct ioctl_compat_map compat_map[] = {
32 { SIOCGSTAMP, SIOCGSTAMP_OLD, 8, R, 0, OFFS(0, 4) },39 { SIOCGSTAMP, SIOCGSTAMP_OLD, 8, R, 0, OFFS(0, 4) },
33 { SIOCGSTAMPNS, SIOCGSTAMPNS_OLD, 8, R, 0, OFFS(0, 4) },40 { SIOCGSTAMPNS, SIOCGSTAMPNS_OLD, 8, R, 0, OFFS(0, 4) },
...@@ -49,13 +56,14 @@ static const struct ioctl_compat_map compat_map[] = {...@@ -49,13 +56,14 @@ static const struct ioctl_compat_map compat_map[] = {
49 { 0, 0, 8, WR, 1, OFFS(0,4) }, /* snd_pcm_mmap_control */56 { 0, 0, 8, WR, 1, OFFS(0,4) }, /* snd_pcm_mmap_control */
5057
51 /* VIDIOC_QUERYBUF, VIDIOC_QBUF, VIDIOC_DQBUF, VIDIOC_PREPARE_BUF */58 /* VIDIOC_QUERYBUF, VIDIOC_QBUF, VIDIOC_DQBUF, VIDIOC_PREPARE_BUF */
52 { _IOWR('V', 9, new_misaligned(72)), _IOWR('V', 9, char[72]), 72, WR, 0, OFFS(20) },59 { _IOWR('V', 9, new_misaligned(68)), _IOWR('V', 9, char[68]), 68, WR, 1, OFFS(20, 24) },
53 { _IOWR('V', 15, new_misaligned(72)), _IOWR('V', 15, char[72]), 72, WR, 0, OFFS(20) },60 { _IOWR('V', 15, new_misaligned(68)), _IOWR('V', 15, char[68]), 68, WR, 1, OFFS(20, 24) },
54 { _IOWR('V', 17, new_misaligned(72)), _IOWR('V', 17, char[72]), 72, WR, 0, OFFS(20) },61 { _IOWR('V', 17, new_misaligned(68)), _IOWR('V', 17, char[68]), 68, WR, 1, OFFS(20, 24) },
55 { _IOWR('V', 93, new_misaligned(72)), _IOWR('V', 93, char[72]), 72, WR, 0, OFFS(20) },62 { _IOWR('V', 93, new_misaligned(68)), _IOWR('V', 93, char[68]), 68, WR, 1, OFFS(20, 24) },
5663
57 /* VIDIOC_DQEVENT */64 /* VIDIOC_DQEVENT */
58 { _IOR('V', 89, new_misaligned(96)), _IOR('V', 89, char[96]), 96, R, 0, OFFS(76,80) },65 { _IOR('V', 89, new_misaligned(120)), _IOR('V', 89, struct v4l2_event), sizeof(struct v4l2_event),
66 R, 0, OFFS(offsetof(struct v4l2_event, ts[0]), offsetof(struct v4l2_event, ts[1])) },
5967
60 /* VIDIOC_OMAP3ISP_STAT_REQ */68 /* VIDIOC_OMAP3ISP_STAT_REQ */
61 { _IOWR('V', 192+6, char[32]), _IOWR('V', 192+6, char[24]), 22, WR, 0, OFFS(0,4) },69 { _IOWR('V', 192+6, char[32]), _IOWR('V', 192+6, char[24]), 22, WR, 0, OFFS(0,4) },
lib/libc/musl/src/misc/realpath.c+136-23
...@@ -1,43 +1,156 @@...@@ -1,43 +1,156 @@
1#include <stdlib.h>1#include <stdlib.h>
2#include <limits.h>2#include <limits.h>
3#include <sys/stat.h>
4#include <fcntl.h>
5#include <errno.h>3#include <errno.h>
6#include <unistd.h>4#include <unistd.h>
7#include <string.h>5#include <string.h>
8#include "syscall.h"6
7static size_t slash_len(const char *s)
8{
9 const char *s0 = s;
10 while (*s == '/') s++;
11 return s-s0;
12}
913
10char *realpath(const char *restrict filename, char *restrict resolved)14char *realpath(const char *restrict filename, char *restrict resolved)
11{15{
12 int fd;16 char stack[PATH_MAX+1];
13 ssize_t r;17 char output[PATH_MAX];
14 struct stat st1, st2;18 size_t p, q, l, l0, cnt=0, nup=0;
15 char buf[15+3*sizeof(int)];19 int check_dir=0;
16 char tmp[PATH_MAX];
1720
18 if (!filename) {21 if (!filename) {
19 errno = EINVAL;22 errno = EINVAL;
20 return 0;23 return 0;
21 }24 }
25 l = strnlen(filename, sizeof stack);
26 if (!l) {
27 errno = ENOENT;
28 return 0;
29 }
30 if (l >= PATH_MAX) goto toolong;
31 p = sizeof stack - l - 1;
32 q = 0;
33 memcpy(stack+p, filename, l+1);
34
35 /* Main loop. Each iteration pops the next part from stack of
36 * remaining path components and consumes any slashes that follow.
37 * If not a link, it's moved to output; if a link, contents are
38 * pushed to the stack. */
39restart:
40 for (; ; p+=slash_len(stack+p)) {
41 /* If stack starts with /, the whole component is / or //
42 * and the output state must be reset. */
43 if (stack[p] == '/') {
44 check_dir=0;
45 nup=0;
46 q=0;
47 output[q++] = '/';
48 p++;
49 /* Initial // is special. */
50 if (stack[p] == '/' && stack[p+1] != '/')
51 output[q++] = '/';
52 continue;
53 }
54
55 char *z = __strchrnul(stack+p, '/');
56 l0 = l = z-(stack+p);
2257
23 fd = sys_open(filename, O_PATH|O_NONBLOCK|O_CLOEXEC);58 if (!l && !check_dir) break;
24 if (fd < 0) return 0;
25 __procfdname(buf, fd);
2659
27 r = readlink(buf, tmp, sizeof tmp - 1);60 /* Skip any . component but preserve check_dir status. */
28 if (r < 0) goto err;61 if (l==1 && stack[p]=='.') {
29 tmp[r] = 0;62 p += l;
63 continue;
64 }
3065
31 fstat(fd, &st1);66 /* Copy next component onto output at least temporarily, to
32 r = stat(tmp, &st2);67 * call readlink, but wait to advance output position until
33 if (r<0 || st1.st_dev != st2.st_dev || st1.st_ino != st2.st_ino) {68 * determining it's not a link. */
34 if (!r) errno = ELOOP;69 if (q && output[q-1] != '/') {
35 goto err;70 if (!p) goto toolong;
71 stack[--p] = '/';
72 l++;
73 }
74 if (q+l >= PATH_MAX) goto toolong;
75 memcpy(output+q, stack+p, l);
76 output[q+l] = 0;
77 p += l;
78
79 int up = 0;
80 if (l0==2 && stack[p-2]=='.' && stack[p-1]=='.') {
81 up = 1;
82 /* Any non-.. path components we could cancel start
83 * after nup repetitions of the 3-byte string "../";
84 * if there are none, accumulate .. components to
85 * later apply to cwd, if needed. */
86 if (q <= 3*nup) {
87 nup++;
88 q += l;
89 continue;
90 }
91 /* When previous components are already known to be
92 * directories, processing .. can skip readlink. */
93 if (!check_dir) goto skip_readlink;
94 }
95 ssize_t k = readlink(output, stack, p);
96 if (k==p) goto toolong;
97 if (!k) {
98 errno = ENOENT;
99 return 0;
100 }
101 if (k<0) {
102 if (errno != EINVAL) return 0;
103skip_readlink:
104 check_dir = 0;
105 if (up) {
106 while(q && output[q-1]!='/') q--;
107 if (q>1 && (q>2 || output[0]!='/')) q--;
108 continue;
109 }
110 if (l0) q += l;
111 check_dir = stack[p];
112 continue;
113 }
114 if (++cnt == SYMLOOP_MAX) {
115 errno = ELOOP;
116 return 0;
117 }
118
119 /* If link contents end in /, strip any slashes already on
120 * stack to avoid /->// or //->/// or spurious toolong. */
121 if (stack[k-1]=='/') while (stack[p]=='/') p++;
122 p -= k;
123 memmove(stack+p, stack, k);
124
125 /* Skip the stack advancement in case we have a new
126 * absolute base path. */
127 goto restart;
36 }128 }
37129
38 __syscall(SYS_close, fd);130 output[q] = 0;
39 return resolved ? strcpy(resolved, tmp) : strdup(tmp);131
40err:132 if (output[0] != '/') {
41 __syscall(SYS_close, fd);133 if (!getcwd(stack, sizeof stack)) return 0;
134 l = strlen(stack);
135 /* Cancel any initial .. components. */
136 p = 0;
137 while (nup--) {
138 while(l>1 && stack[l-1]!='/') l--;
139 if (l>1) l--;
140 p += 2;
141 if (p<q) p++;
142 }
143 if (q-p && stack[l-1]!='/') stack[l++] = '/';
144 if (l + (q-p) + 1 >= PATH_MAX) goto toolong;
145 memmove(output + l, output + p, q - p + 1);
146 memcpy(output, stack, l);
147 q = l + q-p;
148 }
149
150 if (resolved) return memcpy(resolved, output, q+1);
151 else return strdup(output);
152
153toolong:
154 errno = ENAMETOOLONG;
42 return 0;155 return 0;
43}156}
lib/libc/musl/src/misc/setrlimit.c+17-20
...@@ -6,25 +6,8 @@...@@ -6,25 +6,8 @@
6#define MIN(a, b) ((a)<(b) ? (a) : (b))6#define MIN(a, b) ((a)<(b) ? (a) : (b))
7#define FIX(x) do{ if ((x)>=SYSCALL_RLIM_INFINITY) (x)=RLIM_INFINITY; }while(0)7#define FIX(x) do{ if ((x)>=SYSCALL_RLIM_INFINITY) (x)=RLIM_INFINITY; }while(0)
88
9static int __setrlimit(int resource, const struct rlimit *rlim)
10{
11 unsigned long k_rlim[2];
12 struct rlimit tmp;
13 if (SYSCALL_RLIM_INFINITY != RLIM_INFINITY) {
14 tmp = *rlim;
15 FIX(tmp.rlim_cur);
16 FIX(tmp.rlim_max);
17 rlim = &tmp;
18 }
19 int ret = __syscall(SYS_prlimit64, 0, resource, rlim, 0);
20 if (ret != -ENOSYS) return ret;
21 k_rlim[0] = MIN(rlim->rlim_cur, MIN(-1UL, SYSCALL_RLIM_INFINITY));
22 k_rlim[1] = MIN(rlim->rlim_max, MIN(-1UL, SYSCALL_RLIM_INFINITY));
23 return __syscall(SYS_setrlimit, resource, k_rlim);
24}
25
26struct ctx {9struct ctx {
27 const struct rlimit *rlim;10 unsigned long lim[2];
28 int res;11 int res;
29 int err;12 int err;
30};13};
...@@ -33,12 +16,26 @@ static void do_setrlimit(void *p)...@@ -33,12 +16,26 @@ static void do_setrlimit(void *p)
33{16{
34 struct ctx *c = p;17 struct ctx *c = p;
35 if (c->err>0) return;18 if (c->err>0) return;
36 c->err = -__setrlimit(c->res, c->rlim);19 c->err = -__syscall(SYS_setrlimit, c->res, c->lim);
37}20}
3821
39int setrlimit(int resource, const struct rlimit *rlim)22int setrlimit(int resource, const struct rlimit *rlim)
40{23{
41 struct ctx c = { .res = resource, .rlim = rlim, .err = -1 };24 struct rlimit tmp;
25 if (SYSCALL_RLIM_INFINITY != RLIM_INFINITY) {
26 tmp = *rlim;
27 FIX(tmp.rlim_cur);
28 FIX(tmp.rlim_max);
29 rlim = &tmp;
30 }
31 int ret = __syscall(SYS_prlimit64, 0, resource, rlim, 0);
32 if (ret != -ENOSYS) return __syscall_ret(ret);
33
34 struct ctx c = {
35 .lim[0] = MIN(rlim->rlim_cur, MIN(-1UL, SYSCALL_RLIM_INFINITY)),
36 .lim[1] = MIN(rlim->rlim_max, MIN(-1UL, SYSCALL_RLIM_INFINITY)),
37 .res = resource, .err = -1
38 };
42 __synccall(do_setrlimit, &c);39 __synccall(do_setrlimit, &c);
43 if (c.err) {40 if (c.err) {
44 if (c.err>0) errno = c.err;41 if (c.err>0) errno = c.err;
lib/libc/musl/src/misc/syslog.c+2
...@@ -10,6 +10,7 @@...@@ -10,6 +10,7 @@
10#include <errno.h>10#include <errno.h>
11#include <fcntl.h>11#include <fcntl.h>
12#include "lock.h"12#include "lock.h"
13#include "fork_impl.h"
1314
14static volatile int lock[1];15static volatile int lock[1];
15static char log_ident[32];16static char log_ident[32];
...@@ -17,6 +18,7 @@ static int log_opt;...@@ -17,6 +18,7 @@ static int log_opt;
17static int log_facility = LOG_USER;18static int log_facility = LOG_USER;
18static int log_mask = 0xff;19static int log_mask = 0xff;
19static int log_fd = -1;20static int log_fd = -1;
21volatile int *const __syslog_lockptr = lock;
2022
21int setlogmask(int maskpri)23int setlogmask(int maskpri)
22{24{
lib/libc/musl/src/multibyte/wcsnrtombs.c+19-27
...@@ -1,41 +1,33 @@...@@ -1,41 +1,33 @@
1#include <wchar.h>1#include <wchar.h>
2#include <limits.h>
3#include <string.h>
24
3size_t wcsnrtombs(char *restrict dst, const wchar_t **restrict wcs, size_t wn, size_t n, mbstate_t *restrict st)5size_t wcsnrtombs(char *restrict dst, const wchar_t **restrict wcs, size_t wn, size_t n, mbstate_t *restrict st)
4{6{
5 size_t l, cnt=0, n2;
6 char *s, buf[256];
7 const wchar_t *ws = *wcs;7 const wchar_t *ws = *wcs;
8 const wchar_t *tmp_ws;8 size_t cnt = 0;
99 if (!dst) n=0;
10 if (!dst) s = buf, n = sizeof buf;10 while (ws && wn) {
11 else s = dst;11 char tmp[MB_LEN_MAX];
1212 size_t l = wcrtomb(n<MB_LEN_MAX ? tmp : dst, *ws, 0);
13 while ( ws && n && ( (n2=wn)>=n || n2>32 ) ) {13 if (l==-1) {
14 if (n2>=n) n2=n;14 cnt = -1;
15 tmp_ws = ws;
16 l = wcsrtombs(s, &ws, n2, 0);
17 if (!(l+1)) {
18 cnt = l;
19 n = 0;
20 break;15 break;
21 }16 }
22 if (s != buf) {17 if (dst) {
23 s += l;18 if (n<MB_LEN_MAX) {
19 if (l>n) break;
20 memcpy(dst, tmp, l);
21 }
22 dst += l;
24 n -= l;23 n -= l;
25 }24 }
26 wn = ws ? wn - (ws - tmp_ws) : 0;25 if (!*ws) {
27 cnt += l;26 ws = 0;
28 }
29 if (ws) while (n && wn) {
30 l = wcrtomb(s, *ws, 0);
31 if ((l+1)<=1) {
32 if (!l) ws = 0;
33 else cnt = l;
34 break;27 break;
35 }28 }
36 ws++; wn--;29 ws++;
37 /* safe - this loop runs fewer than sizeof(buf) times */30 wn--;
38 s+=l; n-=l;
39 cnt += l;31 cnt += l;
40 }32 }
41 if (dst) *wcs = ws;33 if (dst) *wcs = ws;
lib/libc/musl/src/network/h_errno.c+3-1
...@@ -1,9 +1,11 @@...@@ -1,9 +1,11 @@
1#include <netdb.h>1#include <netdb.h>
2#include "pthread_impl.h"
23
3#undef h_errno4#undef h_errno
4int h_errno;5int h_errno;
56
6int *__h_errno_location(void)7int *__h_errno_location(void)
7{8{
8 return &h_errno;9 if (!__pthread_self()->stack) return &h_errno;
10 return &__pthread_self()->h_errno_val;
9}11}
lib/libc/musl/src/network/herror.c+1-1
...@@ -4,5 +4,5 @@...@@ -4,5 +4,5 @@
44
5void herror(const char *msg)5void herror(const char *msg)
6{6{
7 fprintf(stderr, "%s%s%s", msg?msg:"", msg?": ":"", hstrerror(h_errno));7 fprintf(stderr, "%s%s%s\n", msg?msg:"", msg?": ":"", hstrerror(h_errno));
8}8}
lib/libc/musl/src/network/lookup_name.c+8-3
...@@ -50,7 +50,7 @@ static int name_from_hosts(struct address buf[static MAXADDRS], char canon[stati...@@ -50,7 +50,7 @@ static int name_from_hosts(struct address buf[static MAXADDRS], char canon[stati
50{50{
51 char line[512];51 char line[512];
52 size_t l = strlen(name);52 size_t l = strlen(name);
53 int cnt = 0, badfam = 0;53 int cnt = 0, badfam = 0, have_canon = 0;
54 unsigned char _buf[1032];54 unsigned char _buf[1032];
55 FILE _f, *f = __fopen_rb_ca("/etc/hosts", &_f, _buf, sizeof _buf);55 FILE _f, *f = __fopen_rb_ca("/etc/hosts", &_f, _buf, sizeof _buf);
56 if (!f) switch (errno) {56 if (!f) switch (errno) {
...@@ -80,14 +80,19 @@ static int name_from_hosts(struct address buf[static MAXADDRS], char canon[stati...@@ -80,14 +80,19 @@ static int name_from_hosts(struct address buf[static MAXADDRS], char canon[stati
80 continue;80 continue;
81 default:81 default:
82 badfam = EAI_NONAME;82 badfam = EAI_NONAME;
83 continue;83 break;
84 }84 }
8585
86 if (have_canon) continue;
87
86 /* Extract first name as canonical name */88 /* Extract first name as canonical name */
87 for (; *p && isspace(*p); p++);89 for (; *p && isspace(*p); p++);
88 for (z=p; *z && !isspace(*z); z++);90 for (z=p; *z && !isspace(*z); z++);
89 *z = 0;91 *z = 0;
90 if (is_valid_hostname(p)) memcpy(canon, p, z-p+1);92 if (is_valid_hostname(p)) {
93 have_canon = 1;
94 memcpy(canon, p, z-p+1);
95 }
91 }96 }
92 __fclose_ca(f);97 __fclose_ca(f);
93 return cnt ? cnt : badfam;98 return cnt ? cnt : badfam;
lib/libc/musl/src/network/res_query.c+15-1
...@@ -1,3 +1,4 @@...@@ -1,3 +1,4 @@
1#define _BSD_SOURCE
1#include <resolv.h>2#include <resolv.h>
2#include <netdb.h>3#include <netdb.h>
34
...@@ -6,7 +7,20 @@ int res_query(const char *name, int class, int type, unsigned char *dest, int le...@@ -6,7 +7,20 @@ int res_query(const char *name, int class, int type, unsigned char *dest, int le
6 unsigned char q[280];7 unsigned char q[280];
7 int ql = __res_mkquery(0, name, class, type, 0, 0, 0, q, sizeof q);8 int ql = __res_mkquery(0, name, class, type, 0, 0, 0, q, sizeof q);
8 if (ql < 0) return ql;9 if (ql < 0) return ql;
9 return __res_send(q, ql, dest, len);10 int r = __res_send(q, ql, dest, len);
11 if (r<12) {
12 h_errno = TRY_AGAIN;
13 return -1;
14 }
15 if ((dest[3] & 15) == 3) {
16 h_errno = HOST_NOT_FOUND;
17 return -1;
18 }
19 if ((dest[3] & 15) == 0 && !dest[6] && !dest[7]) {
20 h_errno = NO_DATA;
21 return -1;
22 }
23 return r;
10}24}
1125
12weak_alias(res_query, res_search);26weak_alias(res_query, res_search);
lib/libc/musl/src/passwd/getgrouplist.c+2-1
...@@ -31,7 +31,8 @@ int getgrouplist(const char *user, gid_t gid, gid_t *groups, int *ngroups)...@@ -31,7 +31,8 @@ int getgrouplist(const char *user, gid_t gid, gid_t *groups, int *ngroups)
31 if (resp[INITGRFOUND]) {31 if (resp[INITGRFOUND]) {
32 nscdbuf = calloc(resp[INITGRNGRPS], sizeof(uint32_t));32 nscdbuf = calloc(resp[INITGRNGRPS], sizeof(uint32_t));
33 if (!nscdbuf) goto cleanup;33 if (!nscdbuf) goto cleanup;
34 if (!fread(nscdbuf, sizeof(*nscdbuf)*resp[INITGRNGRPS], 1, f)) {34 size_t nbytes = sizeof(*nscdbuf)*resp[INITGRNGRPS];
35 if (nbytes && !fread(nscdbuf, nbytes, 1, f)) {
35 if (!ferror(f)) errno = EIO;36 if (!ferror(f)) errno = EIO;
36 goto cleanup;37 goto cleanup;
37 }38 }
lib/libc/musl/src/prng/random.c+2
...@@ -1,6 +1,7 @@...@@ -1,6 +1,7 @@
1#include <stdlib.h>1#include <stdlib.h>
2#include <stdint.h>2#include <stdint.h>
3#include "lock.h"3#include "lock.h"
4#include "fork_impl.h"
45
5/*6/*
6this code uses the same lagged fibonacci generator as the7this code uses the same lagged fibonacci generator as the
...@@ -23,6 +24,7 @@ static int i = 3;...@@ -23,6 +24,7 @@ static int i = 3;
23static int j = 0;24static int j = 0;
24static uint32_t *x = init+1;25static uint32_t *x = init+1;
25static volatile int lock[1];26static volatile int lock[1];
27volatile int *const __random_lockptr = lock;
2628
27static uint32_t lcg31(uint32_t x) {29static uint32_t lcg31(uint32_t x) {
28 return (1103515245*x + 12345) & 0x7fffffff;30 return (1103515245*x + 12345) & 0x7fffffff;
lib/libc/musl/src/process/_Fork.c created+38
...@@ -0,0 +1,38 @@
1#include <unistd.h>
2#include <signal.h>
3#include "syscall.h"
4#include "libc.h"
5#include "lock.h"
6#include "pthread_impl.h"
7#include "aio_impl.h"
8
9static void dummy(int x) { }
10weak_alias(dummy, __aio_atfork);
11
12pid_t _Fork(void)
13{
14 pid_t ret;
15 sigset_t set;
16 __block_all_sigs(&set);
17 __aio_atfork(-1);
18 LOCK(__abort_lock);
19#ifdef SYS_fork
20 ret = __syscall(SYS_fork);
21#else
22 ret = __syscall(SYS_clone, SIGCHLD, 0);
23#endif
24 if (!ret) {
25 pthread_t self = __pthread_self();
26 self->tid = __syscall(SYS_gettid);
27 self->robust_list.off = 0;
28 self->robust_list.pending = 0;
29 self->next = self->prev = self;
30 __thread_list_lock = 0;
31 libc.threads_minus_1 = 0;
32 if (libc.need_locks) libc.need_locks = -1;
33 }
34 UNLOCK(__abort_lock);
35 __aio_atfork(!ret);
36 __restore_sigs(&set);
37 return __syscall_ret(ret);
38}
lib/libc/musl/src/process/fork.c+71-23
...@@ -1,38 +1,86 @@...@@ -1,38 +1,86 @@
1#include <unistd.h>1#include <unistd.h>
2#include <string.h>2#include <errno.h>
3#include <signal.h>
4#include "syscall.h"
5#include "libc.h"3#include "libc.h"
4#include "lock.h"
6#include "pthread_impl.h"5#include "pthread_impl.h"
6#include "fork_impl.h"
77
8static void dummy(int x)8static volatile int *const dummy_lockptr = 0;
9{9
10}10weak_alias(dummy_lockptr, __at_quick_exit_lockptr);
11weak_alias(dummy_lockptr, __atexit_lockptr);
12weak_alias(dummy_lockptr, __dlerror_lockptr);
13weak_alias(dummy_lockptr, __gettext_lockptr);
14weak_alias(dummy_lockptr, __locale_lockptr);
15weak_alias(dummy_lockptr, __random_lockptr);
16weak_alias(dummy_lockptr, __sem_open_lockptr);
17weak_alias(dummy_lockptr, __stdio_ofl_lockptr);
18weak_alias(dummy_lockptr, __syslog_lockptr);
19weak_alias(dummy_lockptr, __timezone_lockptr);
20weak_alias(dummy_lockptr, __bump_lockptr);
21
22weak_alias(dummy_lockptr, __vmlock_lockptr);
1123
24static volatile int *const *const atfork_locks[] = {
25 &__at_quick_exit_lockptr,
26 &__atexit_lockptr,
27 &__dlerror_lockptr,
28 &__gettext_lockptr,
29 &__locale_lockptr,
30 &__random_lockptr,
31 &__sem_open_lockptr,
32 &__stdio_ofl_lockptr,
33 &__syslog_lockptr,
34 &__timezone_lockptr,
35 &__bump_lockptr,
36};
37
38static void dummy(int x) { }
12weak_alias(dummy, __fork_handler);39weak_alias(dummy, __fork_handler);
40weak_alias(dummy, __malloc_atfork);
41weak_alias(dummy, __ldso_atfork);
42
43static void dummy_0(void) { }
44weak_alias(dummy_0, __tl_lock);
45weak_alias(dummy_0, __tl_unlock);
1346
14pid_t fork(void)47pid_t fork(void)
15{48{
16 pid_t ret;
17 sigset_t set;49 sigset_t set;
18 __fork_handler(-1);50 __fork_handler(-1);
19 __block_all_sigs(&set);51 __block_app_sigs(&set);
20#ifdef SYS_fork52 int need_locks = libc.need_locks > 0;
21 ret = __syscall(SYS_fork);53 if (need_locks) {
22#else54 __ldso_atfork(-1);
23 ret = __syscall(SYS_clone, SIGCHLD, 0);55 __inhibit_ptc();
24#endif56 for (int i=0; i<sizeof atfork_locks/sizeof *atfork_locks; i++)
25 if (!ret) {57 if (*atfork_locks[i]) LOCK(*atfork_locks[i]);
26 pthread_t self = __pthread_self();58 __malloc_atfork(-1);
27 self->tid = __syscall(SYS_gettid);59 __tl_lock();
28 self->robust_list.off = 0;60 }
29 self->robust_list.pending = 0;61 pthread_t self=__pthread_self(), next=self->next;
30 self->next = self->prev = self;62 pid_t ret = _Fork();
31 __thread_list_lock = 0;63 int errno_save = errno;
32 libc.threads_minus_1 = 0;64 if (need_locks) {
33 if (libc.need_locks) libc.need_locks = -1;65 if (!ret) {
66 for (pthread_t td=next; td!=self; td=td->next)
67 td->tid = -1;
68 if (__vmlock_lockptr) {
69 __vmlock_lockptr[0] = 0;
70 __vmlock_lockptr[1] = 0;
71 }
72 }
73 __tl_unlock();
74 __malloc_atfork(!ret);
75 for (int i=0; i<sizeof atfork_locks/sizeof *atfork_locks; i++)
76 if (*atfork_locks[i])
77 if (ret) UNLOCK(*atfork_locks[i]);
78 else **atfork_locks[i] = 0;
79 __release_ptc();
80 __ldso_atfork(!ret);
34 }81 }
35 __restore_sigs(&set);82 __restore_sigs(&set);
36 __fork_handler(!ret);83 __fork_handler(!ret);
37 return __syscall_ret(ret);84 if (ret<0) errno = errno_save;
85 return ret;
38}86}
lib/libc/musl/src/process/posix_spawn.c+13-3
...@@ -6,6 +6,7 @@...@@ -6,6 +6,7 @@
6#include <fcntl.h>6#include <fcntl.h>
7#include <sys/wait.h>7#include <sys/wait.h>
8#include "syscall.h"8#include "syscall.h"
9#include "lock.h"
9#include "pthread_impl.h"10#include "pthread_impl.h"
10#include "fdop.h"11#include "fdop.h"
1112
...@@ -170,9 +171,6 @@ int posix_spawn(pid_t *restrict res, const char *restrict path,...@@ -170,9 +171,6 @@ int posix_spawn(pid_t *restrict res, const char *restrict path,
170 int ec=0, cs;171 int ec=0, cs;
171 struct args args;172 struct args args;
172173
173 if (pipe2(args.p, O_CLOEXEC))
174 return errno;
175
176 pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cs);174 pthread_setcancelstate(PTHREAD_CANCEL_DISABLE, &cs);
177175
178 args.path = path;176 args.path = path;
...@@ -182,9 +180,20 @@ int posix_spawn(pid_t *restrict res, const char *restrict path,...@@ -182,9 +180,20 @@ int posix_spawn(pid_t *restrict res, const char *restrict path,
182 args.envp = envp;180 args.envp = envp;
183 pthread_sigmask(SIG_BLOCK, SIGALL_SET, &args.oldmask);181 pthread_sigmask(SIG_BLOCK, SIGALL_SET, &args.oldmask);
184182
183 /* The lock guards both against seeing a SIGABRT disposition change
184 * by abort and against leaking the pipe fd to fork-without-exec. */
185 LOCK(__abort_lock);
186
187 if (pipe2(args.p, O_CLOEXEC)) {
188 UNLOCK(__abort_lock);
189 ec = errno;
190 goto fail;
191 }
192
185 pid = __clone(child, stack+sizeof stack,193 pid = __clone(child, stack+sizeof stack,
186 CLONE_VM|CLONE_VFORK|SIGCHLD, &args);194 CLONE_VM|CLONE_VFORK|SIGCHLD, &args);
187 close(args.p[1]);195 close(args.p[1]);
196 UNLOCK(__abort_lock);
188197
189 if (pid > 0) {198 if (pid > 0) {
190 if (read(args.p[0], &ec, sizeof ec) != sizeof ec) ec = 0;199 if (read(args.p[0], &ec, sizeof ec) != sizeof ec) ec = 0;
...@@ -197,6 +206,7 @@ int posix_spawn(pid_t *restrict res, const char *restrict path,...@@ -197,6 +206,7 @@ int posix_spawn(pid_t *restrict res, const char *restrict path,
197206
198 if (!ec && res) *res = pid;207 if (!ec && res) *res = pid;
199208
209fail:
200 pthread_sigmask(SIG_SETMASK, &args.oldmask, 0);210 pthread_sigmask(SIG_SETMASK, &args.oldmask, 0);
201 pthread_setcancelstate(cs, 0);211 pthread_setcancelstate(cs, 0);
202212
lib/libc/musl/src/setjmp/aarch64/longjmp.s+3-4
...@@ -18,7 +18,6 @@ longjmp:...@@ -18,7 +18,6 @@ longjmp:
18 ldp d12, d13, [x0,#144]18 ldp d12, d13, [x0,#144]
19 ldp d14, d15, [x0,#160]19 ldp d14, d15, [x0,#160]
2020
21 mov x0, x121 cmp w1, 0
22 cbnz x1, 1f22 csinc w0, w1, wzr, ne
23 mov x0, #123 br x30
241: br x30
lib/libc/musl/src/setjmp/i386/longjmp.s+4-8
...@@ -6,15 +6,11 @@ _longjmp:...@@ -6,15 +6,11 @@ _longjmp:
6longjmp:6longjmp:
7 mov 4(%esp),%edx7 mov 4(%esp),%edx
8 mov 8(%esp),%eax8 mov 8(%esp),%eax
9 test %eax,%eax9 cmp $1,%eax
10 jnz 1f10 adc $0, %al
11 inc %eax
121:
13 mov (%edx),%ebx11 mov (%edx),%ebx
14 mov 4(%edx),%esi12 mov 4(%edx),%esi
15 mov 8(%edx),%edi13 mov 8(%edx),%edi
16 mov 12(%edx),%ebp14 mov 12(%edx),%ebp
17 mov 16(%edx),%ecx15 mov 16(%edx),%esp
18 mov %ecx,%esp16 jmp *20(%edx)
19 mov 20(%edx),%ecx
20 jmp *%ecx
lib/libc/musl/src/setjmp/x32/longjmp.s+5-9
...@@ -5,18 +5,14 @@...@@ -5,18 +5,14 @@
5.type longjmp,@function5.type longjmp,@function
6_longjmp:6_longjmp:
7longjmp:7longjmp:
8 mov %rsi,%rax /* val will be longjmp return */8 xor %eax,%eax
9 test %rax,%rax9 cmp $1,%esi /* CF = val ? 0 : 1 */
10 jnz 1f10 adc %esi,%eax /* eax = val + !val */
11 inc %rax /* if val==0, val=1 per longjmp semantics */
121:
13 mov (%rdi),%rbx /* rdi is the jmp_buf, restore regs from it */11 mov (%rdi),%rbx /* rdi is the jmp_buf, restore regs from it */
14 mov 8(%rdi),%rbp12 mov 8(%rdi),%rbp
15 mov 16(%rdi),%r1213 mov 16(%rdi),%r12
16 mov 24(%rdi),%r1314 mov 24(%rdi),%r13
17 mov 32(%rdi),%r1415 mov 32(%rdi),%r14
18 mov 40(%rdi),%r1516 mov 40(%rdi),%r15
19 mov 48(%rdi),%rdx /* this ends up being the stack pointer */17 mov 48(%rdi),%rsp
20 mov %rdx,%rsp18 jmp *56(%rdi) /* goto saved address without altering rsp */
21 mov 56(%rdi),%rdx /* this is the instruction pointer */
22 jmp *%rdx /* goto saved address without altering rsp */
lib/libc/musl/src/setjmp/x32/setjmp.s+1-1
...@@ -18,5 +18,5 @@ setjmp:...@@ -18,5 +18,5 @@ setjmp:
18 mov %rdx,48(%rdi)18 mov %rdx,48(%rdi)
19 mov (%rsp),%rdx /* save return addr ptr for new rip */19 mov (%rsp),%rdx /* save return addr ptr for new rip */
20 mov %rdx,56(%rdi)20 mov %rdx,56(%rdi)
21 xor %rax,%rax /* always return 0 */21 xor %eax,%eax /* always return 0 */
22 ret22 ret
lib/libc/musl/src/setjmp/x86_64/longjmp.s+5-9
...@@ -5,18 +5,14 @@...@@ -5,18 +5,14 @@
5.type longjmp,@function5.type longjmp,@function
6_longjmp:6_longjmp:
7longjmp:7longjmp:
8 mov %rsi,%rax /* val will be longjmp return */8 xor %eax,%eax
9 test %rax,%rax9 cmp $1,%esi /* CF = val ? 0 : 1 */
10 jnz 1f10 adc %esi,%eax /* eax = val + !val */
11 inc %rax /* if val==0, val=1 per longjmp semantics */
121:
13 mov (%rdi),%rbx /* rdi is the jmp_buf, restore regs from it */11 mov (%rdi),%rbx /* rdi is the jmp_buf, restore regs from it */
14 mov 8(%rdi),%rbp12 mov 8(%rdi),%rbp
15 mov 16(%rdi),%r1213 mov 16(%rdi),%r12
16 mov 24(%rdi),%r1314 mov 24(%rdi),%r13
17 mov 32(%rdi),%r1415 mov 32(%rdi),%r14
18 mov 40(%rdi),%r1516 mov 40(%rdi),%r15
19 mov 48(%rdi),%rdx /* this ends up being the stack pointer */17 mov 48(%rdi),%rsp
20 mov %rdx,%rsp18 jmp *56(%rdi) /* goto saved address without altering rsp */
21 mov 56(%rdi),%rdx /* this is the instruction pointer */
22 jmp *%rdx /* goto saved address without altering rsp */
lib/libc/musl/src/setjmp/x86_64/setjmp.s+1-1
...@@ -18,5 +18,5 @@ setjmp:...@@ -18,5 +18,5 @@ setjmp:
18 mov %rdx,48(%rdi)18 mov %rdx,48(%rdi)
19 mov (%rsp),%rdx /* save return addr ptr for new rip */19 mov (%rsp),%rdx /* save return addr ptr for new rip */
20 mov %rdx,56(%rdi)20 mov %rdx,56(%rdi)
21 xor %rax,%rax /* always return 0 */21 xor %eax,%eax /* always return 0 */
22 ret22 ret
lib/libc/musl/src/signal/sigaction.c+16-20
...@@ -7,12 +7,6 @@...@@ -7,12 +7,6 @@
7#include "lock.h"7#include "lock.h"
8#include "ksigaction.h"8#include "ksigaction.h"
99
10static volatile int dummy_lock[1] = { 0 };
11
12extern hidden volatile int __abort_lock[1];
13
14weak_alias(dummy_lock, __abort_lock);
15
16static int unmask_done;10static int unmask_done;
17static unsigned long handler_set[_NSIG/(8*sizeof(long))];11static unsigned long handler_set[_NSIG/(8*sizeof(long))];
1812
...@@ -26,7 +20,6 @@ volatile int __eintr_valid_flag;...@@ -26,7 +20,6 @@ volatile int __eintr_valid_flag;
26int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigaction *restrict old)20int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigaction *restrict old)
27{21{
28 struct k_sigaction ksa, ksa_old;22 struct k_sigaction ksa, ksa_old;
29 unsigned long set[_NSIG/(8*sizeof(long))];
30 if (sa) {23 if (sa) {
31 if ((uintptr_t)sa->sa_handler > 1UL) {24 if ((uintptr_t)sa->sa_handler > 1UL) {
32 a_or_l(handler_set+(sig-1)/(8*sizeof(long)),25 a_or_l(handler_set+(sig-1)/(8*sizeof(long)),
...@@ -50,24 +43,12 @@ int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigact...@@ -50,24 +43,12 @@ int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigact
50 a_store(&__eintr_valid_flag, 1);43 a_store(&__eintr_valid_flag, 1);
51 }44 }
52 }45 }
53 /* Changing the disposition of SIGABRT to anything but
54 * SIG_DFL requires a lock, so that it cannot be changed
55 * while abort is terminating the process after simply
56 * calling raise(SIGABRT) failed to do so. */
57 if (sa->sa_handler != SIG_DFL && sig == SIGABRT) {
58 __block_all_sigs(&set);
59 LOCK(__abort_lock);
60 }
61 ksa.handler = sa->sa_handler;46 ksa.handler = sa->sa_handler;
62 ksa.flags = sa->sa_flags | SA_RESTORER;47 ksa.flags = sa->sa_flags | SA_RESTORER;
63 ksa.restorer = (sa->sa_flags & SA_SIGINFO) ? __restore_rt : __restore;48 ksa.restorer = (sa->sa_flags & SA_SIGINFO) ? __restore_rt : __restore;
64 memcpy(&ksa.mask, &sa->sa_mask, _NSIG/8);49 memcpy(&ksa.mask, &sa->sa_mask, _NSIG/8);
65 }50 }
66 int r = __syscall(SYS_rt_sigaction, sig, sa?&ksa:0, old?&ksa_old:0, _NSIG/8);51 int r = __syscall(SYS_rt_sigaction, sig, sa?&ksa:0, old?&ksa_old:0, _NSIG/8);
67 if (sig == SIGABRT && sa && sa->sa_handler != SIG_DFL) {
68 UNLOCK(__abort_lock);
69 __restore_sigs(&set);
70 }
71 if (old && !r) {52 if (old && !r) {
72 old->sa_handler = ksa_old.handler;53 old->sa_handler = ksa_old.handler;
73 old->sa_flags = ksa_old.flags;54 old->sa_flags = ksa_old.flags;
...@@ -78,11 +59,26 @@ int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigact...@@ -78,11 +59,26 @@ int __libc_sigaction(int sig, const struct sigaction *restrict sa, struct sigact
7859
79int __sigaction(int sig, const struct sigaction *restrict sa, struct sigaction *restrict old)60int __sigaction(int sig, const struct sigaction *restrict sa, struct sigaction *restrict old)
80{61{
62 unsigned long set[_NSIG/(8*sizeof(long))];
63
81 if (sig-32U < 3 || sig-1U >= _NSIG-1) {64 if (sig-32U < 3 || sig-1U >= _NSIG-1) {
82 errno = EINVAL;65 errno = EINVAL;
83 return -1;66 return -1;
84 }67 }
85 return __libc_sigaction(sig, sa, old);68
69 /* Doing anything with the disposition of SIGABRT requires a lock,
70 * so that it cannot be changed while abort is terminating the
71 * process and so any change made by abort can't be observed. */
72 if (sig == SIGABRT) {
73 __block_all_sigs(&set);
74 LOCK(__abort_lock);
75 }
76 int r = __libc_sigaction(sig, sa, old);
77 if (sig == SIGABRT) {
78 UNLOCK(__abort_lock);
79 __restore_sigs(&set);
80 }
81 return r;
86}82}
8783
88weak_alias(__sigaction, sigaction);84weak_alias(__sigaction, sigaction);
lib/libc/musl/src/stdio/__stdio_close.c+1
...@@ -1,4 +1,5 @@...@@ -1,4 +1,5 @@
1#include "stdio_impl.h"1#include "stdio_impl.h"
2#include "aio_impl.h"
23
3static int dummy(int fd)4static int dummy(int fd)
4{5{
lib/libc/musl/src/stdio/ofl.c+2
...@@ -1,8 +1,10 @@...@@ -1,8 +1,10 @@
1#include "stdio_impl.h"1#include "stdio_impl.h"
2#include "lock.h"2#include "lock.h"
3#include "fork_impl.h"
34
4static FILE *ofl_head;5static FILE *ofl_head;
5static volatile int ofl_lock[1];6static volatile int ofl_lock[1];
7volatile int *const __stdio_ofl_lockptr = ofl_lock;
68
7FILE **__ofl_lock()9FILE **__ofl_lock()
8{10{
lib/libc/musl/src/string/strstr.c+1-1
...@@ -96,7 +96,7 @@ static char *twoway_strstr(const unsigned char *h, const unsigned char *n)...@@ -96,7 +96,7 @@ static char *twoway_strstr(const unsigned char *h, const unsigned char *n)
96 for (;;) {96 for (;;) {
97 /* Update incremental end-of-haystack pointer */97 /* Update incremental end-of-haystack pointer */
98 if (z-h < l) {98 if (z-h < l) {
99 /* Fast estimate for MIN(l,63) */99 /* Fast estimate for MAX(l,63) */
100 size_t grow = l | 63;100 size_t grow = l | 63;
101 const unsigned char *z2 = memchr(z, 0, grow);101 const unsigned char *z2 = memchr(z, 0, grow);
102 if (z2) {102 if (z2) {
lib/libc/musl/src/termios/tcgetwinsize.c created+8
...@@ -0,0 +1,8 @@
1#include <termios.h>
2#include <sys/ioctl.h>
3#include "syscall.h"
4
5int tcgetwinsize(int fd, struct winsize *wsz)
6{
7 return syscall(SYS_ioctl, fd, TIOCGWINSZ, wsz);
8}
lib/libc/musl/src/termios/tcsetwinsize.c created+8
...@@ -0,0 +1,8 @@
1#include <termios.h>
2#include <sys/ioctl.h>
3#include "syscall.h"
4
5int tcsetwinsize(int fd, const struct winsize *wsz)
6{
7 return syscall(SYS_ioctl, fd, TIOCSWINSZ, wsz);
8}
lib/libc/musl/src/thread/i386/__set_thread_area.s+1
...@@ -28,6 +28,7 @@ __set_thread_area:...@@ -28,6 +28,7 @@ __set_thread_area:
28 ret28 ret
292:292:
30 mov %ebx,%ecx30 mov %ebx,%ecx
31 xor %eax,%eax
31 xor %ebx,%ebx32 xor %ebx,%ebx
32 xor %edx,%edx33 xor %edx,%edx
33 mov %ebx,(%esp)34 mov %ebx,(%esp)
lib/libc/musl/src/thread/pthread_attr_get.c+1-1
...@@ -70,7 +70,7 @@ int pthread_condattr_getpshared(const pthread_condattr_t *restrict a, int *restr...@@ -70,7 +70,7 @@ int pthread_condattr_getpshared(const pthread_condattr_t *restrict a, int *restr
7070
71int pthread_mutexattr_getprotocol(const pthread_mutexattr_t *restrict a, int *restrict protocol)71int pthread_mutexattr_getprotocol(const pthread_mutexattr_t *restrict a, int *restrict protocol)
72{72{
73 *protocol = PTHREAD_PRIO_NONE;73 *protocol = a->__attr / 8U % 2;
74 return 0;74 return 0;
75}75}
76int pthread_mutexattr_getpshared(const pthread_mutexattr_t *restrict a, int *restrict pshared)76int pthread_mutexattr_getpshared(const pthread_mutexattr_t *restrict a, int *restrict pshared)
lib/libc/musl/src/thread/pthread_cond_timedwait.c+9-5
...@@ -146,14 +146,18 @@ relock:...@@ -146,14 +146,18 @@ relock:
146146
147 if (oldstate == WAITING) goto done;147 if (oldstate == WAITING) goto done;
148148
149 if (!node.next) a_inc(&m->_m_waiters);149 if (!node.next && !(m->_m_type & 8))
150 a_inc(&m->_m_waiters);
150151
151 /* Unlock the barrier that's holding back the next waiter, and152 /* Unlock the barrier that's holding back the next waiter, and
152 * either wake it or requeue it to the mutex. */153 * either wake it or requeue it to the mutex. */
153 if (node.prev)154 if (node.prev) {
154 unlock_requeue(&node.prev->barrier, &m->_m_lock, m->_m_type & 128);155 int val = m->_m_lock;
155 else156 if (val>0) a_cas(&m->_m_lock, val, val|0x80000000);
156 a_dec(&m->_m_waiters);157 unlock_requeue(&node.prev->barrier, &m->_m_lock, m->_m_type & (8|128));
158 } else if (!(m->_m_type & 8)) {
159 a_dec(&m->_m_waiters);
160 }
157161
158 /* Since a signal was consumed, cancellation is not permitted. */162 /* Since a signal was consumed, cancellation is not permitted. */
159 if (e == ECANCELED) e = 0;163 if (e == ECANCELED) e = 0;
lib/libc/musl/src/thread/pthread_create.c+17-10
...@@ -69,12 +69,25 @@ _Noreturn void __pthread_exit(void *result)...@@ -69,12 +69,25 @@ _Noreturn void __pthread_exit(void *result)
6969
70 __pthread_tsd_run_dtors();70 __pthread_tsd_run_dtors();
7171
72 __block_app_sigs(&set);
73
74 /* This atomic potentially competes with a concurrent pthread_detach
75 * call; the loser is responsible for freeing thread resources. */
76 int state = a_cas(&self->detach_state, DT_JOINABLE, DT_EXITING);
77
78 if (state==DT_DETACHED && self->map_base) {
79 /* Since __unmapself bypasses the normal munmap code path,
80 * explicitly wait for vmlock holders first. This must be
81 * done before any locks are taken, to avoid lock ordering
82 * issues that could lead to deadlock. */
83 __vm_wait();
84 }
85
72 /* Access to target the exiting thread with syscalls that use86 /* Access to target the exiting thread with syscalls that use
73 * its kernel tid is controlled by killlock. For detached threads,87 * its kernel tid is controlled by killlock. For detached threads,
74 * any use past this point would have undefined behavior, but for88 * any use past this point would have undefined behavior, but for
75 * joinable threads it's a valid usage that must be handled.89 * joinable threads it's a valid usage that must be handled.
76 * Signals must be blocked since pthread_kill must be AS-safe. */90 * Signals must be blocked since pthread_kill must be AS-safe. */
77 __block_app_sigs(&set);
78 LOCK(self->killlock);91 LOCK(self->killlock);
7992
80 /* The thread list lock must be AS-safe, and thus depends on93 /* The thread list lock must be AS-safe, and thus depends on
...@@ -87,6 +100,7 @@ _Noreturn void __pthread_exit(void *result)...@@ -87,6 +100,7 @@ _Noreturn void __pthread_exit(void *result)
87 if (self->next == self) {100 if (self->next == self) {
88 __tl_unlock();101 __tl_unlock();
89 UNLOCK(self->killlock);102 UNLOCK(self->killlock);
103 self->detach_state = state;
90 __restore_sigs(&set);104 __restore_sigs(&set);
91 exit(0);105 exit(0);
92 }106 }
...@@ -125,10 +139,6 @@ _Noreturn void __pthread_exit(void *result)...@@ -125,10 +139,6 @@ _Noreturn void __pthread_exit(void *result)
125 self->prev->next = self->next;139 self->prev->next = self->next;
126 self->prev = self->next = self;140 self->prev = self->next = self;
127141
128 /* This atomic potentially competes with a concurrent pthread_detach
129 * call; the loser is responsible for freeing thread resources. */
130 int state = a_cas(&self->detach_state, DT_JOINABLE, DT_EXITING);
131
132 if (state==DT_DETACHED && self->map_base) {142 if (state==DT_DETACHED && self->map_base) {
133 /* Detached threads must block even implementation-internal143 /* Detached threads must block even implementation-internal
134 * signals, since they will not have a stack in their last144 * signals, since they will not have a stack in their last
...@@ -140,16 +150,13 @@ _Noreturn void __pthread_exit(void *result)...@@ -140,16 +150,13 @@ _Noreturn void __pthread_exit(void *result)
140 if (self->robust_list.off)150 if (self->robust_list.off)
141 __syscall(SYS_set_robust_list, 0, 3*sizeof(long));151 __syscall(SYS_set_robust_list, 0, 3*sizeof(long));
142152
143 /* Since __unmapself bypasses the normal munmap code path,
144 * explicitly wait for vmlock holders first. */
145 __vm_wait();
146
147 /* The following call unmaps the thread's stack mapping153 /* The following call unmaps the thread's stack mapping
148 * and then exits without touching the stack. */154 * and then exits without touching the stack. */
149 __unmapself(self->map_base, self->map_size);155 __unmapself(self->map_base, self->map_size);
150 }156 }
151157
152 /* Wake any joiner. */158 /* Wake any joiner. */
159 a_store(&self->detach_state, DT_EXITED);
153 __wake(&self->detach_state, 1, 1);160 __wake(&self->detach_state, 1, 1);
154161
155 /* After the kernel thread exits, its tid may be reused. Clear it162 /* After the kernel thread exits, its tid may be reused. Clear it
...@@ -314,7 +321,7 @@ int __pthread_create(pthread_t *restrict res, const pthread_attr_t *restrict att...@@ -314,7 +321,7 @@ int __pthread_create(pthread_t *restrict res, const pthread_attr_t *restrict att
314 new->detach_state = DT_JOINABLE;321 new->detach_state = DT_JOINABLE;
315 }322 }
316 new->robust_list.head = &new->robust_list.head;323 new->robust_list.head = &new->robust_list.head;
317 new->CANARY = self->CANARY;324 new->canary = self->canary;
318 new->sysinfo = self->sysinfo;325 new->sysinfo = self->sysinfo;
319326
320 /* Setup argument structure for the new thread on its stack.327 /* Setup argument structure for the new thread on its stack.
lib/libc/musl/src/thread/pthread_mutex_destroy.c+5-1
...@@ -1,6 +1,10 @@...@@ -1,6 +1,10 @@
1#include <pthread.h>1#include "pthread_impl.h"
22
3int pthread_mutex_destroy(pthread_mutex_t *mutex)3int pthread_mutex_destroy(pthread_mutex_t *mutex)
4{4{
5 /* If the mutex being destroyed is process-shared and has nontrivial
6 * type (tracking ownership), it might be in the pending slot of a
7 * robust_list; wait for quiescence. */
8 if (mutex->_m_type > 128) __vm_wait();
5 return 0;9 return 0;
6}10}
lib/libc/musl/src/thread/pthread_mutexattr_setprotocol.c+9-10
...@@ -1,24 +1,23 @@...@@ -1,24 +1,23 @@
1#include "pthread_impl.h"1#include "pthread_impl.h"
2#include "syscall.h"2#include "syscall.h"
33
4static pthread_once_t check_pi_once;4static volatile int check_pi_result = -1;
5static int check_pi_result;
6
7static void check_pi()
8{
9 volatile int lk = 0;
10 check_pi_result = -__syscall(SYS_futex, &lk, FUTEX_LOCK_PI, 0, 0);
11}
125
13int pthread_mutexattr_setprotocol(pthread_mutexattr_t *a, int protocol)6int pthread_mutexattr_setprotocol(pthread_mutexattr_t *a, int protocol)
14{7{
8 int r;
15 switch (protocol) {9 switch (protocol) {
16 case PTHREAD_PRIO_NONE:10 case PTHREAD_PRIO_NONE:
17 a->__attr &= ~8;11 a->__attr &= ~8;
18 return 0;12 return 0;
19 case PTHREAD_PRIO_INHERIT:13 case PTHREAD_PRIO_INHERIT:
20 pthread_once(&check_pi_once, check_pi);14 r = check_pi_result;
21 if (check_pi_result) return check_pi_result;15 if (r < 0) {
16 volatile int lk = 0;
17 r = -__syscall(SYS_futex, &lk, FUTEX_LOCK_PI, 0, 0);
18 a_store(&check_pi_result, r);
19 }
20 if (r) return r;
22 a->__attr |= 8;21 a->__attr |= 8;
23 return 0;22 return 0;
24 case PTHREAD_PRIO_PROTECT:23 case PTHREAD_PRIO_PROTECT:
lib/libc/musl/src/thread/pthread_mutexattr_setrobust.c+9-11
...@@ -1,22 +1,20 @@...@@ -1,22 +1,20 @@
1#include "pthread_impl.h"1#include "pthread_impl.h"
2#include "syscall.h"2#include "syscall.h"
33
4static pthread_once_t check_robust_once;4static volatile int check_robust_result = -1;
5static int check_robust_result;
6
7static void check_robust()
8{
9 void *p;
10 size_t l;
11 check_robust_result = -__syscall(SYS_get_robust_list, 0, &p, &l);
12}
135
14int pthread_mutexattr_setrobust(pthread_mutexattr_t *a, int robust)6int pthread_mutexattr_setrobust(pthread_mutexattr_t *a, int robust)
15{7{
16 if (robust > 1U) return EINVAL;8 if (robust > 1U) return EINVAL;
17 if (robust) {9 if (robust) {
18 pthread_once(&check_robust_once, check_robust);10 int r = check_robust_result;
19 if (check_robust_result) return check_robust_result;11 if (r < 0) {
12 void *p;
13 size_t l;
14 r = -__syscall(SYS_get_robust_list, 0, &p, &l);
15 a_store(&check_robust_result, r);
16 }
17 if (r) return r;
20 a->__attr |= 4;18 a->__attr |= 4;
21 return 0;19 return 0;
22 }20 }
lib/libc/musl/src/thread/s390x/clone.s+6
...@@ -17,6 +17,9 @@ __clone:...@@ -17,6 +17,9 @@ __clone:
17 # if (!tid) syscall(SYS_exit, a(d));17 # if (!tid) syscall(SYS_exit, a(d));
18 # return tid;18 # return tid;
1919
20 # preserve call-saved register used as syscall arg
21 stg %r6, 48(%r15)
22
20 # create initial stack frame for new thread23 # create initial stack frame for new thread
21 nill %r3, 0xfff824 nill %r3, 0xfff8
22 aghi %r3, -16025 aghi %r3, -160
...@@ -35,6 +38,9 @@ __clone:...@@ -35,6 +38,9 @@ __clone:
35 lg %r6, 160(%r15)38 lg %r6, 160(%r15)
36 svc 12039 svc 120
3740
41 # restore call-saved register
42 lg %r6, 48(%r15)
43
38 # if error or if we're the parent, return44 # if error or if we're the parent, return
39 ltgr %r2, %r245 ltgr %r2, %r2
40 bnzr %r1446 bnzr %r14
lib/libc/musl/src/thread/s390x/syscall_cp.s+2
...@@ -14,6 +14,7 @@ __cp_begin:...@@ -14,6 +14,7 @@ __cp_begin:
14 icm %r2, 15, 0(%r2)14 icm %r2, 15, 0(%r2)
15 jne __cp_cancel15 jne __cp_cancel
1616
17 stg %r6, 48(%r15)
17 stg %r7, 56(%r15)18 stg %r7, 56(%r15)
18 lgr %r1, %r319 lgr %r1, %r3
19 lgr %r2, %r420 lgr %r2, %r4
...@@ -26,6 +27,7 @@ __cp_begin:...@@ -26,6 +27,7 @@ __cp_begin:
2627
27__cp_end:28__cp_end:
28 lg %r7, 56(%r15)29 lg %r7, 56(%r15)
30 lg %r6, 48(%r15)
29 br %r1431 br %r14
3032
31__cp_cancel:33__cp_cancel:
lib/libc/musl/src/thread/sem_open.c+12-3
...@@ -12,6 +12,12 @@...@@ -12,6 +12,12 @@
12#include <stdlib.h>12#include <stdlib.h>
13#include <pthread.h>13#include <pthread.h>
14#include "lock.h"14#include "lock.h"
15#include "fork_impl.h"
16
17#define malloc __libc_malloc
18#define calloc __libc_calloc
19#define realloc undef
20#define free undef
1521
16static struct {22static struct {
17 ino_t ino;23 ino_t ino;
...@@ -19,6 +25,7 @@ static struct {...@@ -19,6 +25,7 @@ static struct {
19 int refcnt;25 int refcnt;
20} *semtab;26} *semtab;
21static volatile int lock[1];27static volatile int lock[1];
28volatile int *const __sem_open_lockptr = lock;
2229
23#define FLAGS (O_RDWR|O_NOFOLLOW|O_CLOEXEC|O_NONBLOCK)30#define FLAGS (O_RDWR|O_NOFOLLOW|O_CLOEXEC|O_NONBLOCK)
2431
...@@ -163,10 +170,12 @@ int sem_close(sem_t *sem)...@@ -163,10 +170,12 @@ int sem_close(sem_t *sem)
163 int i;170 int i;
164 LOCK(lock);171 LOCK(lock);
165 for (i=0; i<SEM_NSEMS_MAX && semtab[i].sem != sem; i++);172 for (i=0; i<SEM_NSEMS_MAX && semtab[i].sem != sem; i++);
166 if (!--semtab[i].refcnt) {173 if (--semtab[i].refcnt) {
167 semtab[i].sem = 0;174 UNLOCK(lock);
168 semtab[i].ino = 0;175 return 0;
169 }176 }
177 semtab[i].sem = 0;
178 semtab[i].ino = 0;
170 UNLOCK(lock);179 UNLOCK(lock);
171 munmap(sem, sizeof *sem);180 munmap(sem, sizeof *sem);
172 return 0;181 return 0;
lib/libc/musl/src/thread/synccall.c+2-1
...@@ -63,7 +63,8 @@ void __synccall(void (*func)(void *), void *ctx)...@@ -63,7 +63,8 @@ void __synccall(void (*func)(void *), void *ctx)
63 sem_init(&target_sem, 0, 0);63 sem_init(&target_sem, 0, 0);
64 sem_init(&caller_sem, 0, 0);64 sem_init(&caller_sem, 0, 0);
6565
66 if (!libc.threads_minus_1) goto single_threaded;66 if (!libc.threads_minus_1 || __syscall(SYS_gettid) != self->tid)
67 goto single_threaded;
6768
68 callback = func;69 callback = func;
69 context = ctx;70 context = ctx;
lib/libc/musl/src/thread/vmlock.c+2
...@@ -1,6 +1,8 @@...@@ -1,6 +1,8 @@
1#include "pthread_impl.h"1#include "pthread_impl.h"
2#include "fork_impl.h"
23
3static volatile int vmlock[2];4static volatile int vmlock[2];
5volatile int *const __vmlock_lockptr = vmlock;
46
5void __vm_wait()7void __vm_wait()
6{8{
lib/libc/musl/src/time/__tz.c+8-1
...@@ -6,6 +6,12 @@...@@ -6,6 +6,12 @@
6#include <sys/mman.h>6#include <sys/mman.h>
7#include "libc.h"7#include "libc.h"
8#include "lock.h"8#include "lock.h"
9#include "fork_impl.h"
10
11#define malloc __libc_malloc
12#define calloc undef
13#define realloc undef
14#define free undef
915
10long __timezone = 0;16long __timezone = 0;
11int __daylight = 0;17int __daylight = 0;
...@@ -30,6 +36,7 @@ static char *old_tz = old_tz_buf;...@@ -30,6 +36,7 @@ static char *old_tz = old_tz_buf;
30static size_t old_tz_size = sizeof old_tz_buf;36static size_t old_tz_size = sizeof old_tz_buf;
3137
32static volatile int lock[1];38static volatile int lock[1];
39volatile int *const __timezone_lockptr = lock;
3340
34static int getint(const char **p)41static int getint(const char **p)
35{42{
...@@ -178,7 +185,7 @@ static void do_tzset()...@@ -178,7 +185,7 @@ static void do_tzset()
178 zi = map;185 zi = map;
179 if (map) {186 if (map) {
180 int scale = 2;187 int scale = 2;
181 if (sizeof(time_t) > 4 && map[4]=='2') {188 if (map[4]!='1') {
182 size_t skip = zi_dotprod(zi+20, VEC(1,1,8,5,6,1), 6);189 size_t skip = zi_dotprod(zi+20, VEC(1,1,8,5,6,1), 6);
183 trans = zi+skip+44+44;190 trans = zi+skip+44+44;
184 scale++;191 scale++;
lib/libc/musl/src/time/timer_create.c+13-17
...@@ -2,6 +2,7 @@...@@ -2,6 +2,7 @@
2#include <setjmp.h>2#include <setjmp.h>
3#include <limits.h>3#include <limits.h>
4#include "pthread_impl.h"4#include "pthread_impl.h"
5#include "atomic.h"
56
6struct ksigevent {7struct ksigevent {
7 union sigval sigev_value;8 union sigval sigev_value;
...@@ -32,19 +33,6 @@ static void cleanup_fromsig(void *p)...@@ -32,19 +33,6 @@ static void cleanup_fromsig(void *p)
32 longjmp(p, 1);33 longjmp(p, 1);
33}34}
3435
35static void timer_handler(int sig, siginfo_t *si, void *ctx)
36{
37}
38
39static void install_handler()
40{
41 struct sigaction sa = {
42 .sa_sigaction = timer_handler,
43 .sa_flags = SA_SIGINFO | SA_RESTART
44 };
45 __libc_sigaction(SIGTIMER, &sa, 0);
46}
47
48static void *start(void *arg)36static void *start(void *arg)
49{37{
50 pthread_t self = __pthread_self();38 pthread_t self = __pthread_self();
...@@ -71,7 +59,7 @@ static void *start(void *arg)...@@ -71,7 +59,7 @@ static void *start(void *arg)
7159
72int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict res)60int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict res)
73{61{
74 static pthread_once_t once = PTHREAD_ONCE_INIT;62 volatile static int init = 0;
75 pthread_t td;63 pthread_t td;
76 pthread_attr_t attr;64 pthread_attr_t attr;
77 int r;65 int r;
...@@ -83,11 +71,15 @@ int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict...@@ -83,11 +71,15 @@ int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict
83 switch (evp ? evp->sigev_notify : SIGEV_SIGNAL) {71 switch (evp ? evp->sigev_notify : SIGEV_SIGNAL) {
84 case SIGEV_NONE:72 case SIGEV_NONE:
85 case SIGEV_SIGNAL:73 case SIGEV_SIGNAL:
74 case SIGEV_THREAD_ID:
86 if (evp) {75 if (evp) {
87 ksev.sigev_value = evp->sigev_value;76 ksev.sigev_value = evp->sigev_value;
88 ksev.sigev_signo = evp->sigev_signo;77 ksev.sigev_signo = evp->sigev_signo;
89 ksev.sigev_notify = evp->sigev_notify;78 ksev.sigev_notify = evp->sigev_notify;
90 ksev.sigev_tid = 0;79 if (evp->sigev_notify == SIGEV_THREAD_ID)
80 ksev.sigev_tid = evp->sigev_notify_thread_id;
81 else
82 ksev.sigev_tid = 0;
91 ksevp = &ksev;83 ksevp = &ksev;
92 }84 }
93 if (syscall(SYS_timer_create, clk, ksevp, &timerid) < 0)85 if (syscall(SYS_timer_create, clk, ksevp, &timerid) < 0)
...@@ -95,7 +87,11 @@ int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict...@@ -95,7 +87,11 @@ int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict
95 *res = (void *)(intptr_t)timerid;87 *res = (void *)(intptr_t)timerid;
96 break;88 break;
97 case SIGEV_THREAD:89 case SIGEV_THREAD:
98 pthread_once(&once, install_handler);90 if (!init) {
91 struct sigaction sa = { .sa_handler = SIG_DFL };
92 __libc_sigaction(SIGTIMER, &sa, 0);
93 a_store(&init, 1);
94 }
99 if (evp->sigev_notify_attributes)95 if (evp->sigev_notify_attributes)
100 attr = *evp->sigev_notify_attributes;96 attr = *evp->sigev_notify_attributes;
101 else97 else
...@@ -115,7 +111,7 @@ int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict...@@ -115,7 +111,7 @@ int timer_create(clockid_t clk, struct sigevent *restrict evp, timer_t *restrict
115111
116 ksev.sigev_value.sival_ptr = 0;112 ksev.sigev_value.sival_ptr = 0;
117 ksev.sigev_signo = SIGTIMER;113 ksev.sigev_signo = SIGTIMER;
118 ksev.sigev_notify = 4; /* SIGEV_THREAD_ID */114 ksev.sigev_notify = SIGEV_THREAD_ID;
119 ksev.sigev_tid = td->tid;115 ksev.sigev_tid = td->tid;
120 if (syscall(SYS_timer_create, clk, &ksev, &timerid) < 0)116 if (syscall(SYS_timer_create, clk, &ksev, &timerid) < 0)
121 timerid = -1;117 timerid = -1;
lib/libc/musl/src/unistd/close.c+1
...@@ -1,5 +1,6 @@...@@ -1,5 +1,6 @@
1#include <unistd.h>1#include <unistd.h>
2#include <errno.h>2#include <errno.h>
3#include "aio_impl.h"
3#include "syscall.h"4#include "syscall.h"
45
5static int dummy(int fd)6static int dummy(int fd)
lib/libc/musl/src/unistd/faccessat.c+8-3
...@@ -25,12 +25,17 @@ static int checker(void *p)...@@ -25,12 +25,17 @@ static int checker(void *p)
2525
26int faccessat(int fd, const char *filename, int amode, int flag)26int faccessat(int fd, const char *filename, int amode, int flag)
27{27{
28 if (!flag || (flag==AT_EACCESS && getuid()==geteuid() && getgid()==getegid()))28 if (flag) {
29 return syscall(SYS_faccessat, fd, filename, amode, flag);29 int ret = __syscall(SYS_faccessat2, fd, filename, amode, flag);
30 if (ret != -ENOSYS) return __syscall_ret(ret);
31 }
3032
31 if (flag != AT_EACCESS)33 if (flag & ~AT_EACCESS)
32 return __syscall_ret(-EINVAL);34 return __syscall_ret(-EINVAL);
3335
36 if (!flag || (getuid()==geteuid() && getgid()==getegid()))
37 return syscall(SYS_faccessat, fd, filename, amode);
38
34 char stack[1024];39 char stack[1024];
35 sigset_t set;40 sigset_t set;
36 pid_t pid;41 pid_t pid;
lib/libc/musl/src/unistd/readlink.c+9-2
...@@ -4,9 +4,16 @@...@@ -4,9 +4,16 @@
44
5ssize_t readlink(const char *restrict path, char *restrict buf, size_t bufsize)5ssize_t readlink(const char *restrict path, char *restrict buf, size_t bufsize)
6{6{
7 char dummy[1];
8 if (!bufsize) {
9 buf = dummy;
10 bufsize = 1;
11 }
7#ifdef SYS_readlink12#ifdef SYS_readlink
8 return syscall(SYS_readlink, path, buf, bufsize);13 int r = __syscall(SYS_readlink, path, buf, bufsize);
9#else14#else
10 return syscall(SYS_readlinkat, AT_FDCWD, path, buf, bufsize);15 int r = __syscall(SYS_readlinkat, AT_FDCWD, path, buf, bufsize);
11#endif16#endif
17 if (buf == dummy && r > 0) r = 0;
18 return __syscall_ret(r);
12}19}
lib/libc/musl/src/unistd/readlinkat.c+8-1
...@@ -3,5 +3,12 @@...@@ -3,5 +3,12 @@
33
4ssize_t readlinkat(int fd, const char *restrict path, char *restrict buf, size_t bufsize)4ssize_t readlinkat(int fd, const char *restrict path, char *restrict buf, size_t bufsize)
5{5{
6 return syscall(SYS_readlinkat, fd, path, buf, bufsize);6 char dummy[1];
7 if (!bufsize) {
8 buf = dummy;
9 bufsize = 1;
10 }
11 int r = __syscall(SYS_readlinkat, fd, path, buf, bufsize);
12 if (buf == dummy && r > 0) r = 0;
13 return __syscall_ret(r);
7}14}
lib/libc/musl/src/unistd/setxid.c+9-14
...@@ -1,20 +1,19 @@...@@ -1,20 +1,19 @@
1#include <unistd.h>1#include <unistd.h>
2#include <errno.h>2#include <signal.h>
3#include "syscall.h"3#include "syscall.h"
4#include "libc.h"4#include "libc.h"
5#include "pthread_impl.h"
65
7struct ctx {6struct ctx {
8 int id, eid, sid;7 int id, eid, sid;
9 int nr, err;8 int nr, ret;
10};9};
1110
12static void do_setxid(void *p)11static void do_setxid(void *p)
13{12{
14 struct ctx *c = p;13 struct ctx *c = p;
15 if (c->err>0) return;14 if (c->ret<0) return;
16 int ret = -__syscall(c->nr, c->id, c->eid, c->sid);15 int ret = __syscall(c->nr, c->id, c->eid, c->sid);
17 if (ret && !c->err) {16 if (ret && !c->ret) {
18 /* If one thread fails to set ids after another has already17 /* If one thread fails to set ids after another has already
19 * succeeded, forcibly killing the process is the only safe18 * succeeded, forcibly killing the process is the only safe
20 * thing to do. State is inconsistent and dangerous. Use19 * thing to do. State is inconsistent and dangerous. Use
...@@ -22,18 +21,14 @@ static void do_setxid(void *p)...@@ -22,18 +21,14 @@ static void do_setxid(void *p)
22 __block_all_sigs(0);21 __block_all_sigs(0);
23 __syscall(SYS_kill, __syscall(SYS_getpid), SIGKILL);22 __syscall(SYS_kill, __syscall(SYS_getpid), SIGKILL);
24 }23 }
25 c->err = ret;24 c->ret = ret;
26}25}
2726
28int __setxid(int nr, int id, int eid, int sid)27int __setxid(int nr, int id, int eid, int sid)
29{28{
30 /* err is initially nonzero so that failure of the first thread does not29 /* ret is initially nonzero so that failure of the first thread does not
31 * trigger the safety kill above. */30 * trigger the safety kill above. */
32 struct ctx c = { .nr = nr, .id = id, .eid = eid, .sid = sid, .err = -1 };31 struct ctx c = { .nr = nr, .id = id, .eid = eid, .sid = sid, .ret = 1 };
33 __synccall(do_setxid, &c);32 __synccall(do_setxid, &c);
34 if (c.err) {33 return __syscall_ret(c.ret);
35 if (c.err>0) errno = c.err;
36 return -1;
37 }
38 return 0;
39}34}
lib/std/Thread/Condition.zig+14-2
...@@ -8,7 +8,7 @@...@@ -8,7 +8,7 @@
8//! to wake up. Spurious wakeups are possible.8//! to wake up. Spurious wakeups are possible.
9//! This API supports static initialization and does not require deinitialization.9//! This API supports static initialization and does not require deinitialization.
1010
11impl: Impl,11impl: Impl = .{},
1212
13const std = @import("../std.zig");13const std = @import("../std.zig");
14const Condition = @This();14const Condition = @This();
...@@ -17,6 +17,18 @@ const linux = std.os.linux;...@@ -17,6 +17,18 @@ const linux = std.os.linux;
17const Mutex = std.Thread.Mutex;17const Mutex = std.Thread.Mutex;
18const assert = std.debug.assert;18const assert = std.debug.assert;
1919
20pub fn wait(cond: *Condition, mutex: *Mutex) void {
21 cond.impl.wait(mutex);
22}
23
24pub fn signal(cond: *Condition) void {
25 cond.impl.signal();
26}
27
28pub fn broadcast(cond: *Condition) void {
29 cond.impl.broadcast();
30}
31
20const Impl = if (std.builtin.single_threaded)32const Impl = if (std.builtin.single_threaded)
21 SingleThreadedCondition33 SingleThreadedCondition
22else if (std.Target.current.os.tag == .windows)34else if (std.Target.current.os.tag == .windows)
...@@ -62,7 +74,7 @@ pub const PthreadCondition = struct {...@@ -62,7 +74,7 @@ pub const PthreadCondition = struct {
62 cond: std.c.pthread_cond_t = .{},74 cond: std.c.pthread_cond_t = .{},
6375
64 pub fn wait(cond: *PthreadCondition, mutex: *Mutex) void {76 pub fn wait(cond: *PthreadCondition, mutex: *Mutex) void {
65 const rc = std.c.pthread_cond_wait(&cond.cond, &mutex.mutex);77 const rc = std.c.pthread_cond_wait(&cond.cond, &mutex.impl.pthread_mutex);
66 assert(rc == 0);78 assert(rc == 0);
67 }79 }
6880
lib/std/build.zig+143-43
...@@ -272,15 +272,57 @@ pub const Builder = struct {...@@ -272,15 +272,57 @@ pub const Builder = struct {
272 return LibExeObjStep.createSharedLibrary(self, name, root_src_param, kind);272 return LibExeObjStep.createSharedLibrary(self, name, root_src_param, kind);
273 }273 }
274274
275 pub fn addSharedLibraryFromWriteFileStep(
276 self: *Builder,
277 name: []const u8,
278 wfs: *WriteFileStep,
279 basename: []const u8,
280 kind: LibExeObjStep.SharedLibKind,
281 ) *LibExeObjStep {
282 return LibExeObjStep.createSharedLibrary(self, name, @as(FileSource, .{
283 .write_file = .{
284 .step = wfs,
285 .basename = basename,
286 },
287 }), kind);
288 }
289
275 pub fn addStaticLibrary(self: *Builder, name: []const u8, root_src: ?[]const u8) *LibExeObjStep {290 pub fn addStaticLibrary(self: *Builder, name: []const u8, root_src: ?[]const u8) *LibExeObjStep {
276 const root_src_param = if (root_src) |p| @as(FileSource, .{ .path = p }) else null;291 const root_src_param = if (root_src) |p| @as(FileSource, .{ .path = p }) else null;
277 return LibExeObjStep.createStaticLibrary(self, name, root_src_param);292 return LibExeObjStep.createStaticLibrary(self, name, root_src_param);
278 }293 }
279294
295 pub fn addStaticLibraryFromWriteFileStep(
296 self: *Builder,
297 name: []const u8,
298 wfs: *WriteFileStep,
299 basename: []const u8,
300 ) *LibExeObjStep {
301 return LibExeObjStep.createStaticLibrary(self, name, @as(FileSource, .{
302 .write_file = .{
303 .step = wfs,
304 .basename = basename,
305 },
306 }));
307 }
308
280 pub fn addTest(self: *Builder, root_src: []const u8) *LibExeObjStep {309 pub fn addTest(self: *Builder, root_src: []const u8) *LibExeObjStep {
281 return LibExeObjStep.createTest(self, "test", .{ .path = root_src });310 return LibExeObjStep.createTest(self, "test", .{ .path = root_src });
282 }311 }
283312
313 pub fn addTestFromWriteFileStep(
314 self: *Builder,
315 wfs: *WriteFileStep,
316 basename: []const u8,
317 ) *LibExeObjStep {
318 return LibExeObjStep.createTest(self, "test", @as(FileSource, .{
319 .write_file = .{
320 .step = wfs,
321 .basename = basename,
322 },
323 }));
324 }
325
284 pub fn addAssemble(self: *Builder, name: []const u8, src: []const u8) *LibExeObjStep {326 pub fn addAssemble(self: *Builder, name: []const u8, src: []const u8) *LibExeObjStep {
285 const obj_step = LibExeObjStep.createObject(self, name, null);327 const obj_step = LibExeObjStep.createObject(self, name, null);
286 obj_step.addAssemblyFile(src);328 obj_step.addAssemblyFile(src);
...@@ -303,6 +345,14 @@ pub const Builder = struct {...@@ -303,6 +345,14 @@ pub const Builder = struct {
303 return self.allocator.dupe(u8, bytes) catch unreachable;345 return self.allocator.dupe(u8, bytes) catch unreachable;
304 }346 }
305347
348 pub fn dupeStrings(self: *Builder, strings: []const []const u8) [][]u8 {
349 const array = self.allocator.alloc([]u8, strings.len) catch unreachable;
350 for (strings) |s, i| {
351 array[i] = self.dupe(s);
352 }
353 return array;
354 }
355
306 pub fn dupePath(self: *Builder, bytes: []const u8) []u8 {356 pub fn dupePath(self: *Builder, bytes: []const u8) []u8 {
307 const the_copy = self.dupe(bytes);357 const the_copy = self.dupe(bytes);
308 for (the_copy) |*byte| {358 for (the_copy) |*byte| {
...@@ -448,7 +498,9 @@ pub const Builder = struct {...@@ -448,7 +498,9 @@ pub const Builder = struct {
448 return error.InvalidStepName;498 return error.InvalidStepName;
449 }499 }
450500
451 pub fn option(self: *Builder, comptime T: type, name: []const u8, description: []const u8) ?T {501 pub fn option(self: *Builder, comptime T: type, name_raw: []const u8, description_raw: []const u8) ?T {
502 const name = self.dupe(name_raw);
503 const description = self.dupe(description_raw);
452 const type_id = comptime typeToEnum(T);504 const type_id = comptime typeToEnum(T);
453 const available_option = AvailableOption{505 const available_option = AvailableOption{
454 .name = name,506 .name = name,
...@@ -581,7 +633,7 @@ pub const Builder = struct {...@@ -581,7 +633,7 @@ pub const Builder = struct {
581 const step_info = self.allocator.create(TopLevelStep) catch unreachable;633 const step_info = self.allocator.create(TopLevelStep) catch unreachable;
582 step_info.* = TopLevelStep{634 step_info.* = TopLevelStep{
583 .step = Step.initNoOp(.TopLevel, name, self.allocator),635 .step = Step.initNoOp(.TopLevel, name, self.allocator),
584 .description = description,636 .description = self.dupe(description),
585 };637 };
586 self.top_level_steps.append(step_info) catch unreachable;638 self.top_level_steps.append(step_info) catch unreachable;
587 return &step_info.step;639 return &step_info.step;
...@@ -687,7 +739,7 @@ pub const Builder = struct {...@@ -687,7 +739,7 @@ pub const Builder = struct {
687 return args.default_target;739 return args.default_target;
688 },740 },
689 else => |e| {741 else => |e| {
690 warn("Unable to parse target '{}': {s}\n\n", .{ triple, @errorName(e) });742 warn("Unable to parse target '{s}': {s}\n\n", .{ triple, @errorName(e) });
691 self.markInvalidUserInput();743 self.markInvalidUserInput();
692 return args.default_target;744 return args.default_target;
693 },745 },
...@@ -718,7 +770,9 @@ pub const Builder = struct {...@@ -718,7 +770,9 @@ pub const Builder = struct {
718 return selected_target;770 return selected_target;
719 }771 }
720772
721 pub fn addUserInputOption(self: *Builder, name: []const u8, value: []const u8) !bool {773 pub fn addUserInputOption(self: *Builder, name_raw: []const u8, value_raw: []const u8) !bool {
774 const name = self.dupe(name_raw);
775 const value = self.dupe(value_raw);
722 const gop = try self.user_input_options.getOrPut(name);776 const gop = try self.user_input_options.getOrPut(name);
723 if (!gop.found_existing) {777 if (!gop.found_existing) {
724 gop.entry.value = UserInputOption{778 gop.entry.value = UserInputOption{
...@@ -759,7 +813,8 @@ pub const Builder = struct {...@@ -759,7 +813,8 @@ pub const Builder = struct {
759 return false;813 return false;
760 }814 }
761815
762 pub fn addUserInputFlag(self: *Builder, name: []const u8) !bool {816 pub fn addUserInputFlag(self: *Builder, name_raw: []const u8) !bool {
817 const name = self.dupe(name_raw);
763 const gop = try self.user_input_options.getOrPut(name);818 const gop = try self.user_input_options.getOrPut(name);
764 if (!gop.found_existing) {819 if (!gop.found_existing) {
765 gop.entry.value = UserInputOption{820 gop.entry.value = UserInputOption{
...@@ -951,10 +1006,11 @@ pub const Builder = struct {...@@ -951,10 +1006,11 @@ pub const Builder = struct {
951 }1006 }
9521007
953 pub fn pushInstalledFile(self: *Builder, dir: InstallDir, dest_rel_path: []const u8) void {1008 pub fn pushInstalledFile(self: *Builder, dir: InstallDir, dest_rel_path: []const u8) void {
954 self.installed_files.append(InstalledFile{1009 const file = InstalledFile{
955 .dir = dir,1010 .dir = dir,
956 .path = dest_rel_path,1011 .path = dest_rel_path,
957 }) catch unreachable;1012 };
1013 self.installed_files.append(file.dupe(self)) catch unreachable;
958 }1014 }
9591015
960 pub fn updateFile(self: *Builder, source_path: []const u8, dest_path: []const u8) !void {1016 pub fn updateFile(self: *Builder, source_path: []const u8, dest_path: []const u8) !void {
...@@ -1097,7 +1153,7 @@ pub const Builder = struct {...@@ -1097,7 +1153,7 @@ pub const Builder = struct {
1097 }1153 }
10981154
1099 pub fn addSearchPrefix(self: *Builder, search_prefix: []const u8) void {1155 pub fn addSearchPrefix(self: *Builder, search_prefix: []const u8) void {
1100 self.search_prefixes.append(search_prefix) catch unreachable;1156 self.search_prefixes.append(self.dupePath(search_prefix)) catch unreachable;
1101 }1157 }
11021158
1103 pub fn getInstallPath(self: *Builder, dir: InstallDir, dest_rel_path: []const u8) []const u8 {1159 pub fn getInstallPath(self: *Builder, dir: InstallDir, dest_rel_path: []const u8) []const u8 {
...@@ -1118,6 +1174,7 @@ pub const Builder = struct {...@@ -1118,6 +1174,7 @@ pub const Builder = struct {
1118 fn execPkgConfigList(self: *Builder, out_code: *u8) ![]const PkgConfigPkg {1174 fn execPkgConfigList(self: *Builder, out_code: *u8) ![]const PkgConfigPkg {
1119 const stdout = try self.execAllowFail(&[_][]const u8{ "pkg-config", "--list-all" }, out_code, .Ignore);1175 const stdout = try self.execAllowFail(&[_][]const u8{ "pkg-config", "--list-all" }, out_code, .Ignore);
1120 var list = ArrayList(PkgConfigPkg).init(self.allocator);1176 var list = ArrayList(PkgConfigPkg).init(self.allocator);
1177 errdefer list.deinit();
1121 var line_it = mem.tokenize(stdout, "\r\n");1178 var line_it = mem.tokenize(stdout, "\r\n");
1122 while (line_it.next()) |line| {1179 while (line_it.next()) |line| {
1123 if (mem.trim(u8, line, " \t").len == 0) continue;1180 if (mem.trim(u8, line, " \t").len == 0) continue;
...@@ -1127,7 +1184,7 @@ pub const Builder = struct {...@@ -1127,7 +1184,7 @@ pub const Builder = struct {
1127 .desc = tok_it.rest(),1184 .desc = tok_it.rest(),
1128 });1185 });
1129 }1186 }
1130 return list.items;1187 return list.toOwnedSlice();
1131 }1188 }
11321189
1133 fn getPkgConfigList(self: *Builder) ![]const PkgConfigPkg {1190 fn getPkgConfigList(self: *Builder) ![]const PkgConfigPkg {
...@@ -1182,9 +1239,16 @@ pub const Pkg = struct {...@@ -1182,9 +1239,16 @@ pub const Pkg = struct {
1182 dependencies: ?[]const Pkg = null,1239 dependencies: ?[]const Pkg = null,
1183};1240};
11841241
1185const CSourceFile = struct {1242pub const CSourceFile = struct {
1186 source: FileSource,1243 source: FileSource,
1187 args: []const []const u8,1244 args: []const []const u8,
1245
1246 fn dupe(self: CSourceFile, b: *Builder) CSourceFile {
1247 return .{
1248 .source = self.source.dupe(b),
1249 .args = b.dupeStrings(self.args),
1250 };
1251 }
1188};1252};
11891253
1190const CSourceFiles = struct {1254const CSourceFiles = struct {
...@@ -1226,6 +1290,17 @@ pub const FileSource = union(enum) {...@@ -1226,6 +1290,17 @@ pub const FileSource = union(enum) {
1226 .translate_c => |tc| tc.getOutputPath(),1290 .translate_c => |tc| tc.getOutputPath(),
1227 };1291 };
1228 }1292 }
1293
1294 pub fn dupe(self: FileSource, b: *Builder) FileSource {
1295 return switch (self) {
1296 .path => |p| .{ .path = b.dupe(p) },
1297 .write_file => |wf| .{ .write_file = .{
1298 .step = wf.step,
1299 .basename = b.dupe(wf.basename),
1300 } },
1301 .translate_c => |tc| .{ .translate_c = tc },
1302 };
1303 }
1229};1304};
12301305
1231const BuildOptionArtifactArg = struct {1306const BuildOptionArtifactArg = struct {
...@@ -1401,12 +1476,14 @@ pub const LibExeObjStep = struct {...@@ -1401,12 +1476,14 @@ pub const LibExeObjStep = struct {
14011476
1402 fn initExtraArgs(1477 fn initExtraArgs(
1403 builder: *Builder,1478 builder: *Builder,
1404 name: []const u8,1479 name_raw: []const u8,
1405 root_src: ?FileSource,1480 root_src_raw: ?FileSource,
1406 kind: Kind,1481 kind: Kind,
1407 is_dynamic: bool,1482 is_dynamic: bool,
1408 ver: ?Version,1483 ver: ?Version,
1409 ) LibExeObjStep {1484 ) LibExeObjStep {
1485 const name = builder.dupe(name_raw);
1486 const root_src: ?FileSource = if (root_src_raw) |rsrc| rsrc.dupe(builder) else null;
1410 if (mem.indexOf(u8, name, "/") != null or mem.indexOf(u8, name, "\\") != null) {1487 if (mem.indexOf(u8, name, "/") != null or mem.indexOf(u8, name, "\\") != null) {
1411 panic("invalid name: '{s}'. It looks like a file path, but it is supposed to be the library or application name.", .{name});1488 panic("invalid name: '{s}'. It looks like a file path, but it is supposed to be the library or application name.", .{name});
1412 }1489 }
...@@ -1543,12 +1620,12 @@ pub const LibExeObjStep = struct {...@@ -1543,12 +1620,12 @@ pub const LibExeObjStep = struct {
1543 }1620 }
15441621
1545 pub fn setLinkerScriptPath(self: *LibExeObjStep, path: []const u8) void {1622 pub fn setLinkerScriptPath(self: *LibExeObjStep, path: []const u8) void {
1546 self.linker_script = path;1623 self.linker_script = self.builder.dupePath(path);
1547 }1624 }
15481625
1549 pub fn linkFramework(self: *LibExeObjStep, framework_name: []const u8) void {1626 pub fn linkFramework(self: *LibExeObjStep, framework_name: []const u8) void {
1550 assert(self.target.isDarwin());1627 assert(self.target.isDarwin());
1551 self.frameworks.put(framework_name) catch unreachable;1628 self.frameworks.put(self.builder.dupe(framework_name)) catch unreachable;
1552 }1629 }
15531630
1554 /// Returns whether the library, executable, or object depends on a particular system library.1631 /// Returns whether the library, executable, or object depends on a particular system library.
...@@ -1712,25 +1789,23 @@ pub const LibExeObjStep = struct {...@@ -1712,25 +1789,23 @@ pub const LibExeObjStep = struct {
17121789
1713 pub fn setNamePrefix(self: *LibExeObjStep, text: []const u8) void {1790 pub fn setNamePrefix(self: *LibExeObjStep, text: []const u8) void {
1714 assert(self.kind == Kind.Test);1791 assert(self.kind == Kind.Test);
1715 self.name_prefix = text;1792 self.name_prefix = self.builder.dupe(text);
1716 }1793 }
17171794
1718 pub fn setFilter(self: *LibExeObjStep, text: ?[]const u8) void {1795 pub fn setFilter(self: *LibExeObjStep, text: ?[]const u8) void {
1719 assert(self.kind == Kind.Test);1796 assert(self.kind == Kind.Test);
1720 self.filter = text;1797 self.filter = if (text) |t| self.builder.dupe(t) else null;
1721 }1798 }
17221799
1723 /// Handy when you have many C/C++ source files and want them all to have the same flags.1800 /// Handy when you have many C/C++ source files and want them all to have the same flags.
1724 pub fn addCSourceFiles(self: *LibExeObjStep, files: []const []const u8, flags: []const []const u8) void {1801 pub fn addCSourceFiles(self: *LibExeObjStep, files: []const []const u8, flags: []const []const u8) void {
1725 const c_source_files = self.builder.allocator.create(CSourceFiles) catch unreachable;1802 const c_source_files = self.builder.allocator.create(CSourceFiles) catch unreachable;
17261803
1727 const flags_copy = self.builder.allocator.alloc([]u8, flags.len) catch unreachable;1804 const files_copy = self.builder.dupeStrings(files);
1728 for (flags) |flag, i| {1805 const flags_copy = self.builder.dupeStrings(flags);
1729 flags_copy[i] = self.builder.dupe(flag);
1730 }
17311806
1732 c_source_files.* = .{1807 c_source_files.* = .{
1733 .files = files,1808 .files = files_copy,
1734 .flags = flags_copy,1809 .flags = flags_copy,
1735 };1810 };
1736 self.link_objects.append(LinkObject{ .CSourceFiles = c_source_files }) catch unreachable;1811 self.link_objects.append(LinkObject{ .CSourceFiles = c_source_files }) catch unreachable;
...@@ -1745,14 +1820,7 @@ pub const LibExeObjStep = struct {...@@ -1745,14 +1820,7 @@ pub const LibExeObjStep = struct {
17451820
1746 pub fn addCSourceFileSource(self: *LibExeObjStep, source: CSourceFile) void {1821 pub fn addCSourceFileSource(self: *LibExeObjStep, source: CSourceFile) void {
1747 const c_source_file = self.builder.allocator.create(CSourceFile) catch unreachable;1822 const c_source_file = self.builder.allocator.create(CSourceFile) catch unreachable;
17481823 c_source_file.* = source.dupe(self.builder);
1749 const args_copy = self.builder.allocator.alloc([]u8, source.args.len) catch unreachable;
1750 for (source.args) |arg, i| {
1751 args_copy[i] = self.builder.dupe(arg);
1752 }
1753
1754 c_source_file.* = source;
1755 c_source_file.args = args_copy;
1756 self.link_objects.append(LinkObject{ .CSourceFile = c_source_file }) catch unreachable;1824 self.link_objects.append(LinkObject{ .CSourceFile = c_source_file }) catch unreachable;
1757 }1825 }
17581826
...@@ -1769,15 +1837,15 @@ pub const LibExeObjStep = struct {...@@ -1769,15 +1837,15 @@ pub const LibExeObjStep = struct {
1769 }1837 }
17701838
1771 pub fn overrideZigLibDir(self: *LibExeObjStep, dir_path: []const u8) void {1839 pub fn overrideZigLibDir(self: *LibExeObjStep, dir_path: []const u8) void {
1772 self.override_lib_dir = self.builder.dupe(dir_path);1840 self.override_lib_dir = self.builder.dupePath(dir_path);
1773 }1841 }
17741842
1775 pub fn setMainPkgPath(self: *LibExeObjStep, dir_path: []const u8) void {1843 pub fn setMainPkgPath(self: *LibExeObjStep, dir_path: []const u8) void {
1776 self.main_pkg_path = dir_path;1844 self.main_pkg_path = self.builder.dupePath(dir_path);
1777 }1845 }
17781846
1779 pub fn setLibCFile(self: *LibExeObjStep, libc_file: ?[]const u8) void {1847 pub fn setLibCFile(self: *LibExeObjStep, libc_file: ?[]const u8) void {
1780 self.libc_file = libc_file;1848 self.libc_file = if (libc_file) |f| self.builder.dupe(f) else null;
1781 }1849 }
17821850
1783 /// Unless setOutputDir was called, this function must be called only in1851 /// Unless setOutputDir was called, this function must be called only in
...@@ -1837,8 +1905,9 @@ pub const LibExeObjStep = struct {...@@ -1837,8 +1905,9 @@ pub const LibExeObjStep = struct {
1837 }1905 }
18381906
1839 pub fn addAssemblyFileSource(self: *LibExeObjStep, source: FileSource) void {1907 pub fn addAssemblyFileSource(self: *LibExeObjStep, source: FileSource) void {
1840 self.link_objects.append(LinkObject{ .AssemblyFile = source }) catch unreachable;1908 const source_duped = source.dupe(self.builder);
1841 source.addStepDependencies(&self.step);1909 self.link_objects.append(LinkObject{ .AssemblyFile = source_duped }) catch unreachable;
1910 source_duped.addStepDependencies(&self.step);
1842 }1911 }
18431912
1844 pub fn addObjectFile(self: *LibExeObjStep, path: []const u8) void {1913 pub fn addObjectFile(self: *LibExeObjStep, path: []const u8) void {
...@@ -1935,7 +2004,7 @@ pub const LibExeObjStep = struct {...@@ -1935,7 +2004,7 @@ pub const LibExeObjStep = struct {
1935 /// The value is the path in the cache dir.2004 /// The value is the path in the cache dir.
1936 /// Adds a dependency automatically.2005 /// Adds a dependency automatically.
1937 pub fn addBuildOptionArtifact(self: *LibExeObjStep, name: []const u8, artifact: *LibExeObjStep) void {2006 pub fn addBuildOptionArtifact(self: *LibExeObjStep, name: []const u8, artifact: *LibExeObjStep) void {
1938 self.build_options_artifact_args.append(.{ .name = name, .artifact = artifact }) catch unreachable;2007 self.build_options_artifact_args.append(.{ .name = self.builder.dupe(name), .artifact = artifact }) catch unreachable;
1939 self.step.dependOn(&artifact.step);2008 self.step.dependOn(&artifact.step);
1940 }2009 }
19412010
...@@ -2005,7 +2074,11 @@ pub const LibExeObjStep = struct {...@@ -2005,7 +2074,11 @@ pub const LibExeObjStep = struct {
20052074
2006 pub fn setExecCmd(self: *LibExeObjStep, args: []const ?[]const u8) void {2075 pub fn setExecCmd(self: *LibExeObjStep, args: []const ?[]const u8) void {
2007 assert(self.kind == Kind.Test);2076 assert(self.kind == Kind.Test);
2008 self.exec_cmd_args = args;2077 const duped_args = self.builder.allocator.alloc(?[]u8, args.len) catch unreachable;
2078 for (args) |arg, i| {
2079 duped_args[i] = if (arg) |a| self.builder.dupe(a) else null;
2080 }
2081 self.exec_cmd_args = duped_args;
2009 }2082 }
20102083
2011 fn linkLibraryOrObject(self: *LibExeObjStep, other: *LibExeObjStep) void {2084 fn linkLibraryOrObject(self: *LibExeObjStep, other: *LibExeObjStep) void {
...@@ -2623,9 +2696,9 @@ pub const InstallFileStep = struct {...@@ -2623,9 +2696,9 @@ pub const InstallFileStep = struct {
2623 return InstallFileStep{2696 return InstallFileStep{
2624 .builder = builder,2697 .builder = builder,
2625 .step = Step.init(.InstallFile, builder.fmt("install {s}", .{src_path}), builder.allocator, make),2698 .step = Step.init(.InstallFile, builder.fmt("install {s}", .{src_path}), builder.allocator, make),
2626 .src_path = src_path,2699 .src_path = builder.dupePath(src_path),
2627 .dir = dir,2700 .dir = dir.dupe(builder),
2628 .dest_rel_path = dest_rel_path,2701 .dest_rel_path = builder.dupePath(dest_rel_path),
2629 };2702 };
2630 }2703 }
26312704
...@@ -2642,6 +2715,16 @@ pub const InstallDirectoryOptions = struct {...@@ -2642,6 +2715,16 @@ pub const InstallDirectoryOptions = struct {
2642 install_dir: InstallDir,2715 install_dir: InstallDir,
2643 install_subdir: []const u8,2716 install_subdir: []const u8,
2644 exclude_extensions: ?[]const []const u8 = null,2717 exclude_extensions: ?[]const []const u8 = null,
2718
2719 fn dupe(self: InstallDirectoryOptions, b: *Builder) InstallDirectoryOptions {
2720 return .{
2721 .source_dir = b.dupe(self.source_dir),
2722 .install_dir = self.install_dir.dupe(b),
2723 .install_subdir = b.dupe(self.install_subdir),
2724 .exclude_extensions = if (self.exclude_extensions) |extensions|
2725 b.dupeStrings(extensions) else null,
2726 };
2727 }
2645};2728};
26462729
2647pub const InstallDirStep = struct {2730pub const InstallDirStep = struct {
...@@ -2657,7 +2740,7 @@ pub const InstallDirStep = struct {...@@ -2657,7 +2740,7 @@ pub const InstallDirStep = struct {
2657 return InstallDirStep{2740 return InstallDirStep{
2658 .builder = builder,2741 .builder = builder,
2659 .step = Step.init(.InstallDir, builder.fmt("install {s}/", .{options.source_dir}), builder.allocator, make),2742 .step = Step.init(.InstallDir, builder.fmt("install {s}/", .{options.source_dir}), builder.allocator, make),
2660 .options = options,2743 .options = options.dupe(builder),
2661 };2744 };
2662 }2745 }
26632746
...@@ -2693,7 +2776,7 @@ pub const LogStep = struct {...@@ -2693,7 +2776,7 @@ pub const LogStep = struct {
2693 return LogStep{2776 return LogStep{
2694 .builder = builder,2777 .builder = builder,
2695 .step = Step.init(.Log, builder.fmt("log {s}", .{data}), builder.allocator, make),2778 .step = Step.init(.Log, builder.fmt("log {s}", .{data}), builder.allocator, make),
2696 .data = data,2779 .data = builder.dupe(data),
2697 };2780 };
2698 }2781 }
26992782
...@@ -2712,7 +2795,7 @@ pub const RemoveDirStep = struct {...@@ -2712,7 +2795,7 @@ pub const RemoveDirStep = struct {
2712 return RemoveDirStep{2795 return RemoveDirStep{
2713 .builder = builder,2796 .builder = builder,
2714 .step = Step.init(.RemoveDir, builder.fmt("RemoveDir {s}", .{dir_path}), builder.allocator, make),2797 .step = Step.init(.RemoveDir, builder.fmt("RemoveDir {s}", .{dir_path}), builder.allocator, make),
2715 .dir_path = dir_path,2798 .dir_path = builder.dupePath(dir_path),
2716 };2799 };
2717 }2800 }
27182801
...@@ -2756,7 +2839,7 @@ pub const Step = struct {...@@ -2756,7 +2839,7 @@ pub const Step = struct {
2756 pub fn init(id: Id, name: []const u8, allocator: *Allocator, makeFn: fn (*Step) anyerror!void) Step {2839 pub fn init(id: Id, name: []const u8, allocator: *Allocator, makeFn: fn (*Step) anyerror!void) Step {
2757 return Step{2840 return Step{
2758 .id = id,2841 .id = id,
2759 .name = name,2842 .name = allocator.dupe(u8, name) catch unreachable,
2760 .makeFn = makeFn,2843 .makeFn = makeFn,
2761 .dependencies = ArrayList(*Step).init(allocator),2844 .dependencies = ArrayList(*Step).init(allocator),
2762 .loop_flag = false,2845 .loop_flag = false,
...@@ -2863,11 +2946,28 @@ pub const InstallDir = union(enum) {...@@ -2863,11 +2946,28 @@ pub const InstallDir = union(enum) {
2863 Header: void,2946 Header: void,
2864 /// A path relative to the prefix2947 /// A path relative to the prefix
2865 Custom: []const u8,2948 Custom: []const u8,
2949
2950 fn dupe(self: InstallDir, builder: *Builder) InstallDir {
2951 if (self == .Custom) {
2952 // Written with this temporary to avoid RLS problems
2953 const duped_path = builder.dupe(self.Custom);
2954 return .{ .Custom = duped_path };
2955 } else {
2956 return self;
2957 }
2958 }
2866};2959};
28672960
2868pub const InstalledFile = struct {2961pub const InstalledFile = struct {
2869 dir: InstallDir,2962 dir: InstallDir,
2870 path: []const u8,2963 path: []const u8,
2964
2965 pub fn dupe(self: InstalledFile, builder: *Builder) InstalledFile {
2966 return .{
2967 .dir = self.dir.dupe(builder),
2968 .path = builder.dupe(self.path),
2969 };
2970 }
2871};2971};
28722972
2873test "Builder.dupePkg()" {2973test "Builder.dupePkg()" {
lib/std/build/check_file.zig+2-2
...@@ -27,8 +27,8 @@ pub const CheckFileStep = struct {...@@ -27,8 +27,8 @@ pub const CheckFileStep = struct {
27 self.* = CheckFileStep{27 self.* = CheckFileStep{
28 .builder = builder,28 .builder = builder,
29 .step = Step.init(.CheckFile, "CheckFile", builder.allocator, make),29 .step = Step.init(.CheckFile, "CheckFile", builder.allocator, make),
30 .source = source,30 .source = source.dupe(builder),
31 .expected_matches = expected_matches,31 .expected_matches = builder.dupeStrings(expected_matches),
32 };32 };
33 self.source.addStepDependencies(&self.step);33 self.source.addStepDependencies(&self.step);
34 return self;34 return self;
lib/std/build/run.zig+8-5
...@@ -76,7 +76,7 @@ pub const RunStep = struct {...@@ -76,7 +76,7 @@ pub const RunStep = struct {
76 self.argv.append(Arg{76 self.argv.append(Arg{
77 .WriteFile = .{77 .WriteFile = .{
78 .step = write_file,78 .step = write_file,
79 .file_name = file_name,79 .file_name = self.builder.dupePath(file_name),
80 },80 },
81 }) catch unreachable;81 }) catch unreachable;
82 self.step.dependOn(&write_file.step);82 self.step.dependOn(&write_file.step);
...@@ -119,7 +119,7 @@ pub const RunStep = struct {...@@ -119,7 +119,7 @@ pub const RunStep = struct {
119 const new_path = self.builder.fmt("{s}" ++ [1]u8{fs.path.delimiter} ++ "{s}", .{ pp, search_path });119 const new_path = self.builder.fmt("{s}" ++ [1]u8{fs.path.delimiter} ++ "{s}", .{ pp, search_path });
120 env_map.set(key, new_path) catch unreachable;120 env_map.set(key, new_path) catch unreachable;
121 } else {121 } else {
122 env_map.set(key, search_path) catch unreachable;122 env_map.set(key, self.builder.dupePath(search_path)) catch unreachable;
123 }123 }
124 }124 }
125125
...@@ -134,15 +134,18 @@ pub const RunStep = struct {...@@ -134,15 +134,18 @@ pub const RunStep = struct {
134134
135 pub fn setEnvironmentVariable(self: *RunStep, key: []const u8, value: []const u8) void {135 pub fn setEnvironmentVariable(self: *RunStep, key: []const u8, value: []const u8) void {
136 const env_map = self.getEnvMap();136 const env_map = self.getEnvMap();
137 env_map.set(key, value) catch unreachable;137 env_map.set(
138 self.builder.dupe(key),
139 self.builder.dupe(value),
140 ) catch unreachable;
138 }141 }
139142
140 pub fn expectStdErrEqual(self: *RunStep, bytes: []const u8) void {143 pub fn expectStdErrEqual(self: *RunStep, bytes: []const u8) void {
141 self.stderr_action = .{ .expect_exact = bytes };144 self.stderr_action = .{ .expect_exact = self.builder.dupe(bytes) };
142 }145 }
143146
144 pub fn expectStdOutEqual(self: *RunStep, bytes: []const u8) void {147 pub fn expectStdOutEqual(self: *RunStep, bytes: []const u8) void {
145 self.stdout_action = .{ .expect_exact = bytes };148 self.stdout_action = .{ .expect_exact = self.builder.dupe(bytes) };
146 }149 }
147150
148 fn stdIoActionToBehavior(action: StdIoAction) std.ChildProcess.StdIo {151 fn stdIoActionToBehavior(action: StdIoAction) std.ChildProcess.StdIo {
lib/std/build/translate_c.zig+2-2
...@@ -57,11 +57,11 @@ pub const TranslateCStep = struct {...@@ -57,11 +57,11 @@ pub const TranslateCStep = struct {
57 }57 }
5858
59 pub fn addIncludeDir(self: *TranslateCStep, include_dir: []const u8) void {59 pub fn addIncludeDir(self: *TranslateCStep, include_dir: []const u8) void {
60 self.include_dirs.append(include_dir) catch unreachable;60 self.include_dirs.append(self.builder.dupePath(include_dir)) catch unreachable;
61 }61 }
6262
63 pub fn addCheckFile(self: *TranslateCStep, expected_matches: []const []const u8) *CheckFileStep {63 pub fn addCheckFile(self: *TranslateCStep, expected_matches: []const []const u8) *CheckFileStep {
64 return CheckFileStep.create(self.builder, .{ .translate_c = self }, expected_matches);64 return CheckFileStep.create(self.builder, .{ .translate_c = self }, self.builder.dupeStrings(expected_matches));
65 }65 }
6666
67 fn make(step: *Step) !void {67 fn make(step: *Step) !void {
lib/std/build/write_file.zig+4-1
...@@ -32,7 +32,10 @@ pub const WriteFileStep = struct {...@@ -32,7 +32,10 @@ pub const WriteFileStep = struct {
32 }32 }
3333
34 pub fn add(self: *WriteFileStep, basename: []const u8, bytes: []const u8) void {34 pub fn add(self: *WriteFileStep, basename: []const u8, bytes: []const u8) void {
35 self.files.append(.{ .basename = basename, .bytes = bytes }) catch unreachable;35 self.files.append(.{
36 .basename = self.builder.dupePath(basename),
37 .bytes = self.builder.dupe(bytes),
38 }) catch unreachable;
36 }39 }
3740
38 /// Unless setOutputDir was called, this function must be called only in41 /// Unless setOutputDir was called, this function must be called only in
lib/std/builtin.zig+3-10
...@@ -155,6 +155,7 @@ pub const CallingConvention = enum {...@@ -155,6 +155,7 @@ pub const CallingConvention = enum {
155 C,155 C,
156 Naked,156 Naked,
157 Async,157 Async,
158 Inline,
158 Interrupt,159 Interrupt,
159 Signal,160 Signal,
160 Stdcall,161 Stdcall,
...@@ -175,7 +176,7 @@ pub const SourceLocation = struct {...@@ -175,7 +176,7 @@ pub const SourceLocation = struct {
175 column: u32,176 column: u32,
176};177};
177178
178pub const TypeId = @TagType(TypeInfo);179pub const TypeId = std.meta.Tag(TypeInfo);
179180
180/// This data structure is used by the Zig language code generation and181/// This data structure is used by the Zig language code generation and
181/// therefore must be kept in sync with the compiler implementation.182/// therefore must be kept in sync with the compiler implementation.
...@@ -404,21 +405,13 @@ pub const TypeInfo = union(enum) {...@@ -404,21 +405,13 @@ pub const TypeInfo = union(enum) {
404 /// therefore must be kept in sync with the compiler implementation.405 /// therefore must be kept in sync with the compiler implementation.
405 pub const FnDecl = struct {406 pub const FnDecl = struct {
406 fn_type: type,407 fn_type: type,
407 inline_type: Inline,408 is_noinline: bool,
408 is_var_args: bool,409 is_var_args: bool,
409 is_extern: bool,410 is_extern: bool,
410 is_export: bool,411 is_export: bool,
411 lib_name: ?[]const u8,412 lib_name: ?[]const u8,
412 return_type: type,413 return_type: type,
413 arg_names: []const []const u8,414 arg_names: []const []const u8,
414
415 /// This data structure is used by the Zig language code generation and
416 /// therefore must be kept in sync with the compiler implementation.
417 pub const Inline = enum {
418 Auto,
419 Always,
420 Never,
421 };
422 };415 };
423 };416 };
424 };417 };
lib/std/c/ast.zig+1-1
...@@ -110,7 +110,7 @@ pub const Error = union(enum) {...@@ -110,7 +110,7 @@ pub const Error = union(enum) {
110110
111 pub const ExpectedToken = struct {111 pub const ExpectedToken = struct {
112 token: TokenIndex,112 token: TokenIndex,
113 expected_id: @TagType(Token.Id),113 expected_id: std.meta.Tag(Token.Id),
114114
115 pub fn render(self: *const ExpectedToken, tree: *Tree, stream: anytype) !void {115 pub fn render(self: *const ExpectedToken, tree: *Tree, stream: anytype) !void {
116 const found_token = tree.tokens.at(self.token);116 const found_token = tree.tokens.at(self.token);
lib/std/c/builtins.zig+49-49
...@@ -6,70 +6,70 @@...@@ -6,70 +6,70 @@
66
7const std = @import("std");7const std = @import("std");
88
9pub inline fn __builtin_bswap16(val: u16) callconv(.C) u16 { return @byteSwap(u16, val); }9pub fn __builtin_bswap16(val: u16) callconv(.Inline) u16 { return @byteSwap(u16, val); }
10pub inline fn __builtin_bswap32(val: u32) callconv(.C) u32 { return @byteSwap(u32, val); }10pub fn __builtin_bswap32(val: u32) callconv(.Inline) u32 { return @byteSwap(u32, val); }
11pub inline fn __builtin_bswap64(val: u64) callconv(.C) u64 { return @byteSwap(u64, val); }11pub fn __builtin_bswap64(val: u64) callconv(.Inline) u64 { return @byteSwap(u64, val); }
1212
13pub inline fn __builtin_signbit(val: f64) callconv(.C) c_int { return @boolToInt(std.math.signbit(val)); }13pub fn __builtin_signbit(val: f64) callconv(.Inline) c_int { return @boolToInt(std.math.signbit(val)); }
14pub inline fn __builtin_signbitf(val: f32) callconv(.C) c_int { return @boolToInt(std.math.signbit(val)); }14pub fn __builtin_signbitf(val: f32) callconv(.Inline) c_int { return @boolToInt(std.math.signbit(val)); }
1515
16pub inline fn __builtin_popcount(val: c_uint) callconv(.C) c_int {16pub fn __builtin_popcount(val: c_uint) callconv(.Inline) c_int {
17 // popcount of a c_uint will never exceed the capacity of a c_int17 // popcount of a c_uint will never exceed the capacity of a c_int
18 @setRuntimeSafety(false);18 @setRuntimeSafety(false);
19 return @bitCast(c_int, @as(c_uint, @popCount(c_uint, val)));19 return @bitCast(c_int, @as(c_uint, @popCount(c_uint, val)));
20}20}
21pub inline fn __builtin_ctz(val: c_uint) callconv(.C) c_int {21pub fn __builtin_ctz(val: c_uint) callconv(.Inline) c_int {
22 // Returns the number of trailing 0-bits in val, starting at the least significant bit position.22 // Returns the number of trailing 0-bits in val, starting at the least significant bit position.
23 // In C if `val` is 0, the result is undefined; in zig it's the number of bits in a c_uint23 // In C if `val` is 0, the result is undefined; in zig it's the number of bits in a c_uint
24 @setRuntimeSafety(false);24 @setRuntimeSafety(false);
25 return @bitCast(c_int, @as(c_uint, @ctz(c_uint, val)));25 return @bitCast(c_int, @as(c_uint, @ctz(c_uint, val)));
26}26}
27pub inline fn __builtin_clz(val: c_uint) callconv(.C) c_int {27pub fn __builtin_clz(val: c_uint) callconv(.Inline) c_int {
28 // Returns the number of leading 0-bits in x, starting at the most significant bit position.28 // Returns the number of leading 0-bits in x, starting at the most significant bit position.
29 // In C if `val` is 0, the result is undefined; in zig it's the number of bits in a c_uint29 // In C if `val` is 0, the result is undefined; in zig it's the number of bits in a c_uint
30 @setRuntimeSafety(false);30 @setRuntimeSafety(false);
31 return @bitCast(c_int, @as(c_uint, @clz(c_uint, val)));31 return @bitCast(c_int, @as(c_uint, @clz(c_uint, val)));
32}32}
3333
34pub inline fn __builtin_sqrt(val: f64) callconv(.C) f64 { return @sqrt(val); }34pub fn __builtin_sqrt(val: f64) callconv(.Inline) f64 { return @sqrt(val); }
35pub inline fn __builtin_sqrtf(val: f32) callconv(.C) f32 { return @sqrt(val); }35pub fn __builtin_sqrtf(val: f32) callconv(.Inline) f32 { return @sqrt(val); }
3636
37pub inline fn __builtin_sin(val: f64) callconv(.C) f64 { return @sin(val); }37pub fn __builtin_sin(val: f64) callconv(.Inline) f64 { return @sin(val); }
38pub inline fn __builtin_sinf(val: f32) callconv(.C) f32 { return @sin(val); }38pub fn __builtin_sinf(val: f32) callconv(.Inline) f32 { return @sin(val); }
39pub inline fn __builtin_cos(val: f64) callconv(.C) f64 { return @cos(val); }39pub fn __builtin_cos(val: f64) callconv(.Inline) f64 { return @cos(val); }
40pub inline fn __builtin_cosf(val: f32) callconv(.C) f32 { return @cos(val); }40pub fn __builtin_cosf(val: f32) callconv(.Inline) f32 { return @cos(val); }
4141
42pub inline fn __builtin_exp(val: f64) callconv(.C) f64 { return @exp(val); }42pub fn __builtin_exp(val: f64) callconv(.Inline) f64 { return @exp(val); }
43pub inline fn __builtin_expf(val: f32) callconv(.C) f32 { return @exp(val); }43pub fn __builtin_expf(val: f32) callconv(.Inline) f32 { return @exp(val); }
44pub inline fn __builtin_exp2(val: f64) callconv(.C) f64 { return @exp2(val); }44pub fn __builtin_exp2(val: f64) callconv(.Inline) f64 { return @exp2(val); }
45pub inline fn __builtin_exp2f(val: f32) callconv(.C) f32 { return @exp2(val); }45pub fn __builtin_exp2f(val: f32) callconv(.Inline) f32 { return @exp2(val); }
46pub inline fn __builtin_log(val: f64) callconv(.C) f64 { return @log(val); }46pub fn __builtin_log(val: f64) callconv(.Inline) f64 { return @log(val); }
47pub inline fn __builtin_logf(val: f32) callconv(.C) f32 { return @log(val); }47pub fn __builtin_logf(val: f32) callconv(.Inline) f32 { return @log(val); }
48pub inline fn __builtin_log2(val: f64) callconv(.C) f64 { return @log2(val); }48pub fn __builtin_log2(val: f64) callconv(.Inline) f64 { return @log2(val); }
49pub inline fn __builtin_log2f(val: f32) callconv(.C) f32 { return @log2(val); }49pub fn __builtin_log2f(val: f32) callconv(.Inline) f32 { return @log2(val); }
50pub inline fn __builtin_log10(val: f64) callconv(.C) f64 { return @log10(val); }50pub fn __builtin_log10(val: f64) callconv(.Inline) f64 { return @log10(val); }
51pub inline fn __builtin_log10f(val: f32) callconv(.C) f32 { return @log10(val); }51pub fn __builtin_log10f(val: f32) callconv(.Inline) f32 { return @log10(val); }
5252
53// Standard C Library bug: The absolute value of the most negative integer remains negative.53// Standard C Library bug: The absolute value of the most negative integer remains negative.
54pub inline fn __builtin_abs(val: c_int) callconv(.C) c_int { return std.math.absInt(val) catch std.math.minInt(c_int); }54pub fn __builtin_abs(val: c_int) callconv(.Inline) c_int { return std.math.absInt(val) catch std.math.minInt(c_int); }
55pub inline fn __builtin_fabs(val: f64) callconv(.C) f64 { return @fabs(val); }55pub fn __builtin_fabs(val: f64) callconv(.Inline) f64 { return @fabs(val); }
56pub inline fn __builtin_fabsf(val: f32) callconv(.C) f32 { return @fabs(val); }56pub fn __builtin_fabsf(val: f32) callconv(.Inline) f32 { return @fabs(val); }
5757
58pub inline fn __builtin_floor(val: f64) callconv(.C) f64 { return @floor(val); }58pub fn __builtin_floor(val: f64) callconv(.Inline) f64 { return @floor(val); }
59pub inline fn __builtin_floorf(val: f32) callconv(.C) f32 { return @floor(val); }59pub fn __builtin_floorf(val: f32) callconv(.Inline) f32 { return @floor(val); }
60pub inline fn __builtin_ceil(val: f64) callconv(.C) f64 { return @ceil(val); }60pub fn __builtin_ceil(val: f64) callconv(.Inline) f64 { return @ceil(val); }
61pub inline fn __builtin_ceilf(val: f32) callconv(.C) f32 { return @ceil(val); }61pub fn __builtin_ceilf(val: f32) callconv(.Inline) f32 { return @ceil(val); }
62pub inline fn __builtin_trunc(val: f64) callconv(.C) f64 { return @trunc(val); }62pub fn __builtin_trunc(val: f64) callconv(.Inline) f64 { return @trunc(val); }
63pub inline fn __builtin_truncf(val: f32) callconv(.C) f32 { return @trunc(val); }63pub fn __builtin_truncf(val: f32) callconv(.Inline) f32 { return @trunc(val); }
64pub inline fn __builtin_round(val: f64) callconv(.C) f64 { return @round(val); }64pub fn __builtin_round(val: f64) callconv(.Inline) f64 { return @round(val); }
65pub inline fn __builtin_roundf(val: f32) callconv(.C) f32 { return @round(val); }65pub fn __builtin_roundf(val: f32) callconv(.Inline) f32 { return @round(val); }
6666
67pub inline fn __builtin_strlen(s: [*c]const u8) callconv(.C) usize { return std.mem.lenZ(s); }67pub fn __builtin_strlen(s: [*c]const u8) callconv(.Inline) usize { return std.mem.lenZ(s); }
68pub inline fn __builtin_strcmp(s1: [*c]const u8, s2: [*c]const u8) callconv(.C) c_int {68pub fn __builtin_strcmp(s1: [*c]const u8, s2: [*c]const u8) callconv(.Inline) c_int {
69 return @as(c_int, std.cstr.cmp(s1, s2));69 return @as(c_int, std.cstr.cmp(s1, s2));
70}70}
7171
72pub inline fn __builtin_object_size(ptr: ?*const c_void, ty: c_int) callconv(.C) usize {72pub fn __builtin_object_size(ptr: ?*const c_void, ty: c_int) callconv(.Inline) usize {
73 // clang semantics match gcc's: https://gcc.gnu.org/onlinedocs/gcc/Object-Size-Checking.html73 // clang semantics match gcc's: https://gcc.gnu.org/onlinedocs/gcc/Object-Size-Checking.html
74 // If it is not possible to determine which objects ptr points to at compile time,74 // If it is not possible to determine which objects ptr points to at compile time,
75 // __builtin_object_size should return (size_t) -1 for type 0 or 1 and (size_t) 075 // __builtin_object_size should return (size_t) -1 for type 0 or 1 and (size_t) 0
...@@ -79,37 +79,37 @@ pub inline fn __builtin_object_size(ptr: ?*const c_void, ty: c_int) callconv(.C)...@@ -79,37 +79,37 @@ pub inline fn __builtin_object_size(ptr: ?*const c_void, ty: c_int) callconv(.C)
79 unreachable;79 unreachable;
80}80}
8181
82pub inline fn __builtin___memset_chk(82pub fn __builtin___memset_chk(
83 dst: ?*c_void,83 dst: ?*c_void,
84 val: c_int,84 val: c_int,
85 len: usize,85 len: usize,
86 remaining: usize,86 remaining: usize,
87) callconv(.C) ?*c_void {87) callconv(.Inline) ?*c_void {
88 if (len > remaining) @panic("std.c.builtins.memset_chk called with len > remaining");88 if (len > remaining) @panic("std.c.builtins.memset_chk called with len > remaining");
89 return __builtin_memset(dst, val, len);89 return __builtin_memset(dst, val, len);
90}90}
9191
92pub inline fn __builtin_memset(dst: ?*c_void, val: c_int, len: usize) callconv(.C) ?*c_void {92pub fn __builtin_memset(dst: ?*c_void, val: c_int, len: usize) callconv(.Inline) ?*c_void {
93 const dst_cast = @ptrCast([*c]u8, dst);93 const dst_cast = @ptrCast([*c]u8, dst);
94 @memset(dst_cast, @bitCast(u8, @truncate(i8, val)), len);94 @memset(dst_cast, @bitCast(u8, @truncate(i8, val)), len);
95 return dst;95 return dst;
96}96}
9797
98pub inline fn __builtin___memcpy_chk(98pub fn __builtin___memcpy_chk(
99 noalias dst: ?*c_void,99 noalias dst: ?*c_void,
100 noalias src: ?*const c_void,100 noalias src: ?*const c_void,
101 len: usize,101 len: usize,
102 remaining: usize,102 remaining: usize,
103) callconv(.C) ?*c_void {103) callconv(.Inline) ?*c_void {
104 if (len > remaining) @panic("std.c.builtins.memcpy_chk called with len > remaining");104 if (len > remaining) @panic("std.c.builtins.memcpy_chk called with len > remaining");
105 return __builtin_memcpy(dst, src, len);105 return __builtin_memcpy(dst, src, len);
106}106}
107107
108pub inline fn __builtin_memcpy(108pub fn __builtin_memcpy(
109 noalias dst: ?*c_void,109 noalias dst: ?*c_void,
110 noalias src: ?*const c_void,110 noalias src: ?*const c_void,
111 len: usize,111 len: usize,
112) callconv(.C) ?*c_void {112) callconv(.Inline) ?*c_void {
113 const dst_cast = @ptrCast([*c]u8, dst);113 const dst_cast = @ptrCast([*c]u8, dst);
114 const src_cast = @ptrCast([*c]const u8, src);114 const src_cast = @ptrCast([*c]const u8, src);
115115
lib/std/c/parse.zig+3-3
...@@ -26,7 +26,7 @@ pub const Options = struct {...@@ -26,7 +26,7 @@ pub const Options = struct {
26 None,26 None,
2727
28 /// Some warnings are errors28 /// Some warnings are errors
29 Some: []@TagType(ast.Error),29 Some: []std.meta.Tag(ast.Error),
3030
31 /// All warnings are errors31 /// All warnings are errors
32 All,32 All,
...@@ -1363,7 +1363,7 @@ const Parser = struct {...@@ -1363,7 +1363,7 @@ const Parser = struct {
1363 return &node.base;1363 return &node.base;
1364 }1364 }
13651365
1366 fn eatToken(parser: *Parser, id: @TagType(Token.Id)) ?TokenIndex {1366 fn eatToken(parser: *Parser, id: std.meta.Tag(Token.Id)) ?TokenIndex {
1367 while (true) {1367 while (true) {
1368 switch ((parser.it.next() orelse return null).id) {1368 switch ((parser.it.next() orelse return null).id) {
1369 .LineComment, .MultiLineComment, .Nl => continue,1369 .LineComment, .MultiLineComment, .Nl => continue,
...@@ -1377,7 +1377,7 @@ const Parser = struct {...@@ -1377,7 +1377,7 @@ const Parser = struct {
1377 }1377 }
1378 }1378 }
13791379
1380 fn expectToken(parser: *Parser, id: @TagType(Token.Id)) Error!TokenIndex {1380 fn expectToken(parser: *Parser, id: std.meta.Tag(Token.Id)) Error!TokenIndex {
1381 while (true) {1381 while (true) {
1382 switch ((parser.it.next() orelse return error.ParseError).id) {1382 switch ((parser.it.next() orelse return error.ParseError).id) {
1383 .LineComment, .MultiLineComment, .Nl => continue,1383 .LineComment, .MultiLineComment, .Nl => continue,
lib/std/c/tokenizer.zig+2-2
...@@ -131,7 +131,7 @@ pub const Token = struct {...@@ -131,7 +131,7 @@ pub const Token = struct {
131 Keyword_error,131 Keyword_error,
132 Keyword_pragma,132 Keyword_pragma,
133133
134 pub fn symbol(id: @TagType(Id)) []const u8 {134 pub fn symbol(id: std.meta.TagType(Id)) []const u8 {
135 return switch (id) {135 return switch (id) {
136 .Invalid => "Invalid",136 .Invalid => "Invalid",
137 .Eof => "Eof",137 .Eof => "Eof",
...@@ -347,7 +347,7 @@ pub const Token = struct {...@@ -347,7 +347,7 @@ pub const Token = struct {
347pub const Tokenizer = struct {347pub const Tokenizer = struct {
348 buffer: []const u8,348 buffer: []const u8,
349 index: usize = 0,349 index: usize = 0,
350 prev_tok_id: @TagType(Token.Id) = .Invalid,350 prev_tok_id: std.meta.TagType(Token.Id) = .Invalid,
351 pp_directive: bool = false,351 pp_directive: bool = false,
352352
353 pub fn next(self: *Tokenizer) Token {353 pub fn next(self: *Tokenizer) Token {
lib/std/compress/deflate.zig+1-1
...@@ -209,7 +209,7 @@ pub fn InflateStream(comptime ReaderType: type) type {...@@ -209,7 +209,7 @@ pub fn InflateStream(comptime ReaderType: type) type {
209209
210 // Insert a single byte into the window.210 // Insert a single byte into the window.
211 // Assumes there's enough space.211 // Assumes there's enough space.
212 inline fn appendUnsafe(self: *WSelf, value: u8) void {212 fn appendUnsafe(self: *WSelf, value: u8) callconv(.Inline) void {
213 self.buf[self.wi] = value;213 self.buf[self.wi] = value;
214 self.wi = (self.wi + 1) & (self.buf.len - 1);214 self.wi = (self.wi + 1) & (self.buf.len - 1);
215 self.el += 1;215 self.el += 1;
lib/std/crypto/25519/curve25519.zig+2-2
...@@ -15,12 +15,12 @@ pub const Curve25519 = struct {...@@ -15,12 +15,12 @@ pub const Curve25519 = struct {
15 x: Fe,15 x: Fe,
1616
17 /// Decode a Curve25519 point from its compressed (X) coordinates.17 /// Decode a Curve25519 point from its compressed (X) coordinates.
18 pub inline fn fromBytes(s: [32]u8) Curve25519 {18 pub fn fromBytes(s: [32]u8) callconv(.Inline) Curve25519 {
19 return .{ .x = Fe.fromBytes(s) };19 return .{ .x = Fe.fromBytes(s) };
20 }20 }
2121
22 /// Encode a Curve25519 point.22 /// Encode a Curve25519 point.
23 pub inline fn toBytes(p: Curve25519) [32]u8 {23 pub fn toBytes(p: Curve25519) callconv(.Inline) [32]u8 {
24 return p.x.toBytes();24 return p.x.toBytes();
25 }25 }
2626
lib/std/crypto/25519/edwards25519.zig+3-3
...@@ -92,7 +92,7 @@ pub const Edwards25519 = struct {...@@ -92,7 +92,7 @@ pub const Edwards25519 = struct {
92 }92 }
9393
94 /// Flip the sign of the X coordinate.94 /// Flip the sign of the X coordinate.
95 pub inline fn neg(p: Edwards25519) Edwards25519 {95 pub fn neg(p: Edwards25519) callconv(.Inline) Edwards25519 {
96 return .{ .x = p.x.neg(), .y = p.y, .z = p.z, .t = p.t.neg() };96 return .{ .x = p.x.neg(), .y = p.y, .z = p.z, .t = p.t.neg() };
97 }97 }
9898
...@@ -137,14 +137,14 @@ pub const Edwards25519 = struct {...@@ -137,14 +137,14 @@ pub const Edwards25519 = struct {
137 return p.add(q.neg());137 return p.add(q.neg());
138 }138 }
139139
140 inline fn cMov(p: *Edwards25519, a: Edwards25519, c: u64) void {140 fn cMov(p: *Edwards25519, a: Edwards25519, c: u64) callconv(.Inline) void {
141 p.x.cMov(a.x, c);141 p.x.cMov(a.x, c);
142 p.y.cMov(a.y, c);142 p.y.cMov(a.y, c);
143 p.z.cMov(a.z, c);143 p.z.cMov(a.z, c);
144 p.t.cMov(a.t, c);144 p.t.cMov(a.t, c);
145 }145 }
146146
147 inline fn pcSelect(comptime n: usize, pc: [n]Edwards25519, b: u8) Edwards25519 {147 fn pcSelect(comptime n: usize, pc: [n]Edwards25519, b: u8) callconv(.Inline) Edwards25519 {
148 var t = Edwards25519.identityElement;148 var t = Edwards25519.identityElement;
149 comptime var i: u8 = 1;149 comptime var i: u8 = 1;
150 inline while (i < pc.len) : (i += 1) {150 inline while (i < pc.len) : (i += 1) {
lib/std/crypto/25519/field.zig+14-14
...@@ -52,7 +52,7 @@ pub const Fe = struct {...@@ -52,7 +52,7 @@ pub const Fe = struct {
52 pub const edwards25519sqrtam2 = Fe{ .limbs = .{ 1693982333959686, 608509411481997, 2235573344831311, 947681270984193, 266558006233600 } };52 pub const edwards25519sqrtam2 = Fe{ .limbs = .{ 1693982333959686, 608509411481997, 2235573344831311, 947681270984193, 266558006233600 } };
5353
54 /// Return true if the field element is zero54 /// Return true if the field element is zero
55 pub inline fn isZero(fe: Fe) bool {55 pub fn isZero(fe: Fe) callconv(.Inline) bool {
56 var reduced = fe;56 var reduced = fe;
57 reduced.reduce();57 reduced.reduce();
58 const limbs = reduced.limbs;58 const limbs = reduced.limbs;
...@@ -60,7 +60,7 @@ pub const Fe = struct {...@@ -60,7 +60,7 @@ pub const Fe = struct {
60 }60 }
6161
62 /// Return true if both field elements are equivalent62 /// Return true if both field elements are equivalent
63 pub inline fn equivalent(a: Fe, b: Fe) bool {63 pub fn equivalent(a: Fe, b: Fe) callconv(.Inline) bool {
64 return a.sub(b).isZero();64 return a.sub(b).isZero();
65 }65 }
6666
...@@ -164,7 +164,7 @@ pub const Fe = struct {...@@ -164,7 +164,7 @@ pub const Fe = struct {
164 }164 }
165165
166 /// Add a field element166 /// Add a field element
167 pub inline fn add(a: Fe, b: Fe) Fe {167 pub fn add(a: Fe, b: Fe) callconv(.Inline) Fe {
168 var fe: Fe = undefined;168 var fe: Fe = undefined;
169 comptime var i = 0;169 comptime var i = 0;
170 inline while (i < 5) : (i += 1) {170 inline while (i < 5) : (i += 1) {
...@@ -174,7 +174,7 @@ pub const Fe = struct {...@@ -174,7 +174,7 @@ pub const Fe = struct {
174 }174 }
175175
176 /// Substract a field elememnt176 /// Substract a field elememnt
177 pub inline fn sub(a: Fe, b: Fe) Fe {177 pub fn sub(a: Fe, b: Fe) callconv(.Inline) Fe {
178 var fe = b;178 var fe = b;
179 comptime var i = 0;179 comptime var i = 0;
180 inline while (i < 4) : (i += 1) {180 inline while (i < 4) : (i += 1) {
...@@ -193,17 +193,17 @@ pub const Fe = struct {...@@ -193,17 +193,17 @@ pub const Fe = struct {
193 }193 }
194194
195 /// Negate a field element195 /// Negate a field element
196 pub inline fn neg(a: Fe) Fe {196 pub fn neg(a: Fe) callconv(.Inline) Fe {
197 return zero.sub(a);197 return zero.sub(a);
198 }198 }
199199
200 /// Return true if a field element is negative200 /// Return true if a field element is negative
201 pub inline fn isNegative(a: Fe) bool {201 pub fn isNegative(a: Fe) callconv(.Inline) bool {
202 return (a.toBytes()[0] & 1) != 0;202 return (a.toBytes()[0] & 1) != 0;
203 }203 }
204204
205 /// Conditonally replace a field element with `a` if `c` is positive205 /// Conditonally replace a field element with `a` if `c` is positive
206 pub inline fn cMov(fe: *Fe, a: Fe, c: u64) void {206 pub fn cMov(fe: *Fe, a: Fe, c: u64) callconv(.Inline) void {
207 const mask: u64 = 0 -% c;207 const mask: u64 = 0 -% c;
208 var x = fe.*;208 var x = fe.*;
209 comptime var i = 0;209 comptime var i = 0;
...@@ -244,7 +244,7 @@ pub const Fe = struct {...@@ -244,7 +244,7 @@ pub const Fe = struct {
244 }244 }
245 }245 }
246246
247 inline fn _carry128(r: *[5]u128) Fe {247 fn _carry128(r: *[5]u128) callconv(.Inline) Fe {
248 var rs: [5]u64 = undefined;248 var rs: [5]u64 = undefined;
249 comptime var i = 0;249 comptime var i = 0;
250 inline while (i < 4) : (i += 1) {250 inline while (i < 4) : (i += 1) {
...@@ -265,7 +265,7 @@ pub const Fe = struct {...@@ -265,7 +265,7 @@ pub const Fe = struct {
265 }265 }
266266
267 /// Multiply two field elements267 /// Multiply two field elements
268 pub inline fn mul(a: Fe, b: Fe) Fe {268 pub fn mul(a: Fe, b: Fe) callconv(.Inline) Fe {
269 var ax: [5]u128 = undefined;269 var ax: [5]u128 = undefined;
270 var bx: [5]u128 = undefined;270 var bx: [5]u128 = undefined;
271 var a19: [5]u128 = undefined;271 var a19: [5]u128 = undefined;
...@@ -288,7 +288,7 @@ pub const Fe = struct {...@@ -288,7 +288,7 @@ pub const Fe = struct {
288 return _carry128(&r);288 return _carry128(&r);
289 }289 }
290290
291 inline fn _sq(a: Fe, double: comptime bool) Fe {291 fn _sq(a: Fe, double: comptime bool) callconv(.Inline) Fe {
292 var ax: [5]u128 = undefined;292 var ax: [5]u128 = undefined;
293 var r: [5]u128 = undefined;293 var r: [5]u128 = undefined;
294 comptime var i = 0;294 comptime var i = 0;
...@@ -317,17 +317,17 @@ pub const Fe = struct {...@@ -317,17 +317,17 @@ pub const Fe = struct {
317 }317 }
318318
319 /// Square a field element319 /// Square a field element
320 pub inline fn sq(a: Fe) Fe {320 pub fn sq(a: Fe) callconv(.Inline) Fe {
321 return _sq(a, false);321 return _sq(a, false);
322 }322 }
323323
324 /// Square and double a field element324 /// Square and double a field element
325 pub inline fn sq2(a: Fe) Fe {325 pub fn sq2(a: Fe) callconv(.Inline) Fe {
326 return _sq(a, true);326 return _sq(a, true);
327 }327 }
328328
329 /// Multiply a field element with a small (32-bit) integer329 /// Multiply a field element with a small (32-bit) integer
330 pub inline fn mul32(a: Fe, comptime n: u32) Fe {330 pub fn mul32(a: Fe, comptime n: u32) callconv(.Inline) Fe {
331 const sn = @intCast(u128, n);331 const sn = @intCast(u128, n);
332 var fe: Fe = undefined;332 var fe: Fe = undefined;
333 var x: u128 = 0;333 var x: u128 = 0;
...@@ -342,7 +342,7 @@ pub const Fe = struct {...@@ -342,7 +342,7 @@ pub const Fe = struct {
342 }342 }
343343
344 /// Square a field element `n` times344 /// Square a field element `n` times
345 inline fn sqn(a: Fe, comptime n: comptime_int) Fe {345 fn sqn(a: Fe, comptime n: comptime_int) callconv(.Inline) Fe {
346 var i: usize = 0;346 var i: usize = 0;
347 var fe = a;347 var fe = a;
348 while (i < n) : (i += 1) {348 while (i < n) : (i += 1) {
lib/std/crypto/25519/ristretto255.zig+4-4
...@@ -42,7 +42,7 @@ pub const Ristretto255 = struct {...@@ -42,7 +42,7 @@ pub const Ristretto255 = struct {
42 }42 }
4343
44 /// Reject the neutral element.44 /// Reject the neutral element.
45 pub inline fn rejectIdentity(p: Ristretto255) !void {45 pub fn rejectIdentity(p: Ristretto255) callconv(.Inline) !void {
46 return p.p.rejectIdentity();46 return p.p.rejectIdentity();
47 }47 }
4848
...@@ -141,19 +141,19 @@ pub const Ristretto255 = struct {...@@ -141,19 +141,19 @@ pub const Ristretto255 = struct {
141 }141 }
142142
143 /// Double a Ristretto255 element.143 /// Double a Ristretto255 element.
144 pub inline fn dbl(p: Ristretto255) Ristretto255 {144 pub fn dbl(p: Ristretto255) callconv(.Inline) Ristretto255 {
145 return .{ .p = p.p.dbl() };145 return .{ .p = p.p.dbl() };
146 }146 }
147147
148 /// Add two Ristretto255 elements.148 /// Add two Ristretto255 elements.
149 pub inline fn add(p: Ristretto255, q: Ristretto255) Ristretto255 {149 pub fn add(p: Ristretto255, q: Ristretto255) callconv(.Inline) Ristretto255 {
150 return .{ .p = p.p.add(q.p) };150 return .{ .p = p.p.add(q.p) };
151 }151 }
152152
153 /// Multiply a Ristretto255 element with a scalar.153 /// Multiply a Ristretto255 element with a scalar.
154 /// Return error.WeakPublicKey if the resulting element is154 /// Return error.WeakPublicKey if the resulting element is
155 /// the identity element.155 /// the identity element.
156 pub inline fn mul(p: Ristretto255, s: [encoded_length]u8) !Ristretto255 {156 pub fn mul(p: Ristretto255, s: [encoded_length]u8) callconv(.Inline) !Ristretto255 {
157 return Ristretto255{ .p = try p.p.mul(s) };157 return Ristretto255{ .p = try p.p.mul(s) };
158 }158 }
159159
lib/std/crypto/25519/scalar.zig+1-1
...@@ -46,7 +46,7 @@ pub fn reduce64(s: [64]u8) [32]u8 {...@@ -46,7 +46,7 @@ pub fn reduce64(s: [64]u8) [32]u8 {
4646
47/// Perform the X25519 "clamping" operation.47/// Perform the X25519 "clamping" operation.
48/// The scalar is then guaranteed to be a multiple of the cofactor.48/// The scalar is then guaranteed to be a multiple of the cofactor.
49pub inline fn clamp(s: *[32]u8) void {49pub fn clamp(s: *[32]u8) callconv(.Inline) void {
50 s[0] &= 248;50 s[0] &= 248;
51 s[31] = (s[31] & 127) | 64;51 s[31] = (s[31] & 127) | 64;
52}52}
lib/std/crypto/aegis.zig+2-2
...@@ -35,7 +35,7 @@ const State128L = struct {...@@ -35,7 +35,7 @@ const State128L = struct {
35 return state;35 return state;
36 }36 }
3737
38 inline fn update(state: *State128L, d1: AesBlock, d2: AesBlock) void {38 fn update(state: *State128L, d1: AesBlock, d2: AesBlock) callconv(.Inline) void {
39 const blocks = &state.blocks;39 const blocks = &state.blocks;
40 const tmp = blocks[7];40 const tmp = blocks[7];
41 comptime var i: usize = 7;41 comptime var i: usize = 7;
...@@ -207,7 +207,7 @@ const State256 = struct {...@@ -207,7 +207,7 @@ const State256 = struct {
207 return state;207 return state;
208 }208 }
209209
210 inline fn update(state: *State256, d: AesBlock) void {210 fn update(state: *State256, d: AesBlock) callconv(.Inline) void {
211 const blocks = &state.blocks;211 const blocks = &state.blocks;
212 const tmp = blocks[5].encrypt(blocks[0]);212 const tmp = blocks[5].encrypt(blocks[0]);
213 comptime var i: usize = 5;213 comptime var i: usize = 5;
lib/std/crypto/aes/aesni.zig+16-16
...@@ -19,24 +19,24 @@ pub const Block = struct {...@@ -19,24 +19,24 @@ pub const Block = struct {
19 repr: BlockVec,19 repr: BlockVec,
2020
21 /// Convert a byte sequence into an internal representation.21 /// Convert a byte sequence into an internal representation.
22 pub inline fn fromBytes(bytes: *const [16]u8) Block {22 pub fn fromBytes(bytes: *const [16]u8) callconv(.Inline) Block {
23 const repr = mem.bytesToValue(BlockVec, bytes);23 const repr = mem.bytesToValue(BlockVec, bytes);
24 return Block{ .repr = repr };24 return Block{ .repr = repr };
25 }25 }
2626
27 /// Convert the internal representation of a block into a byte sequence.27 /// Convert the internal representation of a block into a byte sequence.
28 pub inline fn toBytes(block: Block) [16]u8 {28 pub fn toBytes(block: Block) callconv(.Inline) [16]u8 {
29 return mem.toBytes(block.repr);29 return mem.toBytes(block.repr);
30 }30 }
3131
32 /// XOR the block with a byte sequence.32 /// XOR the block with a byte sequence.
33 pub inline fn xorBytes(block: Block, bytes: *const [16]u8) [16]u8 {33 pub fn xorBytes(block: Block, bytes: *const [16]u8) callconv(.Inline) [16]u8 {
34 const x = block.repr ^ fromBytes(bytes).repr;34 const x = block.repr ^ fromBytes(bytes).repr;
35 return mem.toBytes(x);35 return mem.toBytes(x);
36 }36 }
3737
38 /// Encrypt a block with a round key.38 /// Encrypt a block with a round key.
39 pub inline fn encrypt(block: Block, round_key: Block) Block {39 pub fn encrypt(block: Block, round_key: Block) callconv(.Inline) Block {
40 return Block{40 return Block{
41 .repr = asm (41 .repr = asm (
42 \\ vaesenc %[rk], %[in], %[out]42 \\ vaesenc %[rk], %[in], %[out]
...@@ -48,7 +48,7 @@ pub const Block = struct {...@@ -48,7 +48,7 @@ pub const Block = struct {
48 }48 }
4949
50 /// Encrypt a block with the last round key.50 /// Encrypt a block with the last round key.
51 pub inline fn encryptLast(block: Block, round_key: Block) Block {51 pub fn encryptLast(block: Block, round_key: Block) callconv(.Inline) Block {
52 return Block{52 return Block{
53 .repr = asm (53 .repr = asm (
54 \\ vaesenclast %[rk], %[in], %[out]54 \\ vaesenclast %[rk], %[in], %[out]
...@@ -60,7 +60,7 @@ pub const Block = struct {...@@ -60,7 +60,7 @@ pub const Block = struct {
60 }60 }
6161
62 /// Decrypt a block with a round key.62 /// Decrypt a block with a round key.
63 pub inline fn decrypt(block: Block, inv_round_key: Block) Block {63 pub fn decrypt(block: Block, inv_round_key: Block) callconv(.Inline) Block {
64 return Block{64 return Block{
65 .repr = asm (65 .repr = asm (
66 \\ vaesdec %[rk], %[in], %[out]66 \\ vaesdec %[rk], %[in], %[out]
...@@ -72,7 +72,7 @@ pub const Block = struct {...@@ -72,7 +72,7 @@ pub const Block = struct {
72 }72 }
7373
74 /// Decrypt a block with the last round key.74 /// Decrypt a block with the last round key.
75 pub inline fn decryptLast(block: Block, inv_round_key: Block) Block {75 pub fn decryptLast(block: Block, inv_round_key: Block) callconv(.Inline) Block {
76 return Block{76 return Block{
77 .repr = asm (77 .repr = asm (
78 \\ vaesdeclast %[rk], %[in], %[out]78 \\ vaesdeclast %[rk], %[in], %[out]
...@@ -84,17 +84,17 @@ pub const Block = struct {...@@ -84,17 +84,17 @@ pub const Block = struct {
84 }84 }
8585
86 /// Apply the bitwise XOR operation to the content of two blocks.86 /// Apply the bitwise XOR operation to the content of two blocks.
87 pub inline fn xorBlocks(block1: Block, block2: Block) Block {87 pub fn xorBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
88 return Block{ .repr = block1.repr ^ block2.repr };88 return Block{ .repr = block1.repr ^ block2.repr };
89 }89 }
9090
91 /// Apply the bitwise AND operation to the content of two blocks.91 /// Apply the bitwise AND operation to the content of two blocks.
92 pub inline fn andBlocks(block1: Block, block2: Block) Block {92 pub fn andBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
93 return Block{ .repr = block1.repr & block2.repr };93 return Block{ .repr = block1.repr & block2.repr };
94 }94 }
9595
96 /// Apply the bitwise OR operation to the content of two blocks.96 /// Apply the bitwise OR operation to the content of two blocks.
97 pub inline fn orBlocks(block1: Block, block2: Block) Block {97 pub fn orBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
98 return Block{ .repr = block1.repr | block2.repr };98 return Block{ .repr = block1.repr | block2.repr };
99 }99 }
100100
...@@ -114,7 +114,7 @@ pub const Block = struct {...@@ -114,7 +114,7 @@ pub const Block = struct {
114 };114 };
115115
116 /// Encrypt multiple blocks in parallel, each their own round key.116 /// Encrypt multiple blocks in parallel, each their own round key.
117 pub inline fn encryptParallel(comptime count: usize, blocks: [count]Block, round_keys: [count]Block) [count]Block {117 pub fn encryptParallel(comptime count: usize, blocks: [count]Block, round_keys: [count]Block) callconv(.Inline) [count]Block {
118 comptime var i = 0;118 comptime var i = 0;
119 var out: [count]Block = undefined;119 var out: [count]Block = undefined;
120 inline while (i < count) : (i += 1) {120 inline while (i < count) : (i += 1) {
...@@ -124,7 +124,7 @@ pub const Block = struct {...@@ -124,7 +124,7 @@ pub const Block = struct {
124 }124 }
125125
126 /// Decrypt multiple blocks in parallel, each their own round key.126 /// Decrypt multiple blocks in parallel, each their own round key.
127 pub inline fn decryptParallel(comptime count: usize, blocks: [count]Block, round_keys: [count]Block) [count]Block {127 pub fn decryptParallel(comptime count: usize, blocks: [count]Block, round_keys: [count]Block) callconv(.Inline) [count]Block {
128 comptime var i = 0;128 comptime var i = 0;
129 var out: [count]Block = undefined;129 var out: [count]Block = undefined;
130 inline while (i < count) : (i += 1) {130 inline while (i < count) : (i += 1) {
...@@ -134,7 +134,7 @@ pub const Block = struct {...@@ -134,7 +134,7 @@ pub const Block = struct {
134 }134 }
135135
136 /// Encrypt multiple blocks in parallel with the same round key.136 /// Encrypt multiple blocks in parallel with the same round key.
137 pub inline fn encryptWide(comptime count: usize, blocks: [count]Block, round_key: Block) [count]Block {137 pub fn encryptWide(comptime count: usize, blocks: [count]Block, round_key: Block) callconv(.Inline) [count]Block {
138 comptime var i = 0;138 comptime var i = 0;
139 var out: [count]Block = undefined;139 var out: [count]Block = undefined;
140 inline while (i < count) : (i += 1) {140 inline while (i < count) : (i += 1) {
...@@ -144,7 +144,7 @@ pub const Block = struct {...@@ -144,7 +144,7 @@ pub const Block = struct {
144 }144 }
145145
146 /// Decrypt multiple blocks in parallel with the same round key.146 /// Decrypt multiple blocks in parallel with the same round key.
147 pub inline fn decryptWide(comptime count: usize, blocks: [count]Block, round_key: Block) [count]Block {147 pub fn decryptWide(comptime count: usize, blocks: [count]Block, round_key: Block) callconv(.Inline) [count]Block {
148 comptime var i = 0;148 comptime var i = 0;
149 var out: [count]Block = undefined;149 var out: [count]Block = undefined;
150 inline while (i < count) : (i += 1) {150 inline while (i < count) : (i += 1) {
...@@ -154,7 +154,7 @@ pub const Block = struct {...@@ -154,7 +154,7 @@ pub const Block = struct {
154 }154 }
155155
156 /// Encrypt multiple blocks in parallel with the same last round key.156 /// Encrypt multiple blocks in parallel with the same last round key.
157 pub inline fn encryptLastWide(comptime count: usize, blocks: [count]Block, round_key: Block) [count]Block {157 pub fn encryptLastWide(comptime count: usize, blocks: [count]Block, round_key: Block) callconv(.Inline) [count]Block {
158 comptime var i = 0;158 comptime var i = 0;
159 var out: [count]Block = undefined;159 var out: [count]Block = undefined;
160 inline while (i < count) : (i += 1) {160 inline while (i < count) : (i += 1) {
...@@ -164,7 +164,7 @@ pub const Block = struct {...@@ -164,7 +164,7 @@ pub const Block = struct {
164 }164 }
165165
166 /// Decrypt multiple blocks in parallel with the same last round key.166 /// Decrypt multiple blocks in parallel with the same last round key.
167 pub inline fn decryptLastWide(comptime count: usize, blocks: [count]Block, round_key: Block) [count]Block {167 pub fn decryptLastWide(comptime count: usize, blocks: [count]Block, round_key: Block) callconv(.Inline) [count]Block {
168 comptime var i = 0;168 comptime var i = 0;
169 var out: [count]Block = undefined;169 var out: [count]Block = undefined;
170 inline while (i < count) : (i += 1) {170 inline while (i < count) : (i += 1) {
lib/std/crypto/aes/armcrypto.zig+16-16
...@@ -19,18 +19,18 @@ pub const Block = struct {...@@ -19,18 +19,18 @@ pub const Block = struct {
19 repr: BlockVec,19 repr: BlockVec,
2020
21 /// Convert a byte sequence into an internal representation.21 /// Convert a byte sequence into an internal representation.
22 pub inline fn fromBytes(bytes: *const [16]u8) Block {22 pub fn fromBytes(bytes: *const [16]u8) callconv(.Inline) Block {
23 const repr = mem.bytesToValue(BlockVec, bytes);23 const repr = mem.bytesToValue(BlockVec, bytes);
24 return Block{ .repr = repr };24 return Block{ .repr = repr };
25 }25 }
2626
27 /// Convert the internal representation of a block into a byte sequence.27 /// Convert the internal representation of a block into a byte sequence.
28 pub inline fn toBytes(block: Block) [16]u8 {28 pub fn toBytes(block: Block) callconv(.Inline) [16]u8 {
29 return mem.toBytes(block.repr);29 return mem.toBytes(block.repr);
30 }30 }
3131
32 /// XOR the block with a byte sequence.32 /// XOR the block with a byte sequence.
33 pub inline fn xorBytes(block: Block, bytes: *const [16]u8) [16]u8 {33 pub fn xorBytes(block: Block, bytes: *const [16]u8) callconv(.Inline) [16]u8 {
34 const x = block.repr ^ fromBytes(bytes).repr;34 const x = block.repr ^ fromBytes(bytes).repr;
35 return mem.toBytes(x);35 return mem.toBytes(x);
36 }36 }
...@@ -38,7 +38,7 @@ pub const Block = struct {...@@ -38,7 +38,7 @@ pub const Block = struct {
38 const zero = Vector(2, u64){ 0, 0 };38 const zero = Vector(2, u64){ 0, 0 };
3939
40 /// Encrypt a block with a round key.40 /// Encrypt a block with a round key.
41 pub inline fn encrypt(block: Block, round_key: Block) Block {41 pub fn encrypt(block: Block, round_key: Block) callconv(.Inline) Block {
42 return Block{42 return Block{
43 .repr = asm (43 .repr = asm (
44 \\ mov %[out].16b, %[in].16b44 \\ mov %[out].16b, %[in].16b
...@@ -54,7 +54,7 @@ pub const Block = struct {...@@ -54,7 +54,7 @@ pub const Block = struct {
54 }54 }
5555
56 /// Encrypt a block with the last round key.56 /// Encrypt a block with the last round key.
57 pub inline fn encryptLast(block: Block, round_key: Block) Block {57 pub fn encryptLast(block: Block, round_key: Block) callconv(.Inline) Block {
58 return Block{58 return Block{
59 .repr = asm (59 .repr = asm (
60 \\ mov %[out].16b, %[in].16b60 \\ mov %[out].16b, %[in].16b
...@@ -69,7 +69,7 @@ pub const Block = struct {...@@ -69,7 +69,7 @@ pub const Block = struct {
69 }69 }
7070
71 /// Decrypt a block with a round key.71 /// Decrypt a block with a round key.
72 pub inline fn decrypt(block: Block, inv_round_key: Block) Block {72 pub fn decrypt(block: Block, inv_round_key: Block) callconv(.Inline) Block {
73 return Block{73 return Block{
74 .repr = asm (74 .repr = asm (
75 \\ mov %[out].16b, %[in].16b75 \\ mov %[out].16b, %[in].16b
...@@ -85,7 +85,7 @@ pub const Block = struct {...@@ -85,7 +85,7 @@ pub const Block = struct {
85 }85 }
8686
87 /// Decrypt a block with the last round key.87 /// Decrypt a block with the last round key.
88 pub inline fn decryptLast(block: Block, inv_round_key: Block) Block {88 pub fn decryptLast(block: Block, inv_round_key: Block) callconv(.Inline) Block {
89 return Block{89 return Block{
90 .repr = asm (90 .repr = asm (
91 \\ mov %[out].16b, %[in].16b91 \\ mov %[out].16b, %[in].16b
...@@ -100,17 +100,17 @@ pub const Block = struct {...@@ -100,17 +100,17 @@ pub const Block = struct {
100 }100 }
101101
102 /// Apply the bitwise XOR operation to the content of two blocks.102 /// Apply the bitwise XOR operation to the content of two blocks.
103 pub inline fn xorBlocks(block1: Block, block2: Block) Block {103 pub fn xorBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
104 return Block{ .repr = block1.repr ^ block2.repr };104 return Block{ .repr = block1.repr ^ block2.repr };
105 }105 }
106106
107 /// Apply the bitwise AND operation to the content of two blocks.107 /// Apply the bitwise AND operation to the content of two blocks.
108 pub inline fn andBlocks(block1: Block, block2: Block) Block {108 pub fn andBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
109 return Block{ .repr = block1.repr & block2.repr };109 return Block{ .repr = block1.repr & block2.repr };
110 }110 }
111111
112 /// Apply the bitwise OR operation to the content of two blocks.112 /// Apply the bitwise OR operation to the content of two blocks.
113 pub inline fn orBlocks(block1: Block, block2: Block) Block {113 pub fn orBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
114 return Block{ .repr = block1.repr | block2.repr };114 return Block{ .repr = block1.repr | block2.repr };
115 }115 }
116116
...@@ -120,7 +120,7 @@ pub const Block = struct {...@@ -120,7 +120,7 @@ pub const Block = struct {
120 pub const optimal_parallel_blocks = 8;120 pub const optimal_parallel_blocks = 8;
121121
122 /// Encrypt multiple blocks in parallel, each their own round key.122 /// Encrypt multiple blocks in parallel, each their own round key.
123 pub inline fn encryptParallel(comptime count: usize, blocks: [count]Block, round_keys: [count]Block) [count]Block {123 pub fn encryptParallel(comptime count: usize, blocks: [count]Block, round_keys: [count]Block) callconv(.Inline) [count]Block {
124 comptime var i = 0;124 comptime var i = 0;
125 var out: [count]Block = undefined;125 var out: [count]Block = undefined;
126 inline while (i < count) : (i += 1) {126 inline while (i < count) : (i += 1) {
...@@ -130,7 +130,7 @@ pub const Block = struct {...@@ -130,7 +130,7 @@ pub const Block = struct {
130 }130 }
131131
132 /// Decrypt multiple blocks in parallel, each their own round key.132 /// Decrypt multiple blocks in parallel, each their own round key.
133 pub inline fn decryptParallel(comptime count: usize, blocks: [count]Block, round_keys: [count]Block) [count]Block {133 pub fn decryptParallel(comptime count: usize, blocks: [count]Block, round_keys: [count]Block) callconv(.Inline) [count]Block {
134 comptime var i = 0;134 comptime var i = 0;
135 var out: [count]Block = undefined;135 var out: [count]Block = undefined;
136 inline while (i < count) : (i += 1) {136 inline while (i < count) : (i += 1) {
...@@ -140,7 +140,7 @@ pub const Block = struct {...@@ -140,7 +140,7 @@ pub const Block = struct {
140 }140 }
141141
142 /// Encrypt multiple blocks in parallel with the same round key.142 /// Encrypt multiple blocks in parallel with the same round key.
143 pub inline fn encryptWide(comptime count: usize, blocks: [count]Block, round_key: Block) [count]Block {143 pub fn encryptWide(comptime count: usize, blocks: [count]Block, round_key: Block) callconv(.Inline) [count]Block {
144 comptime var i = 0;144 comptime var i = 0;
145 var out: [count]Block = undefined;145 var out: [count]Block = undefined;
146 inline while (i < count) : (i += 1) {146 inline while (i < count) : (i += 1) {
...@@ -150,7 +150,7 @@ pub const Block = struct {...@@ -150,7 +150,7 @@ pub const Block = struct {
150 }150 }
151151
152 /// Decrypt multiple blocks in parallel with the same round key.152 /// Decrypt multiple blocks in parallel with the same round key.
153 pub inline fn decryptWide(comptime count: usize, blocks: [count]Block, round_key: Block) [count]Block {153 pub fn decryptWide(comptime count: usize, blocks: [count]Block, round_key: Block) callconv(.Inline) [count]Block {
154 comptime var i = 0;154 comptime var i = 0;
155 var out: [count]Block = undefined;155 var out: [count]Block = undefined;
156 inline while (i < count) : (i += 1) {156 inline while (i < count) : (i += 1) {
...@@ -160,7 +160,7 @@ pub const Block = struct {...@@ -160,7 +160,7 @@ pub const Block = struct {
160 }160 }
161161
162 /// Encrypt multiple blocks in parallel with the same last round key.162 /// Encrypt multiple blocks in parallel with the same last round key.
163 pub inline fn encryptLastWide(comptime count: usize, blocks: [count]Block, round_key: Block) [count]Block {163 pub fn encryptLastWide(comptime count: usize, blocks: [count]Block, round_key: Block) callconv(.Inline) [count]Block {
164 comptime var i = 0;164 comptime var i = 0;
165 var out: [count]Block = undefined;165 var out: [count]Block = undefined;
166 inline while (i < count) : (i += 1) {166 inline while (i < count) : (i += 1) {
...@@ -170,7 +170,7 @@ pub const Block = struct {...@@ -170,7 +170,7 @@ pub const Block = struct {
170 }170 }
171171
172 /// Decrypt multiple blocks in parallel with the same last round key.172 /// Decrypt multiple blocks in parallel with the same last round key.
173 pub inline fn decryptLastWide(comptime count: usize, blocks: [count]Block, round_key: Block) [count]Block {173 pub fn decryptLastWide(comptime count: usize, blocks: [count]Block, round_key: Block) callconv(.Inline) [count]Block {
174 comptime var i = 0;174 comptime var i = 0;
175 var out: [count]Block = undefined;175 var out: [count]Block = undefined;
176 inline while (i < count) : (i += 1) {176 inline while (i < count) : (i += 1) {
lib/std/crypto/aes/soft.zig+10-10
...@@ -18,7 +18,7 @@ pub const Block = struct {...@@ -18,7 +18,7 @@ pub const Block = struct {
18 repr: BlockVec align(16),18 repr: BlockVec align(16),
1919
20 /// Convert a byte sequence into an internal representation.20 /// Convert a byte sequence into an internal representation.
21 pub inline fn fromBytes(bytes: *const [16]u8) Block {21 pub fn fromBytes(bytes: *const [16]u8) callconv(.Inline) Block {
22 const s0 = mem.readIntBig(u32, bytes[0..4]);22 const s0 = mem.readIntBig(u32, bytes[0..4]);
23 const s1 = mem.readIntBig(u32, bytes[4..8]);23 const s1 = mem.readIntBig(u32, bytes[4..8]);
24 const s2 = mem.readIntBig(u32, bytes[8..12]);24 const s2 = mem.readIntBig(u32, bytes[8..12]);
...@@ -27,7 +27,7 @@ pub const Block = struct {...@@ -27,7 +27,7 @@ pub const Block = struct {
27 }27 }
2828
29 /// Convert the internal representation of a block into a byte sequence.29 /// Convert the internal representation of a block into a byte sequence.
30 pub inline fn toBytes(block: Block) [16]u8 {30 pub fn toBytes(block: Block) callconv(.Inline) [16]u8 {
31 var bytes: [16]u8 = undefined;31 var bytes: [16]u8 = undefined;
32 mem.writeIntBig(u32, bytes[0..4], block.repr[0]);32 mem.writeIntBig(u32, bytes[0..4], block.repr[0]);
33 mem.writeIntBig(u32, bytes[4..8], block.repr[1]);33 mem.writeIntBig(u32, bytes[4..8], block.repr[1]);
...@@ -37,7 +37,7 @@ pub const Block = struct {...@@ -37,7 +37,7 @@ pub const Block = struct {
37 }37 }
3838
39 /// XOR the block with a byte sequence.39 /// XOR the block with a byte sequence.
40 pub inline fn xorBytes(block: Block, bytes: *const [16]u8) [16]u8 {40 pub fn xorBytes(block: Block, bytes: *const [16]u8) callconv(.Inline) [16]u8 {
41 const block_bytes = block.toBytes();41 const block_bytes = block.toBytes();
42 var x: [16]u8 = undefined;42 var x: [16]u8 = undefined;
43 comptime var i: usize = 0;43 comptime var i: usize = 0;
...@@ -48,7 +48,7 @@ pub const Block = struct {...@@ -48,7 +48,7 @@ pub const Block = struct {
48 }48 }
4949
50 /// Encrypt a block with a round key.50 /// Encrypt a block with a round key.
51 pub inline fn encrypt(block: Block, round_key: Block) Block {51 pub fn encrypt(block: Block, round_key: Block) callconv(.Inline) Block {
52 const src = &block.repr;52 const src = &block.repr;
5353
54 const s0 = block.repr[0];54 const s0 = block.repr[0];
...@@ -65,7 +65,7 @@ pub const Block = struct {...@@ -65,7 +65,7 @@ pub const Block = struct {
65 }65 }
6666
67 /// Encrypt a block with the last round key.67 /// Encrypt a block with the last round key.
68 pub inline fn encryptLast(block: Block, round_key: Block) Block {68 pub fn encryptLast(block: Block, round_key: Block) callconv(.Inline) Block {
69 const src = &block.repr;69 const src = &block.repr;
7070
71 const t0 = block.repr[0];71 const t0 = block.repr[0];
...@@ -87,7 +87,7 @@ pub const Block = struct {...@@ -87,7 +87,7 @@ pub const Block = struct {
87 }87 }
8888
89 /// Decrypt a block with a round key.89 /// Decrypt a block with a round key.
90 pub inline fn decrypt(block: Block, round_key: Block) Block {90 pub fn decrypt(block: Block, round_key: Block) callconv(.Inline) Block {
91 const src = &block.repr;91 const src = &block.repr;
9292
93 const s0 = block.repr[0];93 const s0 = block.repr[0];
...@@ -104,7 +104,7 @@ pub const Block = struct {...@@ -104,7 +104,7 @@ pub const Block = struct {
104 }104 }
105105
106 /// Decrypt a block with the last round key.106 /// Decrypt a block with the last round key.
107 pub inline fn decryptLast(block: Block, round_key: Block) Block {107 pub fn decryptLast(block: Block, round_key: Block) callconv(.Inline) Block {
108 const src = &block.repr;108 const src = &block.repr;
109109
110 const t0 = block.repr[0];110 const t0 = block.repr[0];
...@@ -126,7 +126,7 @@ pub const Block = struct {...@@ -126,7 +126,7 @@ pub const Block = struct {
126 }126 }
127127
128 /// Apply the bitwise XOR operation to the content of two blocks.128 /// Apply the bitwise XOR operation to the content of two blocks.
129 pub inline fn xorBlocks(block1: Block, block2: Block) Block {129 pub fn xorBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
130 var x: BlockVec = undefined;130 var x: BlockVec = undefined;
131 comptime var i = 0;131 comptime var i = 0;
132 inline while (i < 4) : (i += 1) {132 inline while (i < 4) : (i += 1) {
...@@ -136,7 +136,7 @@ pub const Block = struct {...@@ -136,7 +136,7 @@ pub const Block = struct {
136 }136 }
137137
138 /// Apply the bitwise AND operation to the content of two blocks.138 /// Apply the bitwise AND operation to the content of two blocks.
139 pub inline fn andBlocks(block1: Block, block2: Block) Block {139 pub fn andBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
140 var x: BlockVec = undefined;140 var x: BlockVec = undefined;
141 comptime var i = 0;141 comptime var i = 0;
142 inline while (i < 4) : (i += 1) {142 inline while (i < 4) : (i += 1) {
...@@ -146,7 +146,7 @@ pub const Block = struct {...@@ -146,7 +146,7 @@ pub const Block = struct {
146 }146 }
147147
148 /// Apply the bitwise OR operation to the content of two blocks.148 /// Apply the bitwise OR operation to the content of two blocks.
149 pub inline fn orBlocks(block1: Block, block2: Block) Block {149 pub fn orBlocks(block1: Block, block2: Block) callconv(.Inline) Block {
150 var x: BlockVec = undefined;150 var x: BlockVec = undefined;
151 comptime var i = 0;151 comptime var i = 0;
152 inline while (i < 4) : (i += 1) {152 inline while (i < 4) : (i += 1) {
lib/std/crypto/blake3.zig+3-3
...@@ -66,7 +66,7 @@ const CompressVectorized = struct {...@@ -66,7 +66,7 @@ const CompressVectorized = struct {
66 const Lane = Vector(4, u32);66 const Lane = Vector(4, u32);
67 const Rows = [4]Lane;67 const Rows = [4]Lane;
6868
69 inline fn g(comptime even: bool, rows: *Rows, m: Lane) void {69 fn g(comptime even: bool, rows: *Rows, m: Lane) callconv(.Inline) void {
70 rows[0] +%= rows[1] +% m;70 rows[0] +%= rows[1] +% m;
71 rows[3] ^= rows[0];71 rows[3] ^= rows[0];
72 rows[3] = math.rotr(Lane, rows[3], if (even) 8 else 16);72 rows[3] = math.rotr(Lane, rows[3], if (even) 8 else 16);
...@@ -75,13 +75,13 @@ const CompressVectorized = struct {...@@ -75,13 +75,13 @@ const CompressVectorized = struct {
75 rows[1] = math.rotr(Lane, rows[1], if (even) 7 else 12);75 rows[1] = math.rotr(Lane, rows[1], if (even) 7 else 12);
76 }76 }
7777
78 inline fn diagonalize(rows: *Rows) void {78 fn diagonalize(rows: *Rows) callconv(.Inline) void {
79 rows[0] = @shuffle(u32, rows[0], undefined, [_]i32{ 3, 0, 1, 2 });79 rows[0] = @shuffle(u32, rows[0], undefined, [_]i32{ 3, 0, 1, 2 });
80 rows[3] = @shuffle(u32, rows[3], undefined, [_]i32{ 2, 3, 0, 1 });80 rows[3] = @shuffle(u32, rows[3], undefined, [_]i32{ 2, 3, 0, 1 });
81 rows[2] = @shuffle(u32, rows[2], undefined, [_]i32{ 1, 2, 3, 0 });81 rows[2] = @shuffle(u32, rows[2], undefined, [_]i32{ 1, 2, 3, 0 });
82 }82 }
8383
84 inline fn undiagonalize(rows: *Rows) void {84 fn undiagonalize(rows: *Rows) callconv(.Inline) void {
85 rows[0] = @shuffle(u32, rows[0], undefined, [_]i32{ 1, 2, 3, 0 });85 rows[0] = @shuffle(u32, rows[0], undefined, [_]i32{ 1, 2, 3, 0 });
86 rows[3] = @shuffle(u32, rows[3], undefined, [_]i32{ 2, 3, 0, 1 });86 rows[3] = @shuffle(u32, rows[3], undefined, [_]i32{ 2, 3, 0, 1 });
87 rows[2] = @shuffle(u32, rows[2], undefined, [_]i32{ 3, 0, 1, 2 });87 rows[2] = @shuffle(u32, rows[2], undefined, [_]i32{ 3, 0, 1, 2 });
lib/std/crypto/chacha20.zig+6-6
...@@ -35,7 +35,7 @@ const ChaCha20VecImpl = struct {...@@ -35,7 +35,7 @@ const ChaCha20VecImpl = struct {
35 };35 };
36 }36 }
3737
38 inline fn chacha20Core(x: *BlockVec, input: BlockVec) void {38 fn chacha20Core(x: *BlockVec, input: BlockVec) callconv(.Inline) void {
39 x.* = input;39 x.* = input;
4040
41 var r: usize = 0;41 var r: usize = 0;
...@@ -80,7 +80,7 @@ const ChaCha20VecImpl = struct {...@@ -80,7 +80,7 @@ const ChaCha20VecImpl = struct {
80 }80 }
81 }81 }
8282
83 inline fn hashToBytes(out: *[64]u8, x: BlockVec) void {83 fn hashToBytes(out: *[64]u8, x: BlockVec) callconv(.Inline) void {
84 var i: usize = 0;84 var i: usize = 0;
85 while (i < 4) : (i += 1) {85 while (i < 4) : (i += 1) {
86 mem.writeIntLittle(u32, out[16 * i + 0 ..][0..4], x[i][0]);86 mem.writeIntLittle(u32, out[16 * i + 0 ..][0..4], x[i][0]);
...@@ -90,7 +90,7 @@ const ChaCha20VecImpl = struct {...@@ -90,7 +90,7 @@ const ChaCha20VecImpl = struct {
90 }90 }
91 }91 }
9292
93 inline fn contextFeedback(x: *BlockVec, ctx: BlockVec) void {93 fn contextFeedback(x: *BlockVec, ctx: BlockVec) callconv(.Inline) void {
94 x[0] +%= ctx[0];94 x[0] +%= ctx[0];
95 x[1] +%= ctx[1];95 x[1] +%= ctx[1];
96 x[2] +%= ctx[2];96 x[2] +%= ctx[2];
...@@ -190,7 +190,7 @@ const ChaCha20NonVecImpl = struct {...@@ -190,7 +190,7 @@ const ChaCha20NonVecImpl = struct {
190 };190 };
191 }191 }
192192
193 inline fn chacha20Core(x: *BlockVec, input: BlockVec) void {193 fn chacha20Core(x: *BlockVec, input: BlockVec) callconv(.Inline) void {
194 x.* = input;194 x.* = input;
195195
196 const rounds = comptime [_]QuarterRound{196 const rounds = comptime [_]QuarterRound{
...@@ -219,7 +219,7 @@ const ChaCha20NonVecImpl = struct {...@@ -219,7 +219,7 @@ const ChaCha20NonVecImpl = struct {
219 }219 }
220 }220 }
221221
222 inline fn hashToBytes(out: *[64]u8, x: BlockVec) void {222 fn hashToBytes(out: *[64]u8, x: BlockVec) callconv(.Inline) void {
223 var i: usize = 0;223 var i: usize = 0;
224 while (i < 4) : (i += 1) {224 while (i < 4) : (i += 1) {
225 mem.writeIntLittle(u32, out[16 * i + 0 ..][0..4], x[i * 4 + 0]);225 mem.writeIntLittle(u32, out[16 * i + 0 ..][0..4], x[i * 4 + 0]);
...@@ -229,7 +229,7 @@ const ChaCha20NonVecImpl = struct {...@@ -229,7 +229,7 @@ const ChaCha20NonVecImpl = struct {
229 }229 }
230 }230 }
231231
232 inline fn contextFeedback(x: *BlockVec, ctx: BlockVec) void {232 fn contextFeedback(x: *BlockVec, ctx: BlockVec) callconv(.Inline) void {
233 var i: usize = 0;233 var i: usize = 0;
234 while (i < 16) : (i += 1) {234 while (i < 16) : (i += 1) {
235 x[i] +%= ctx[i];235 x[i] +%= ctx[i];
lib/std/crypto/ghash.zig+2-2
...@@ -95,7 +95,7 @@ pub const Ghash = struct {...@@ -95,7 +95,7 @@ pub const Ghash = struct {
95 }95 }
96 }96 }
9797
98 inline fn clmul_pclmul(x: u64, y: u64) u64 {98 fn clmul_pclmul(x: u64, y: u64) callconv(.Inline) u64 {
99 const Vector = std.meta.Vector;99 const Vector = std.meta.Vector;
100 const product = asm (100 const product = asm (
101 \\ vpclmulqdq $0x00, %[x], %[y], %[out]101 \\ vpclmulqdq $0x00, %[x], %[y], %[out]
...@@ -106,7 +106,7 @@ pub const Ghash = struct {...@@ -106,7 +106,7 @@ pub const Ghash = struct {
106 return product[0];106 return product[0];
107 }107 }
108108
109 inline fn clmul_pmull(x: u64, y: u64) u64 {109 fn clmul_pmull(x: u64, y: u64) callconv(.Inline) u64 {
110 const Vector = std.meta.Vector;110 const Vector = std.meta.Vector;
111 const product = asm (111 const product = asm (
112 \\ pmull %[out].1q, %[x].1d, %[y].1d112 \\ pmull %[out].1q, %[x].1d, %[y].1d
lib/std/crypto/gimli.zig+2-2
...@@ -48,7 +48,7 @@ pub const State = struct {...@@ -48,7 +48,7 @@ pub const State = struct {
48 return mem.asBytes(&self.data);48 return mem.asBytes(&self.data);
49 }49 }
5050
51 inline fn endianSwap(self: *Self) void {51 fn endianSwap(self: *Self) callconv(.Inline) void {
52 for (self.data) |*w| {52 for (self.data) |*w| {
53 w.* = mem.littleToNative(u32, w.*);53 w.* = mem.littleToNative(u32, w.*);
54 }54 }
...@@ -116,7 +116,7 @@ pub const State = struct {...@@ -116,7 +116,7 @@ pub const State = struct {
116116
117 const Lane = Vector(4, u32);117 const Lane = Vector(4, u32);
118118
119 inline fn shift(x: Lane, comptime n: comptime_int) Lane {119 fn shift(x: Lane, comptime n: comptime_int) callconv(.Inline) Lane {
120 return x << @splat(4, @as(u5, n));120 return x << @splat(4, @as(u5, n));
121 }121 }
122122
lib/std/crypto/salsa20.zig+3-3
...@@ -37,7 +37,7 @@ const Salsa20VecImpl = struct {...@@ -37,7 +37,7 @@ const Salsa20VecImpl = struct {
37 };37 };
38 }38 }
3939
40 inline fn salsa20Core(x: *BlockVec, input: BlockVec, comptime feedback: bool) void {40 fn salsa20Core(x: *BlockVec, input: BlockVec, comptime feedback: bool) callconv(.Inline) void {
41 const n1n2n3n0 = Lane{ input[3][1], input[3][2], input[3][3], input[3][0] };41 const n1n2n3n0 = Lane{ input[3][1], input[3][2], input[3][3], input[3][0] };
42 const n1n2 = Half{ n1n2n3n0[0], n1n2n3n0[1] };42 const n1n2 = Half{ n1n2n3n0[0], n1n2n3n0[1] };
43 const n3n0 = Half{ n1n2n3n0[2], n1n2n3n0[3] };43 const n3n0 = Half{ n1n2n3n0[2], n1n2n3n0[3] };
...@@ -211,7 +211,7 @@ const Salsa20NonVecImpl = struct {...@@ -211,7 +211,7 @@ const Salsa20NonVecImpl = struct {
211 d: u6,211 d: u6,
212 };212 };
213213
214 inline fn Rp(a: usize, b: usize, c: usize, d: u6) QuarterRound {214 fn Rp(a: usize, b: usize, c: usize, d: u6) callconv(.Inline) QuarterRound {
215 return QuarterRound{215 return QuarterRound{
216 .a = a,216 .a = a,
217 .b = b,217 .b = b,
...@@ -220,7 +220,7 @@ const Salsa20NonVecImpl = struct {...@@ -220,7 +220,7 @@ const Salsa20NonVecImpl = struct {
220 };220 };
221 }221 }
222222
223 inline fn salsa20Core(x: *BlockVec, input: BlockVec, comptime feedback: bool) void {223 fn salsa20Core(x: *BlockVec, input: BlockVec, comptime feedback: bool) callconv(.Inline) void {
224 const arx_steps = comptime [_]QuarterRound{224 const arx_steps = comptime [_]QuarterRound{
225 Rp(4, 0, 12, 7), Rp(8, 4, 0, 9), Rp(12, 8, 4, 13), Rp(0, 12, 8, 18),225 Rp(4, 0, 12, 7), Rp(8, 4, 0, 9), Rp(12, 8, 4, 13), Rp(0, 12, 8, 18),
226 Rp(9, 5, 1, 7), Rp(13, 9, 5, 9), Rp(1, 13, 9, 13), Rp(5, 1, 13, 18),226 Rp(9, 5, 1, 7), Rp(13, 9, 5, 9), Rp(1, 13, 9, 13), Rp(5, 1, 13, 18),
lib/std/crypto/siphash.zig+2-2
...@@ -7,10 +7,10 @@...@@ -7,10 +7,10 @@
7// SipHash is a moderately fast pseudorandom function, returning a 64-bit or 128-bit tag for an arbitrary long input.7// SipHash is a moderately fast pseudorandom function, returning a 64-bit or 128-bit tag for an arbitrary long input.
8//8//
9// Typical use cases include:9// Typical use cases include:
10// - protection against against DoS attacks for hash tables and bloom filters10// - protection against DoS attacks for hash tables and bloom filters
11// - authentication of short-lived messages in online protocols11// - authentication of short-lived messages in online protocols
12//12//
13// https://131002.net/siphash/13// https://www.aumasson.jp/siphash/siphash.pdf
14const std = @import("../std.zig");14const std = @import("../std.zig");
15const assert = std.debug.assert;15const assert = std.debug.assert;
16const testing = std.testing;16const testing = std.testing;
lib/std/elf.zig+8-8
...@@ -720,10 +720,10 @@ pub const Elf32_Rel = extern struct {...@@ -720,10 +720,10 @@ pub const Elf32_Rel = extern struct {
720 r_offset: Elf32_Addr,720 r_offset: Elf32_Addr,
721 r_info: Elf32_Word,721 r_info: Elf32_Word,
722722
723 pub inline fn r_sym(self: @This()) u24 {723 pub fn r_sym(self: @This()) callconv(.Inline) u24 {
724 return @truncate(u24, self.r_info >> 8);724 return @truncate(u24, self.r_info >> 8);
725 }725 }
726 pub inline fn r_type(self: @This()) u8 {726 pub fn r_type(self: @This()) callconv(.Inline) u8 {
727 return @truncate(u8, self.r_info & 0xff);727 return @truncate(u8, self.r_info & 0xff);
728 }728 }
729};729};
...@@ -731,10 +731,10 @@ pub const Elf64_Rel = extern struct {...@@ -731,10 +731,10 @@ pub const Elf64_Rel = extern struct {
731 r_offset: Elf64_Addr,731 r_offset: Elf64_Addr,
732 r_info: Elf64_Xword,732 r_info: Elf64_Xword,
733733
734 pub inline fn r_sym(self: @This()) u32 {734 pub fn r_sym(self: @This()) callconv(.Inline) u32 {
735 return @truncate(u32, self.r_info >> 32);735 return @truncate(u32, self.r_info >> 32);
736 }736 }
737 pub inline fn r_type(self: @This()) u32 {737 pub fn r_type(self: @This()) callconv(.Inline) u32 {
738 return @truncate(u32, self.r_info & 0xffffffff);738 return @truncate(u32, self.r_info & 0xffffffff);
739 }739 }
740};740};
...@@ -743,10 +743,10 @@ pub const Elf32_Rela = extern struct {...@@ -743,10 +743,10 @@ pub const Elf32_Rela = extern struct {
743 r_info: Elf32_Word,743 r_info: Elf32_Word,
744 r_addend: Elf32_Sword,744 r_addend: Elf32_Sword,
745745
746 pub inline fn r_sym(self: @This()) u24 {746 pub fn r_sym(self: @This()) callconv(.Inline) u24 {
747 return @truncate(u24, self.r_info >> 8);747 return @truncate(u24, self.r_info >> 8);
748 }748 }
749 pub inline fn r_type(self: @This()) u8 {749 pub fn r_type(self: @This()) callconv(.Inline) u8 {
750 return @truncate(u8, self.r_info & 0xff);750 return @truncate(u8, self.r_info & 0xff);
751 }751 }
752};752};
...@@ -755,10 +755,10 @@ pub const Elf64_Rela = extern struct {...@@ -755,10 +755,10 @@ pub const Elf64_Rela = extern struct {
755 r_info: Elf64_Xword,755 r_info: Elf64_Xword,
756 r_addend: Elf64_Sxword,756 r_addend: Elf64_Sxword,
757757
758 pub inline fn r_sym(self: @This()) u32 {758 pub fn r_sym(self: @This()) callconv(.Inline) u32 {
759 return @truncate(u32, self.r_info >> 32);759 return @truncate(u32, self.r_info >> 32);
760 }760 }
761 pub inline fn r_type(self: @This()) u32 {761 pub fn r_type(self: @This()) callconv(.Inline) u32 {
762 return @truncate(u32, self.r_info & 0xffffffff);762 return @truncate(u32, self.r_info & 0xffffffff);
763 }763 }
764};764};
lib/std/fmt.zig+59-39
...@@ -69,6 +69,7 @@ pub const FormatOptions = struct {...@@ -69,6 +69,7 @@ pub const FormatOptions = struct {
69/// - `c`: output integer as an ASCII character. Integer type must have 8 bits at max.69/// - `c`: output integer as an ASCII character. Integer type must have 8 bits at max.
70/// - `u`: output integer as an UTF-8 sequence. Integer type must have 21 bits at max.70/// - `u`: output integer as an UTF-8 sequence. Integer type must have 21 bits at max.
71/// - `*`: output the address of the value instead of the value itself.71/// - `*`: output the address of the value instead of the value itself.
72/// - `any`: output a value of any type using its default format
72///73///
73/// If a formatted user type contains a function of the type74/// If a formatted user type contains a function of the type
74/// ```75/// ```
...@@ -387,17 +388,32 @@ pub fn formatAddress(value: anytype, options: FormatOptions, writer: anytype) @T...@@ -387,17 +388,32 @@ pub fn formatAddress(value: anytype, options: FormatOptions, writer: anytype) @T
387 return;388 return;
388 }389 }
389 },390 },
390 .Array => |info| {
391 try writer.writeAll(@typeName(info.child) ++ "@");
392 try formatInt(@ptrToInt(value), 16, false, FormatOptions{}, writer);
393 return;
394 },
395 else => {},391 else => {},
396 }392 }
397393
398 @compileError("Cannot format non-pointer type " ++ @typeName(T) ++ " with * specifier");394 @compileError("Cannot format non-pointer type " ++ @typeName(T) ++ " with * specifier");
399}395}
400396
397// This ANY const is a workaround for: https://github.com/ziglang/zig/issues/7948
398const ANY = "any";
399
400fn defaultSpec(comptime T: type) [:0]const u8 {
401 switch (@typeInfo(T)) {
402 .Array => |_| return ANY,
403 .Pointer => |ptr_info| switch (ptr_info.size) {
404 .One => switch (@typeInfo(ptr_info.child)) {
405 .Array => |_| return "*",
406 else => {},
407 },
408 .Many, .C => return "*",
409 .Slice => return ANY,
410 },
411 .Optional => |info| return defaultSpec(info.child),
412 else => {},
413 }
414 return "";
415}
416
401pub fn formatType(417pub fn formatType(
402 value: anytype,418 value: anytype,
403 comptime fmt: []const u8,419 comptime fmt: []const u8,
...@@ -405,18 +421,19 @@ pub fn formatType(...@@ -405,18 +421,19 @@ pub fn formatType(
405 writer: anytype,421 writer: anytype,
406 max_depth: usize,422 max_depth: usize,
407) @TypeOf(writer).Error!void {423) @TypeOf(writer).Error!void {
408 if (comptime std.mem.eql(u8, fmt, "*")) {424 const actual_fmt = comptime if (std.mem.eql(u8, fmt, ANY)) defaultSpec(@TypeOf(value)) else fmt;
425 if (comptime std.mem.eql(u8, actual_fmt, "*")) {
409 return formatAddress(value, options, writer);426 return formatAddress(value, options, writer);
410 }427 }
411428
412 const T = @TypeOf(value);429 const T = @TypeOf(value);
413 if (comptime std.meta.trait.hasFn("format")(T)) {430 if (comptime std.meta.trait.hasFn("format")(T)) {
414 return try value.format(fmt, options, writer);431 return try value.format(actual_fmt, options, writer);
415 }432 }
416433
417 switch (@typeInfo(T)) {434 switch (@typeInfo(T)) {
418 .ComptimeInt, .Int, .ComptimeFloat, .Float => {435 .ComptimeInt, .Int, .ComptimeFloat, .Float => {
419 return formatValue(value, fmt, options, writer);436 return formatValue(value, actual_fmt, options, writer);
420 },437 },
421 .Void => {438 .Void => {
422 return formatBuf("void", options, writer);439 return formatBuf("void", options, writer);
...@@ -426,16 +443,16 @@ pub fn formatType(...@@ -426,16 +443,16 @@ pub fn formatType(
426 },443 },
427 .Optional => {444 .Optional => {
428 if (value) |payload| {445 if (value) |payload| {
429 return formatType(payload, fmt, options, writer, max_depth);446 return formatType(payload, actual_fmt, options, writer, max_depth);
430 } else {447 } else {
431 return formatBuf("null", options, writer);448 return formatBuf("null", options, writer);
432 }449 }
433 },450 },
434 .ErrorUnion => {451 .ErrorUnion => {
435 if (value) |payload| {452 if (value) |payload| {
436 return formatType(payload, fmt, options, writer, max_depth);453 return formatType(payload, actual_fmt, options, writer, max_depth);
437 } else |err| {454 } else |err| {
438 return formatType(err, fmt, options, writer, max_depth);455 return formatType(err, actual_fmt, options, writer, max_depth);
439 }456 }
440 },457 },
441 .ErrorSet => {458 .ErrorSet => {
...@@ -461,7 +478,7 @@ pub fn formatType(...@@ -461,7 +478,7 @@ pub fn formatType(
461 }478 }
462479
463 try writer.writeAll("(");480 try writer.writeAll("(");
464 try formatType(@enumToInt(value), fmt, options, writer, max_depth);481 try formatType(@enumToInt(value), actual_fmt, options, writer, max_depth);
465 try writer.writeAll(")");482 try writer.writeAll(")");
466 },483 },
467 .Union => |info| {484 .Union => |info| {
...@@ -475,7 +492,7 @@ pub fn formatType(...@@ -475,7 +492,7 @@ pub fn formatType(
475 try writer.writeAll(" = ");492 try writer.writeAll(" = ");
476 inline for (info.fields) |u_field| {493 inline for (info.fields) |u_field| {
477 if (value == @field(UnionTagType, u_field.name)) {494 if (value == @field(UnionTagType, u_field.name)) {
478 try formatType(@field(value, u_field.name), fmt, options, writer, max_depth - 1);495 try formatType(@field(value, u_field.name), ANY, options, writer, max_depth - 1);
479 }496 }
480 }497 }
481 try writer.writeAll(" }");498 try writer.writeAll(" }");
...@@ -497,48 +514,54 @@ pub fn formatType(...@@ -497,48 +514,54 @@ pub fn formatType(
497 }514 }
498 try writer.writeAll(f.name);515 try writer.writeAll(f.name);
499 try writer.writeAll(" = ");516 try writer.writeAll(" = ");
500 try formatType(@field(value, f.name), fmt, options, writer, max_depth - 1);517 try formatType(@field(value, f.name), ANY, options, writer, max_depth - 1);
501 }518 }
502 try writer.writeAll(" }");519 try writer.writeAll(" }");
503 },520 },
504 .Pointer => |ptr_info| switch (ptr_info.size) {521 .Pointer => |ptr_info| switch (ptr_info.size) {
505 .One => switch (@typeInfo(ptr_info.child)) {522 .One => switch (@typeInfo(ptr_info.child)) {
506 .Array => |info| {523 .Array => |info| {
524 if (actual_fmt.len == 0)
525 @compileError("cannot format array ref without a specifier (i.e. {s} or {*})");
507 if (info.child == u8) {526 if (info.child == u8) {
508 if (fmt.len > 0 and comptime mem.indexOfScalar(u8, "sxXeEzZ", fmt[0]) != null) {527 if (comptime mem.indexOfScalar(u8, "sxXeEzZ", actual_fmt[0]) != null) {
509 return formatText(value, fmt, options, writer);528 return formatText(value, actual_fmt, options, writer);
510 }529 }
511 }530 }
512 return format(writer, "{s}@{x}", .{ @typeName(ptr_info.child), @ptrToInt(value) });531 @compileError("Unknown format string: '" ++ actual_fmt ++ "'");
513 },532 },
514 .Enum, .Union, .Struct => {533 .Enum, .Union, .Struct => {
515 return formatType(value.*, fmt, options, writer, max_depth);534 return formatType(value.*, actual_fmt, options, writer, max_depth);
516 },535 },
517 else => return format(writer, "{s}@{x}", .{ @typeName(ptr_info.child), @ptrToInt(value) }),536 else => return format(writer, "{s}@{x}", .{ @typeName(ptr_info.child), @ptrToInt(value) }),
518 },537 },
519 .Many, .C => {538 .Many, .C => {
539 if (actual_fmt.len == 0)
540 @compileError("cannot format pointer without a specifier (i.e. {s} or {*})");
520 if (ptr_info.sentinel) |sentinel| {541 if (ptr_info.sentinel) |sentinel| {
521 return formatType(mem.span(value), fmt, options, writer, max_depth);542 return formatType(mem.span(value), actual_fmt, options, writer, max_depth);
522 }543 }
523 if (ptr_info.child == u8) {544 if (ptr_info.child == u8) {
524 if (fmt.len > 0 and comptime mem.indexOfScalar(u8, "sxXeEzZ", fmt[0]) != null) {545 if (comptime mem.indexOfScalar(u8, "sxXeEzZ", actual_fmt[0]) != null) {
525 return formatText(mem.span(value), fmt, options, writer);546 return formatText(mem.span(value), actual_fmt, options, writer);
526 }547 }
527 }548 }
528 return format(writer, "{s}@{x}", .{ @typeName(ptr_info.child), @ptrToInt(value) });549 @compileError("Unknown format string: '" ++ actual_fmt ++ "'");
529 },550 },
530 .Slice => {551 .Slice => {
552 if (actual_fmt.len == 0)
553 @compileError("cannot format slice without a specifier (i.e. {s} or {any})");
531 if (max_depth == 0) {554 if (max_depth == 0) {
532 return writer.writeAll("{ ... }");555 return writer.writeAll("{ ... }");
533 }556 }
534 if (ptr_info.child == u8) {557 if (ptr_info.child == u8) {
535 if (fmt.len > 0 and comptime mem.indexOfScalar(u8, "sxXeEzZ", fmt[0]) != null) {558 if (comptime mem.indexOfScalar(u8, "sxXeEzZ", actual_fmt[0]) != null) {
536 return formatText(value, fmt, options, writer);559 return formatText(value, actual_fmt, options, writer);
537 }560 }
538 }561 }
539 try writer.writeAll("{ ");562 try writer.writeAll("{ ");
540 for (value) |elem, i| {563 for (value) |elem, i| {
541 try formatType(elem, fmt, options, writer, max_depth - 1);564 try formatType(elem, actual_fmt, options, writer, max_depth - 1);
542 if (i != value.len - 1) {565 if (i != value.len - 1) {
543 try writer.writeAll(", ");566 try writer.writeAll(", ");
544 }567 }
...@@ -547,17 +570,19 @@ pub fn formatType(...@@ -547,17 +570,19 @@ pub fn formatType(
547 },570 },
548 },571 },
549 .Array => |info| {572 .Array => |info| {
573 if (actual_fmt.len == 0)
574 @compileError("cannot format array without a specifier (i.e. {s} or {any})");
550 if (max_depth == 0) {575 if (max_depth == 0) {
551 return writer.writeAll("{ ... }");576 return writer.writeAll("{ ... }");
552 }577 }
553 if (info.child == u8) {578 if (info.child == u8) {
554 if (fmt.len > 0 and comptime mem.indexOfScalar(u8, "sxXeEzZ", fmt[0]) != null) {579 if (comptime mem.indexOfScalar(u8, "sxXeEzZ", actual_fmt[0]) != null) {
555 return formatText(&value, fmt, options, writer);580 return formatText(&value, actual_fmt, options, writer);
556 }581 }
557 }582 }
558 try writer.writeAll("{ ");583 try writer.writeAll("{ ");
559 for (value) |elem, i| {584 for (value) |elem, i| {
560 try formatType(elem, fmt, options, writer, max_depth - 1);585 try formatType(elem, actual_fmt, options, writer, max_depth - 1);
561 if (i < value.len - 1) {586 if (i < value.len - 1) {
562 try writer.writeAll(", ");587 try writer.writeAll(", ");
563 }588 }
...@@ -568,7 +593,7 @@ pub fn formatType(...@@ -568,7 +593,7 @@ pub fn formatType(
568 try writer.writeAll("{ ");593 try writer.writeAll("{ ");
569 var i: usize = 0;594 var i: usize = 0;
570 while (i < info.len) : (i += 1) {595 while (i < info.len) : (i += 1) {
571 try formatValue(value[i], fmt, options, writer);596 try formatValue(value[i], actual_fmt, options, writer);
572 if (i < info.len - 1) {597 if (i < info.len - 1) {
573 try writer.writeAll(", ");598 try writer.writeAll(", ");
574 }599 }
...@@ -634,12 +659,7 @@ pub fn formatIntValue(...@@ -634,12 +659,7 @@ pub fn formatIntValue(
634 @compileError("Cannot print integer that is larger than 8 bits as a ascii");659 @compileError("Cannot print integer that is larger than 8 bits as a ascii");
635 }660 }
636 } else if (comptime std.mem.eql(u8, fmt, "Z")) {661 } else if (comptime std.mem.eql(u8, fmt, "Z")) {
637 if (@typeInfo(@TypeOf(int_value)).Int.bits <= 8) {662 @compileError("specifier 'Z' has been deprecated, wrap your argument in std.zig.fmtEscapes instead");
638 const c: u8 = int_value;
639 return formatZigEscapes(@as(*const [1]u8, &c), options, writer);
640 } else {
641 @compileError("Cannot escape character with more than 8 bits");
642 }
643 } else if (comptime std.mem.eql(u8, fmt, "u")) {663 } else if (comptime std.mem.eql(u8, fmt, "u")) {
644 if (@typeInfo(@TypeOf(int_value)).Int.bits <= 21) {664 if (@typeInfo(@TypeOf(int_value)).Int.bits <= 21) {
645 return formatUnicodeCodepoint(@as(u21, int_value), options, writer);665 return formatUnicodeCodepoint(@as(u21, int_value), options, writer);
...@@ -659,7 +679,7 @@ pub fn formatIntValue(...@@ -659,7 +679,7 @@ pub fn formatIntValue(
659 radix = 8;679 radix = 8;
660 uppercase = false;680 uppercase = false;
661 } else {681 } else {
662 @compileError("Unknown format string: '" ++ fmt ++ "'");682 @compileError("Unsupported format string '" ++ fmt ++ "' for type '" ++ @typeName(@TypeOf(value)) ++ "'");
663 }683 }
664684
665 return formatInt(int_value, radix, uppercase, options, writer);685 return formatInt(int_value, radix, uppercase, options, writer);
...@@ -686,7 +706,7 @@ fn formatFloatValue(...@@ -686,7 +706,7 @@ fn formatFloatValue(
686 else => |e| return e,706 else => |e| return e,
687 };707 };
688 } else {708 } else {
689 @compileError("Unknown format string: '" ++ fmt ++ "'");709 @compileError("Unsupported format string '" ++ fmt ++ "' for type '" ++ @typeName(@TypeOf(value)) ++ "'");
690 }710 }
691711
692 return formatBuf(buf_stream.getWritten(), options, writer);712 return formatBuf(buf_stream.getWritten(), options, writer);
...@@ -720,7 +740,7 @@ pub fn formatText(...@@ -720,7 +740,7 @@ pub fn formatText(
720 } else if (comptime std.mem.eql(u8, fmt, "Z")) {740 } else if (comptime std.mem.eql(u8, fmt, "Z")) {
721 @compileError("specifier 'Z' has been deprecated, wrap your argument in std.zig.fmtEscapes instead");741 @compileError("specifier 'Z' has been deprecated, wrap your argument in std.zig.fmtEscapes instead");
722 } else {742 } else {
723 @compileError("Unknown format string: '" ++ fmt ++ "'");743 @compileError("Unsupported format string '" ++ fmt ++ "' for type '" ++ @typeName(@TypeOf(value)) ++ "'");
724 }744 }
725}745}
726746
...@@ -1673,7 +1693,7 @@ test "slice" {...@@ -1673,7 +1693,7 @@ test "slice" {
1673 {1693 {
1674 var int_slice = [_]u32{ 1, 4096, 391891, 1111111111 };1694 var int_slice = [_]u32{ 1, 4096, 391891, 1111111111 };
1675 var runtime_zero: usize = 0;1695 var runtime_zero: usize = 0;
1676 try expectFmt("int: { 1, 4096, 391891, 1111111111 }", "int: {}", .{int_slice[runtime_zero..]});1696 try expectFmt("int: { 1, 4096, 391891, 1111111111 }", "int: {any}", .{int_slice[runtime_zero..]});
1677 try expectFmt("int: { 1, 4096, 391891, 1111111111 }", "int: {d}", .{int_slice[runtime_zero..]});1697 try expectFmt("int: { 1, 4096, 391891, 1111111111 }", "int: {d}", .{int_slice[runtime_zero..]});
1678 try expectFmt("int: { 1, 1000, 5fad3, 423a35c7 }", "int: {x}", .{int_slice[runtime_zero..]});1698 try expectFmt("int: { 1, 1000, 5fad3, 423a35c7 }", "int: {x}", .{int_slice[runtime_zero..]});
1679 try expectFmt("int: { 00001, 01000, 5fad3, 423a35c7 }", "int: {x:0>5}", .{int_slice[runtime_zero..]});1699 try expectFmt("int: { 00001, 01000, 5fad3, 423a35c7 }", "int: {x:0>5}", .{int_slice[runtime_zero..]});
lib/std/fmt/parse_float.zig+4-4
...@@ -52,21 +52,21 @@ const Z96 = struct {...@@ -52,21 +52,21 @@ const Z96 = struct {
52 d2: u32,52 d2: u32,
5353
54 // d = s >> 154 // d = s >> 1
55 inline fn shiftRight1(d: *Z96, s: Z96) void {55 fn shiftRight1(d: *Z96, s: Z96) callconv(.Inline) void {
56 d.d0 = (s.d0 >> 1) | ((s.d1 & 1) << 31);56 d.d0 = (s.d0 >> 1) | ((s.d1 & 1) << 31);
57 d.d1 = (s.d1 >> 1) | ((s.d2 & 1) << 31);57 d.d1 = (s.d1 >> 1) | ((s.d2 & 1) << 31);
58 d.d2 = s.d2 >> 1;58 d.d2 = s.d2 >> 1;
59 }59 }
6060
61 // d = s << 161 // d = s << 1
62 inline fn shiftLeft1(d: *Z96, s: Z96) void {62 fn shiftLeft1(d: *Z96, s: Z96) callconv(.Inline) void {
63 d.d2 = (s.d2 << 1) | ((s.d1 & (1 << 31)) >> 31);63 d.d2 = (s.d2 << 1) | ((s.d1 & (1 << 31)) >> 31);
64 d.d1 = (s.d1 << 1) | ((s.d0 & (1 << 31)) >> 31);64 d.d1 = (s.d1 << 1) | ((s.d0 & (1 << 31)) >> 31);
65 d.d0 = s.d0 << 1;65 d.d0 = s.d0 << 1;
66 }66 }
6767
68 // d += s68 // d += s
69 inline fn add(d: *Z96, s: Z96) void {69 fn add(d: *Z96, s: Z96) callconv(.Inline) void {
70 var w = @as(u64, d.d0) + @as(u64, s.d0);70 var w = @as(u64, d.d0) + @as(u64, s.d0);
71 d.d0 = @truncate(u32, w);71 d.d0 = @truncate(u32, w);
7272
...@@ -80,7 +80,7 @@ const Z96 = struct {...@@ -80,7 +80,7 @@ const Z96 = struct {
80 }80 }
8181
82 // d -= s82 // d -= s
83 inline fn sub(d: *Z96, s: Z96) void {83 fn sub(d: *Z96, s: Z96) callconv(.Inline) void {
84 var w = @as(u64, d.d0) -% @as(u64, s.d0);84 var w = @as(u64, d.d0) -% @as(u64, s.d0);
85 d.d0 = @truncate(u32, w);85 d.d0 = @truncate(u32, w);
8686
lib/std/hash/auto_hash.zig+1-1
...@@ -239,7 +239,7 @@ fn testHashDeepRecursive(key: anytype) u64 {...@@ -239,7 +239,7 @@ fn testHashDeepRecursive(key: anytype) u64 {
239239
240test "typeContainsSlice" {240test "typeContainsSlice" {
241 comptime {241 comptime {
242 testing.expect(!typeContainsSlice(@TagType(std.builtin.TypeInfo)));242 testing.expect(!typeContainsSlice(meta.Tag(std.builtin.TypeInfo)));
243243
244 testing.expect(typeContainsSlice([]const u8));244 testing.expect(typeContainsSlice([]const u8));
245 testing.expect(!typeContainsSlice(u8));245 testing.expect(!typeContainsSlice(u8));
lib/std/hash/cityhash.zig+1-1
...@@ -6,7 +6,7 @@...@@ -6,7 +6,7 @@
6const std = @import("std");6const std = @import("std");
7const builtin = @import("builtin");7const builtin = @import("builtin");
88
9inline fn offsetPtr(ptr: [*]const u8, offset: usize) [*]const u8 {9fn offsetPtr(ptr: [*]const u8, offset: usize) callconv(.Inline) [*]const u8 {
10 // ptr + offset doesn't work at comptime so we need this instead.10 // ptr + offset doesn't work at comptime so we need this instead.
11 return @ptrCast([*]const u8, &ptr[offset]);11 return @ptrCast([*]const u8, &ptr[offset]);
12}12}
lib/std/json.zig+153-23
...@@ -246,7 +246,7 @@ pub const StreamingParser = struct {...@@ -246,7 +246,7 @@ pub const StreamingParser = struct {
246 // Only call this function to generate array/object final state.246 // Only call this function to generate array/object final state.
247 pub fn fromInt(x: anytype) State {247 pub fn fromInt(x: anytype) State {
248 debug.assert(x == 0 or x == 1);248 debug.assert(x == 0 or x == 1);
249 const T = @TagType(State);249 const T = std.meta.Tag(State);
250 return @intToEnum(State, @intCast(T, x));250 return @intToEnum(State, @intCast(T, x));
251 }251 }
252 };252 };
...@@ -1138,7 +1138,7 @@ pub const TokenStream = struct {...@@ -1138,7 +1138,7 @@ pub const TokenStream = struct {
1138 }1138 }
1139};1139};
11401140
1141fn checkNext(p: *TokenStream, id: std.meta.TagType(Token)) void {1141fn checkNext(p: *TokenStream, id: std.meta.Tag(Token)) void {
1142 const token = (p.next() catch unreachable).?;1142 const token = (p.next() catch unreachable).?;
1143 debug.assert(std.meta.activeTag(token) == id);1143 debug.assert(std.meta.activeTag(token) == id);
1144}1144}
...@@ -1255,6 +1255,7 @@ pub const Value = union(enum) {...@@ -1255,6 +1255,7 @@ pub const Value = union(enum) {
1255 Bool: bool,1255 Bool: bool,
1256 Integer: i64,1256 Integer: i64,
1257 Float: f64,1257 Float: f64,
1258 NumberString: []const u8,
1258 String: []const u8,1259 String: []const u8,
1259 Array: Array,1260 Array: Array,
1260 Object: ObjectMap,1261 Object: ObjectMap,
...@@ -1269,6 +1270,7 @@ pub const Value = union(enum) {...@@ -1269,6 +1270,7 @@ pub const Value = union(enum) {
1269 .Bool => |inner| try stringify(inner, options, out_stream),1270 .Bool => |inner| try stringify(inner, options, out_stream),
1270 .Integer => |inner| try stringify(inner, options, out_stream),1271 .Integer => |inner| try stringify(inner, options, out_stream),
1271 .Float => |inner| try stringify(inner, options, out_stream),1272 .Float => |inner| try stringify(inner, options, out_stream),
1273 .NumberString => |inner| try out_stream.writeAll(inner),
1272 .String => |inner| try stringify(inner, options, out_stream),1274 .String => |inner| try stringify(inner, options, out_stream),
1273 .Array => |inner| try stringify(inner.items, options, out_stream),1275 .Array => |inner| try stringify(inner.items, options, out_stream),
1274 .Object => |inner| {1276 .Object => |inner| {
...@@ -1338,6 +1340,12 @@ test "Value.jsonStringify" {...@@ -1338,6 +1340,12 @@ test "Value.jsonStringify" {
1338 try (Value{ .Integer = 42 }).jsonStringify(.{}, fbs.writer());1340 try (Value{ .Integer = 42 }).jsonStringify(.{}, fbs.writer());
1339 testing.expectEqualSlices(u8, fbs.getWritten(), "42");1341 testing.expectEqualSlices(u8, fbs.getWritten(), "42");
1340 }1342 }
1343 {
1344 var buffer: [10]u8 = undefined;
1345 var fbs = std.io.fixedBufferStream(&buffer);
1346 try (Value{ .NumberString = "43" }).jsonStringify(.{}, fbs.writer());
1347 testing.expectEqualSlices(u8, fbs.getWritten(), "43");
1348 }
1341 {1349 {
1342 var buffer: [10]u8 = undefined;1350 var buffer: [10]u8 = undefined;
1343 var fbs = std.io.fixedBufferStream(&buffer);1351 var fbs = std.io.fixedBufferStream(&buffer);
...@@ -1356,7 +1364,7 @@ test "Value.jsonStringify" {...@@ -1356,7 +1364,7 @@ test "Value.jsonStringify" {
1356 var vals = [_]Value{1364 var vals = [_]Value{
1357 .{ .Integer = 1 },1365 .{ .Integer = 1 },
1358 .{ .Integer = 2 },1366 .{ .Integer = 2 },
1359 .{ .Integer = 3 },1367 .{ .NumberString = "3" },
1360 };1368 };
1361 try (Value{1369 try (Value{
1362 .Array = Array.fromOwnedSlice(undefined, &vals),1370 .Array = Array.fromOwnedSlice(undefined, &vals),
...@@ -1374,6 +1382,65 @@ test "Value.jsonStringify" {...@@ -1374,6 +1382,65 @@ test "Value.jsonStringify" {
1374 }1382 }
1375}1383}
13761384
1385/// parse tokens from a stream, returning `false` if they do not decode to `value`
1386fn parsesTo(comptime T: type, value: T, tokens: *TokenStream, options: ParseOptions) !bool {
1387 // TODO: should be able to write this function to not require an allocator
1388 const tmp = try parse(T, tokens, options);
1389 defer parseFree(T, tmp, options);
1390
1391 return parsedEqual(tmp, value);
1392}
1393
1394/// Returns if a value returned by `parse` is deep-equal to another value
1395fn parsedEqual(a: anytype, b: @TypeOf(a)) bool {
1396 switch (@typeInfo(@TypeOf(a))) {
1397 .Optional => {
1398 if (a == null and b == null) return true;
1399 if (a == null or b == null) return false;
1400 return parsedEqual(a.?, b.?);
1401 },
1402 .Union => |unionInfo| {
1403 if (info.tag_type) |UnionTag| {
1404 const tag_a = std.meta.activeTag(a);
1405 const tag_b = std.meta.activeTag(b);
1406 if (tag_a != tag_b) return false;
1407
1408 inline for (info.fields) |field_info| {
1409 if (@field(UnionTag, field_info.name) == tag_a) {
1410 return parsedEqual(@field(a, field_info.name), @field(b, field_info.name));
1411 }
1412 }
1413 return false;
1414 } else {
1415 unreachable;
1416 }
1417 },
1418 .Array => {
1419 for (a) |e, i|
1420 if (!parsedEqual(e, b[i])) return false;
1421 return true;
1422 },
1423 .Struct => |info| {
1424 inline for (info.fields) |field_info| {
1425 if (!parsedEqual(@field(a, field_info.name), @field(b, field_info.name))) return false;
1426 }
1427 return true;
1428 },
1429 .Pointer => |ptrInfo| switch (ptrInfo.size) {
1430 .One => return parsedEqual(a.*, b.*),
1431 .Slice => {
1432 if (a.len != b.len) return false;
1433 for (a) |e, i|
1434 if (!parsedEqual(e, b[i])) return false;
1435 return true;
1436 },
1437 .Many, .C => unreachable,
1438 },
1439 else => return a == b,
1440 }
1441 unreachable;
1442}
1443
1377pub const ParseOptions = struct {1444pub const ParseOptions = struct {
1378 allocator: ?*Allocator = null,1445 allocator: ?*Allocator = null,
13791446
...@@ -1454,6 +1521,8 @@ fn parseInternal(comptime T: type, token: Token, tokens: *TokenStream, options:...@@ -1454,6 +1521,8 @@ fn parseInternal(comptime T: type, token: Token, tokens: *TokenStream, options:
1454 // Parsing some types won't have OutOfMemory in their1521 // Parsing some types won't have OutOfMemory in their
1455 // error-sets, for the condition to be valid, merge it in.1522 // error-sets, for the condition to be valid, merge it in.
1456 if (@as(@TypeOf(err) || error{OutOfMemory}, err) == error.OutOfMemory) return err;1523 if (@as(@TypeOf(err) || error{OutOfMemory}, err) == error.OutOfMemory) return err;
1524 // Bubble up AllocatorRequired, as it indicates missing option
1525 if (@as(@TypeOf(err) || error{AllocatorRequired}, err) == error.AllocatorRequired) return err;
1457 // otherwise continue through the `inline for`1526 // otherwise continue through the `inline for`
1458 }1527 }
1459 }1528 }
...@@ -1471,7 +1540,7 @@ fn parseInternal(comptime T: type, token: Token, tokens: *TokenStream, options:...@@ -1471,7 +1540,7 @@ fn parseInternal(comptime T: type, token: Token, tokens: *TokenStream, options:
1471 var fields_seen = [_]bool{false} ** structInfo.fields.len;1540 var fields_seen = [_]bool{false} ** structInfo.fields.len;
1472 errdefer {1541 errdefer {
1473 inline for (structInfo.fields) |field, i| {1542 inline for (structInfo.fields) |field, i| {
1474 if (fields_seen[i]) {1543 if (fields_seen[i] and !field.is_comptime) {
1475 parseFree(field.field_type, @field(r, field.name), options);1544 parseFree(field.field_type, @field(r, field.name), options);
1476 }1545 }
1477 }1546 }
...@@ -1504,7 +1573,13 @@ fn parseInternal(comptime T: type, token: Token, tokens: *TokenStream, options:...@@ -1504,7 +1573,13 @@ fn parseInternal(comptime T: type, token: Token, tokens: *TokenStream, options:
1504 parseFree(field.field_type, @field(r, field.name), options);1573 parseFree(field.field_type, @field(r, field.name), options);
1505 }1574 }
1506 }1575 }
1507 @field(r, field.name) = try parse(field.field_type, tokens, options);1576 if (field.is_comptime) {
1577 if (!try parsesTo(field.field_type, field.default_value.?, tokens, options)) {
1578 return error.UnexpectedValue;
1579 }
1580 } else {
1581 @field(r, field.name) = try parse(field.field_type, tokens, options);
1582 }
1508 fields_seen[i] = true;1583 fields_seen[i] = true;
1509 found = true;1584 found = true;
1510 break;1585 break;
...@@ -1518,7 +1593,9 @@ fn parseInternal(comptime T: type, token: Token, tokens: *TokenStream, options:...@@ -1518,7 +1593,9 @@ fn parseInternal(comptime T: type, token: Token, tokens: *TokenStream, options:
1518 inline for (structInfo.fields) |field, i| {1593 inline for (structInfo.fields) |field, i| {
1519 if (!fields_seen[i]) {1594 if (!fields_seen[i]) {
1520 if (field.default_value) |default| {1595 if (field.default_value) |default| {
1521 @field(r, field.name) = default;1596 if (!field.is_comptime) {
1597 @field(r, field.name) = default;
1598 }
1522 } else {1599 } else {
1523 return error.MissingField;1600 return error.MissingField;
1524 }1601 }
...@@ -1731,18 +1808,6 @@ test "parse into tagged union" {...@@ -1731,18 +1808,6 @@ test "parse into tagged union" {
1731 testing.expectEqual(T{ .float = 1.5 }, try parse(T, &TokenStream.init("1.5"), ParseOptions{}));1808 testing.expectEqual(T{ .float = 1.5 }, try parse(T, &TokenStream.init("1.5"), ParseOptions{}));
1732 }1809 }
17331810
1734 { // if union matches string member, fails with NoUnionMembersMatched rather than AllocatorRequired
1735 // Note that this behaviour wasn't necessarily by design, but was
1736 // what fell out of the implementation and may result in interesting
1737 // API breakage if changed
1738 const T = union(enum) {
1739 int: i32,
1740 float: f64,
1741 string: []const u8,
1742 };
1743 testing.expectError(error.NoUnionMembersMatched, parse(T, &TokenStream.init("\"foo\""), ParseOptions{}));
1744 }
1745
1746 { // failing allocations should be bubbled up instantly without trying next member1811 { // failing allocations should be bubbled up instantly without trying next member
1747 var fail_alloc = testing.FailingAllocator.init(testing.allocator, 0);1812 var fail_alloc = testing.FailingAllocator.init(testing.allocator, 0);
1748 const options = ParseOptions{ .allocator = &fail_alloc.allocator };1813 const options = ParseOptions{ .allocator = &fail_alloc.allocator };
...@@ -1772,6 +1837,25 @@ test "parse into tagged union" {...@@ -1772,6 +1837,25 @@ test "parse into tagged union" {
1772 }1837 }
1773}1838}
17741839
1840test "parse union bubbles up AllocatorRequired" {
1841 { // string member first in union (and not matching)
1842 const T = union(enum) {
1843 string: []const u8,
1844 int: i32,
1845 };
1846 testing.expectError(error.AllocatorRequired, parse(T, &TokenStream.init("42"), ParseOptions{}));
1847 }
1848
1849 { // string member not first in union (and matching)
1850 const T = union(enum) {
1851 int: i32,
1852 float: f64,
1853 string: []const u8,
1854 };
1855 testing.expectError(error.AllocatorRequired, parse(T, &TokenStream.init("\"foo\""), ParseOptions{}));
1856 }
1857}
1858
1775test "parseFree descends into tagged union" {1859test "parseFree descends into tagged union" {
1776 var fail_alloc = testing.FailingAllocator.init(testing.allocator, 1);1860 var fail_alloc = testing.FailingAllocator.init(testing.allocator, 1);
1777 const options = ParseOptions{ .allocator = &fail_alloc.allocator };1861 const options = ParseOptions{ .allocator = &fail_alloc.allocator };
...@@ -1782,13 +1866,50 @@ test "parseFree descends into tagged union" {...@@ -1782,13 +1866,50 @@ test "parseFree descends into tagged union" {
1782 };1866 };
1783 // use a string with unicode escape so we know result can't be a reference to global constant1867 // use a string with unicode escape so we know result can't be a reference to global constant
1784 const r = try parse(T, &TokenStream.init("\"with\\u0105unicode\""), options);1868 const r = try parse(T, &TokenStream.init("\"with\\u0105unicode\""), options);
1785 testing.expectEqual(@TagType(T).string, @as(@TagType(T), r));1869 testing.expectEqual(std.meta.Tag(T).string, @as(std.meta.Tag(T), r));
1786 testing.expectEqualSlices(u8, "withąunicode", r.string);1870 testing.expectEqualSlices(u8, "withąunicode", r.string);
1787 testing.expectEqual(@as(usize, 0), fail_alloc.deallocations);1871 testing.expectEqual(@as(usize, 0), fail_alloc.deallocations);
1788 parseFree(T, r, options);1872 parseFree(T, r, options);
1789 testing.expectEqual(@as(usize, 1), fail_alloc.deallocations);1873 testing.expectEqual(@as(usize, 1), fail_alloc.deallocations);
1790}1874}
17911875
1876test "parse with comptime field" {
1877 {
1878 const T = struct {
1879 comptime a: i32 = 0,
1880 b: bool,
1881 };
1882 testing.expectEqual(T{ .a = 0, .b = true }, try parse(T, &TokenStream.init(
1883 \\{
1884 \\ "a": 0,
1885 \\ "b": true
1886 \\}
1887 ), ParseOptions{}));
1888 }
1889
1890 { // string comptime values currently require an allocator
1891 const T = union(enum) {
1892 foo: struct {
1893 comptime kind: []const u8 = "boolean",
1894 b: bool,
1895 },
1896 bar: struct {
1897 comptime kind: []const u8 = "float",
1898 b: f64,
1899 },
1900 };
1901
1902 const r = try std.json.parse(T, &std.json.TokenStream.init(
1903 \\{
1904 \\ "kind": "float",
1905 \\ "b": 1.0
1906 \\}
1907 ), .{
1908 .allocator = std.testing.allocator,
1909 });
1910 }
1911}
1912
1792test "parse into struct with no fields" {1913test "parse into struct with no fields" {
1793 const T = struct {};1914 const T = struct {};
1794 testing.expectEqual(T{}, try parse(T, &TokenStream.init("{}"), ParseOptions{}));1915 testing.expectEqual(T{}, try parse(T, &TokenStream.init("{}"), ParseOptions{}));
...@@ -2077,7 +2198,7 @@ pub const Parser = struct {...@@ -2077,7 +2198,7 @@ pub const Parser = struct {
2077 }2198 }
2078 }2199 }
20792200
2080 fn parseString(p: *Parser, allocator: *Allocator, s: std.meta.TagPayloadType(Token, Token.String), input: []const u8, i: usize) !Value {2201 fn parseString(p: *Parser, allocator: *Allocator, s: std.meta.TagPayload(Token, Token.String), input: []const u8, i: usize) !Value {
2081 const slice = s.slice(input, i);2202 const slice = s.slice(input, i);
2082 switch (s.escapes) {2203 switch (s.escapes) {
2083 .None => return Value{ .String = if (p.copy_strings) try allocator.dupe(u8, slice) else slice },2204 .None => return Value{ .String = if (p.copy_strings) try allocator.dupe(u8, slice) else slice },
...@@ -2090,9 +2211,14 @@ pub const Parser = struct {...@@ -2090,9 +2211,14 @@ pub const Parser = struct {
2090 }2211 }
2091 }2212 }
20922213
2093 fn parseNumber(p: *Parser, n: std.meta.TagPayloadType(Token, Token.Number), input: []const u8, i: usize) !Value {2214 fn parseNumber(p: *Parser, n: std.meta.TagPayload(Token, Token.Number), input: []const u8, i: usize) !Value {
2094 return if (n.is_integer)2215 return if (n.is_integer)
2095 Value{ .Integer = try std.fmt.parseInt(i64, n.slice(input, i), 10) }2216 Value{
2217 .Integer = std.fmt.parseInt(i64, n.slice(input, i), 10) catch |e| switch (e) {
2218 error.Overflow => return Value{ .NumberString = n.slice(input, i) },
2219 error.InvalidCharacter => |err| return err,
2220 },
2221 }
2096 else2222 else
2097 Value{ .Float = try std.fmt.parseFloat(f64, n.slice(input, i)) };2223 Value{ .Float = try std.fmt.parseFloat(f64, n.slice(input, i)) };
2098 }2224 }
...@@ -2180,7 +2306,8 @@ test "json.parser.dynamic" {...@@ -2180,7 +2306,8 @@ test "json.parser.dynamic" {
2180 \\ "Animated" : false,2306 \\ "Animated" : false,
2181 \\ "IDs": [116, 943, 234, 38793],2307 \\ "IDs": [116, 943, 234, 38793],
2182 \\ "ArrayOfObject": [{"n": "m"}],2308 \\ "ArrayOfObject": [{"n": "m"}],
2183 \\ "double": 1.34122309 \\ "double": 1.3412,
2310 \\ "LargeInt": 18446744073709551615
2184 \\ }2311 \\ }
2185 \\}2312 \\}
2186 ;2313 ;
...@@ -2212,6 +2339,9 @@ test "json.parser.dynamic" {...@@ -2212,6 +2339,9 @@ test "json.parser.dynamic" {
22122339
2213 const double = image.Object.get("double").?;2340 const double = image.Object.get("double").?;
2214 testing.expect(double.Float == 1.3412);2341 testing.expect(double.Float == 1.3412);
2342
2343 const large_int = image.Object.get("LargeInt").?;
2344 testing.expect(mem.eql(u8, large_int.NumberString, "18446744073709551615"));
2215}2345}
22162346
2217test "import more json tests" {2347test "import more json tests" {
lib/std/macho.zig+35
...@@ -1334,6 +1334,41 @@ pub const reloc_type_x86_64 = packed enum(u4) {...@@ -1334,6 +1334,41 @@ pub const reloc_type_x86_64 = packed enum(u4) {
1334 X86_64_RELOC_TLV,1334 X86_64_RELOC_TLV,
1335};1335};
13361336
1337pub const reloc_type_arm64 = packed enum(u4) {
1338 /// For pointers.
1339 ARM64_RELOC_UNSIGNED = 0,
1340
1341 /// Must be followed by a ARM64_RELOC_UNSIGNED.
1342 ARM64_RELOC_SUBTRACTOR,
1343
1344 /// A B/BL instruction with 26-bit displacement.
1345 ARM64_RELOC_BRANCH26,
1346
1347 /// Pc-rel distance to page of target.
1348 ARM64_RELOC_PAGE21,
1349
1350 /// Offset within page, scaled by r_length.
1351 ARM64_RELOC_PAGEOFF12,
1352
1353 /// Pc-rel distance to page of GOT slot.
1354 ARM64_RELOC_GOT_LOAD_PAGE21,
1355
1356 /// Offset within page of GOT slot, scaled by r_length.
1357 ARM64_RELOC_GOT_LOAD_PAGEOFF12,
1358
1359 /// For pointers to GOT slots.
1360 ARM64_RELOC_POINTER_TO_GOT,
1361
1362 /// Pc-rel distance to page of TLVP slot.
1363 ARM64_RELOC_TLVP_LOAD_PAGE21,
1364
1365 /// Offset within page of TLVP slot, scaled by r_length.
1366 ARM64_RELOC_TLVP_LOAD_PAGEOFF12,
1367
1368 /// Must be followed by PAGE21 or PAGEOFF12.
1369 ARM64_RELOC_ADDEND,
1370};
1371
1337/// This symbol is a reference to an external non-lazy (data) symbol.1372/// This symbol is a reference to an external non-lazy (data) symbol.
1338pub const REFERENCE_FLAG_UNDEFINED_NON_LAZY: u16 = 0x0;1373pub const REFERENCE_FLAG_UNDEFINED_NON_LAZY: u16 = 0x0;
13391374
lib/std/math/big/int.zig+5-3
...@@ -549,8 +549,8 @@ pub const Mutable = struct {...@@ -549,8 +549,8 @@ pub const Mutable = struct {
549 return;549 return;
550 }550 }
551551
552 const r_len = llshr(r.limbs[0..], a.limbs[0..a.limbs.len], shift);552 llshr(r.limbs[0..], a.limbs[0..a.limbs.len], shift);
553 r.len = a.limbs.len - (shift / limb_bits);553 r.normalize(a.limbs.len - (shift / limb_bits));
554 r.positive = a.positive;554 r.positive = a.positive;
555 }555 }
556556
...@@ -1348,7 +1348,9 @@ pub const Const = struct {...@@ -1348,7 +1348,9 @@ pub const Const = struct {
13481348
1349 /// Returns true if `a == 0`.1349 /// Returns true if `a == 0`.
1350 pub fn eqZero(a: Const) bool {1350 pub fn eqZero(a: Const) bool {
1351 return a.limbs.len == 1 and a.limbs[0] == 0;1351 var d: Limb = 0;
1352 for (a.limbs) |limb| d |= limb;
1353 return d == 0;
1352 }1354 }
13531355
1354 /// Returns true if `|a| == |b|`.1356 /// Returns true if `|a| == |b|`.
lib/std/math/big/int_test.zig+6
...@@ -1287,6 +1287,12 @@ test "big.int shift-right multi" {...@@ -1287,6 +1287,12 @@ test "big.int shift-right multi" {
1287 try a.shiftRight(a, 67);1287 try a.shiftRight(a, 67);
12881288
1289 testing.expect((try a.to(u64)) == 0x1fffe0001dddc222);1289 testing.expect((try a.to(u64)) == 0x1fffe0001dddc222);
1290
1291 try a.set(0xffff0000eeee1111dddd2222cccc3333);
1292 try a.shiftRight(a, 63);
1293 try a.shiftRight(a, 63);
1294 try a.shiftRight(a, 2);
1295 testing.expect(a.eqZero());
1290}1296}
12911297
1292test "big.int shift-left single" {1298test "big.int shift-left single" {
lib/std/mem.zig+12-1
...@@ -1507,7 +1507,7 @@ pub fn joinZ(allocator: *Allocator, separator: []const u8, slices: []const []con...@@ -1507,7 +1507,7 @@ pub fn joinZ(allocator: *Allocator, separator: []const u8, slices: []const []con
1507}1507}
15081508
1509fn joinMaybeZ(allocator: *Allocator, separator: []const u8, slices: []const []const u8, zero: bool) ![]u8 {1509fn joinMaybeZ(allocator: *Allocator, separator: []const u8, slices: []const []const u8, zero: bool) ![]u8 {
1510 if (slices.len == 0) return &[0]u8{};1510 if (slices.len == 0) return if (zero) try allocator.dupe(u8, &[1]u8{0}) else &[0]u8{};
15111511
1512 const total_len = blk: {1512 const total_len = blk: {
1513 var sum: usize = separator.len * (slices.len - 1);1513 var sum: usize = separator.len * (slices.len - 1);
...@@ -1535,6 +1535,11 @@ fn joinMaybeZ(allocator: *Allocator, separator: []const u8, slices: []const []co...@@ -1535,6 +1535,11 @@ fn joinMaybeZ(allocator: *Allocator, separator: []const u8, slices: []const []co
1535}1535}
15361536
1537test "mem.join" {1537test "mem.join" {
1538 {
1539 const str = try join(testing.allocator, ",", &[_][]const u8{});
1540 defer testing.allocator.free(str);
1541 testing.expect(eql(u8, str, ""));
1542 }
1538 {1543 {
1539 const str = try join(testing.allocator, ",", &[_][]const u8{ "a", "b", "c" });1544 const str = try join(testing.allocator, ",", &[_][]const u8{ "a", "b", "c" });
1540 defer testing.allocator.free(str);1545 defer testing.allocator.free(str);
...@@ -1553,6 +1558,12 @@ test "mem.join" {...@@ -1553,6 +1558,12 @@ test "mem.join" {
1553}1558}
15541559
1555test "mem.joinZ" {1560test "mem.joinZ" {
1561 {
1562 const str = try joinZ(testing.allocator, ",", &[_][]const u8{});
1563 defer testing.allocator.free(str);
1564 testing.expect(eql(u8, str, ""));
1565 testing.expectEqual(str[str.len], 0);
1566 }
1556 {1567 {
1557 const str = try joinZ(testing.allocator, ",", &[_][]const u8{ "a", "b", "c" });1568 const str = try joinZ(testing.allocator, ",", &[_][]const u8{ "a", "b", "c" });
1558 defer testing.allocator.free(str);1569 defer testing.allocator.free(str);
lib/std/meta.zig+108-20
...@@ -600,15 +600,18 @@ test "std.meta.FieldEnum" {...@@ -600,15 +600,18 @@ test "std.meta.FieldEnum" {
600 expectEqualEnum(enum { a, b, c }, FieldEnum(union { a: u8, b: void, c: f32 }));600 expectEqualEnum(enum { a, b, c }, FieldEnum(union { a: u8, b: void, c: f32 }));
601}601}
602602
603pub fn TagType(comptime T: type) type {603// Deprecated: use Tag
604pub const TagType = Tag;
605
606pub fn Tag(comptime T: type) type {
604 return switch (@typeInfo(T)) {607 return switch (@typeInfo(T)) {
605 .Enum => |info| info.tag_type,608 .Enum => |info| info.tag_type,
606 .Union => |info| if (info.tag_type) |Tag| Tag else null,609 .Union => |info| info.tag_type orelse @compileError(@typeName(T) ++ " has no tag type"),
607 else => @compileError("expected enum or union type, found '" ++ @typeName(T) ++ "'"),610 else => @compileError("expected enum or union type, found '" ++ @typeName(T) ++ "'"),
608 };611 };
609}612}
610613
611test "std.meta.TagType" {614test "std.meta.Tag" {
612 const E = enum(u8) {615 const E = enum(u8) {
613 C = 33,616 C = 33,
614 D,617 D,
...@@ -618,14 +621,14 @@ test "std.meta.TagType" {...@@ -618,14 +621,14 @@ test "std.meta.TagType" {
618 D: u16,621 D: u16,
619 };622 };
620623
621 testing.expect(TagType(E) == u8);624 testing.expect(Tag(E) == u8);
622 testing.expect(TagType(U) == E);625 testing.expect(Tag(U) == E);
623}626}
624627
625///Returns the active tag of a tagged union628///Returns the active tag of a tagged union
626pub fn activeTag(u: anytype) @TagType(@TypeOf(u)) {629pub fn activeTag(u: anytype) Tag(@TypeOf(u)) {
627 const T = @TypeOf(u);630 const T = @TypeOf(u);
628 return @as(@TagType(T), u);631 return @as(Tag(T), u);
629}632}
630633
631test "std.meta.activeTag" {634test "std.meta.activeTag" {
...@@ -646,13 +649,15 @@ test "std.meta.activeTag" {...@@ -646,13 +649,15 @@ test "std.meta.activeTag" {
646 testing.expect(activeTag(u) == UE.Float);649 testing.expect(activeTag(u) == UE.Float);
647}650}
648651
652const TagPayloadType = TagPayload;
653
649///Given a tagged union type, and an enum, return the type of the union654///Given a tagged union type, and an enum, return the type of the union
650/// field corresponding to the enum tag.655/// field corresponding to the enum tag.
651pub fn TagPayloadType(comptime U: type, tag: @TagType(U)) type {656pub fn TagPayload(comptime U: type, tag: Tag(U)) type {
652 testing.expect(trait.is(.Union)(U));657 testing.expect(trait.is(.Union)(U));
653658
654 const info = @typeInfo(U).Union;659 const info = @typeInfo(U).Union;
655 const tag_info = @typeInfo(@TagType(U)).Enum;660 const tag_info = @typeInfo(Tag(U)).Enum;
656661
657 inline for (info.fields) |field_info| {662 inline for (info.fields) |field_info| {
658 if (comptime mem.eql(u8, field_info.name, @tagName(tag)))663 if (comptime mem.eql(u8, field_info.name, @tagName(tag)))
...@@ -662,14 +667,14 @@ pub fn TagPayloadType(comptime U: type, tag: @TagType(U)) type {...@@ -662,14 +667,14 @@ pub fn TagPayloadType(comptime U: type, tag: @TagType(U)) type {
662 unreachable;667 unreachable;
663}668}
664669
665test "std.meta.TagPayloadType" {670test "std.meta.TagPayload" {
666 const Event = union(enum) {671 const Event = union(enum) {
667 Moved: struct {672 Moved: struct {
668 from: i32,673 from: i32,
669 to: i32,674 to: i32,
670 },675 },
671 };676 };
672 const MovedEvent = TagPayloadType(Event, Event.Moved);677 const MovedEvent = TagPayload(Event, Event.Moved);
673 var e: Event = undefined;678 var e: Event = undefined;
674 testing.expect(MovedEvent == @TypeOf(e.Moved));679 testing.expect(MovedEvent == @TypeOf(e.Moved));
675}680}
...@@ -694,13 +699,13 @@ pub fn eql(a: anytype, b: @TypeOf(a)) bool {...@@ -694,13 +699,13 @@ pub fn eql(a: anytype, b: @TypeOf(a)) bool {
694 }699 }
695 },700 },
696 .Union => |info| {701 .Union => |info| {
697 if (info.tag_type) |Tag| {702 if (info.tag_type) |UnionTag| {
698 const tag_a = activeTag(a);703 const tag_a = activeTag(a);
699 const tag_b = activeTag(b);704 const tag_b = activeTag(b);
700 if (tag_a != tag_b) return false;705 if (tag_a != tag_b) return false;
701706
702 inline for (info.fields) |field_info| {707 inline for (info.fields) |field_info| {
703 if (@field(Tag, field_info.name) == tag_a) {708 if (@field(UnionTag, field_info.name) == tag_a) {
704 return eql(@field(a, field_info.name), @field(b, field_info.name));709 return eql(@field(a, field_info.name), @field(b, field_info.name));
705 }710 }
706 }711 }
...@@ -822,9 +827,9 @@ test "intToEnum with error return" {...@@ -822,9 +827,9 @@ test "intToEnum with error return" {
822827
823pub const IntToEnumError = error{InvalidEnumTag};828pub const IntToEnumError = error{InvalidEnumTag};
824829
825pub fn intToEnum(comptime Tag: type, tag_int: anytype) IntToEnumError!Tag {830pub fn intToEnum(comptime EnumTag: type, tag_int: anytype) IntToEnumError!EnumTag {
826 inline for (@typeInfo(Tag).Enum.fields) |f| {831 inline for (@typeInfo(EnumTag).Enum.fields) |f| {
827 const this_tag_value = @field(Tag, f.name);832 const this_tag_value = @field(EnumTag, f.name);
828 if (tag_int == @enumToInt(this_tag_value)) {833 if (tag_int == @enumToInt(this_tag_value)) {
829 return this_tag_value;834 return this_tag_value;
830 }835 }
...@@ -979,9 +984,59 @@ test "std.meta.cast" {...@@ -979,9 +984,59 @@ test "std.meta.cast" {
979/// Given a value returns its size as C's sizeof operator would.984/// Given a value returns its size as C's sizeof operator would.
980/// This is for translate-c and is not intended for general use.985/// This is for translate-c and is not intended for general use.
981pub fn sizeof(target: anytype) usize {986pub fn sizeof(target: anytype) usize {
982 switch (@typeInfo(@TypeOf(target))) {987 const T: type = if (@TypeOf(target) == type) target else @TypeOf(target);
983 .Type => return @sizeOf(target),988 switch (@typeInfo(T)) {
984 .Float, .Int, .Struct, .Union, .Enum => return @sizeOf(@TypeOf(target)),989 .Float, .Int, .Struct, .Union, .Enum, .Array, .Bool, .Vector => return @sizeOf(T),
990 .Fn => {
991 // sizeof(main) returns 1, sizeof(&main) returns pointer size.
992 // We cannot distinguish those types in Zig, so use pointer size.
993 return @sizeOf(T);
994 },
995 .Null => return @sizeOf(*c_void),
996 .Void => {
997 // Note: sizeof(void) is 1 on clang/gcc and 0 on MSVC.
998 return 1;
999 },
1000 .Opaque => {
1001 if (T == c_void) {
1002 // Note: sizeof(void) is 1 on clang/gcc and 0 on MSVC.
1003 return 1;
1004 } else {
1005 @compileError("Cannot use C sizeof on opaque type "++@typeName(T));
1006 }
1007 },
1008 .Optional => |opt| {
1009 if (@typeInfo(opt.child) == .Pointer) {
1010 return sizeof(opt.child);
1011 } else {
1012 @compileError("Cannot use C sizeof on non-pointer optional "++@typeName(T));
1013 }
1014 },
1015 .Pointer => |ptr| {
1016 if (ptr.size == .Slice) {
1017 @compileError("Cannot use C sizeof on slice type "++@typeName(T));
1018 }
1019 // for strings, sizeof("a") returns 2.
1020 // normal pointer decay scenarios from C are handled
1021 // in the .Array case above, but strings remain literals
1022 // and are therefore always pointers, so they need to be
1023 // specially handled here.
1024 if (ptr.size == .One and ptr.is_const and @typeInfo(ptr.child) == .Array) {
1025 const array_info = @typeInfo(ptr.child).Array;
1026 if ((array_info.child == u8 or array_info.child == u16) and
1027 array_info.sentinel != null and
1028 array_info.sentinel.? == 0) {
1029 // length of the string plus one for the null terminator.
1030 return (array_info.len + 1) * @sizeOf(array_info.child);
1031 }
1032 }
1033 // When zero sized pointers are removed, this case will no
1034 // longer be reachable and can be deleted.
1035 if (@sizeOf(T) == 0) {
1036 return @sizeOf(*c_void);
1037 }
1038 return @sizeOf(T);
1039 },
985 .ComptimeFloat => return @sizeOf(f64), // TODO c_double #39991040 .ComptimeFloat => return @sizeOf(f64), // TODO c_double #3999
986 .ComptimeInt => {1041 .ComptimeInt => {
987 // TODO to get the correct result we have to translate1042 // TODO to get the correct result we have to translate
...@@ -991,7 +1046,7 @@ pub fn sizeof(target: anytype) usize {...@@ -991,7 +1046,7 @@ pub fn sizeof(target: anytype) usize {
991 // TODO test if target fits in int, long or long long1046 // TODO test if target fits in int, long or long long
992 return @sizeOf(c_int);1047 return @sizeOf(c_int);
993 },1048 },
994 else => @compileError("TODO implement std.meta.sizeof for type " ++ @typeName(@TypeOf(target))),1049 else => @compileError("std.meta.sizeof does not support type " ++ @typeName(T)),
995 }1050 }
996}1051}
9971052
...@@ -999,12 +1054,45 @@ test "sizeof" {...@@ -999,12 +1054,45 @@ test "sizeof" {
999 const E = extern enum(c_int) { One, _ };1054 const E = extern enum(c_int) { One, _ };
1000 const S = extern struct { a: u32 };1055 const S = extern struct { a: u32 };
10011056
1057 const ptr_size = @sizeOf(*c_void);
1058
1002 testing.expect(sizeof(u32) == 4);1059 testing.expect(sizeof(u32) == 4);
1003 testing.expect(sizeof(@as(u32, 2)) == 4);1060 testing.expect(sizeof(@as(u32, 2)) == 4);
1004 testing.expect(sizeof(2) == @sizeOf(c_int));1061 testing.expect(sizeof(2) == @sizeOf(c_int));
1062
1063 testing.expect(sizeof(2.0) == @sizeOf(f64));
1064
1005 testing.expect(sizeof(E) == @sizeOf(c_int));1065 testing.expect(sizeof(E) == @sizeOf(c_int));
1006 testing.expect(sizeof(E.One) == @sizeOf(c_int));1066 testing.expect(sizeof(E.One) == @sizeOf(c_int));
1067
1007 testing.expect(sizeof(S) == 4);1068 testing.expect(sizeof(S) == 4);
1069
1070 testing.expect(sizeof([_]u32{4, 5, 6}) == 12);
1071 testing.expect(sizeof([3]u32) == 12);
1072 testing.expect(sizeof([3:0]u32) == 16);
1073 testing.expect(sizeof(&[_]u32{4, 5, 6}) == ptr_size);
1074
1075 testing.expect(sizeof(*u32) == ptr_size);
1076 testing.expect(sizeof([*]u32) == ptr_size);
1077 testing.expect(sizeof([*c]u32) == ptr_size);
1078 testing.expect(sizeof(?*u32) == ptr_size);
1079 testing.expect(sizeof(?[*]u32) == ptr_size);
1080 testing.expect(sizeof(*c_void) == ptr_size);
1081 testing.expect(sizeof(*void) == ptr_size);
1082 testing.expect(sizeof(null) == ptr_size);
1083
1084 testing.expect(sizeof("foobar") == 7);
1085 testing.expect(sizeof(&[_:0]u16{'f','o','o','b','a','r'}) == 14);
1086 testing.expect(sizeof(*const [4:0]u8) == 5);
1087 testing.expect(sizeof(*[4:0]u8) == ptr_size);
1088 testing.expect(sizeof([*]const [4:0]u8) == ptr_size);
1089 testing.expect(sizeof(*const *const [4:0]u8) == ptr_size);
1090 testing.expect(sizeof(*const [4]u8) == ptr_size);
1091
1092 testing.expect(sizeof(sizeof) == @sizeOf(@TypeOf(sizeof)));
1093
1094 testing.expect(sizeof(void) == 1);
1095 testing.expect(sizeof(c_void) == 1);
1008}1096}
10091097
1010/// For a given function type, returns a tuple type which fields will1098/// For a given function type, returns a tuple type which fields will
lib/std/meta/trailer_flags.zig+1-1
...@@ -146,7 +146,7 @@ test "TrailerFlags" {...@@ -146,7 +146,7 @@ test "TrailerFlags" {
146 b: bool,146 b: bool,
147 c: u64,147 c: u64,
148 });148 });
149 testing.expectEqual(u2, @TagType(Flags.FieldEnum));149 testing.expectEqual(u2, meta.Tag(Flags.FieldEnum));
150150
151 var flags = Flags.init(.{151 var flags = Flags.init(.{
152 .b = true,152 .b = true,
lib/std/os/bits/freebsd.zig+4-4
...@@ -815,16 +815,16 @@ pub const sigval = extern union {...@@ -815,16 +815,16 @@ pub const sigval = extern union {
815pub const _SIG_WORDS = 4;815pub const _SIG_WORDS = 4;
816pub const _SIG_MAXSIG = 128;816pub const _SIG_MAXSIG = 128;
817817
818pub inline fn _SIG_IDX(sig: usize) usize {818pub fn _SIG_IDX(sig: usize) callconv(.Inline) usize {
819 return sig - 1;819 return sig - 1;
820}820}
821pub inline fn _SIG_WORD(sig: usize) usize {821pub fn _SIG_WORD(sig: usize) callconv(.Inline) usize {
822 return_SIG_IDX(sig) >> 5;822 return_SIG_IDX(sig) >> 5;
823}823}
824pub inline fn _SIG_BIT(sig: usize) usize {824pub fn _SIG_BIT(sig: usize) callconv(.Inline) usize {
825 return 1 << (_SIG_IDX(sig) & 31);825 return 1 << (_SIG_IDX(sig) & 31);
826}826}
827pub inline fn _SIG_VALID(sig: usize) usize {827pub fn _SIG_VALID(sig: usize) callconv(.Inline) usize {
828 return sig <= _SIG_MAXSIG and sig > 0;828 return sig <= _SIG_MAXSIG and sig > 0;
829}829}
830830
lib/std/os/bits/netbsd.zig+4-4
...@@ -796,16 +796,16 @@ pub const _ksiginfo = extern struct {...@@ -796,16 +796,16 @@ pub const _ksiginfo = extern struct {
796pub const _SIG_WORDS = 4;796pub const _SIG_WORDS = 4;
797pub const _SIG_MAXSIG = 128;797pub const _SIG_MAXSIG = 128;
798798
799pub inline fn _SIG_IDX(sig: usize) usize {799pub fn _SIG_IDX(sig: usize) callconv(.Inline) usize {
800 return sig - 1;800 return sig - 1;
801}801}
802pub inline fn _SIG_WORD(sig: usize) usize {802pub fn _SIG_WORD(sig: usize) callconv(.Inline) usize {
803 return_SIG_IDX(sig) >> 5;803 return_SIG_IDX(sig) >> 5;
804}804}
805pub inline fn _SIG_BIT(sig: usize) usize {805pub fn _SIG_BIT(sig: usize) callconv(.Inline) usize {
806 return 1 << (_SIG_IDX(sig) & 31);806 return 1 << (_SIG_IDX(sig) & 31);
807}807}
808pub inline fn _SIG_VALID(sig: usize) usize {808pub fn _SIG_VALID(sig: usize) callconv(.Inline) usize {
809 return sig <= _SIG_MAXSIG and sig > 0;809 return sig <= _SIG_MAXSIG and sig > 0;
810}810}
811811
lib/std/os/linux.zig+1-1
...@@ -126,7 +126,7 @@ pub fn fork() usize {...@@ -126,7 +126,7 @@ pub fn fork() usize {
126/// It is advised to avoid this function and use clone instead, because126/// It is advised to avoid this function and use clone instead, because
127/// the compiler is not aware of how vfork affects control flow and you may127/// the compiler is not aware of how vfork affects control flow and you may
128/// see different results in optimized builds.128/// see different results in optimized builds.
129pub inline fn vfork() usize {129pub fn vfork() callconv(.Inline) usize {
130 return @call(.{ .modifier = .always_inline }, syscall0, .{.vfork});130 return @call(.{ .modifier = .always_inline }, syscall0, .{.vfork});
131}131}
132132
lib/std/os/linux/tls.zig+1-1
...@@ -300,7 +300,7 @@ fn initTLS() void {...@@ -300,7 +300,7 @@ fn initTLS() void {
300 };300 };
301}301}
302302
303inline fn alignPtrCast(comptime T: type, ptr: [*]u8) *T {303fn alignPtrCast(comptime T: type, ptr: [*]u8) callconv(.Inline) *T {
304 return @ptrCast(*T, @alignCast(@alignOf(*T), ptr));304 return @ptrCast(*T, @alignCast(@alignOf(*T), ptr));
305}305}
306306
lib/std/os/windows.zig+1-1
...@@ -1669,7 +1669,7 @@ pub fn wToPrefixedFileW(s: []const u16) !PathSpace {...@@ -1669,7 +1669,7 @@ pub fn wToPrefixedFileW(s: []const u16) !PathSpace {
1669 return path_space;1669 return path_space;
1670}1670}
16711671
1672inline fn MAKELANGID(p: c_ushort, s: c_ushort) LANGID {1672fn MAKELANGID(p: c_ushort, s: c_ushort) callconv(.Inline) LANGID {
1673 return (s << 10) | p;1673 return (s << 10) | p;
1674}1674}
16751675
lib/std/pdb.zig+2
...@@ -662,6 +662,7 @@ const MsfStream = struct {...@@ -662,6 +662,7 @@ const MsfStream = struct {
662662
663 fn read(self: *MsfStream, buffer: []u8) !usize {663 fn read(self: *MsfStream, buffer: []u8) !usize {
664 var block_id = @intCast(usize, self.pos / self.block_size);664 var block_id = @intCast(usize, self.pos / self.block_size);
665 if (block_id >= self.blocks.len) return 0; // End of Stream
665 var block = self.blocks[block_id];666 var block = self.blocks[block_id];
666 var offset = self.pos % self.block_size;667 var offset = self.pos % self.block_size;
667668
...@@ -680,6 +681,7 @@ const MsfStream = struct {...@@ -680,6 +681,7 @@ const MsfStream = struct {
680 if (offset == self.block_size) {681 if (offset == self.block_size) {
681 offset = 0;682 offset = 0;
682 block_id += 1;683 block_id += 1;
684 if (block_id >= self.blocks.len) break; // End of Stream
683 block = self.blocks[block_id];685 block = self.blocks[block_id];
684 try self.in_file.seekTo(block * self.block_size);686 try self.in_file.seekTo(block * self.block_size);
685 }687 }
lib/std/start.zig+2-2
...@@ -262,7 +262,7 @@ const bad_main_ret = "expected return type of main to be 'void', '!void', 'noret...@@ -262,7 +262,7 @@ const bad_main_ret = "expected return type of main to be 'void', '!void', 'noret
262262
263// This is marked inline because for some reason LLVM in release mode fails to inline it,263// This is marked inline because for some reason LLVM in release mode fails to inline it,
264// and we want fewer call frames in stack traces.264// and we want fewer call frames in stack traces.
265inline fn initEventLoopAndCallMain() u8 {265fn initEventLoopAndCallMain() callconv(.Inline) u8 {
266 if (std.event.Loop.instance) |loop| {266 if (std.event.Loop.instance) |loop| {
267 if (!@hasDecl(root, "event_loop")) {267 if (!@hasDecl(root, "event_loop")) {
268 loop.init() catch |err| {268 loop.init() catch |err| {
...@@ -291,7 +291,7 @@ inline fn initEventLoopAndCallMain() u8 {...@@ -291,7 +291,7 @@ inline fn initEventLoopAndCallMain() u8 {
291// and we want fewer call frames in stack traces.291// and we want fewer call frames in stack traces.
292// TODO This function is duplicated from initEventLoopAndCallMain instead of using generics292// TODO This function is duplicated from initEventLoopAndCallMain instead of using generics
293// because it is working around stage1 compiler bugs.293// because it is working around stage1 compiler bugs.
294inline fn initEventLoopAndCallWinMain() std.os.windows.INT {294fn initEventLoopAndCallWinMain() callconv(.Inline) std.os.windows.INT {
295 if (std.event.Loop.instance) |loop| {295 if (std.event.Loop.instance) |loop| {
296 if (!@hasDecl(root, "event_loop")) {296 if (!@hasDecl(root, "event_loop")) {
297 loop.init() catch |err| {297 loop.init() catch |err| {
lib/std/std.zig+1
...@@ -78,6 +78,7 @@ pub const testing = @import("testing.zig");...@@ -78,6 +78,7 @@ pub const testing = @import("testing.zig");
78pub const time = @import("time.zig");78pub const time = @import("time.zig");
79pub const unicode = @import("unicode.zig");79pub const unicode = @import("unicode.zig");
80pub const valgrind = @import("valgrind.zig");80pub const valgrind = @import("valgrind.zig");
81pub const wasm = @import("wasm.zig");
81pub const zig = @import("zig.zig");82pub const zig = @import("zig.zig");
82pub const start = @import("start.zig");83pub const start = @import("start.zig");
8384
lib/std/target.zig+35
...@@ -57,6 +57,9 @@ pub const Target = struct {...@@ -57,6 +57,9 @@ pub const Target = struct {
57 wasi,57 wasi,
58 emscripten,58 emscripten,
59 uefi,59 uefi,
60 opencl,
61 glsl450,
62 vulkan,
60 other,63 other,
6164
62 pub fn isDarwin(tag: Tag) bool {65 pub fn isDarwin(tag: Tag) bool {
...@@ -248,6 +251,9 @@ pub const Target = struct {...@@ -248,6 +251,9 @@ pub const Target = struct {
248 .wasi,251 .wasi,
249 .emscripten,252 .emscripten,
250 .uefi,253 .uefi,
254 .opencl, // TODO: OpenCL versions
255 .glsl450, // TODO: GLSL versions
256 .vulkan,
251 .other,257 .other,
252 => return .{ .none = {} },258 => return .{ .none = {} },
253259
...@@ -403,6 +409,9 @@ pub const Target = struct {...@@ -403,6 +409,9 @@ pub const Target = struct {
403 .wasi,409 .wasi,
404 .emscripten,410 .emscripten,
405 .uefi,411 .uefi,
412 .opencl,
413 .glsl450,
414 .vulkan,
406 .other,415 .other,
407 => false,416 => false,
408 };417 };
...@@ -421,6 +430,7 @@ pub const Target = struct {...@@ -421,6 +430,7 @@ pub const Target = struct {
421 pub const powerpc = @import("target/powerpc.zig");430 pub const powerpc = @import("target/powerpc.zig");
422 pub const riscv = @import("target/riscv.zig");431 pub const riscv = @import("target/riscv.zig");
423 pub const sparc = @import("target/sparc.zig");432 pub const sparc = @import("target/sparc.zig");
433 pub const spirv = @import("target/spirv.zig");
424 pub const systemz = @import("target/systemz.zig");434 pub const systemz = @import("target/systemz.zig");
425 pub const wasm = @import("target/wasm.zig");435 pub const wasm = @import("target/wasm.zig");
426 pub const x86 = @import("target/x86.zig");436 pub const x86 = @import("target/x86.zig");
...@@ -493,6 +503,10 @@ pub const Target = struct {...@@ -493,6 +503,10 @@ pub const Target = struct {
493 .wasi,503 .wasi,
494 .emscripten,504 .emscripten,
495 => return .musl,505 => return .musl,
506 .opencl, // TODO: SPIR-V ABIs with Linkage capability
507 .glsl450,
508 .vulkan,
509 => return .none,
496 }510 }
497 }511 }
498512
...@@ -528,6 +542,7 @@ pub const Target = struct {...@@ -528,6 +542,7 @@ pub const Target = struct {
528 macho,542 macho,
529 wasm,543 wasm,
530 c,544 c,
545 spirv,
531 hex,546 hex,
532 raw,547 raw,
533 };548 };
...@@ -744,6 +759,8 @@ pub const Target = struct {...@@ -744,6 +759,8 @@ pub const Target = struct {
744 // Stage1 currently assumes that architectures above this comment759 // Stage1 currently assumes that architectures above this comment
745 // map one-to-one with the ZigLLVM_ArchType enum.760 // map one-to-one with the ZigLLVM_ArchType enum.
746 spu_2,761 spu_2,
762 spirv32,
763 spirv64,
747764
748 pub fn isARM(arch: Arch) bool {765 pub fn isARM(arch: Arch) bool {
749 return switch (arch) {766 return switch (arch) {
...@@ -857,6 +874,8 @@ pub const Target = struct {...@@ -857,6 +874,8 @@ pub const Target = struct {
857 .s390x => ._S390,874 .s390x => ._S390,
858 .ve => ._NONE,875 .ve => ._NONE,
859 .spu_2 => ._SPU_2,876 .spu_2 => ._SPU_2,
877 .spirv32 => ._NONE,
878 .spirv64 => ._NONE,
860 };879 };
861 }880 }
862881
...@@ -914,6 +933,8 @@ pub const Target = struct {...@@ -914,6 +933,8 @@ pub const Target = struct {
914 .s390x => .Unknown,933 .s390x => .Unknown,
915 .ve => .Unknown,934 .ve => .Unknown,
916 .spu_2 => .Unknown,935 .spu_2 => .Unknown,
936 .spirv32 => .Unknown,
937 .spirv64 => .Unknown,
917 };938 };
918 }939 }
919940
...@@ -957,6 +978,9 @@ pub const Target = struct {...@@ -957,6 +978,9 @@ pub const Target = struct {
957 .shave,978 .shave,
958 .ve,979 .ve,
959 .spu_2,980 .spu_2,
981 // GPU bitness is opaque. For now, assume little endian.
982 .spirv32,
983 .spirv64,
960 => .Little,984 => .Little,
961985
962 .arc,986 .arc,
...@@ -1012,6 +1036,7 @@ pub const Target = struct {...@@ -1012,6 +1036,7 @@ pub const Target = struct {
1012 .wasm32,1036 .wasm32,
1013 .renderscript32,1037 .renderscript32,
1014 .aarch64_32,1038 .aarch64_32,
1039 .spirv32,
1015 => return 32,1040 => return 32,
10161041
1017 .aarch64,1042 .aarch64,
...@@ -1035,6 +1060,7 @@ pub const Target = struct {...@@ -1035,6 +1060,7 @@ pub const Target = struct {
1035 .sparcv9,1060 .sparcv9,
1036 .s390x,1061 .s390x,
1037 .ve,1062 .ve,
1063 .spirv64,
1038 => return 64,1064 => return 64,
1039 }1065 }
1040 }1066 }
...@@ -1057,6 +1083,7 @@ pub const Target = struct {...@@ -1057,6 +1083,7 @@ pub const Target = struct {
1057 .i386, .x86_64 => "x86",1083 .i386, .x86_64 => "x86",
1058 .nvptx, .nvptx64 => "nvptx",1084 .nvptx, .nvptx64 => "nvptx",
1059 .wasm32, .wasm64 => "wasm",1085 .wasm32, .wasm64 => "wasm",
1086 .spirv32, .spirv64 => "spir-v",
1060 else => @tagName(arch),1087 else => @tagName(arch),
1061 };1088 };
1062 }1089 }
...@@ -1347,6 +1374,9 @@ pub const Target = struct {...@@ -1347,6 +1374,9 @@ pub const Target = struct {
1347 .uefi,1374 .uefi,
1348 .windows,1375 .windows,
1349 .emscripten,1376 .emscripten,
1377 .opencl,
1378 .glsl450,
1379 .vulkan,
1350 .other,1380 .other,
1351 => return false,1381 => return false,
1352 else => return true,1382 else => return true,
...@@ -1482,6 +1512,8 @@ pub const Target = struct {...@@ -1482,6 +1512,8 @@ pub const Target = struct {
1482 .nvptx64,1512 .nvptx64,
1483 .spu_2,1513 .spu_2,
1484 .avr,1514 .avr,
1515 .spirv32,
1516 .spirv64,
1485 => return result,1517 => return result,
14861518
1487 // TODO go over each item in this list and either move it to the above list, or1519 // TODO go over each item in this list and either move it to the above list, or
...@@ -1524,6 +1556,9 @@ pub const Target = struct {...@@ -1524,6 +1556,9 @@ pub const Target = struct {
1524 .windows,1556 .windows,
1525 .emscripten,1557 .emscripten,
1526 .wasi,1558 .wasi,
1559 .opencl,
1560 .glsl450,
1561 .vulkan,
1527 .other,1562 .other,
1528 => return result,1563 => return result,
15291564
lib/std/target/powerpc.zig+1-1
...@@ -760,7 +760,7 @@ pub const cpu = struct {...@@ -760,7 +760,7 @@ pub const cpu = struct {
760 };760 };
761 pub const ppc32 = CpuModel{761 pub const ppc32 = CpuModel{
762 .name = "ppc32",762 .name = "ppc32",
763 .llvm_name = "ppc32",763 .llvm_name = "ppc",
764 .features = featureSet(&[_]Feature{764 .features = featureSet(&[_]Feature{
765 .hard_float,765 .hard_float,
766 }),766 }),
lib/std/testing.zig+10-10
...@@ -29,7 +29,7 @@ pub var zig_exe_path: []const u8 = undefined;...@@ -29,7 +29,7 @@ pub var zig_exe_path: []const u8 = undefined;
29/// and then aborts when actual_error_union is not expected_error.29/// and then aborts when actual_error_union is not expected_error.
30pub fn expectError(expected_error: anyerror, actual_error_union: anytype) void {30pub fn expectError(expected_error: anyerror, actual_error_union: anytype) void {
31 if (actual_error_union) |actual_payload| {31 if (actual_error_union) |actual_payload| {
32 std.debug.panic("expected error.{s}, found {}", .{ @errorName(expected_error), actual_payload });32 std.debug.panic("expected error.{s}, found {any}", .{ @errorName(expected_error), actual_payload });
33 } else |actual_error| {33 } else |actual_error| {
34 if (expected_error != actual_error) {34 if (expected_error != actual_error) {
35 std.debug.panic("expected error.{s}, found error.{s}", .{35 std.debug.panic("expected error.{s}, found error.{s}", .{
...@@ -88,7 +88,7 @@ pub fn expectEqual(expected: anytype, actual: @TypeOf(expected)) void {...@@ -88,7 +88,7 @@ pub fn expectEqual(expected: anytype, actual: @TypeOf(expected)) void {
88 },88 },
89 .Slice => {89 .Slice => {
90 if (actual.ptr != expected.ptr) {90 if (actual.ptr != expected.ptr) {
91 std.debug.panic("expected slice ptr {}, found {}", .{ expected.ptr, actual.ptr });91 std.debug.panic("expected slice ptr {*}, found {*}", .{ expected.ptr, actual.ptr });
92 }92 }
93 if (actual.len != expected.len) {93 if (actual.len != expected.len) {
94 std.debug.panic("expected slice len {}, found {}", .{ expected.len, actual.len });94 std.debug.panic("expected slice len {}, found {}", .{ expected.len, actual.len });
...@@ -119,10 +119,10 @@ pub fn expectEqual(expected: anytype, actual: @TypeOf(expected)) void {...@@ -119,10 +119,10 @@ pub fn expectEqual(expected: anytype, actual: @TypeOf(expected)) void {
119 @compileError("Unable to compare untagged union values");119 @compileError("Unable to compare untagged union values");
120 }120 }
121121
122 const TagType = @TagType(@TypeOf(expected));122 const Tag = std.meta.Tag(@TypeOf(expected));
123123
124 const expectedTag = @as(TagType, expected);124 const expectedTag = @as(Tag, expected);
125 const actualTag = @as(TagType, actual);125 const actualTag = @as(Tag, actual);
126126
127 expectEqual(expectedTag, actualTag);127 expectEqual(expectedTag, actualTag);
128128
...@@ -145,11 +145,11 @@ pub fn expectEqual(expected: anytype, actual: @TypeOf(expected)) void {...@@ -145,11 +145,11 @@ pub fn expectEqual(expected: anytype, actual: @TypeOf(expected)) void {
145 if (actual) |actual_payload| {145 if (actual) |actual_payload| {
146 expectEqual(expected_payload, actual_payload);146 expectEqual(expected_payload, actual_payload);
147 } else {147 } else {
148 std.debug.panic("expected {}, found null", .{expected_payload});148 std.debug.panic("expected {any}, found null", .{expected_payload});
149 }149 }
150 } else {150 } else {
151 if (actual) |actual_payload| {151 if (actual) |actual_payload| {
152 std.debug.panic("expected null, found {}", .{actual_payload});152 std.debug.panic("expected null, found {any}", .{actual_payload});
153 }153 }
154 }154 }
155 },155 },
...@@ -159,11 +159,11 @@ pub fn expectEqual(expected: anytype, actual: @TypeOf(expected)) void {...@@ -159,11 +159,11 @@ pub fn expectEqual(expected: anytype, actual: @TypeOf(expected)) void {
159 if (actual) |actual_payload| {159 if (actual) |actual_payload| {
160 expectEqual(expected_payload, actual_payload);160 expectEqual(expected_payload, actual_payload);
161 } else |actual_err| {161 } else |actual_err| {
162 std.debug.panic("expected {}, found {}", .{ expected_payload, actual_err });162 std.debug.panic("expected {any}, found {}", .{ expected_payload, actual_err });
163 }163 }
164 } else |expected_err| {164 } else |expected_err| {
165 if (actual) |actual_payload| {165 if (actual) |actual_payload| {
166 std.debug.panic("expected {}, found {}", .{ expected_err, actual_payload });166 std.debug.panic("expected {}, found {any}", .{ expected_err, actual_payload });
167 } else |actual_err| {167 } else |actual_err| {
168 expectEqual(expected_err, actual_err);168 expectEqual(expected_err, actual_err);
169 }169 }
...@@ -279,7 +279,7 @@ pub fn expectEqualSlices(comptime T: type, expected: []const T, actual: []const...@@ -279,7 +279,7 @@ pub fn expectEqualSlices(comptime T: type, expected: []const T, actual: []const
279 var i: usize = 0;279 var i: usize = 0;
280 while (i < expected.len) : (i += 1) {280 while (i < expected.len) : (i += 1) {
281 if (!std.meta.eql(expected[i], actual[i])) {281 if (!std.meta.eql(expected[i], actual[i])) {
282 std.debug.panic("index {} incorrect. expected {}, found {}", .{ i, expected[i], actual[i] });282 std.debug.panic("index {} incorrect. expected {any}, found {any}", .{ i, expected[i], actual[i] });
283 }283 }
284 }284 }
285}285}
lib/std/wasm.zig created+266
...@@ -0,0 +1,266 @@
1// SPDX-License-Identifier: MIT
2// Copyright (c) 2015-2021 Zig Contributors
3// This file is part of [zig](https://ziglang.org/), which is MIT licensed.
4// The MIT license requires this copyright notice to be included in all copies
5// and substantial portions of the software.
6const testing = @import("std.zig").testing;
7
8/// Wasm instruction opcodes
9///
10/// All instructions are defined as per spec:
11/// https://webassembly.github.io/spec/core/appendix/index-instructions.html
12pub const Opcode = enum(u8) {
13 @"unreachable" = 0x00,
14 nop = 0x01,
15 block = 0x02,
16 loop = 0x03,
17 @"if" = 0x04,
18 @"else" = 0x05,
19 end = 0x0B,
20 br = 0x0C,
21 br_if = 0x0D,
22 br_table = 0x0E,
23 @"return" = 0x0F,
24 call = 0x10,
25 call_indirect = 0x11,
26 drop = 0x1A,
27 select = 0x1B,
28 local_get = 0x20,
29 local_set = 0x21,
30 local_tee = 0x22,
31 global_get = 0x23,
32 global_set = 0x24,
33 i32_load = 0x28,
34 i64_load = 0x29,
35 f32_load = 0x2A,
36 f64_load = 0x2B,
37 i32_load8_s = 0x2C,
38 i32_load8_u = 0x2D,
39 i32_load16_s = 0x2E,
40 i32_load16_u = 0x2F,
41 i64_load8_s = 0x30,
42 i64_load8_u = 0x31,
43 i64_load16_s = 0x32,
44 i64_load16_u = 0x33,
45 i64_load32_s = 0x34,
46 i64_load32_u = 0x35,
47 i32_store = 0x36,
48 i64_store = 0x37,
49 f32_store = 0x38,
50 f64_store = 0x39,
51 i32_store8 = 0x3A,
52 i32_store16 = 0x3B,
53 i64_store8 = 0x3C,
54 i64_store16 = 0x3D,
55 i64_store32 = 0x3E,
56 memory_size = 0x3F,
57 memory_grow = 0x40,
58 i32_const = 0x41,
59 i64_const = 0x42,
60 f32_const = 0x43,
61 f64_const = 0x44,
62 i32_eqz = 0x45,
63 i32_eq = 0x46,
64 i32_ne = 0x47,
65 i32_lt_s = 0x48,
66 i32_lt_u = 0x49,
67 i32_gt_s = 0x4A,
68 i32_gt_u = 0x4B,
69 i32_le_s = 0x4C,
70 i32_le_u = 0x4D,
71 i32_ge_s = 0x4E,
72 i32_ge_u = 0x4F,
73 i64_eqz = 0x50,
74 i64_eq = 0x51,
75 i64_ne = 0x52,
76 i64_lt_s = 0x53,
77 i64_lt_u = 0x54,
78 i64_gt_s = 0x55,
79 i64_gt_u = 0x56,
80 i64_le_s = 0x57,
81 i64_le_u = 0x58,
82 i64_ge_s = 0x59,
83 i64_ge_u = 0x5A,
84 f32_eq = 0x5B,
85 f32_ne = 0x5C,
86 f32_lt = 0x5D,
87 f32_gt = 0x5E,
88 f32_le = 0x5F,
89 f32_ge = 0x60,
90 f64_eq = 0x61,
91 f64_ne = 0x62,
92 f64_lt = 0x63,
93 f64_gt = 0x64,
94 f64_le = 0x65,
95 f64_ge = 0x66,
96 i32_clz = 0x67,
97 i32_ctz = 0x68,
98 i32_popcnt = 0x69,
99 i32_add = 0x6A,
100 i32_sub = 0x6B,
101 i32_mul = 0x6C,
102 i32_div_s = 0x6D,
103 i32_div_u = 0x6E,
104 i32_rem_s = 0x6F,
105 i32_rem_u = 0x70,
106 i32_and = 0x71,
107 i32_or = 0x72,
108 i32_xor = 0x73,
109 i32_shl = 0x74,
110 i32_shr_s = 0x75,
111 i32_shr_u = 0x76,
112 i32_rotl = 0x77,
113 i32_rotr = 0x78,
114 i64_clz = 0x79,
115 i64_ctz = 0x7A,
116 i64_popcnt = 0x7B,
117 i64_add = 0x7C,
118 i64_sub = 0x7D,
119 i64_mul = 0x7E,
120 i64_div_s = 0x7F,
121 i64_div_u = 0x80,
122 i64_rem_s = 0x81,
123 i64_rem_u = 0x82,
124 i64_and = 0x83,
125 i64_or = 0x84,
126 i64_xor = 0x85,
127 i64_shl = 0x86,
128 i64_shr_s = 0x87,
129 i64_shr_u = 0x88,
130 i64_rotl = 0x89,
131 i64_rotr = 0x8A,
132 f32_abs = 0x8B,
133 f32_neg = 0x8C,
134 f32_ceil = 0x8D,
135 f32_floor = 0x8E,
136 f32_trunc = 0x8F,
137 f32_nearest = 0x90,
138 f32_sqrt = 0x91,
139 f32_add = 0x92,
140 f32_sub = 0x93,
141 f32_mul = 0x94,
142 f32_div = 0x95,
143 f32_min = 0x96,
144 f32_max = 0x97,
145 f32_copysign = 0x98,
146 f64_abs = 0x99,
147 f64_neg = 0x9A,
148 f64_ceil = 0x9B,
149 f64_floor = 0x9C,
150 f64_trunc = 0x9D,
151 f64_nearest = 0x9E,
152 f64_sqrt = 0x9F,
153 f64_add = 0xA0,
154 f64_sub = 0xA1,
155 f64_mul = 0xA2,
156 f64_div = 0xA3,
157 f64_min = 0xA4,
158 f64_max = 0xA5,
159 f64_copysign = 0xA6,
160 i32_wrap_i64 = 0xA7,
161 i32_trunc_f32_s = 0xA8,
162 i32_trunc_f32_u = 0xA9,
163 i32_trunc_f64_s = 0xB0,
164 i32_trunc_f64_u = 0xB1,
165 f32_convert_i32_s = 0xB2,
166 f32_convert_i32_u = 0xB3,
167 f32_convert_i64_s = 0xB4,
168 f32_convert_i64_u = 0xB5,
169 f32_demote_f64 = 0xB6,
170 f64_convert_i32_s = 0xB7,
171 f64_convert_i32_u = 0xB8,
172 f64_convert_i64_s = 0xB9,
173 f64_convert_i64_u = 0xBA,
174 f64_promote_f32 = 0xBB,
175 i32_reinterpret_f32 = 0xBC,
176 i64_reinterpret_f64 = 0xBD,
177 f32_reinterpret_i32 = 0xBE,
178 i64_reinterpret_i64 = 0xBF,
179 i32_extend8_s = 0xC0,
180 i32_extend16_s = 0xC1,
181 i64_extend8_s = 0xC2,
182 i64_extend16_s = 0xC3,
183 i64_extend32_s = 0xC4,
184 _,
185};
186
187/// Returns the integer value of an `Opcode`. Used by the Zig compiler
188/// to write instructions to the wasm binary file
189pub fn opcode(op: Opcode) u8 {
190 return @enumToInt(op);
191}
192
193test "Wasm - opcodes" {
194 // Ensure our opcodes values remain intact as certain values are skipped due to them being reserved
195 const i32_const = opcode(.i32_const);
196 const end = opcode(.end);
197 const drop = opcode(.drop);
198 const local_get = opcode(.local_get);
199 const i64_extend32_s = opcode(.i64_extend32_s);
200
201 testing.expectEqual(@as(u16, 0x41), i32_const);
202 testing.expectEqual(@as(u16, 0x0B), end);
203 testing.expectEqual(@as(u16, 0x1A), drop);
204 testing.expectEqual(@as(u16, 0x20), local_get);
205 testing.expectEqual(@as(u16, 0xC4), i64_extend32_s);
206}
207
208/// Enum representing all Wasm value types as per spec:
209/// https://webassembly.github.io/spec/core/binary/types.html
210pub const Valtype = enum(u8) {
211 i32 = 0x7F,
212 i64 = 0x7E,
213 f32 = 0x7D,
214 f64 = 0x7C,
215};
216
217/// Returns the integer value of a `Valtype`
218pub fn valtype(value: Valtype) u8 {
219 return @enumToInt(value);
220}
221
222test "Wasm - valtypes" {
223 const _i32 = valtype(.i32);
224 const _i64 = valtype(.i64);
225 const _f32 = valtype(.f32);
226 const _f64 = valtype(.f64);
227
228 testing.expectEqual(@as(u8, 0x7F), _i32);
229 testing.expectEqual(@as(u8, 0x7E), _i64);
230 testing.expectEqual(@as(u8, 0x7D), _f32);
231 testing.expectEqual(@as(u8, 0x7C), _f64);
232}
233
234/// Wasm module sections as per spec:
235/// https://webassembly.github.io/spec/core/binary/modules.html
236pub const Section = enum(u8) {
237 custom,
238 type,
239 import,
240 function,
241 table,
242 memory,
243 global,
244 @"export",
245 start,
246 element,
247 code,
248 data,
249};
250
251/// Returns the integer value of a given `Section`
252pub fn section(val: Section) u8 {
253 return @enumToInt(val);
254}
255
256// types
257pub const element_type: u8 = 0x70;
258pub const function_type: u8 = 0x60;
259pub const result_type: u8 = 0x40;
260
261/// Represents a block which will not return a value
262pub const block_empty: u8 = 0x40;
263
264// binary constants
265pub const magic = [_]u8{ 0x00, 0x61, 0x73, 0x6D }; // \0asm
266pub const version = [_]u8{ 0x01, 0x00, 0x00, 0x00 }; // version 1
lib/std/zig.zig+1
...@@ -140,6 +140,7 @@ pub fn binNameAlloc(allocator: *std.mem.Allocator, options: BinNameOptions) erro...@@ -140,6 +140,7 @@ pub fn binNameAlloc(allocator: *std.mem.Allocator, options: BinNameOptions) erro
140 .Lib => return std.fmt.allocPrint(allocator, "{s}.wasm", .{root_name}),140 .Lib => return std.fmt.allocPrint(allocator, "{s}.wasm", .{root_name}),
141 },141 },
142 .c => return std.fmt.allocPrint(allocator, "{s}.c", .{root_name}),142 .c => return std.fmt.allocPrint(allocator, "{s}.c", .{root_name}),
143 .spirv => return std.fmt.allocPrint(allocator, "{s}.spv", .{root_name}),
143 .hex => return std.fmt.allocPrint(allocator, "{s}.ihex", .{root_name}),144 .hex => return std.fmt.allocPrint(allocator, "{s}.ihex", .{root_name}),
144 .raw => return std.fmt.allocPrint(allocator, "{s}.bin", .{root_name}),145 .raw => return std.fmt.allocPrint(allocator, "{s}.bin", .{root_name}),
145 }146 }
lib/std/zig/cross_target.zig+6
...@@ -130,6 +130,9 @@ pub const CrossTarget = struct {...@@ -130,6 +130,9 @@ pub const CrossTarget = struct {
130 .wasi,130 .wasi,
131 .emscripten,131 .emscripten,
132 .uefi,132 .uefi,
133 .opencl,
134 .glsl450,
135 .vulkan,
133 .other,136 .other,
134 => {137 => {
135 self.os_version_min = .{ .none = {} };138 self.os_version_min = .{ .none = {} };
...@@ -730,6 +733,9 @@ pub const CrossTarget = struct {...@@ -730,6 +733,9 @@ pub const CrossTarget = struct {
730 .wasi,733 .wasi,
731 .emscripten,734 .emscripten,
732 .uefi,735 .uefi,
736 .opencl,
737 .glsl450,
738 .vulkan,
733 .other,739 .other,
734 => return error.InvalidOperatingSystemVersion,740 => return error.InvalidOperatingSystemVersion,
735741
lib/std/zig/parser_test.zig+18-6
...@@ -3,6 +3,18 @@...@@ -3,6 +3,18 @@
3// This file is part of [zig](https://ziglang.org/), which is MIT licensed.3// This file is part of [zig](https://ziglang.org/), which is MIT licensed.
4// The MIT license requires this copyright notice to be included in all copies4// The MIT license requires this copyright notice to be included in all copies
5// and substantial portions of the software.5// and substantial portions of the software.
6
7// TODO Remove this after zig 0.8.0 is released.
8test "zig fmt: rewrite inline functions as callconv(.Inline)" {
9 try testTransform(
10 \\inline fn foo() void {}
11 \\
12 ,
13 \\fn foo() callconv(.Inline) void {}
14 \\
15 );
16}
17
6test "zig fmt: simple top level comptime block" {18test "zig fmt: simple top level comptime block" {
7 try testCanonical(19 try testCanonical(
8 \\// line comment20 \\// line comment
...@@ -2593,28 +2605,28 @@ test "zig fmt: call expression" {...@@ -2593,28 +2605,28 @@ test "zig fmt: call expression" {
2593// \\2605// \\
2594// );2606// );
2595//}2607//}
25962608//
2597//test "zig fmt: functions" {2609//test "zig fmt: functions" {
2598// try testCanonical(2610// try testCanonical(
2599// \\extern fn puts(s: *const u8) c_int;2611// \\extern fn puts(s: *const u8) c_int;
2600// \\extern "c" fn puts(s: *const u8) c_int;2612// \\extern "c" fn puts(s: *const u8) c_int;
2601// \\export fn puts(s: *const u8) c_int;2613// \\export fn puts(s: *const u8) c_int;
2602// \\inline fn puts(s: *const u8) c_int;2614// \\fn puts(s: *const u8) callconv(.Inline) c_int;
2603// \\noinline fn puts(s: *const u8) c_int;2615// \\noinline fn puts(s: *const u8) c_int;
2604// \\pub extern fn puts(s: *const u8) c_int;2616// \\pub extern fn puts(s: *const u8) c_int;
2605// \\pub extern "c" fn puts(s: *const u8) c_int;2617// \\pub extern "c" fn puts(s: *const u8) c_int;
2606// \\pub export fn puts(s: *const u8) c_int;2618// \\pub export fn puts(s: *const u8) c_int;
2607// \\pub inline fn puts(s: *const u8) c_int;2619// \\pub fn puts(s: *const u8) callconv(.Inline) c_int;
2608// \\pub noinline fn puts(s: *const u8) c_int;2620// \\pub noinline fn puts(s: *const u8) c_int;
2609// \\pub extern fn puts(s: *const u8) align(2 + 2) c_int;2621// \\pub extern fn puts(s: *const u8) align(2 + 2) c_int;
2610// \\pub extern "c" fn puts(s: *const u8) align(2 + 2) c_int;2622// \\pub extern "c" fn puts(s: *const u8) align(2 + 2) c_int;
2611// \\pub export fn puts(s: *const u8) align(2 + 2) c_int;2623// \\pub export fn puts(s: *const u8) align(2 + 2) c_int;
2612// \\pub inline fn puts(s: *const u8) align(2 + 2) c_int;2624// \\pub fn puts(s: *const u8) align(2 + 2) callconv(.Inline) c_int;
2613// \\pub noinline fn puts(s: *const u8) align(2 + 2) c_int;2625// \\pub noinline fn puts(s: *const u8) align(2 + 2) c_int;
2614// \\2626// \\
2615// );2627// );
2616//}2628//}
26172629//
2618//test "zig fmt: multiline string" {2630//test "zig fmt: multiline string" {
2619// try testCanonical(2631// try testCanonical(
2620// \\test "" {2632// \\test "" {
...@@ -4278,7 +4290,7 @@ fn testCanonical(source: []const u8) !void {...@@ -4278,7 +4290,7 @@ fn testCanonical(source: []const u8) !void {
4278 return testTransform(source, source);4290 return testTransform(source, source);
4279}4291}
42804292
4281const Error = @TagType(std.zig.ast.Error);4293const Error = std.meta.Tag(std.zig.ast.Error);
42824294
4283fn testError(source: []const u8, expected_errors: []const Error) !void {4295fn testError(source: []const u8, expected_errors: []const Error) !void {
4284 var tree = try std.zig.parse(std.testing.allocator, source);4296 var tree = try std.zig.parse(std.testing.allocator, source);
lib/std/zig/system/x86.zig+2-2
...@@ -19,11 +19,11 @@ fn setFeature(cpu: *Target.Cpu, feature: Target.x86.Feature, enabled: bool) void...@@ -19,11 +19,11 @@ fn setFeature(cpu: *Target.Cpu, feature: Target.x86.Feature, enabled: bool) void
19 if (enabled) cpu.features.addFeature(idx) else cpu.features.removeFeature(idx);19 if (enabled) cpu.features.addFeature(idx) else cpu.features.removeFeature(idx);
20}20}
2121
22inline fn bit(input: u32, offset: u5) bool {22fn bit(input: u32, offset: u5) callconv(.Inline) bool {
23 return (input >> offset) & 1 != 0;23 return (input >> offset) & 1 != 0;
24}24}
2525
26inline fn hasMask(input: u32, mask: u32) bool {26fn hasMask(input: u32, mask: u32) callconv(.Inline) bool {
27 return (input & mask) == mask;27 return (input & mask) == mask;
28}28}
2929
src/DepTokenizer.zig+2-2
...@@ -266,11 +266,11 @@ pub fn next(self: *Tokenizer) ?Token {...@@ -266,11 +266,11 @@ pub fn next(self: *Tokenizer) ?Token {
266 unreachable;266 unreachable;
267}267}
268268
269fn errorPosition(comptime id: @TagType(Token), index: usize, bytes: []const u8) Token {269fn errorPosition(comptime id: std.meta.Tag(Token), index: usize, bytes: []const u8) Token {
270 return @unionInit(Token, @tagName(id), .{ .index = index, .bytes = bytes });270 return @unionInit(Token, @tagName(id), .{ .index = index, .bytes = bytes });
271}271}
272272
273fn errorIllegalChar(comptime id: @TagType(Token), index: usize, char: u8) Token {273fn errorIllegalChar(comptime id: std.meta.Tag(Token), index: usize, char: u8) Token {
274 return @unionInit(Token, @tagName(id), .{ .index = index, .char = char });274 return @unionInit(Token, @tagName(id), .{ .index = index, .char = char });
275}275}
276276
src/Module.zig+60-11
...@@ -375,6 +375,10 @@ pub const Scope = struct {...@@ -375,6 +375,10 @@ pub const Scope = struct {
375 }375 }
376 }376 }
377377
378 pub fn isComptime(self: *Scope) bool {
379 return self.getGenZIR().force_comptime;
380 }
381
378 pub fn ownerDecl(self: *Scope) ?*Decl {382 pub fn ownerDecl(self: *Scope) ?*Decl {
379 return switch (self.tag) {383 return switch (self.tag) {
380 .block => self.cast(Block).?.owner_decl,384 .block => self.cast(Block).?.owner_decl,
...@@ -669,14 +673,36 @@ pub const Scope = struct {...@@ -669,14 +673,36 @@ pub const Scope = struct {
669 };673 };
670674
671 pub const Merges = struct {675 pub const Merges = struct {
672 results: ArrayListUnmanaged(*Inst),
673 block_inst: *Inst.Block,676 block_inst: *Inst.Block,
677 /// Separate array list from break_inst_list so that it can be passed directly
678 /// to resolvePeerTypes.
679 results: ArrayListUnmanaged(*Inst),
680 /// Keeps track of the break instructions so that the operand can be replaced
681 /// if we need to add type coercion at the end of block analysis.
682 /// Same indexes, capacity, length as `results`.
683 br_list: ArrayListUnmanaged(*Inst.Br),
674 };684 };
675685
676 /// For debugging purposes.686 /// For debugging purposes.
677 pub fn dump(self: *Block, mod: Module) void {687 pub fn dump(self: *Block, mod: Module) void {
678 zir.dumpBlock(mod, self);688 zir.dumpBlock(mod, self);
679 }689 }
690
691 pub fn makeSubBlock(parent: *Block) Block {
692 return .{
693 .parent = parent,
694 .inst_table = parent.inst_table,
695 .func = parent.func,
696 .owner_decl = parent.owner_decl,
697 .src_decl = parent.src_decl,
698 .instructions = .{},
699 .arena = parent.arena,
700 .label = null,
701 .inlining = parent.inlining,
702 .is_comptime = parent.is_comptime,
703 .branch_quota = parent.branch_quota,
704 };
705 }
680 };706 };
681707
682 /// This is a temporary structure, references to it are valid only708 /// This is a temporary structure, references to it are valid only
...@@ -688,13 +714,32 @@ pub const Scope = struct {...@@ -688,13 +714,32 @@ pub const Scope = struct {
688 parent: *Scope,714 parent: *Scope,
689 decl: *Decl,715 decl: *Decl,
690 arena: *Allocator,716 arena: *Allocator,
717 force_comptime: bool,
691 /// The first N instructions in a function body ZIR are arg instructions.718 /// The first N instructions in a function body ZIR are arg instructions.
692 instructions: std.ArrayListUnmanaged(*zir.Inst) = .{},719 instructions: std.ArrayListUnmanaged(*zir.Inst) = .{},
693 label: ?Label = null,720 label: ?Label = null,
694 break_block: ?*zir.Inst.Block = null,721 break_block: ?*zir.Inst.Block = null,
695 continue_block: ?*zir.Inst.Block = null,722 continue_block: ?*zir.Inst.Block = null,
696 /// only valid if label != null or (continue_block and break_block) != null723 /// Only valid when setBlockResultLoc is called.
697 break_result_loc: astgen.ResultLoc = undefined,724 break_result_loc: astgen.ResultLoc = undefined,
725 /// When a block has a pointer result location, here it is.
726 rl_ptr: ?*zir.Inst = null,
727 /// Keeps track of how many branches of a block did not actually
728 /// consume the result location. astgen uses this to figure out
729 /// whether to rely on break instructions or writing to the result
730 /// pointer for the result instruction.
731 rvalue_rl_count: usize = 0,
732 /// Keeps track of how many break instructions there are. When astgen is finished
733 /// with a block, it can check this against rvalue_rl_count to find out whether
734 /// the break instructions should be downgraded to break_void.
735 break_count: usize = 0,
736 /// Tracks `break :foo bar` instructions so they can possibly be elided later if
737 /// the labeled block ends up not needing a result location pointer.
738 labeled_breaks: std.ArrayListUnmanaged(*zir.Inst.Break) = .{},
739 /// Tracks `store_to_block_ptr` instructions that correspond to break instructions
740 /// so they can possibly be elided later if the labeled block ends up not needing
741 /// a result location pointer.
742 labeled_store_to_block_ptr_list: std.ArrayListUnmanaged(*zir.Inst.BinOp) = .{},
698743
699 pub const Label = struct {744 pub const Label = struct {
700 token: ast.TokenIndex,745 token: ast.TokenIndex,
...@@ -1000,6 +1045,7 @@ fn astgenAndSemaDecl(mod: *Module, decl: *Decl) !bool {...@@ -1000,6 +1045,7 @@ fn astgenAndSemaDecl(mod: *Module, decl: *Decl) !bool {
1000 .decl = decl,1045 .decl = decl,
1001 .arena = &analysis_arena.allocator,1046 .arena = &analysis_arena.allocator,
1002 .parent = &decl.container.base,1047 .parent = &decl.container.base,
1048 .force_comptime = true,
1003 };1049 };
1004 defer gen_scope.instructions.deinit(self.gpa);1050 defer gen_scope.instructions.deinit(self.gpa);
10051051
...@@ -2121,6 +2167,7 @@ fn allocateNewDecl(...@@ -2121,6 +2167,7 @@ fn allocateNewDecl(
2121 .macho => .{ .macho = link.File.MachO.TextBlock.empty },2167 .macho => .{ .macho = link.File.MachO.TextBlock.empty },
2122 .c => .{ .c = link.File.C.DeclBlock.empty },2168 .c => .{ .c = link.File.C.DeclBlock.empty },
2123 .wasm => .{ .wasm = {} },2169 .wasm => .{ .wasm = {} },
2170 .spirv => .{ .spirv = {} },
2124 },2171 },
2125 .fn_link = switch (mod.comp.bin_file.tag) {2172 .fn_link = switch (mod.comp.bin_file.tag) {
2126 .coff => .{ .coff = {} },2173 .coff => .{ .coff = {} },
...@@ -2128,6 +2175,7 @@ fn allocateNewDecl(...@@ -2128,6 +2175,7 @@ fn allocateNewDecl(
2128 .macho => .{ .macho = link.File.MachO.SrcFn.empty },2175 .macho => .{ .macho = link.File.MachO.SrcFn.empty },
2129 .c => .{ .c = link.File.C.FnBlock.empty },2176 .c => .{ .c = link.File.C.FnBlock.empty },
2130 .wasm => .{ .wasm = null },2177 .wasm => .{ .wasm = null },
2178 .spirv => .{ .spirv = .{} },
2131 },2179 },
2132 .generation = 0,2180 .generation = 0,
2133 .is_pub = false,2181 .is_pub = false,
...@@ -2225,6 +2273,7 @@ pub fn analyzeExport(...@@ -2225,6 +2273,7 @@ pub fn analyzeExport(
2225 .macho => .{ .macho = link.File.MachO.Export{} },2273 .macho => .{ .macho = link.File.MachO.Export{} },
2226 .c => .{ .c = {} },2274 .c => .{ .c = {} },
2227 .wasm => .{ .wasm = {} },2275 .wasm => .{ .wasm = {} },
2276 .spirv => .{ .spirv = {} },
2228 },2277 },
2229 .owner_decl = owner_decl,2278 .owner_decl = owner_decl,
2230 .exported_decl = exported_decl,2279 .exported_decl = exported_decl,
...@@ -2366,7 +2415,7 @@ pub fn addBr(...@@ -2366,7 +2415,7 @@ pub fn addBr(
2366 src: usize,2415 src: usize,
2367 target_block: *Inst.Block,2416 target_block: *Inst.Block,
2368 operand: *Inst,2417 operand: *Inst,
2369) !*Inst {2418) !*Inst.Br {
2370 const inst = try scope_block.arena.create(Inst.Br);2419 const inst = try scope_block.arena.create(Inst.Br);
2371 inst.* = .{2420 inst.* = .{
2372 .base = .{2421 .base = .{
...@@ -2378,7 +2427,7 @@ pub fn addBr(...@@ -2378,7 +2427,7 @@ pub fn addBr(
2378 .block = target_block,2427 .block = target_block,
2379 };2428 };
2380 try scope_block.instructions.append(self.gpa, &inst.base);2429 try scope_block.instructions.append(self.gpa, &inst.base);
2381 return &inst.base;2430 return inst;
2382}2431}
23832432
2384pub fn addCondBr(2433pub fn addCondBr(
...@@ -2430,7 +2479,7 @@ pub fn addSwitchBr(...@@ -2430,7 +2479,7 @@ pub fn addSwitchBr(
2430 self: *Module,2479 self: *Module,
2431 block: *Scope.Block,2480 block: *Scope.Block,
2432 src: usize,2481 src: usize,
2433 target_ptr: *Inst,2482 target: *Inst,
2434 cases: []Inst.SwitchBr.Case,2483 cases: []Inst.SwitchBr.Case,
2435 else_body: ir.Body,2484 else_body: ir.Body,
2436) !*Inst {2485) !*Inst {
...@@ -2441,7 +2490,7 @@ pub fn addSwitchBr(...@@ -2441,7 +2490,7 @@ pub fn addSwitchBr(
2441 .ty = Type.initTag(.noreturn),2490 .ty = Type.initTag(.noreturn),
2442 .src = src,2491 .src = src,
2443 },2492 },
2444 .target_ptr = target_ptr,2493 .target = target,
2445 .cases = cases,2494 .cases = cases,
2446 .else_body = else_body,2495 .else_body = else_body,
2447 };2496 };
...@@ -3733,18 +3782,18 @@ pub fn addSafetyCheck(mod: *Module, parent_block: *Scope.Block, ok: *Inst, panic...@@ -3733,18 +3782,18 @@ pub fn addSafetyCheck(mod: *Module, parent_block: *Scope.Block, ok: *Inst, panic
3733 };3782 };
37343783
3735 const ok_body: ir.Body = .{3784 const ok_body: ir.Body = .{
3736 .instructions = try parent_block.arena.alloc(*Inst, 1), // Only need space for the brvoid.3785 .instructions = try parent_block.arena.alloc(*Inst, 1), // Only need space for the br_void.
3737 };3786 };
3738 const brvoid = try parent_block.arena.create(Inst.BrVoid);3787 const br_void = try parent_block.arena.create(Inst.BrVoid);
3739 brvoid.* = .{3788 br_void.* = .{
3740 .base = .{3789 .base = .{
3741 .tag = .brvoid,3790 .tag = .br_void,
3742 .ty = Type.initTag(.noreturn),3791 .ty = Type.initTag(.noreturn),
3743 .src = ok.src,3792 .src = ok.src,
3744 },3793 },
3745 .block = block_inst,3794 .block = block_inst,
3746 };3795 };
3747 ok_body.instructions[0] = &brvoid.base;3796 ok_body.instructions[0] = &br_void.base;
37483797
3749 var fail_block: Scope.Block = .{3798 var fail_block: Scope.Block = .{
3750 .parent = parent_block,3799 .parent = parent_block,
src/astgen.zig+815-442
...@@ -14,25 +14,45 @@ const InnerError = Module.InnerError;...@@ -14,25 +14,45 @@ const InnerError = Module.InnerError;
1414
15pub const ResultLoc = union(enum) {15pub const ResultLoc = union(enum) {
16 /// The expression is the right-hand side of assignment to `_`. Only the side-effects of the16 /// The expression is the right-hand side of assignment to `_`. Only the side-effects of the
17 /// expression should be generated.17 /// expression should be generated. The result instruction from the expression must
18 /// be ignored.
18 discard,19 discard,
19 /// The expression has an inferred type, and it will be evaluated as an rvalue.20 /// The expression has an inferred type, and it will be evaluated as an rvalue.
20 none,21 none,
21 /// The expression must generate a pointer rather than a value. For example, the left hand side22 /// The expression must generate a pointer rather than a value. For example, the left hand side
22 /// of an assignment uses this kind of result location.23 /// of an assignment uses this kind of result location.
23 ref,24 ref,
24 /// The expression will be type coerced into this type, but it will be evaluated as an rvalue.25 /// The expression will be coerced into this type, but it will be evaluated as an rvalue.
25 ty: *zir.Inst,26 ty: *zir.Inst,
26 /// The expression must store its result into this typed pointer.27 /// The expression must store its result into this typed pointer. The result instruction
28 /// from the expression must be ignored.
27 ptr: *zir.Inst,29 ptr: *zir.Inst,
28 /// The expression must store its result into this allocation, which has an inferred type.30 /// The expression must store its result into this allocation, which has an inferred type.
31 /// The result instruction from the expression must be ignored.
29 inferred_ptr: *zir.Inst.Tag.alloc_inferred.Type(),32 inferred_ptr: *zir.Inst.Tag.alloc_inferred.Type(),
30 /// The expression must store its result into this pointer, which is a typed pointer that33 /// The expression must store its result into this pointer, which is a typed pointer that
31 /// has been bitcasted to whatever the expression's type is.34 /// has been bitcasted to whatever the expression's type is.
35 /// The result instruction from the expression must be ignored.
32 bitcasted_ptr: *zir.Inst.UnOp,36 bitcasted_ptr: *zir.Inst.UnOp,
33 /// There is a pointer for the expression to store its result into, however, its type37 /// There is a pointer for the expression to store its result into, however, its type
34 /// is inferred based on peer type resolution for a `zir.Inst.Block`.38 /// is inferred based on peer type resolution for a `zir.Inst.Block`.
35 block_ptr: *zir.Inst.Block,39 /// The result instruction from the expression must be ignored.
40 block_ptr: *Module.Scope.GenZIR,
41
42 pub const Strategy = struct {
43 elide_store_to_block_ptr_instructions: bool,
44 tag: Tag,
45
46 pub const Tag = enum {
47 /// Both branches will use break_void; result location is used to communicate the
48 /// result instruction.
49 break_void,
50 /// Use break statements to pass the block result value, and call rvalue() at
51 /// the end depending on rl. Also elide the store_to_block_ptr instructions
52 /// depending on rl.
53 break_operand,
54 };
55 };
36};56};
3757
38pub fn typeExpr(mod: *Module, scope: *Scope, type_node: *ast.Node) InnerError!*zir.Inst {58pub fn typeExpr(mod: *Module, scope: *Scope, type_node: *ast.Node) InnerError!*zir.Inst {
...@@ -179,6 +199,9 @@ fn lvalExpr(mod: *Module, scope: *Scope, node: *ast.Node) InnerError!*zir.Inst {...@@ -179,6 +199,9 @@ fn lvalExpr(mod: *Module, scope: *Scope, node: *ast.Node) InnerError!*zir.Inst {
179}199}
180200
181/// Turn Zig AST into untyped ZIR istructions.201/// Turn Zig AST into untyped ZIR istructions.
202/// When `rl` is discard, ptr, inferred_ptr, bitcasted_ptr, or inferred_ptr, the
203/// result instruction can be used to inspect whether it is isNoReturn() but that is it,
204/// it must otherwise not be used.
182pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerError!*zir.Inst {205pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerError!*zir.Inst {
183 switch (node.tag) {206 switch (node.tag) {
184 .Root => unreachable, // Top-level declaration.207 .Root => unreachable, // Top-level declaration.
...@@ -197,20 +220,20 @@ pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerEr...@@ -197,20 +220,20 @@ pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerEr
197 .FieldInitializer => unreachable, // Handled explicitly.220 .FieldInitializer => unreachable, // Handled explicitly.
198 .ContainerField => unreachable, // Handled explicitly.221 .ContainerField => unreachable, // Handled explicitly.
199222
200 .Assign => return rlWrapVoid(mod, scope, rl, node, try assign(mod, scope, node.castTag(.Assign).?)),223 .Assign => return rvalueVoid(mod, scope, rl, node, try assign(mod, scope, node.castTag(.Assign).?)),
201 .AssignBitAnd => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitAnd).?, .bitand)),224 .AssignBitAnd => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitAnd).?, .bit_and)),
202 .AssignBitOr => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitOr).?, .bitor)),225 .AssignBitOr => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitOr).?, .bit_or)),
203 .AssignBitShiftLeft => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitShiftLeft).?, .shl)),226 .AssignBitShiftLeft => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitShiftLeft).?, .shl)),
204 .AssignBitShiftRight => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitShiftRight).?, .shr)),227 .AssignBitShiftRight => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitShiftRight).?, .shr)),
205 .AssignBitXor => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitXor).?, .xor)),228 .AssignBitXor => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignBitXor).?, .xor)),
206 .AssignDiv => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignDiv).?, .div)),229 .AssignDiv => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignDiv).?, .div)),
207 .AssignSub => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignSub).?, .sub)),230 .AssignSub => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignSub).?, .sub)),
208 .AssignSubWrap => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignSubWrap).?, .subwrap)),231 .AssignSubWrap => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignSubWrap).?, .subwrap)),
209 .AssignMod => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignMod).?, .mod_rem)),232 .AssignMod => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignMod).?, .mod_rem)),
210 .AssignAdd => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignAdd).?, .add)),233 .AssignAdd => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignAdd).?, .add)),
211 .AssignAddWrap => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignAddWrap).?, .addwrap)),234 .AssignAddWrap => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignAddWrap).?, .addwrap)),
212 .AssignMul => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignMul).?, .mul)),235 .AssignMul => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignMul).?, .mul)),
213 .AssignMulWrap => return rlWrapVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignMulWrap).?, .mulwrap)),236 .AssignMulWrap => return rvalueVoid(mod, scope, rl, node, try assignOp(mod, scope, node.castTag(.AssignMulWrap).?, .mulwrap)),
214237
215 .Add => return simpleBinOp(mod, scope, rl, node.castTag(.Add).?, .add),238 .Add => return simpleBinOp(mod, scope, rl, node.castTag(.Add).?, .add),
216 .AddWrap => return simpleBinOp(mod, scope, rl, node.castTag(.AddWrap).?, .addwrap),239 .AddWrap => return simpleBinOp(mod, scope, rl, node.castTag(.AddWrap).?, .addwrap),
...@@ -220,8 +243,8 @@ pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerEr...@@ -220,8 +243,8 @@ pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerEr
220 .MulWrap => return simpleBinOp(mod, scope, rl, node.castTag(.MulWrap).?, .mulwrap),243 .MulWrap => return simpleBinOp(mod, scope, rl, node.castTag(.MulWrap).?, .mulwrap),
221 .Div => return simpleBinOp(mod, scope, rl, node.castTag(.Div).?, .div),244 .Div => return simpleBinOp(mod, scope, rl, node.castTag(.Div).?, .div),
222 .Mod => return simpleBinOp(mod, scope, rl, node.castTag(.Mod).?, .mod_rem),245 .Mod => return simpleBinOp(mod, scope, rl, node.castTag(.Mod).?, .mod_rem),
223 .BitAnd => return simpleBinOp(mod, scope, rl, node.castTag(.BitAnd).?, .bitand),246 .BitAnd => return simpleBinOp(mod, scope, rl, node.castTag(.BitAnd).?, .bit_and),
224 .BitOr => return simpleBinOp(mod, scope, rl, node.castTag(.BitOr).?, .bitor),247 .BitOr => return simpleBinOp(mod, scope, rl, node.castTag(.BitOr).?, .bit_or),
225 .BitShiftLeft => return simpleBinOp(mod, scope, rl, node.castTag(.BitShiftLeft).?, .shl),248 .BitShiftLeft => return simpleBinOp(mod, scope, rl, node.castTag(.BitShiftLeft).?, .shl),
226 .BitShiftRight => return simpleBinOp(mod, scope, rl, node.castTag(.BitShiftRight).?, .shr),249 .BitShiftRight => return simpleBinOp(mod, scope, rl, node.castTag(.BitShiftRight).?, .shr),
227 .BitXor => return simpleBinOp(mod, scope, rl, node.castTag(.BitXor).?, .xor),250 .BitXor => return simpleBinOp(mod, scope, rl, node.castTag(.BitXor).?, .xor),
...@@ -239,15 +262,15 @@ pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerEr...@@ -239,15 +262,15 @@ pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerEr
239 .BoolAnd => return boolBinOp(mod, scope, rl, node.castTag(.BoolAnd).?),262 .BoolAnd => return boolBinOp(mod, scope, rl, node.castTag(.BoolAnd).?),
240 .BoolOr => return boolBinOp(mod, scope, rl, node.castTag(.BoolOr).?),263 .BoolOr => return boolBinOp(mod, scope, rl, node.castTag(.BoolOr).?),
241264
242 .BoolNot => return rlWrap(mod, scope, rl, try boolNot(mod, scope, node.castTag(.BoolNot).?)),265 .BoolNot => return rvalue(mod, scope, rl, try boolNot(mod, scope, node.castTag(.BoolNot).?)),
243 .BitNot => return rlWrap(mod, scope, rl, try bitNot(mod, scope, node.castTag(.BitNot).?)),266 .BitNot => return rvalue(mod, scope, rl, try bitNot(mod, scope, node.castTag(.BitNot).?)),
244 .Negation => return rlWrap(mod, scope, rl, try negation(mod, scope, node.castTag(.Negation).?, .sub)),267 .Negation => return rvalue(mod, scope, rl, try negation(mod, scope, node.castTag(.Negation).?, .sub)),
245 .NegationWrap => return rlWrap(mod, scope, rl, try negation(mod, scope, node.castTag(.NegationWrap).?, .subwrap)),268 .NegationWrap => return rvalue(mod, scope, rl, try negation(mod, scope, node.castTag(.NegationWrap).?, .subwrap)),
246269
247 .Identifier => return try identifier(mod, scope, rl, node.castTag(.Identifier).?),270 .Identifier => return try identifier(mod, scope, rl, node.castTag(.Identifier).?),
248 .Asm => return rlWrap(mod, scope, rl, try assembly(mod, scope, node.castTag(.Asm).?)),271 .Asm => return rvalue(mod, scope, rl, try assembly(mod, scope, node.castTag(.Asm).?)),
249 .StringLiteral => return rlWrap(mod, scope, rl, try stringLiteral(mod, scope, node.castTag(.StringLiteral).?)),272 .StringLiteral => return rvalue(mod, scope, rl, try stringLiteral(mod, scope, node.castTag(.StringLiteral).?)),
250 .IntegerLiteral => return rlWrap(mod, scope, rl, try integerLiteral(mod, scope, node.castTag(.IntegerLiteral).?)),273 .IntegerLiteral => return rvalue(mod, scope, rl, try integerLiteral(mod, scope, node.castTag(.IntegerLiteral).?)),
251 .BuiltinCall => return builtinCall(mod, scope, rl, node.castTag(.BuiltinCall).?),274 .BuiltinCall => return builtinCall(mod, scope, rl, node.castTag(.BuiltinCall).?),
252 .Call => return callExpr(mod, scope, rl, node.castTag(.Call).?),275 .Call => return callExpr(mod, scope, rl, node.castTag(.Call).?),
253 .Unreachable => return unreach(mod, scope, node.castTag(.Unreachable).?),276 .Unreachable => return unreach(mod, scope, node.castTag(.Unreachable).?),
...@@ -255,34 +278,34 @@ pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerEr...@@ -255,34 +278,34 @@ pub fn expr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerEr
255 .If => return ifExpr(mod, scope, rl, node.castTag(.If).?),278 .If => return ifExpr(mod, scope, rl, node.castTag(.If).?),
256 .While => return whileExpr(mod, scope, rl, node.castTag(.While).?),279 .While => return whileExpr(mod, scope, rl, node.castTag(.While).?),
257 .Period => return field(mod, scope, rl, node.castTag(.Period).?),280 .Period => return field(mod, scope, rl, node.castTag(.Period).?),
258 .Deref => return rlWrap(mod, scope, rl, try deref(mod, scope, node.castTag(.Deref).?)),281 .Deref => return rvalue(mod, scope, rl, try deref(mod, scope, node.castTag(.Deref).?)),
259 .AddressOf => return rlWrap(mod, scope, rl, try addressOf(mod, scope, node.castTag(.AddressOf).?)),282 .AddressOf => return rvalue(mod, scope, rl, try addressOf(mod, scope, node.castTag(.AddressOf).?)),
260 .FloatLiteral => return rlWrap(mod, scope, rl, try floatLiteral(mod, scope, node.castTag(.FloatLiteral).?)),283 .FloatLiteral => return rvalue(mod, scope, rl, try floatLiteral(mod, scope, node.castTag(.FloatLiteral).?)),
261 .UndefinedLiteral => return rlWrap(mod, scope, rl, try undefLiteral(mod, scope, node.castTag(.UndefinedLiteral).?)),284 .UndefinedLiteral => return rvalue(mod, scope, rl, try undefLiteral(mod, scope, node.castTag(.UndefinedLiteral).?)),
262 .BoolLiteral => return rlWrap(mod, scope, rl, try boolLiteral(mod, scope, node.castTag(.BoolLiteral).?)),285 .BoolLiteral => return rvalue(mod, scope, rl, try boolLiteral(mod, scope, node.castTag(.BoolLiteral).?)),
263 .NullLiteral => return rlWrap(mod, scope, rl, try nullLiteral(mod, scope, node.castTag(.NullLiteral).?)),286 .NullLiteral => return rvalue(mod, scope, rl, try nullLiteral(mod, scope, node.castTag(.NullLiteral).?)),
264 .OptionalType => return rlWrap(mod, scope, rl, try optionalType(mod, scope, node.castTag(.OptionalType).?)),287 .OptionalType => return rvalue(mod, scope, rl, try optionalType(mod, scope, node.castTag(.OptionalType).?)),
265 .UnwrapOptional => return unwrapOptional(mod, scope, rl, node.castTag(.UnwrapOptional).?),288 .UnwrapOptional => return unwrapOptional(mod, scope, rl, node.castTag(.UnwrapOptional).?),
266 .Block => return rlWrapVoid(mod, scope, rl, node, try blockExpr(mod, scope, node.castTag(.Block).?)),289 .Block => return rvalueVoid(mod, scope, rl, node, try blockExpr(mod, scope, node.castTag(.Block).?)),
267 .LabeledBlock => return labeledBlockExpr(mod, scope, rl, node.castTag(.LabeledBlock).?, .block),290 .LabeledBlock => return labeledBlockExpr(mod, scope, rl, node.castTag(.LabeledBlock).?, .block),
268 .Break => return rlWrap(mod, scope, rl, try breakExpr(mod, scope, node.castTag(.Break).?)),291 .Break => return rvalue(mod, scope, rl, try breakExpr(mod, scope, node.castTag(.Break).?)),
269 .Continue => return rlWrap(mod, scope, rl, try continueExpr(mod, scope, node.castTag(.Continue).?)),292 .Continue => return rvalue(mod, scope, rl, try continueExpr(mod, scope, node.castTag(.Continue).?)),
270 .PtrType => return rlWrap(mod, scope, rl, try ptrType(mod, scope, node.castTag(.PtrType).?)),293 .PtrType => return rvalue(mod, scope, rl, try ptrType(mod, scope, node.castTag(.PtrType).?)),
271 .GroupedExpression => return expr(mod, scope, rl, node.castTag(.GroupedExpression).?.expr),294 .GroupedExpression => return expr(mod, scope, rl, node.castTag(.GroupedExpression).?.expr),
272 .ArrayType => return rlWrap(mod, scope, rl, try arrayType(mod, scope, node.castTag(.ArrayType).?)),295 .ArrayType => return rvalue(mod, scope, rl, try arrayType(mod, scope, node.castTag(.ArrayType).?)),
273 .ArrayTypeSentinel => return rlWrap(mod, scope, rl, try arrayTypeSentinel(mod, scope, node.castTag(.ArrayTypeSentinel).?)),296 .ArrayTypeSentinel => return rvalue(mod, scope, rl, try arrayTypeSentinel(mod, scope, node.castTag(.ArrayTypeSentinel).?)),
274 .EnumLiteral => return rlWrap(mod, scope, rl, try enumLiteral(mod, scope, node.castTag(.EnumLiteral).?)),297 .EnumLiteral => return rvalue(mod, scope, rl, try enumLiteral(mod, scope, node.castTag(.EnumLiteral).?)),
275 .MultilineStringLiteral => return rlWrap(mod, scope, rl, try multilineStrLiteral(mod, scope, node.castTag(.MultilineStringLiteral).?)),298 .MultilineStringLiteral => return rvalue(mod, scope, rl, try multilineStrLiteral(mod, scope, node.castTag(.MultilineStringLiteral).?)),
276 .CharLiteral => return rlWrap(mod, scope, rl, try charLiteral(mod, scope, node.castTag(.CharLiteral).?)),299 .CharLiteral => return rvalue(mod, scope, rl, try charLiteral(mod, scope, node.castTag(.CharLiteral).?)),
277 .SliceType => return rlWrap(mod, scope, rl, try sliceType(mod, scope, node.castTag(.SliceType).?)),300 .SliceType => return rvalue(mod, scope, rl, try sliceType(mod, scope, node.castTag(.SliceType).?)),
278 .ErrorUnion => return rlWrap(mod, scope, rl, try typeInixOp(mod, scope, node.castTag(.ErrorUnion).?, .error_union_type)),301 .ErrorUnion => return rvalue(mod, scope, rl, try typeInixOp(mod, scope, node.castTag(.ErrorUnion).?, .error_union_type)),
279 .MergeErrorSets => return rlWrap(mod, scope, rl, try typeInixOp(mod, scope, node.castTag(.MergeErrorSets).?, .merge_error_sets)),302 .MergeErrorSets => return rvalue(mod, scope, rl, try typeInixOp(mod, scope, node.castTag(.MergeErrorSets).?, .merge_error_sets)),
280 .AnyFrameType => return rlWrap(mod, scope, rl, try anyFrameType(mod, scope, node.castTag(.AnyFrameType).?)),303 .AnyFrameType => return rvalue(mod, scope, rl, try anyFrameType(mod, scope, node.castTag(.AnyFrameType).?)),
281 .ErrorSetDecl => return rlWrap(mod, scope, rl, try errorSetDecl(mod, scope, node.castTag(.ErrorSetDecl).?)),304 .ErrorSetDecl => return rvalue(mod, scope, rl, try errorSetDecl(mod, scope, node.castTag(.ErrorSetDecl).?)),
282 .ErrorType => return rlWrap(mod, scope, rl, try errorType(mod, scope, node.castTag(.ErrorType).?)),305 .ErrorType => return rvalue(mod, scope, rl, try errorType(mod, scope, node.castTag(.ErrorType).?)),
283 .For => return forExpr(mod, scope, rl, node.castTag(.For).?),306 .For => return forExpr(mod, scope, rl, node.castTag(.For).?),
284 .ArrayAccess => return arrayAccess(mod, scope, rl, node.castTag(.ArrayAccess).?),307 .ArrayAccess => return arrayAccess(mod, scope, rl, node.castTag(.ArrayAccess).?),
285 .Slice => return rlWrap(mod, scope, rl, try sliceExpr(mod, scope, node.castTag(.Slice).?)),308 .Slice => return rvalue(mod, scope, rl, try sliceExpr(mod, scope, node.castTag(.Slice).?)),
286 .Catch => return catchExpr(mod, scope, rl, node.castTag(.Catch).?),309 .Catch => return catchExpr(mod, scope, rl, node.castTag(.Catch).?),
287 .Comptime => return comptimeKeyword(mod, scope, rl, node.castTag(.Comptime).?),310 .Comptime => return comptimeKeyword(mod, scope, rl, node.castTag(.Comptime).?),
288 .OrElse => return orelseExpr(mod, scope, rl, node.castTag(.OrElse).?),311 .OrElse => return orelseExpr(mod, scope, rl, node.castTag(.OrElse).?),
...@@ -311,11 +334,19 @@ fn comptimeKeyword(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.C...@@ -311,11 +334,19 @@ fn comptimeKeyword(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.C
311 return comptimeExpr(mod, scope, rl, node.expr);334 return comptimeExpr(mod, scope, rl, node.expr);
312}335}
313336
314pub fn comptimeExpr(mod: *Module, parent_scope: *Scope, rl: ResultLoc, node: *ast.Node) InnerError!*zir.Inst {337pub fn comptimeExpr(
315 const tree = parent_scope.tree();338 mod: *Module,
316 const src = tree.token_locs[node.firstToken()].start;339 parent_scope: *Scope,
340 rl: ResultLoc,
341 node: *ast.Node,
342) InnerError!*zir.Inst {
343 // If we are already in a comptime scope, no need to make another one.
344 if (parent_scope.isComptime()) {
345 return expr(mod, parent_scope, rl, node);
346 }
317347
318 // Optimization for labeled blocks: don't need to have 2 layers of blocks, we can reuse the existing one.348 // Optimization for labeled blocks: don't need to have 2 layers of blocks,
349 // we can reuse the existing one.
319 if (node.castTag(.LabeledBlock)) |block_node| {350 if (node.castTag(.LabeledBlock)) |block_node| {
320 return labeledBlockExpr(mod, parent_scope, rl, block_node, .block_comptime);351 return labeledBlockExpr(mod, parent_scope, rl, block_node, .block_comptime);
321 }352 }
...@@ -325,6 +356,7 @@ pub fn comptimeExpr(mod: *Module, parent_scope: *Scope, rl: ResultLoc, node: *as...@@ -325,6 +356,7 @@ pub fn comptimeExpr(mod: *Module, parent_scope: *Scope, rl: ResultLoc, node: *as
325 .parent = parent_scope,356 .parent = parent_scope,
326 .decl = parent_scope.ownerDecl().?,357 .decl = parent_scope.ownerDecl().?,
327 .arena = parent_scope.arena(),358 .arena = parent_scope.arena(),
359 .force_comptime = true,
328 .instructions = .{},360 .instructions = .{},
329 };361 };
330 defer block_scope.instructions.deinit(mod.gpa);362 defer block_scope.instructions.deinit(mod.gpa);
...@@ -333,6 +365,9 @@ pub fn comptimeExpr(mod: *Module, parent_scope: *Scope, rl: ResultLoc, node: *as...@@ -333,6 +365,9 @@ pub fn comptimeExpr(mod: *Module, parent_scope: *Scope, rl: ResultLoc, node: *as
333 // instruction is the block's result value.365 // instruction is the block's result value.
334 _ = try expr(mod, &block_scope.base, rl, node);366 _ = try expr(mod, &block_scope.base, rl, node);
335367
368 const tree = parent_scope.tree();
369 const src = tree.token_locs[node.firstToken()].start;
370
336 const block = try addZIRInstBlock(mod, parent_scope, src, .block_comptime_flat, .{371 const block = try addZIRInstBlock(mod, parent_scope, src, .block_comptime_flat, .{
337 .instructions = try block_scope.arena.dupe(*zir.Inst, block_scope.instructions.items),372 .instructions = try block_scope.arena.dupe(*zir.Inst, block_scope.instructions.items),
338 });373 });
...@@ -340,7 +375,11 @@ pub fn comptimeExpr(mod: *Module, parent_scope: *Scope, rl: ResultLoc, node: *as...@@ -340,7 +375,11 @@ pub fn comptimeExpr(mod: *Module, parent_scope: *Scope, rl: ResultLoc, node: *as
340 return &block.base;375 return &block.base;
341}376}
342377
343fn breakExpr(mod: *Module, parent_scope: *Scope, node: *ast.Node.ControlFlowExpression) InnerError!*zir.Inst {378fn breakExpr(
379 mod: *Module,
380 parent_scope: *Scope,
381 node: *ast.Node.ControlFlowExpression,
382) InnerError!*zir.Inst {
344 const tree = parent_scope.tree();383 const tree = parent_scope.tree();
345 const src = tree.token_locs[node.ltoken].start;384 const src = tree.token_locs[node.ltoken].start;
346385
...@@ -366,25 +405,31 @@ fn breakExpr(mod: *Module, parent_scope: *Scope, node: *ast.Node.ControlFlowExpr...@@ -366,25 +405,31 @@ fn breakExpr(mod: *Module, parent_scope: *Scope, node: *ast.Node.ControlFlowExpr
366 continue;405 continue;
367 };406 };
368407
369 if (node.getRHS()) |rhs| {408 const rhs = node.getRHS() orelse {
370 // Most result location types can be forwarded directly; however409 return addZirInstTag(mod, parent_scope, src, .break_void, .{
371 // if we need to write to a pointer which has an inferred type,
372 // proper type inference requires peer type resolution on the block's
373 // break operand expressions.
374 const branch_rl: ResultLoc = switch (gen_zir.break_result_loc) {
375 .discard, .none, .ty, .ptr, .ref => gen_zir.break_result_loc,
376 .inferred_ptr, .bitcasted_ptr, .block_ptr => .{ .block_ptr = block_inst },
377 };
378 const operand = try expr(mod, parent_scope, branch_rl, rhs);
379 return try addZIRInst(mod, parent_scope, src, zir.Inst.Break, .{
380 .block = block_inst,
381 .operand = operand,
382 }, .{});
383 } else {
384 return try addZIRInst(mod, parent_scope, src, zir.Inst.BreakVoid, .{
385 .block = block_inst,410 .block = block_inst,
386 }, .{});411 });
412 };
413 gen_zir.break_count += 1;
414 const prev_rvalue_rl_count = gen_zir.rvalue_rl_count;
415 const operand = try expr(mod, parent_scope, gen_zir.break_result_loc, rhs);
416 const have_store_to_block = gen_zir.rvalue_rl_count != prev_rvalue_rl_count;
417 const br = try addZirInstTag(mod, parent_scope, src, .@"break", .{
418 .block = block_inst,
419 .operand = operand,
420 });
421 if (gen_zir.break_result_loc == .block_ptr) {
422 try gen_zir.labeled_breaks.append(mod.gpa, br.castTag(.@"break").?);
423
424 if (have_store_to_block) {
425 const inst_list = parent_scope.getGenZIR().instructions.items;
426 const last_inst = inst_list[inst_list.len - 2];
427 const store_inst = last_inst.castTag(.store_to_block_ptr).?;
428 assert(store_inst.positionals.lhs == gen_zir.rl_ptr.?);
429 try gen_zir.labeled_store_to_block_ptr_list.append(mod.gpa, store_inst);
430 }
387 }431 }
432 return br;
388 },433 },
389 .local_val => scope = scope.cast(Scope.LocalVal).?.parent,434 .local_val => scope = scope.cast(Scope.LocalVal).?.parent,
390 .local_ptr => scope = scope.cast(Scope.LocalPtr).?.parent,435 .local_ptr => scope = scope.cast(Scope.LocalPtr).?.parent,
...@@ -424,9 +469,9 @@ fn continueExpr(mod: *Module, parent_scope: *Scope, node: *ast.Node.ControlFlowE...@@ -424,9 +469,9 @@ fn continueExpr(mod: *Module, parent_scope: *Scope, node: *ast.Node.ControlFlowE
424 continue;469 continue;
425 }470 }
426471
427 return addZIRInst(mod, parent_scope, src, zir.Inst.BreakVoid, .{472 return addZirInstTag(mod, parent_scope, src, .break_void, .{
428 .block = continue_block,473 .block = continue_block,
429 }, .{});474 });
430 },475 },
431 .local_val => scope = scope.cast(Scope.LocalVal).?.parent,476 .local_val => scope = scope.cast(Scope.LocalVal).?.parent,
432 .local_ptr => scope = scope.cast(Scope.LocalPtr).?.parent,477 .local_ptr => scope = scope.cast(Scope.LocalPtr).?.parent,
...@@ -526,28 +571,65 @@ fn labeledBlockExpr(...@@ -526,28 +571,65 @@ fn labeledBlockExpr(
526 .parent = parent_scope,571 .parent = parent_scope,
527 .decl = parent_scope.ownerDecl().?,572 .decl = parent_scope.ownerDecl().?,
528 .arena = gen_zir.arena,573 .arena = gen_zir.arena,
574 .force_comptime = parent_scope.isComptime(),
529 .instructions = .{},575 .instructions = .{},
530 .break_result_loc = rl,
531 // TODO @as here is working around a stage1 miscompilation bug :(576 // TODO @as here is working around a stage1 miscompilation bug :(
532 .label = @as(?Scope.GenZIR.Label, Scope.GenZIR.Label{577 .label = @as(?Scope.GenZIR.Label, Scope.GenZIR.Label{
533 .token = block_node.label,578 .token = block_node.label,
534 .block_inst = block_inst,579 .block_inst = block_inst,
535 }),580 }),
536 };581 };
582 setBlockResultLoc(&block_scope, rl);
537 defer block_scope.instructions.deinit(mod.gpa);583 defer block_scope.instructions.deinit(mod.gpa);
584 defer block_scope.labeled_breaks.deinit(mod.gpa);
585 defer block_scope.labeled_store_to_block_ptr_list.deinit(mod.gpa);
538586
539 try blockExprStmts(mod, &block_scope.base, &block_node.base, block_node.statements());587 try blockExprStmts(mod, &block_scope.base, &block_node.base, block_node.statements());
588
540 if (!block_scope.label.?.used) {589 if (!block_scope.label.?.used) {
541 return mod.fail(parent_scope, tree.token_locs[block_node.label].start, "unused block label", .{});590 return mod.fail(parent_scope, tree.token_locs[block_node.label].start, "unused block label", .{});
542 }591 }
543592
544 block_inst.positionals.body.instructions = try block_scope.arena.dupe(*zir.Inst, block_scope.instructions.items);
545 try gen_zir.instructions.append(mod.gpa, &block_inst.base);593 try gen_zir.instructions.append(mod.gpa, &block_inst.base);
546594
547 return &block_inst.base;595 const strat = rlStrategy(rl, &block_scope);
596 switch (strat.tag) {
597 .break_void => {
598 // The code took advantage of the result location as a pointer.
599 // Turn the break instructions into break_void instructions.
600 for (block_scope.labeled_breaks.items) |br| {
601 br.base.tag = .break_void;
602 }
603 // TODO technically not needed since we changed the tag to break_void but
604 // would be better still to elide the ones that are in this list.
605 try copyBodyNoEliding(&block_inst.positionals.body, block_scope);
606
607 return &block_inst.base;
608 },
609 .break_operand => {
610 // All break operands are values that did not use the result location pointer.
611 if (strat.elide_store_to_block_ptr_instructions) {
612 for (block_scope.labeled_store_to_block_ptr_list.items) |inst| {
613 inst.base.tag = .void_value;
614 }
615 // TODO technically not needed since we changed the tag to void_value but
616 // would be better still to elide the ones that are in this list.
617 }
618 try copyBodyNoEliding(&block_inst.positionals.body, block_scope);
619 switch (rl) {
620 .ref => return &block_inst.base,
621 else => return rvalue(mod, parent_scope, rl, &block_inst.base),
622 }
623 },
624 }
548}625}
549626
550fn blockExprStmts(mod: *Module, parent_scope: *Scope, node: *ast.Node, statements: []*ast.Node) !void {627fn blockExprStmts(
628 mod: *Module,
629 parent_scope: *Scope,
630 node: *ast.Node,
631 statements: []*ast.Node,
632) !void {
551 const tree = parent_scope.tree();633 const tree = parent_scope.tree();
552634
553 var block_arena = std.heap.ArenaAllocator.init(mod.gpa);635 var block_arena = std.heap.ArenaAllocator.init(mod.gpa);
...@@ -563,8 +645,8 @@ fn blockExprStmts(mod: *Module, parent_scope: *Scope, node: *ast.Node, statement...@@ -563,8 +645,8 @@ fn blockExprStmts(mod: *Module, parent_scope: *Scope, node: *ast.Node, statement
563 scope = try varDecl(mod, scope, var_decl_node, &block_arena.allocator);645 scope = try varDecl(mod, scope, var_decl_node, &block_arena.allocator);
564 },646 },
565 .Assign => try assign(mod, scope, statement.castTag(.Assign).?),647 .Assign => try assign(mod, scope, statement.castTag(.Assign).?),
566 .AssignBitAnd => try assignOp(mod, scope, statement.castTag(.AssignBitAnd).?, .bitand),648 .AssignBitAnd => try assignOp(mod, scope, statement.castTag(.AssignBitAnd).?, .bit_and),
567 .AssignBitOr => try assignOp(mod, scope, statement.castTag(.AssignBitOr).?, .bitor),649 .AssignBitOr => try assignOp(mod, scope, statement.castTag(.AssignBitOr).?, .bit_or),
568 .AssignBitShiftLeft => try assignOp(mod, scope, statement.castTag(.AssignBitShiftLeft).?, .shl),650 .AssignBitShiftLeft => try assignOp(mod, scope, statement.castTag(.AssignBitShiftLeft).?, .shl),
569 .AssignBitShiftRight => try assignOp(mod, scope, statement.castTag(.AssignBitShiftRight).?, .shr),651 .AssignBitShiftRight => try assignOp(mod, scope, statement.castTag(.AssignBitShiftRight).?, .shr),
570 .AssignBitXor => try assignOp(mod, scope, statement.castTag(.AssignBitXor).?, .xor),652 .AssignBitXor => try assignOp(mod, scope, statement.castTag(.AssignBitXor).?, .xor),
...@@ -644,6 +726,7 @@ fn varDecl(...@@ -644,6 +726,7 @@ fn varDecl(
644726
645 // Namespace vars shadowing detection727 // Namespace vars shadowing detection
646 if (mod.lookupDeclName(scope, ident_name)) |_| {728 if (mod.lookupDeclName(scope, ident_name)) |_| {
729 // TODO add note for other definition
647 return mod.fail(scope, name_src, "redefinition of '{s}'", .{ident_name});730 return mod.fail(scope, name_src, "redefinition of '{s}'", .{ident_name});
648 }731 }
649 const init_node = node.getInitNode() orelse732 const init_node = node.getInitNode() orelse
...@@ -651,36 +734,103 @@ fn varDecl(...@@ -651,36 +734,103 @@ fn varDecl(
651734
652 switch (tree.token_ids[node.mut_token]) {735 switch (tree.token_ids[node.mut_token]) {
653 .Keyword_const => {736 .Keyword_const => {
654 var resolve_inferred_alloc: ?*zir.Inst = null;
655 // Depending on the type of AST the initialization expression is, we may need an lvalue737 // Depending on the type of AST the initialization expression is, we may need an lvalue
656 // or an rvalue as a result location. If it is an rvalue, we can use the instruction as738 // or an rvalue as a result location. If it is an rvalue, we can use the instruction as
657 // the variable, no memory location needed.739 // the variable, no memory location needed.
658 const result_loc = if (nodeMayNeedMemoryLocation(init_node, scope)) r: {740 if (!nodeMayNeedMemoryLocation(init_node, scope)) {
659 if (node.getTypeNode()) |type_node| {741 const result_loc: ResultLoc = if (node.getTypeNode()) |type_node|
660 const type_inst = try typeExpr(mod, scope, type_node);742 .{ .ty = try typeExpr(mod, scope, type_node) }
661 const alloc = try addZIRUnOp(mod, scope, name_src, .alloc, type_inst);
662 break :r ResultLoc{ .ptr = alloc };
663 } else {
664 const alloc = try addZIRNoOpT(mod, scope, name_src, .alloc_inferred);
665 resolve_inferred_alloc = &alloc.base;
666 break :r ResultLoc{ .inferred_ptr = alloc };
667 }
668 } else r: {
669 if (node.getTypeNode()) |type_node|
670 break :r ResultLoc{ .ty = try typeExpr(mod, scope, type_node) }
671 else743 else
672 break :r .none;744 .none;
745 const init_inst = try expr(mod, scope, result_loc, init_node);
746 const sub_scope = try block_arena.create(Scope.LocalVal);
747 sub_scope.* = .{
748 .parent = scope,
749 .gen_zir = scope.getGenZIR(),
750 .name = ident_name,
751 .inst = init_inst,
752 };
753 return &sub_scope.base;
754 }
755
756 // Detect whether the initialization expression actually uses the
757 // result location pointer.
758 var init_scope: Scope.GenZIR = .{
759 .parent = scope,
760 .decl = scope.ownerDecl().?,
761 .arena = scope.arena(),
762 .force_comptime = scope.isComptime(),
763 .instructions = .{},
673 };764 };
674 const init_inst = try expr(mod, scope, result_loc, init_node);765 defer init_scope.instructions.deinit(mod.gpa);
766
767 var resolve_inferred_alloc: ?*zir.Inst = null;
768 var opt_type_inst: ?*zir.Inst = null;
769 if (node.getTypeNode()) |type_node| {
770 const type_inst = try typeExpr(mod, &init_scope.base, type_node);
771 opt_type_inst = type_inst;
772 init_scope.rl_ptr = try addZIRUnOp(mod, &init_scope.base, name_src, .alloc, type_inst);
773 } else {
774 const alloc = try addZIRNoOpT(mod, &init_scope.base, name_src, .alloc_inferred);
775 resolve_inferred_alloc = &alloc.base;
776 init_scope.rl_ptr = &alloc.base;
777 }
778 const init_result_loc: ResultLoc = .{ .block_ptr = &init_scope };
779 const init_inst = try expr(mod, &init_scope.base, init_result_loc, init_node);
780 const parent_zir = &scope.getGenZIR().instructions;
781 if (init_scope.rvalue_rl_count == 1) {
782 // Result location pointer not used. We don't need an alloc for this
783 // const local, and type inference becomes trivial.
784 // Move the init_scope instructions into the parent scope, eliding
785 // the alloc instruction and the store_to_block_ptr instruction.
786 const expected_len = parent_zir.items.len + init_scope.instructions.items.len - 2;
787 try parent_zir.ensureCapacity(mod.gpa, expected_len);
788 for (init_scope.instructions.items) |src_inst| {
789 if (src_inst == init_scope.rl_ptr.?) continue;
790 if (src_inst.castTag(.store_to_block_ptr)) |store| {
791 if (store.positionals.lhs == init_scope.rl_ptr.?) continue;
792 }
793 parent_zir.appendAssumeCapacity(src_inst);
794 }
795 assert(parent_zir.items.len == expected_len);
796 const casted_init = if (opt_type_inst) |type_inst|
797 try addZIRBinOp(mod, scope, type_inst.src, .as, type_inst, init_inst)
798 else
799 init_inst;
800
801 const sub_scope = try block_arena.create(Scope.LocalVal);
802 sub_scope.* = .{
803 .parent = scope,
804 .gen_zir = scope.getGenZIR(),
805 .name = ident_name,
806 .inst = casted_init,
807 };
808 return &sub_scope.base;
809 }
810 // The initialization expression took advantage of the result location
811 // of the const local. In this case we will create an alloc and a LocalPtr for it.
812 // Move the init_scope instructions into the parent scope, swapping
813 // store_to_block_ptr for store_to_inferred_ptr.
814 const expected_len = parent_zir.items.len + init_scope.instructions.items.len;
815 try parent_zir.ensureCapacity(mod.gpa, expected_len);
816 for (init_scope.instructions.items) |src_inst| {
817 if (src_inst.castTag(.store_to_block_ptr)) |store| {
818 if (store.positionals.lhs == init_scope.rl_ptr.?) {
819 src_inst.tag = .store_to_inferred_ptr;
820 }
821 }
822 parent_zir.appendAssumeCapacity(src_inst);
823 }
824 assert(parent_zir.items.len == expected_len);
675 if (resolve_inferred_alloc) |inst| {825 if (resolve_inferred_alloc) |inst| {
676 _ = try addZIRUnOp(mod, scope, name_src, .resolve_inferred_alloc, inst);826 _ = try addZIRUnOp(mod, scope, name_src, .resolve_inferred_alloc, inst);
677 }827 }
678 const sub_scope = try block_arena.create(Scope.LocalVal);828 const sub_scope = try block_arena.create(Scope.LocalPtr);
679 sub_scope.* = .{829 sub_scope.* = .{
680 .parent = scope,830 .parent = scope,
681 .gen_zir = scope.getGenZIR(),831 .gen_zir = scope.getGenZIR(),
682 .name = ident_name,832 .name = ident_name,
683 .inst = init_inst,833 .ptr = init_scope.rl_ptr.?,
684 };834 };
685 return &sub_scope.base;835 return &sub_scope.base;
686 },836 },
...@@ -751,14 +901,14 @@ fn boolNot(mod: *Module, scope: *Scope, node: *ast.Node.SimplePrefixOp) InnerErr...@@ -751,14 +901,14 @@ fn boolNot(mod: *Module, scope: *Scope, node: *ast.Node.SimplePrefixOp) InnerErr
751 .val = Value.initTag(.bool_type),901 .val = Value.initTag(.bool_type),
752 });902 });
753 const operand = try expr(mod, scope, .{ .ty = bool_type }, node.rhs);903 const operand = try expr(mod, scope, .{ .ty = bool_type }, node.rhs);
754 return addZIRUnOp(mod, scope, src, .boolnot, operand);904 return addZIRUnOp(mod, scope, src, .bool_not, operand);
755}905}
756906
757fn bitNot(mod: *Module, scope: *Scope, node: *ast.Node.SimplePrefixOp) InnerError!*zir.Inst {907fn bitNot(mod: *Module, scope: *Scope, node: *ast.Node.SimplePrefixOp) InnerError!*zir.Inst {
758 const tree = scope.tree();908 const tree = scope.tree();
759 const src = tree.token_locs[node.op_token].start;909 const src = tree.token_locs[node.op_token].start;
760 const operand = try expr(mod, scope, .none, node.rhs);910 const operand = try expr(mod, scope, .none, node.rhs);
761 return addZIRUnOp(mod, scope, src, .bitnot, operand);911 return addZIRUnOp(mod, scope, src, .bit_not, operand);
762}912}
763913
764fn negation(mod: *Module, scope: *Scope, node: *ast.Node.SimplePrefixOp, op_inst_tag: zir.Inst.Tag) InnerError!*zir.Inst {914fn negation(mod: *Module, scope: *Scope, node: *ast.Node.SimplePrefixOp, op_inst_tag: zir.Inst.Tag) InnerError!*zir.Inst {
...@@ -971,6 +1121,7 @@ fn containerDecl(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.Con...@@ -971,6 +1121,7 @@ fn containerDecl(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.Con
971 .parent = scope,1121 .parent = scope,
972 .decl = scope.ownerDecl().?,1122 .decl = scope.ownerDecl().?,
973 .arena = scope.arena(),1123 .arena = scope.arena(),
1124 .force_comptime = scope.isComptime(),
974 .instructions = .{},1125 .instructions = .{},
975 };1126 };
976 defer gen_scope.instructions.deinit(mod.gpa);1127 defer gen_scope.instructions.deinit(mod.gpa);
...@@ -1101,7 +1252,7 @@ fn containerDecl(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.Con...@@ -1101,7 +1252,7 @@ fn containerDecl(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.Con
1101 if (rl == .ref) {1252 if (rl == .ref) {
1102 return addZIRInst(mod, scope, src, zir.Inst.DeclRef, .{ .decl = decl }, .{});1253 return addZIRInst(mod, scope, src, zir.Inst.DeclRef, .{ .decl = decl }, .{});
1103 } else {1254 } else {
1104 return rlWrap(mod, scope, rl, try addZIRInst(mod, scope, src, zir.Inst.DeclVal, .{1255 return rvalue(mod, scope, rl, try addZIRInst(mod, scope, src, zir.Inst.DeclVal, .{
1105 .decl = decl,1256 .decl = decl,
1106 }, .{}));1257 }, .{}));
1107 }1258 }
...@@ -1207,24 +1358,15 @@ fn orelseCatchExpr(...@@ -1207,24 +1358,15 @@ fn orelseCatchExpr(
1207 .parent = scope,1358 .parent = scope,
1208 .decl = scope.ownerDecl().?,1359 .decl = scope.ownerDecl().?,
1209 .arena = scope.arena(),1360 .arena = scope.arena(),
1361 .force_comptime = scope.isComptime(),
1210 .instructions = .{},1362 .instructions = .{},
1211 };1363 };
1364 setBlockResultLoc(&block_scope, rl);
1212 defer block_scope.instructions.deinit(mod.gpa);1365 defer block_scope.instructions.deinit(mod.gpa);
12131366
1214 const block = try addZIRInstBlock(mod, scope, src, .block, .{
1215 .instructions = undefined, // populated below
1216 });
1217
1218 // Most result location types can be forwarded directly; however
1219 // if we need to write to a pointer which has an inferred type,
1220 // proper type inference requires peer type resolution on the if's
1221 // branches.
1222 const branch_rl: ResultLoc = switch (rl) {
1223 .discard, .none, .ty, .ptr, .ref => rl,
1224 .inferred_ptr, .bitcasted_ptr, .block_ptr => .{ .block_ptr = block },
1225 };
1226 // This could be a pointer or value depending on the `rl` parameter.1367 // This could be a pointer or value depending on the `rl` parameter.
1227 const operand = try expr(mod, &block_scope.base, branch_rl, lhs);1368 block_scope.break_count += 1;
1369 const operand = try expr(mod, &block_scope.base, block_scope.break_result_loc, lhs);
1228 const cond = try addZIRUnOp(mod, &block_scope.base, src, cond_op, operand);1370 const cond = try addZIRUnOp(mod, &block_scope.base, src, cond_op, operand);
12291371
1230 const condbr = try addZIRInstSpecial(mod, &block_scope.base, src, zir.Inst.CondBr, .{1372 const condbr = try addZIRInstSpecial(mod, &block_scope.base, src, zir.Inst.CondBr, .{
...@@ -1233,18 +1375,22 @@ fn orelseCatchExpr(...@@ -1233,18 +1375,22 @@ fn orelseCatchExpr(
1233 .else_body = undefined, // populated below1375 .else_body = undefined, // populated below
1234 }, .{});1376 }, .{});
12351377
1378 const block = try addZIRInstBlock(mod, scope, src, .block, .{
1379 .instructions = try block_scope.arena.dupe(*zir.Inst, block_scope.instructions.items),
1380 });
1381
1236 var then_scope: Scope.GenZIR = .{1382 var then_scope: Scope.GenZIR = .{
1237 .parent = &block_scope.base,1383 .parent = &block_scope.base,
1238 .decl = block_scope.decl,1384 .decl = block_scope.decl,
1239 .arena = block_scope.arena,1385 .arena = block_scope.arena,
1386 .force_comptime = block_scope.force_comptime,
1240 .instructions = .{},1387 .instructions = .{},
1241 };1388 };
1242 defer then_scope.instructions.deinit(mod.gpa);1389 defer then_scope.instructions.deinit(mod.gpa);
12431390
1244 var err_val_scope: Scope.LocalVal = undefined;1391 var err_val_scope: Scope.LocalVal = undefined;
1245 const then_sub_scope = blk: {1392 const then_sub_scope = blk: {
1246 const payload = payload_node orelse1393 const payload = payload_node orelse break :blk &then_scope.base;
1247 break :blk &then_scope.base;
12481394
1249 const err_name = tree.tokenSlice(payload.castTag(.Payload).?.error_symbol.firstToken());1395 const err_name = tree.tokenSlice(payload.castTag(.Payload).?.error_symbol.firstToken());
1250 if (mem.eql(u8, err_name, "_"))1396 if (mem.eql(u8, err_name, "_"))
...@@ -1259,32 +1405,113 @@ fn orelseCatchExpr(...@@ -1259,32 +1405,113 @@ fn orelseCatchExpr(
1259 break :blk &err_val_scope.base;1405 break :blk &err_val_scope.base;
1260 };1406 };
12611407
1262 _ = try addZIRInst(mod, &then_scope.base, src, zir.Inst.Break, .{1408 block_scope.break_count += 1;
1263 .block = block,1409 const then_result = try expr(mod, then_sub_scope, block_scope.break_result_loc, rhs);
1264 .operand = try expr(mod, then_sub_scope, branch_rl, rhs),
1265 }, .{});
12661410
1267 var else_scope: Scope.GenZIR = .{1411 var else_scope: Scope.GenZIR = .{
1268 .parent = &block_scope.base,1412 .parent = &block_scope.base,
1269 .decl = block_scope.decl,1413 .decl = block_scope.decl,
1270 .arena = block_scope.arena,1414 .arena = block_scope.arena,
1415 .force_comptime = block_scope.force_comptime,
1271 .instructions = .{},1416 .instructions = .{},
1272 };1417 };
1273 defer else_scope.instructions.deinit(mod.gpa);1418 defer else_scope.instructions.deinit(mod.gpa);
12741419
1275 // This could be a pointer or value depending on `unwrap_op`.1420 // This could be a pointer or value depending on `unwrap_op`.
1276 const unwrapped_payload = try addZIRUnOp(mod, &else_scope.base, src, unwrap_op, operand);1421 const unwrapped_payload = try addZIRUnOp(mod, &else_scope.base, src, unwrap_op, operand);
1277 _ = try addZIRInst(mod, &else_scope.base, src, zir.Inst.Break, .{
1278 .block = block,
1279 .operand = unwrapped_payload,
1280 }, .{});
12811422
1282 // All branches have been generated, add the instructions to the block.1423 return finishThenElseBlock(
1283 block.positionals.body.instructions = try block_scope.arena.dupe(*zir.Inst, block_scope.instructions.items);1424 mod,
1425 scope,
1426 rl,
1427 &block_scope,
1428 &then_scope,
1429 &else_scope,
1430 &condbr.positionals.then_body,
1431 &condbr.positionals.else_body,
1432 src,
1433 src,
1434 then_result,
1435 unwrapped_payload,
1436 block,
1437 block,
1438 );
1439}
12841440
1285 condbr.positionals.then_body = .{ .instructions = try then_scope.arena.dupe(*zir.Inst, then_scope.instructions.items) };1441fn finishThenElseBlock(
1286 condbr.positionals.else_body = .{ .instructions = try else_scope.arena.dupe(*zir.Inst, else_scope.instructions.items) };1442 mod: *Module,
1287 return &block.base;1443 parent_scope: *Scope,
1444 rl: ResultLoc,
1445 block_scope: *Scope.GenZIR,
1446 then_scope: *Scope.GenZIR,
1447 else_scope: *Scope.GenZIR,
1448 then_body: *zir.Body,
1449 else_body: *zir.Body,
1450 then_src: usize,
1451 else_src: usize,
1452 then_result: *zir.Inst,
1453 else_result: ?*zir.Inst,
1454 main_block: *zir.Inst.Block,
1455 then_break_block: *zir.Inst.Block,
1456) InnerError!*zir.Inst {
1457 // We now have enough information to decide whether the result instruction should
1458 // be communicated via result location pointer or break instructions.
1459 const strat = rlStrategy(rl, block_scope);
1460 switch (strat.tag) {
1461 .break_void => {
1462 if (!then_result.tag.isNoReturn()) {
1463 _ = try addZirInstTag(mod, &then_scope.base, then_src, .break_void, .{
1464 .block = then_break_block,
1465 });
1466 }
1467 if (else_result) |inst| {
1468 if (!inst.tag.isNoReturn()) {
1469 _ = try addZirInstTag(mod, &else_scope.base, else_src, .break_void, .{
1470 .block = main_block,
1471 });
1472 }
1473 } else {
1474 _ = try addZirInstTag(mod, &else_scope.base, else_src, .break_void, .{
1475 .block = main_block,
1476 });
1477 }
1478 assert(!strat.elide_store_to_block_ptr_instructions);
1479 try copyBodyNoEliding(then_body, then_scope.*);
1480 try copyBodyNoEliding(else_body, else_scope.*);
1481 return &main_block.base;
1482 },
1483 .break_operand => {
1484 if (!then_result.tag.isNoReturn()) {
1485 _ = try addZirInstTag(mod, &then_scope.base, then_src, .@"break", .{
1486 .block = then_break_block,
1487 .operand = then_result,
1488 });
1489 }
1490 if (else_result) |inst| {
1491 if (!inst.tag.isNoReturn()) {
1492 _ = try addZirInstTag(mod, &else_scope.base, else_src, .@"break", .{
1493 .block = main_block,
1494 .operand = inst,
1495 });
1496 }
1497 } else {
1498 _ = try addZirInstTag(mod, &else_scope.base, else_src, .break_void, .{
1499 .block = main_block,
1500 });
1501 }
1502 if (strat.elide_store_to_block_ptr_instructions) {
1503 try copyBodyWithElidedStoreBlockPtr(then_body, then_scope.*);
1504 try copyBodyWithElidedStoreBlockPtr(else_body, else_scope.*);
1505 } else {
1506 try copyBodyNoEliding(then_body, then_scope.*);
1507 try copyBodyNoEliding(else_body, else_scope.*);
1508 }
1509 switch (rl) {
1510 .ref => return &main_block.base,
1511 else => return rvalue(mod, parent_scope, rl, &main_block.base),
1512 }
1513 },
1514 }
1288}1515}
12891516
1290/// Return whether the identifier names of two tokens are equal. Resolves @""1517/// Return whether the identifier names of two tokens are equal. Resolves @""
...@@ -1308,7 +1535,7 @@ pub fn field(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.SimpleI...@@ -1308,7 +1535,7 @@ pub fn field(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.SimpleI
1308 .field_name = field_name,1535 .field_name = field_name,
1309 });1536 });
1310 }1537 }
1311 return rlWrap(mod, scope, rl, try addZirInstTag(mod, scope, src, .field_val, .{1538 return rvalue(mod, scope, rl, try addZirInstTag(mod, scope, src, .field_val, .{
1312 .object = try expr(mod, scope, .none, node.lhs),1539 .object = try expr(mod, scope, .none, node.lhs),
1313 .field_name = field_name,1540 .field_name = field_name,
1314 }));1541 }));
...@@ -1338,7 +1565,7 @@ fn namedField(...@@ -1338,7 +1565,7 @@ fn namedField(
1338 .field_name = try comptimeExpr(mod, scope, string_rl, params[1]),1565 .field_name = try comptimeExpr(mod, scope, string_rl, params[1]),
1339 });1566 });
1340 }1567 }
1341 return rlWrap(mod, scope, rl, try addZirInstTag(mod, scope, src, .field_val_named, .{1568 return rvalue(mod, scope, rl, try addZirInstTag(mod, scope, src, .field_val_named, .{
1342 .object = try expr(mod, scope, .none, params[0]),1569 .object = try expr(mod, scope, .none, params[0]),
1343 .field_name = try comptimeExpr(mod, scope, string_rl, params[1]),1570 .field_name = try comptimeExpr(mod, scope, string_rl, params[1]),
1344 }));1571 }));
...@@ -1359,7 +1586,7 @@ fn arrayAccess(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.Array...@@ -1359,7 +1586,7 @@ fn arrayAccess(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.Array
1359 .index = try expr(mod, scope, index_rl, node.index_expr),1586 .index = try expr(mod, scope, index_rl, node.index_expr),
1360 });1587 });
1361 }1588 }
1362 return rlWrap(mod, scope, rl, try addZirInstTag(mod, scope, src, .elem_val, .{1589 return rvalue(mod, scope, rl, try addZirInstTag(mod, scope, src, .elem_val, .{
1363 .array = try expr(mod, scope, .none, node.lhs),1590 .array = try expr(mod, scope, .none, node.lhs),
1364 .index = try expr(mod, scope, index_rl, node.index_expr),1591 .index = try expr(mod, scope, index_rl, node.index_expr),
1365 }));1592 }));
...@@ -1416,7 +1643,7 @@ fn simpleBinOp(...@@ -1416,7 +1643,7 @@ fn simpleBinOp(
1416 const rhs = try expr(mod, scope, .none, infix_node.rhs);1643 const rhs = try expr(mod, scope, .none, infix_node.rhs);
14171644
1418 const result = try addZIRBinOp(mod, scope, src, op_inst_tag, lhs, rhs);1645 const result = try addZIRBinOp(mod, scope, src, op_inst_tag, lhs, rhs);
1419 return rlWrap(mod, scope, rl, result);1646 return rvalue(mod, scope, rl, result);
1420}1647}
14211648
1422fn boolBinOp(1649fn boolBinOp(
...@@ -1436,6 +1663,7 @@ fn boolBinOp(...@@ -1436,6 +1663,7 @@ fn boolBinOp(
1436 .parent = scope,1663 .parent = scope,
1437 .decl = scope.ownerDecl().?,1664 .decl = scope.ownerDecl().?,
1438 .arena = scope.arena(),1665 .arena = scope.arena(),
1666 .force_comptime = scope.isComptime(),
1439 .instructions = .{},1667 .instructions = .{},
1440 };1668 };
1441 defer block_scope.instructions.deinit(mod.gpa);1669 defer block_scope.instructions.deinit(mod.gpa);
...@@ -1455,6 +1683,7 @@ fn boolBinOp(...@@ -1455,6 +1683,7 @@ fn boolBinOp(
1455 .parent = scope,1683 .parent = scope,
1456 .decl = block_scope.decl,1684 .decl = block_scope.decl,
1457 .arena = block_scope.arena,1685 .arena = block_scope.arena,
1686 .force_comptime = block_scope.force_comptime,
1458 .instructions = .{},1687 .instructions = .{},
1459 };1688 };
1460 defer rhs_scope.instructions.deinit(mod.gpa);1689 defer rhs_scope.instructions.deinit(mod.gpa);
...@@ -1469,6 +1698,7 @@ fn boolBinOp(...@@ -1469,6 +1698,7 @@ fn boolBinOp(
1469 .parent = scope,1698 .parent = scope,
1470 .decl = block_scope.decl,1699 .decl = block_scope.decl,
1471 .arena = block_scope.arena,1700 .arena = block_scope.arena,
1701 .force_comptime = block_scope.force_comptime,
1472 .instructions = .{},1702 .instructions = .{},
1473 };1703 };
1474 defer const_scope.instructions.deinit(mod.gpa);1704 defer const_scope.instructions.deinit(mod.gpa);
...@@ -1498,7 +1728,7 @@ fn boolBinOp(...@@ -1498,7 +1728,7 @@ fn boolBinOp(
1498 condbr.positionals.else_body = .{ .instructions = try rhs_scope.arena.dupe(*zir.Inst, rhs_scope.instructions.items) };1728 condbr.positionals.else_body = .{ .instructions = try rhs_scope.arena.dupe(*zir.Inst, rhs_scope.instructions.items) };
1499 }1729 }
15001730
1501 return rlWrap(mod, scope, rl, &block.base);1731 return rvalue(mod, scope, rl, &block.base);
1502}1732}
15031733
1504const CondKind = union(enum) {1734const CondKind = union(enum) {
...@@ -1582,8 +1812,10 @@ fn ifExpr(mod: *Module, scope: *Scope, rl: ResultLoc, if_node: *ast.Node.If) Inn...@@ -1582,8 +1812,10 @@ fn ifExpr(mod: *Module, scope: *Scope, rl: ResultLoc, if_node: *ast.Node.If) Inn
1582 .parent = scope,1812 .parent = scope,
1583 .decl = scope.ownerDecl().?,1813 .decl = scope.ownerDecl().?,
1584 .arena = scope.arena(),1814 .arena = scope.arena(),
1815 .force_comptime = scope.isComptime(),
1585 .instructions = .{},1816 .instructions = .{},
1586 };1817 };
1818 setBlockResultLoc(&block_scope, rl);
1587 defer block_scope.instructions.deinit(mod.gpa);1819 defer block_scope.instructions.deinit(mod.gpa);
15881820
1589 const tree = scope.tree();1821 const tree = scope.tree();
...@@ -1605,6 +1837,7 @@ fn ifExpr(mod: *Module, scope: *Scope, rl: ResultLoc, if_node: *ast.Node.If) Inn...@@ -1605,6 +1837,7 @@ fn ifExpr(mod: *Module, scope: *Scope, rl: ResultLoc, if_node: *ast.Node.If) Inn
1605 .parent = scope,1837 .parent = scope,
1606 .decl = block_scope.decl,1838 .decl = block_scope.decl,
1607 .arena = block_scope.arena,1839 .arena = block_scope.arena,
1840 .force_comptime = block_scope.force_comptime,
1608 .instructions = .{},1841 .instructions = .{},
1609 };1842 };
1610 defer then_scope.instructions.deinit(mod.gpa);1843 defer then_scope.instructions.deinit(mod.gpa);
...@@ -1612,62 +1845,81 @@ fn ifExpr(mod: *Module, scope: *Scope, rl: ResultLoc, if_node: *ast.Node.If) Inn...@@ -1612,62 +1845,81 @@ fn ifExpr(mod: *Module, scope: *Scope, rl: ResultLoc, if_node: *ast.Node.If) Inn
1612 // declare payload to the then_scope1845 // declare payload to the then_scope
1613 const then_sub_scope = try cond_kind.thenSubScope(mod, &then_scope, then_src, if_node.payload);1846 const then_sub_scope = try cond_kind.thenSubScope(mod, &then_scope, then_src, if_node.payload);
16141847
1615 // Most result location types can be forwarded directly; however1848 block_scope.break_count += 1;
1616 // if we need to write to a pointer which has an inferred type,1849 const then_result = try expr(mod, then_sub_scope, block_scope.break_result_loc, if_node.body);
1617 // proper type inference requires peer type resolution on the if's1850 // We hold off on the break instructions as well as copying the then/else
1618 // branches.1851 // instructions into place until we know whether to keep store_to_block_ptr
1619 const branch_rl: ResultLoc = switch (rl) {1852 // instructions or not.
1620 .discard, .none, .ty, .ptr, .ref => rl,
1621 .inferred_ptr, .bitcasted_ptr, .block_ptr => .{ .block_ptr = block },
1622 };
1623
1624 const then_result = try expr(mod, then_sub_scope, branch_rl, if_node.body);
1625 if (!then_result.tag.isNoReturn()) {
1626 _ = try addZIRInst(mod, then_sub_scope, then_src, zir.Inst.Break, .{
1627 .block = block,
1628 .operand = then_result,
1629 }, .{});
1630 }
1631 condbr.positionals.then_body = .{
1632 .instructions = try then_scope.arena.dupe(*zir.Inst, then_scope.instructions.items),
1633 };
16341853
1635 var else_scope: Scope.GenZIR = .{1854 var else_scope: Scope.GenZIR = .{
1636 .parent = scope,1855 .parent = scope,
1637 .decl = block_scope.decl,1856 .decl = block_scope.decl,
1638 .arena = block_scope.arena,1857 .arena = block_scope.arena,
1858 .force_comptime = block_scope.force_comptime,
1639 .instructions = .{},1859 .instructions = .{},
1640 };1860 };
1641 defer else_scope.instructions.deinit(mod.gpa);1861 defer else_scope.instructions.deinit(mod.gpa);
16421862
1643 if (if_node.@"else") |else_node| {1863 var else_src: usize = undefined;
1644 const else_src = tree.token_locs[else_node.body.lastToken()].start;1864 var else_sub_scope: *Module.Scope = undefined;
1865 const else_result: ?*zir.Inst = if (if_node.@"else") |else_node| blk: {
1866 else_src = tree.token_locs[else_node.body.lastToken()].start;
1645 // declare payload to the then_scope1867 // declare payload to the then_scope
1646 const else_sub_scope = try cond_kind.elseSubScope(mod, &else_scope, else_src, else_node.payload);1868 else_sub_scope = try cond_kind.elseSubScope(mod, &else_scope, else_src, else_node.payload);
1869
1870 block_scope.break_count += 1;
1871 break :blk try expr(mod, else_sub_scope, block_scope.break_result_loc, else_node.body);
1872 } else blk: {
1873 else_src = tree.token_locs[if_node.lastToken()].start;
1874 else_sub_scope = &else_scope.base;
1875 break :blk null;
1876 };
16471877
1648 const else_result = try expr(mod, else_sub_scope, branch_rl, else_node.body);1878 return finishThenElseBlock(
1649 if (!else_result.tag.isNoReturn()) {1879 mod,
1650 _ = try addZIRInst(mod, else_sub_scope, else_src, zir.Inst.Break, .{1880 scope,
1651 .block = block,1881 rl,
1652 .operand = else_result,1882 &block_scope,
1653 }, .{});1883 &then_scope,
1884 &else_scope,
1885 &condbr.positionals.then_body,
1886 &condbr.positionals.else_body,
1887 then_src,
1888 else_src,
1889 then_result,
1890 else_result,
1891 block,
1892 block,
1893 );
1894}
1895
1896/// Expects to find exactly 1 .store_to_block_ptr instruction.
1897fn copyBodyWithElidedStoreBlockPtr(body: *zir.Body, scope: Module.Scope.GenZIR) !void {
1898 body.* = .{
1899 .instructions = try scope.arena.alloc(*zir.Inst, scope.instructions.items.len - 1),
1900 };
1901 var dst_index: usize = 0;
1902 for (scope.instructions.items) |src_inst| {
1903 if (src_inst.tag != .store_to_block_ptr) {
1904 body.instructions[dst_index] = src_inst;
1905 dst_index += 1;
1654 }1906 }
1655 } else {
1656 // TODO Optimization opportunity: we can avoid an allocation and a memcpy here
1657 // by directly allocating the body for this one instruction.
1658 const else_src = tree.token_locs[if_node.lastToken()].start;
1659 _ = try addZIRInst(mod, &else_scope.base, else_src, zir.Inst.BreakVoid, .{
1660 .block = block,
1661 }, .{});
1662 }1907 }
1663 condbr.positionals.else_body = .{1908 assert(dst_index == body.instructions.len);
1664 .instructions = try else_scope.arena.dupe(*zir.Inst, else_scope.instructions.items),1909}
1665 };
16661910
1667 return &block.base;1911fn copyBodyNoEliding(body: *zir.Body, scope: Module.Scope.GenZIR) !void {
1912 body.* = .{
1913 .instructions = try scope.arena.dupe(*zir.Inst, scope.instructions.items),
1914 };
1668}1915}
16691916
1670fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.While) InnerError!*zir.Inst {1917fn whileExpr(
1918 mod: *Module,
1919 scope: *Scope,
1920 rl: ResultLoc,
1921 while_node: *ast.Node.While,
1922) InnerError!*zir.Inst {
1671 var cond_kind: CondKind = .bool;1923 var cond_kind: CondKind = .bool;
1672 if (while_node.payload) |_| cond_kind = .{ .optional = null };1924 if (while_node.payload) |_| cond_kind = .{ .optional = null };
1673 if (while_node.@"else") |else_node| {1925 if (while_node.@"else") |else_node| {
...@@ -1683,27 +1935,21 @@ fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.W...@@ -1683,27 +1935,21 @@ fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.W
1683 if (while_node.inline_token) |tok|1935 if (while_node.inline_token) |tok|
1684 return mod.failTok(scope, tok, "TODO inline while", .{});1936 return mod.failTok(scope, tok, "TODO inline while", .{});
16851937
1686 var expr_scope: Scope.GenZIR = .{1938 var loop_scope: Scope.GenZIR = .{
1687 .parent = scope,1939 .parent = scope,
1688 .decl = scope.ownerDecl().?,1940 .decl = scope.ownerDecl().?,
1689 .arena = scope.arena(),1941 .arena = scope.arena(),
1942 .force_comptime = scope.isComptime(),
1690 .instructions = .{},1943 .instructions = .{},
1691 };1944 };
1692 defer expr_scope.instructions.deinit(mod.gpa);1945 setBlockResultLoc(&loop_scope, rl);
1693
1694 var loop_scope: Scope.GenZIR = .{
1695 .parent = &expr_scope.base,
1696 .decl = expr_scope.decl,
1697 .arena = expr_scope.arena,
1698 .instructions = .{},
1699 .break_result_loc = rl,
1700 };
1701 defer loop_scope.instructions.deinit(mod.gpa);1946 defer loop_scope.instructions.deinit(mod.gpa);
17021947
1703 var continue_scope: Scope.GenZIR = .{1948 var continue_scope: Scope.GenZIR = .{
1704 .parent = &loop_scope.base,1949 .parent = &loop_scope.base,
1705 .decl = loop_scope.decl,1950 .decl = loop_scope.decl,
1706 .arena = loop_scope.arena,1951 .arena = loop_scope.arena,
1952 .force_comptime = loop_scope.force_comptime,
1707 .instructions = .{},1953 .instructions = .{},
1708 };1954 };
1709 defer continue_scope.instructions.deinit(mod.gpa);1955 defer continue_scope.instructions.deinit(mod.gpa);
...@@ -1731,11 +1977,21 @@ fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.W...@@ -1731,11 +1977,21 @@ fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.W
1731 if (while_node.continue_expr) |cont_expr| {1977 if (while_node.continue_expr) |cont_expr| {
1732 _ = try expr(mod, &loop_scope.base, .{ .ty = void_type }, cont_expr);1978 _ = try expr(mod, &loop_scope.base, .{ .ty = void_type }, cont_expr);
1733 }1979 }
1734 const loop = try addZIRInstLoop(mod, &expr_scope.base, while_src, .{1980 const loop = try scope.arena().create(zir.Inst.Loop);
1735 .instructions = try expr_scope.arena.dupe(*zir.Inst, loop_scope.instructions.items),1981 loop.* = .{
1736 });1982 .base = .{
1983 .tag = .loop,
1984 .src = while_src,
1985 },
1986 .positionals = .{
1987 .body = .{
1988 .instructions = try scope.arena().dupe(*zir.Inst, loop_scope.instructions.items),
1989 },
1990 },
1991 .kw_args = .{},
1992 };
1737 const while_block = try addZIRInstBlock(mod, scope, while_src, .block, .{1993 const while_block = try addZIRInstBlock(mod, scope, while_src, .block, .{
1738 .instructions = try expr_scope.arena.dupe(*zir.Inst, expr_scope.instructions.items),1994 .instructions = try scope.arena().dupe(*zir.Inst, &[1]*zir.Inst{&loop.base}),
1739 });1995 });
1740 loop_scope.break_block = while_block;1996 loop_scope.break_block = while_block;
1741 loop_scope.continue_block = cond_block;1997 loop_scope.continue_block = cond_block;
...@@ -1751,6 +2007,7 @@ fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.W...@@ -1751,6 +2007,7 @@ fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.W
1751 .parent = &continue_scope.base,2007 .parent = &continue_scope.base,
1752 .decl = continue_scope.decl,2008 .decl = continue_scope.decl,
1753 .arena = continue_scope.arena,2009 .arena = continue_scope.arena,
2010 .force_comptime = continue_scope.force_comptime,
1754 .instructions = .{},2011 .instructions = .{},
1755 };2012 };
1756 defer then_scope.instructions.deinit(mod.gpa);2013 defer then_scope.instructions.deinit(mod.gpa);
...@@ -1758,61 +2015,51 @@ fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.W...@@ -1758,61 +2015,51 @@ fn whileExpr(mod: *Module, scope: *Scope, rl: ResultLoc, while_node: *ast.Node.W
1758 // declare payload to the then_scope2015 // declare payload to the then_scope
1759 const then_sub_scope = try cond_kind.thenSubScope(mod, &then_scope, then_src, while_node.payload);2016 const then_sub_scope = try cond_kind.thenSubScope(mod, &then_scope, then_src, while_node.payload);
17602017
1761 // Most result location types can be forwarded directly; however2018 loop_scope.break_count += 1;
1762 // if we need to write to a pointer which has an inferred type,2019 const then_result = try expr(mod, then_sub_scope, loop_scope.break_result_loc, while_node.body);
1763 // proper type inference requires peer type resolution on the while's
1764 // branches.
1765 const branch_rl: ResultLoc = switch (rl) {
1766 .discard, .none, .ty, .ptr, .ref => rl,
1767 .inferred_ptr, .bitcasted_ptr, .block_ptr => .{ .block_ptr = while_block },
1768 };
1769
1770 const then_result = try expr(mod, then_sub_scope, branch_rl, while_node.body);
1771 if (!then_result.tag.isNoReturn()) {
1772 _ = try addZIRInst(mod, then_sub_scope, then_src, zir.Inst.Break, .{
1773 .block = cond_block,
1774 .operand = then_result,
1775 }, .{});
1776 }
1777 condbr.positionals.then_body = .{
1778 .instructions = try then_scope.arena.dupe(*zir.Inst, then_scope.instructions.items),
1779 };
17802020
1781 var else_scope: Scope.GenZIR = .{2021 var else_scope: Scope.GenZIR = .{
1782 .parent = &continue_scope.base,2022 .parent = &continue_scope.base,
1783 .decl = continue_scope.decl,2023 .decl = continue_scope.decl,
1784 .arena = continue_scope.arena,2024 .arena = continue_scope.arena,
2025 .force_comptime = continue_scope.force_comptime,
1785 .instructions = .{},2026 .instructions = .{},
1786 };2027 };
1787 defer else_scope.instructions.deinit(mod.gpa);2028 defer else_scope.instructions.deinit(mod.gpa);
17882029
1789 if (while_node.@"else") |else_node| {2030 var else_src: usize = undefined;
1790 const else_src = tree.token_locs[else_node.body.lastToken()].start;2031 const else_result: ?*zir.Inst = if (while_node.@"else") |else_node| blk: {
2032 else_src = tree.token_locs[else_node.body.lastToken()].start;
1791 // declare payload to the then_scope2033 // declare payload to the then_scope
1792 const else_sub_scope = try cond_kind.elseSubScope(mod, &else_scope, else_src, else_node.payload);2034 const else_sub_scope = try cond_kind.elseSubScope(mod, &else_scope, else_src, else_node.payload);
17932035
1794 const else_result = try expr(mod, else_sub_scope, branch_rl, else_node.body);2036 loop_scope.break_count += 1;
1795 if (!else_result.tag.isNoReturn()) {2037 break :blk try expr(mod, else_sub_scope, loop_scope.break_result_loc, else_node.body);
1796 _ = try addZIRInst(mod, else_sub_scope, else_src, zir.Inst.Break, .{2038 } else blk: {
1797 .block = while_block,2039 else_src = tree.token_locs[while_node.lastToken()].start;
1798 .operand = else_result,2040 break :blk null;
1799 }, .{});
1800 }
1801 } else {
1802 const else_src = tree.token_locs[while_node.lastToken()].start;
1803 _ = try addZIRInst(mod, &else_scope.base, else_src, zir.Inst.BreakVoid, .{
1804 .block = while_block,
1805 }, .{});
1806 }
1807 condbr.positionals.else_body = .{
1808 .instructions = try else_scope.arena.dupe(*zir.Inst, else_scope.instructions.items),
1809 };2041 };
1810 if (loop_scope.label) |some| {2042 if (loop_scope.label) |some| {
1811 if (!some.used) {2043 if (!some.used) {
1812 return mod.fail(scope, tree.token_locs[some.token].start, "unused while label", .{});2044 return mod.fail(scope, tree.token_locs[some.token].start, "unused while label", .{});
1813 }2045 }
1814 }2046 }
1815 return &while_block.base;2047 return finishThenElseBlock(
2048 mod,
2049 scope,
2050 rl,
2051 &loop_scope,
2052 &then_scope,
2053 &else_scope,
2054 &condbr.positionals.then_body,
2055 &condbr.positionals.else_body,
2056 then_src,
2057 else_src,
2058 then_result,
2059 else_result,
2060 while_block,
2061 cond_block,
2062 );
1816}2063}
18172064
1818fn forExpr(2065fn forExpr(
...@@ -1828,48 +2075,42 @@ fn forExpr(...@@ -1828,48 +2075,42 @@ fn forExpr(
1828 if (for_node.inline_token) |tok|2075 if (for_node.inline_token) |tok|
1829 return mod.failTok(scope, tok, "TODO inline for", .{});2076 return mod.failTok(scope, tok, "TODO inline for", .{});
18302077
1831 var for_scope: Scope.GenZIR = .{
1832 .parent = scope,
1833 .decl = scope.ownerDecl().?,
1834 .arena = scope.arena(),
1835 .instructions = .{},
1836 };
1837 defer for_scope.instructions.deinit(mod.gpa);
1838
1839 // setup variables and constants2078 // setup variables and constants
1840 const tree = scope.tree();2079 const tree = scope.tree();
1841 const for_src = tree.token_locs[for_node.for_token].start;2080 const for_src = tree.token_locs[for_node.for_token].start;
1842 const index_ptr = blk: {2081 const index_ptr = blk: {
1843 const usize_type = try addZIRInstConst(mod, &for_scope.base, for_src, .{2082 const usize_type = try addZIRInstConst(mod, scope, for_src, .{
1844 .ty = Type.initTag(.type),2083 .ty = Type.initTag(.type),
1845 .val = Value.initTag(.usize_type),2084 .val = Value.initTag(.usize_type),
1846 });2085 });
1847 const index_ptr = try addZIRUnOp(mod, &for_scope.base, for_src, .alloc, usize_type);2086 const index_ptr = try addZIRUnOp(mod, scope, for_src, .alloc, usize_type);
1848 // initialize to zero2087 // initialize to zero
1849 const zero = try addZIRInstConst(mod, &for_scope.base, for_src, .{2088 const zero = try addZIRInstConst(mod, scope, for_src, .{
1850 .ty = Type.initTag(.usize),2089 .ty = Type.initTag(.usize),
1851 .val = Value.initTag(.zero),2090 .val = Value.initTag(.zero),
1852 });2091 });
1853 _ = try addZIRBinOp(mod, &for_scope.base, for_src, .store, index_ptr, zero);2092 _ = try addZIRBinOp(mod, scope, for_src, .store, index_ptr, zero);
1854 break :blk index_ptr;2093 break :blk index_ptr;
1855 };2094 };
1856 const array_ptr = try expr(mod, &for_scope.base, .ref, for_node.array_expr);2095 const array_ptr = try expr(mod, scope, .ref, for_node.array_expr);
1857 const cond_src = tree.token_locs[for_node.array_expr.firstToken()].start;2096 const cond_src = tree.token_locs[for_node.array_expr.firstToken()].start;
1858 const len = try addZIRUnOp(mod, &for_scope.base, cond_src, .indexable_ptr_len, array_ptr);2097 const len = try addZIRUnOp(mod, scope, cond_src, .indexable_ptr_len, array_ptr);
18592098
1860 var loop_scope: Scope.GenZIR = .{2099 var loop_scope: Scope.GenZIR = .{
1861 .parent = &for_scope.base,2100 .parent = scope,
1862 .decl = for_scope.decl,2101 .decl = scope.ownerDecl().?,
1863 .arena = for_scope.arena,2102 .arena = scope.arena(),
2103 .force_comptime = scope.isComptime(),
1864 .instructions = .{},2104 .instructions = .{},
1865 .break_result_loc = rl,
1866 };2105 };
2106 setBlockResultLoc(&loop_scope, rl);
1867 defer loop_scope.instructions.deinit(mod.gpa);2107 defer loop_scope.instructions.deinit(mod.gpa);
18682108
1869 var cond_scope: Scope.GenZIR = .{2109 var cond_scope: Scope.GenZIR = .{
1870 .parent = &loop_scope.base,2110 .parent = &loop_scope.base,
1871 .decl = loop_scope.decl,2111 .decl = loop_scope.decl,
1872 .arena = loop_scope.arena,2112 .arena = loop_scope.arena,
2113 .force_comptime = loop_scope.force_comptime,
1873 .instructions = .{},2114 .instructions = .{},
1874 };2115 };
1875 defer cond_scope.instructions.deinit(mod.gpa);2116 defer cond_scope.instructions.deinit(mod.gpa);
...@@ -1896,12 +2137,21 @@ fn forExpr(...@@ -1896,12 +2137,21 @@ fn forExpr(
1896 const index_plus_one = try addZIRBinOp(mod, &loop_scope.base, for_src, .add, index_2, one);2137 const index_plus_one = try addZIRBinOp(mod, &loop_scope.base, for_src, .add, index_2, one);
1897 _ = try addZIRBinOp(mod, &loop_scope.base, for_src, .store, index_ptr, index_plus_one);2138 _ = try addZIRBinOp(mod, &loop_scope.base, for_src, .store, index_ptr, index_plus_one);
18982139
1899 // looping stuff2140 const loop = try scope.arena().create(zir.Inst.Loop);
1900 const loop = try addZIRInstLoop(mod, &for_scope.base, for_src, .{2141 loop.* = .{
1901 .instructions = try for_scope.arena.dupe(*zir.Inst, loop_scope.instructions.items),2142 .base = .{
1902 });2143 .tag = .loop,
2144 .src = for_src,
2145 },
2146 .positionals = .{
2147 .body = .{
2148 .instructions = try scope.arena().dupe(*zir.Inst, loop_scope.instructions.items),
2149 },
2150 },
2151 .kw_args = .{},
2152 };
1903 const for_block = try addZIRInstBlock(mod, scope, for_src, .block, .{2153 const for_block = try addZIRInstBlock(mod, scope, for_src, .block, .{
1904 .instructions = try for_scope.arena.dupe(*zir.Inst, for_scope.instructions.items),2154 .instructions = try scope.arena().dupe(*zir.Inst, &[1]*zir.Inst{&loop.base}),
1905 });2155 });
1906 loop_scope.break_block = for_block;2156 loop_scope.break_block = for_block;
1907 loop_scope.continue_block = cond_block;2157 loop_scope.continue_block = cond_block;
...@@ -1918,19 +2168,11 @@ fn forExpr(...@@ -1918,19 +2168,11 @@ fn forExpr(
1918 .parent = &cond_scope.base,2168 .parent = &cond_scope.base,
1919 .decl = cond_scope.decl,2169 .decl = cond_scope.decl,
1920 .arena = cond_scope.arena,2170 .arena = cond_scope.arena,
2171 .force_comptime = cond_scope.force_comptime,
1921 .instructions = .{},2172 .instructions = .{},
1922 };2173 };
1923 defer then_scope.instructions.deinit(mod.gpa);2174 defer then_scope.instructions.deinit(mod.gpa);
19242175
1925 // Most result location types can be forwarded directly; however
1926 // if we need to write to a pointer which has an inferred type,
1927 // proper type inference requires peer type resolution on the while's
1928 // branches.
1929 const branch_rl: ResultLoc = switch (rl) {
1930 .discard, .none, .ty, .ptr, .ref => rl,
1931 .inferred_ptr, .bitcasted_ptr, .block_ptr => .{ .block_ptr = for_block },
1932 };
1933
1934 var index_scope: Scope.LocalPtr = undefined;2176 var index_scope: Scope.LocalPtr = undefined;
1935 const then_sub_scope = blk: {2177 const then_sub_scope = blk: {
1936 const payload = for_node.payload.castTag(.PointerIndexPayload).?;2178 const payload = for_node.payload.castTag(.PointerIndexPayload).?;
...@@ -1959,50 +2201,59 @@ fn forExpr(...@@ -1959,50 +2201,59 @@ fn forExpr(
1959 break :blk &index_scope.base;2201 break :blk &index_scope.base;
1960 };2202 };
19612203
1962 const then_result = try expr(mod, then_sub_scope, branch_rl, for_node.body);2204 loop_scope.break_count += 1;
1963 if (!then_result.tag.isNoReturn()) {2205 const then_result = try expr(mod, then_sub_scope, loop_scope.break_result_loc, for_node.body);
1964 _ = try addZIRInst(mod, then_sub_scope, then_src, zir.Inst.Break, .{
1965 .block = cond_block,
1966 .operand = then_result,
1967 }, .{});
1968 }
1969 condbr.positionals.then_body = .{
1970 .instructions = try then_scope.arena.dupe(*zir.Inst, then_scope.instructions.items),
1971 };
19722206
1973 // else branch2207 // else branch
1974 var else_scope: Scope.GenZIR = .{2208 var else_scope: Scope.GenZIR = .{
1975 .parent = &cond_scope.base,2209 .parent = &cond_scope.base,
1976 .decl = cond_scope.decl,2210 .decl = cond_scope.decl,
1977 .arena = cond_scope.arena,2211 .arena = cond_scope.arena,
2212 .force_comptime = cond_scope.force_comptime,
1978 .instructions = .{},2213 .instructions = .{},
1979 };2214 };
1980 defer else_scope.instructions.deinit(mod.gpa);2215 defer else_scope.instructions.deinit(mod.gpa);
19812216
1982 if (for_node.@"else") |else_node| {2217 var else_src: usize = undefined;
1983 const else_src = tree.token_locs[else_node.body.lastToken()].start;2218 const else_result: ?*zir.Inst = if (for_node.@"else") |else_node| blk: {
1984 const else_result = try expr(mod, &else_scope.base, branch_rl, else_node.body);2219 else_src = tree.token_locs[else_node.body.lastToken()].start;
1985 if (!else_result.tag.isNoReturn()) {2220 loop_scope.break_count += 1;
1986 _ = try addZIRInst(mod, &else_scope.base, else_src, zir.Inst.Break, .{2221 break :blk try expr(mod, &else_scope.base, loop_scope.break_result_loc, else_node.body);
1987 .block = for_block,2222 } else blk: {
1988 .operand = else_result,2223 else_src = tree.token_locs[for_node.lastToken()].start;
1989 }, .{});2224 break :blk null;
1990 }
1991 } else {
1992 const else_src = tree.token_locs[for_node.lastToken()].start;
1993 _ = try addZIRInst(mod, &else_scope.base, else_src, zir.Inst.BreakVoid, .{
1994 .block = for_block,
1995 }, .{});
1996 }
1997 condbr.positionals.else_body = .{
1998 .instructions = try else_scope.arena.dupe(*zir.Inst, else_scope.instructions.items),
1999 };2225 };
2000 if (loop_scope.label) |some| {2226 if (loop_scope.label) |some| {
2001 if (!some.used) {2227 if (!some.used) {
2002 return mod.fail(scope, tree.token_locs[some.token].start, "unused for label", .{});2228 return mod.fail(scope, tree.token_locs[some.token].start, "unused for label", .{});
2003 }2229 }
2004 }2230 }
2005 return &for_block.base;2231 return finishThenElseBlock(
2232 mod,
2233 scope,
2234 rl,
2235 &loop_scope,
2236 &then_scope,
2237 &else_scope,
2238 &condbr.positionals.then_body,
2239 &condbr.positionals.else_body,
2240 then_src,
2241 else_src,
2242 then_result,
2243 else_result,
2244 for_block,
2245 cond_block,
2246 );
2247}
2248
2249fn switchCaseUsesRef(node: *ast.Node.Switch) bool {
2250 for (node.cases()) |uncasted_case| {
2251 const case = uncasted_case.castTag(.SwitchCase).?;
2252 const uncasted_payload = case.payload orelse continue;
2253 const payload = uncasted_payload.castTag(.PointerPayload).?;
2254 if (payload.ptr_token) |_| return true;
2255 }
2256 return false;
2006}2257}
20072258
2008fn getRangeNode(node: *ast.Node) ?*ast.Node.SimpleInfixOp {2259fn getRangeNode(node: *ast.Node) ?*ast.Node.SimpleInfixOp {
...@@ -2017,82 +2268,31 @@ fn getRangeNode(node: *ast.Node) ?*ast.Node.SimpleInfixOp {...@@ -2017,82 +2268,31 @@ fn getRangeNode(node: *ast.Node) ?*ast.Node.SimpleInfixOp {
2017}2268}
20182269
2019fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node.Switch) InnerError!*zir.Inst {2270fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node.Switch) InnerError!*zir.Inst {
2271 const tree = scope.tree();
2272 const switch_src = tree.token_locs[switch_node.switch_token].start;
2273 const use_ref = switchCaseUsesRef(switch_node);
2274
2020 var block_scope: Scope.GenZIR = .{2275 var block_scope: Scope.GenZIR = .{
2021 .parent = scope,2276 .parent = scope,
2022 .decl = scope.ownerDecl().?,2277 .decl = scope.ownerDecl().?,
2023 .arena = scope.arena(),2278 .arena = scope.arena(),
2279 .force_comptime = scope.isComptime(),
2024 .instructions = .{},2280 .instructions = .{},
2025 };2281 };
2282 setBlockResultLoc(&block_scope, rl);
2026 defer block_scope.instructions.deinit(mod.gpa);2283 defer block_scope.instructions.deinit(mod.gpa);
20272284
2028 const tree = scope.tree();
2029 const switch_src = tree.token_locs[switch_node.switch_token].start;
2030 const target_ptr = try expr(mod, &block_scope.base, .ref, switch_node.expr);
2031 const target = try addZIRUnOp(mod, &block_scope.base, target_ptr.src, .deref, target_ptr);
2032 // Add the switch instruction here so that it comes before any range checks.
2033 const switch_inst = (try addZIRInst(mod, &block_scope.base, switch_src, zir.Inst.SwitchBr, .{
2034 .target_ptr = target_ptr,
2035 .cases = undefined, // populated below
2036 .items = &[_]*zir.Inst{}, // populated below
2037 .else_body = undefined, // populated below
2038 }, .{})).castTag(.switchbr).?;
2039
2040 var items = std.ArrayList(*zir.Inst).init(mod.gpa);2285 var items = std.ArrayList(*zir.Inst).init(mod.gpa);
2041 defer items.deinit();2286 defer items.deinit();
2042 var cases = std.ArrayList(zir.Inst.SwitchBr.Case).init(mod.gpa);
2043 defer cases.deinit();
2044
2045 // Add comptime block containing all prong items first,
2046 const item_block = try addZIRInstBlock(mod, scope, switch_src, .block_comptime_flat, .{
2047 .instructions = undefined, // populated below
2048 });
2049 // then add block containing the switch.
2050 const block = try addZIRInstBlock(mod, scope, switch_src, .block, .{
2051 .instructions = try block_scope.arena.dupe(*zir.Inst, block_scope.instructions.items),
2052 });
2053
2054 // Most result location types can be forwarded directly; however
2055 // if we need to write to a pointer which has an inferred type,
2056 // proper type inference requires peer type resolution on the switch case.
2057 const case_rl: ResultLoc = switch (rl) {
2058 .discard, .none, .ty, .ptr, .ref => rl,
2059 .inferred_ptr, .bitcasted_ptr, .block_ptr => .{ .block_ptr = block },
2060 };
2061
2062 var item_scope: Scope.GenZIR = .{
2063 .parent = scope,
2064 .decl = scope.ownerDecl().?,
2065 .arena = scope.arena(),
2066 .instructions = .{},
2067 };
2068 defer item_scope.instructions.deinit(mod.gpa);
2069
2070 var case_scope: Scope.GenZIR = .{
2071 .parent = scope,
2072 .decl = block_scope.decl,
2073 .arena = block_scope.arena,
2074 .instructions = .{},
2075 };
2076 defer case_scope.instructions.deinit(mod.gpa);
2077
2078 var else_scope: Scope.GenZIR = .{
2079 .parent = scope,
2080 .decl = block_scope.decl,
2081 .arena = block_scope.arena,
2082 .instructions = .{},
2083 };
2084 defer else_scope.instructions.deinit(mod.gpa);
20852287
2086 // first we gather all the switch items and check else/'_' prongs2288 // first we gather all the switch items and check else/'_' prongs
2087 var else_src: ?usize = null;2289 var else_src: ?usize = null;
2088 var underscore_src: ?usize = null;2290 var underscore_src: ?usize = null;
2089 var first_range: ?*zir.Inst = null;2291 var first_range: ?*zir.Inst = null;
2090 var special_case: ?*ast.Node.SwitchCase = null;2292 var simple_case_count: usize = 0;
2091 for (switch_node.cases()) |uncasted_case| {2293 for (switch_node.cases()) |uncasted_case| {
2092 const case = uncasted_case.castTag(.SwitchCase).?;2294 const case = uncasted_case.castTag(.SwitchCase).?;
2093 const case_src = tree.token_locs[case.firstToken()].start;2295 const case_src = tree.token_locs[case.firstToken()].start;
2094 // reset without freeing to reduce allocations.
2095 case_scope.instructions.items.len = 0;
2096 assert(case.items_len != 0);2296 assert(case.items_len != 0);
20972297
2098 // Check for else/_ prong, those are handled last.2298 // Check for else/_ prong, those are handled last.
...@@ -2112,7 +2312,6 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node...@@ -2112,7 +2312,6 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node
2112 return mod.failWithOwnedErrorMsg(scope, msg);2312 return mod.failWithOwnedErrorMsg(scope, msg);
2113 }2313 }
2114 else_src = case_src;2314 else_src = case_src;
2115 special_case = case;
2116 continue;2315 continue;
2117 } else if (case.items_len == 1 and case.items()[0].tag == .Identifier and2316 } else if (case.items_len == 1 and case.items()[0].tag == .Identifier and
2118 mem.eql(u8, tree.tokenSlice(case.items()[0].firstToken()), "_"))2317 mem.eql(u8, tree.tokenSlice(case.items()[0].firstToken()), "_"))
...@@ -2132,7 +2331,6 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node...@@ -2132,7 +2331,6 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node
2132 return mod.failWithOwnedErrorMsg(scope, msg);2331 return mod.failWithOwnedErrorMsg(scope, msg);
2133 }2332 }
2134 underscore_src = case_src;2333 underscore_src = case_src;
2135 special_case = case;
2136 continue;2334 continue;
2137 }2335 }
21382336
...@@ -2154,16 +2352,97 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node...@@ -2154,16 +2352,97 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node
2154 }2352 }
2155 }2353 }
21562354
2355 if (case.items_len == 1 and getRangeNode(case.items()[0]) == null) simple_case_count += 1;
2356
2357 // generate all the switch items as comptime expressions
2358 for (case.items()) |item| {
2359 if (getRangeNode(item)) |range| {
2360 const start = try comptimeExpr(mod, &block_scope.base, .none, range.lhs);
2361 const end = try comptimeExpr(mod, &block_scope.base, .none, range.rhs);
2362 const range_src = tree.token_locs[range.op_token].start;
2363 const range_inst = try addZIRBinOp(mod, &block_scope.base, range_src, .switch_range, start, end);
2364 try items.append(range_inst);
2365 } else {
2366 const item_inst = try comptimeExpr(mod, &block_scope.base, .none, item);
2367 try items.append(item_inst);
2368 }
2369 }
2370 }
2371
2372 var special_prong: zir.Inst.SwitchBr.SpecialProng = .none;
2373 if (else_src != null) special_prong = .@"else";
2374 if (underscore_src != null) special_prong = .underscore;
2375 var cases = try block_scope.arena.alloc(zir.Inst.SwitchBr.Case, simple_case_count);
2376
2377 const target_ptr = if (use_ref) try expr(mod, &block_scope.base, .ref, switch_node.expr) else null;
2378 const target = if (target_ptr) |some|
2379 try addZIRUnOp(mod, &block_scope.base, some.src, .deref, some)
2380 else
2381 try expr(mod, &block_scope.base, .none, switch_node.expr);
2382 const switch_inst = try addZIRInst(mod, &block_scope.base, switch_src, zir.Inst.SwitchBr, .{
2383 .target = target,
2384 .cases = cases,
2385 .items = try block_scope.arena.dupe(*zir.Inst, items.items),
2386 .else_body = undefined, // populated below
2387 }, .{
2388 .range = first_range,
2389 .special_prong = special_prong,
2390 });
2391
2392 const block = try addZIRInstBlock(mod, scope, switch_src, .block, .{
2393 .instructions = try block_scope.arena.dupe(*zir.Inst, block_scope.instructions.items),
2394 });
2395
2396 var case_scope: Scope.GenZIR = .{
2397 .parent = scope,
2398 .decl = block_scope.decl,
2399 .arena = block_scope.arena,
2400 .force_comptime = block_scope.force_comptime,
2401 .instructions = .{},
2402 };
2403 defer case_scope.instructions.deinit(mod.gpa);
2404
2405 var else_scope: Scope.GenZIR = .{
2406 .parent = scope,
2407 .decl = case_scope.decl,
2408 .arena = case_scope.arena,
2409 .force_comptime = case_scope.force_comptime,
2410 .instructions = .{},
2411 };
2412 defer else_scope.instructions.deinit(mod.gpa);
2413
2414 // Now generate all but the special cases
2415 var special_case: ?*ast.Node.SwitchCase = null;
2416 var items_index: usize = 0;
2417 var case_index: usize = 0;
2418 for (switch_node.cases()) |uncasted_case| {
2419 const case = uncasted_case.castTag(.SwitchCase).?;
2420 const case_src = tree.token_locs[case.firstToken()].start;
2421 // reset without freeing to reduce allocations.
2422 case_scope.instructions.items.len = 0;
2423
2424 // Check for else/_ prong, those are handled last.
2425 if (case.items_len == 1 and case.items()[0].tag == .SwitchElse) {
2426 special_case = case;
2427 continue;
2428 } else if (case.items_len == 1 and case.items()[0].tag == .Identifier and
2429 mem.eql(u8, tree.tokenSlice(case.items()[0].firstToken()), "_"))
2430 {
2431 special_case = case;
2432 continue;
2433 }
2434
2157 // If this is a simple one item prong then it is handled by the switchbr.2435 // If this is a simple one item prong then it is handled by the switchbr.
2158 if (case.items_len == 1 and getRangeNode(case.items()[0]) == null) {2436 if (case.items_len == 1 and getRangeNode(case.items()[0]) == null) {
2159 const item = try expr(mod, &item_scope.base, .none, case.items()[0]);2437 const item = items.items[items_index];
2160 try items.append(item);2438 items_index += 1;
2161 try switchCaseExpr(mod, &case_scope.base, case_rl, block, case);2439 try switchCaseExpr(mod, &case_scope.base, block_scope.break_result_loc, block, case, target, target_ptr);
21622440
2163 try cases.append(.{2441 cases[case_index] = .{
2164 .item = item,2442 .item = item,
2165 .body = .{ .instructions = try scope.arena().dupe(*zir.Inst, case_scope.instructions.items) },2443 .body = .{ .instructions = try scope.arena().dupe(*zir.Inst, case_scope.instructions.items) },
2166 });2444 };
2445 case_index += 1;
2167 continue;2446 continue;
2168 }2447 }
21692448
...@@ -2176,32 +2455,29 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node...@@ -2176,32 +2455,29 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node
2176 var any_ok: ?*zir.Inst = null;2455 var any_ok: ?*zir.Inst = null;
2177 for (case.items()) |item| {2456 for (case.items()) |item| {
2178 if (getRangeNode(item)) |range| {2457 if (getRangeNode(item)) |range| {
2179 const start = try expr(mod, &item_scope.base, .none, range.lhs);
2180 const end = try expr(mod, &item_scope.base, .none, range.rhs);
2181 const range_src = tree.token_locs[range.op_token].start;2458 const range_src = tree.token_locs[range.op_token].start;
2182 const range_inst = try addZIRBinOp(mod, &item_scope.base, range_src, .switch_range, start, end);2459 const range_inst = items.items[items_index].castTag(.switch_range).?;
2183 try items.append(range_inst);2460 items_index += 1;
2184 if (first_range == null) first_range = range_inst;
21852461
2186 // target >= start and target <= end2462 // target >= start and target <= end
2187 const range_start_ok = try addZIRBinOp(mod, &else_scope.base, range_src, .cmp_gte, target, start);2463 const range_start_ok = try addZIRBinOp(mod, &else_scope.base, range_src, .cmp_gte, target, range_inst.positionals.lhs);
2188 const range_end_ok = try addZIRBinOp(mod, &else_scope.base, range_src, .cmp_lte, target, end);2464 const range_end_ok = try addZIRBinOp(mod, &else_scope.base, range_src, .cmp_lte, target, range_inst.positionals.rhs);
2189 const range_ok = try addZIRBinOp(mod, &else_scope.base, range_src, .booland, range_start_ok, range_end_ok);2465 const range_ok = try addZIRBinOp(mod, &else_scope.base, range_src, .bool_and, range_start_ok, range_end_ok);
21902466
2191 if (any_ok) |some| {2467 if (any_ok) |some| {
2192 any_ok = try addZIRBinOp(mod, &else_scope.base, range_src, .boolor, some, range_ok);2468 any_ok = try addZIRBinOp(mod, &else_scope.base, range_src, .bool_or, some, range_ok);
2193 } else {2469 } else {
2194 any_ok = range_ok;2470 any_ok = range_ok;
2195 }2471 }
2196 continue;2472 continue;
2197 }2473 }
21982474
2199 const item_inst = try expr(mod, &item_scope.base, .none, item);2475 const item_inst = items.items[items_index];
2200 try items.append(item_inst);2476 items_index += 1;
2201 const cpm_ok = try addZIRBinOp(mod, &else_scope.base, item_inst.src, .cmp_eq, target, item_inst);2477 const cpm_ok = try addZIRBinOp(mod, &else_scope.base, item_inst.src, .cmp_eq, target, item_inst);
22022478
2203 if (any_ok) |some| {2479 if (any_ok) |some| {
2204 any_ok = try addZIRBinOp(mod, &else_scope.base, item_inst.src, .boolor, some, cpm_ok);2480 any_ok = try addZIRBinOp(mod, &else_scope.base, item_inst.src, .bool_or, some, cpm_ok);
2205 } else {2481 } else {
2206 any_ok = cpm_ok;2482 any_ok = cpm_ok;
2207 }2483 }
...@@ -2218,7 +2494,7 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node...@@ -2218,7 +2494,7 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node
22182494
2219 // reset cond_scope for then_body2495 // reset cond_scope for then_body
2220 case_scope.instructions.items.len = 0;2496 case_scope.instructions.items.len = 0;
2221 try switchCaseExpr(mod, &case_scope.base, case_rl, block, case);2497 try switchCaseExpr(mod, &case_scope.base, block_scope.break_result_loc, block, case, target, target_ptr);
2222 condbr.positionals.then_body = .{2498 condbr.positionals.then_body = .{
2223 .instructions = try scope.arena().dupe(*zir.Inst, case_scope.instructions.items),2499 .instructions = try scope.arena().dupe(*zir.Inst, case_scope.instructions.items),
2224 };2500 };
...@@ -2233,41 +2509,48 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node...@@ -2233,41 +2509,48 @@ fn switchExpr(mod: *Module, scope: *Scope, rl: ResultLoc, switch_node: *ast.Node
2233 };2509 };
2234 }2510 }
22352511
2236 // Generate else block or a break last to finish the block.2512 // Finally generate else block or a break.
2237 if (special_case) |case| {2513 if (special_case) |case| {
2238 try switchCaseExpr(mod, &else_scope.base, case_rl, block, case);2514 try switchCaseExpr(mod, &else_scope.base, block_scope.break_result_loc, block, case, target, target_ptr);
2239 } else {2515 } else {
2240 // Not handling all possible cases is a compile error.2516 // Not handling all possible cases is a compile error.
2241 _ = try addZIRNoOp(mod, &else_scope.base, switch_src, .unreach_nocheck);2517 _ = try addZIRNoOp(mod, &else_scope.base, switch_src, .unreachable_unsafe);
2242 }2518 }
22432519 switch_inst.castTag(.switchbr).?.positionals.else_body = .{
2244 // All items have been generated, add the instructions to the comptime block.
2245 item_block.positionals.body = .{
2246 .instructions = try block_scope.arena.dupe(*zir.Inst, item_scope.instructions.items),
2247 };
2248
2249 // Actually populate switch instruction values.
2250 if (else_src != null) switch_inst.kw_args.special_prong = .@"else";
2251 if (underscore_src != null) switch_inst.kw_args.special_prong = .underscore;
2252 switch_inst.positionals.cases = try block_scope.arena.dupe(zir.Inst.SwitchBr.Case, cases.items);
2253 switch_inst.positionals.items = try block_scope.arena.dupe(*zir.Inst, items.items);
2254 switch_inst.kw_args.range = first_range;
2255 switch_inst.positionals.else_body = .{
2256 .instructions = try block_scope.arena.dupe(*zir.Inst, else_scope.instructions.items),2520 .instructions = try block_scope.arena.dupe(*zir.Inst, else_scope.instructions.items),
2257 };2521 };
2522
2258 return &block.base;2523 return &block.base;
2259}2524}
22602525
2261fn switchCaseExpr(mod: *Module, scope: *Scope, rl: ResultLoc, block: *zir.Inst.Block, case: *ast.Node.SwitchCase) !void {2526fn switchCaseExpr(
2527 mod: *Module,
2528 scope: *Scope,
2529 rl: ResultLoc,
2530 block: *zir.Inst.Block,
2531 case: *ast.Node.SwitchCase,
2532 target: *zir.Inst,
2533 target_ptr: ?*zir.Inst,
2534) !void {
2262 const tree = scope.tree();2535 const tree = scope.tree();
2263 const case_src = tree.token_locs[case.firstToken()].start;2536 const case_src = tree.token_locs[case.firstToken()].start;
2264 if (case.payload != null) {2537 const sub_scope = blk: {
2265 return mod.fail(scope, case_src, "TODO switch case payload capture", .{});2538 const uncasted_payload = case.payload orelse break :blk scope;
2266 }2539 const payload = uncasted_payload.castTag(.PointerPayload).?;
2540 const is_ptr = payload.ptr_token != null;
2541 const value_name = tree.tokenSlice(payload.value_symbol.firstToken());
2542 if (mem.eql(u8, value_name, "_")) {
2543 if (is_ptr) {
2544 return mod.failTok(scope, payload.ptr_token.?, "pointer modifier invalid on discard", .{});
2545 }
2546 break :blk scope;
2547 }
2548 return mod.failNode(scope, payload.value_symbol, "TODO implement switch value payload", .{});
2549 };
22672550
2268 const case_body = try expr(mod, scope, rl, case.expr);2551 const case_body = try expr(mod, sub_scope, rl, case.expr);
2269 if (!case_body.tag.isNoReturn()) {2552 if (!case_body.tag.isNoReturn()) {
2270 _ = try addZIRInst(mod, scope, case_src, zir.Inst.Break, .{2553 _ = try addZIRInst(mod, sub_scope, case_src, zir.Inst.Break, .{
2271 .block = block,2554 .block = block,
2272 .operand = case_body,2555 .operand = case_body,
2273 }, .{});2556 }, .{});
...@@ -2288,7 +2571,7 @@ fn ret(mod: *Module, scope: *Scope, cfe: *ast.Node.ControlFlowExpression) InnerE...@@ -2288,7 +2571,7 @@ fn ret(mod: *Module, scope: *Scope, cfe: *ast.Node.ControlFlowExpression) InnerE
2288 return addZIRUnOp(mod, scope, src, .@"return", operand);2571 return addZIRUnOp(mod, scope, src, .@"return", operand);
2289 }2572 }
2290 } else {2573 } else {
2291 return addZIRNoOp(mod, scope, src, .returnvoid);2574 return addZIRNoOp(mod, scope, src, .return_void);
2292 }2575 }
2293}2576}
22942577
...@@ -2305,7 +2588,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo...@@ -2305,7 +2588,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo
23052588
2306 if (getSimplePrimitiveValue(ident_name)) |typed_value| {2589 if (getSimplePrimitiveValue(ident_name)) |typed_value| {
2307 const result = try addZIRInstConst(mod, scope, src, typed_value);2590 const result = try addZIRInstConst(mod, scope, src, typed_value);
2308 return rlWrap(mod, scope, rl, result);2591 return rvalue(mod, scope, rl, result);
2309 }2592 }
23102593
2311 if (ident_name.len >= 2) integer: {2594 if (ident_name.len >= 2) integer: {
...@@ -2327,7 +2610,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo...@@ -2327,7 +2610,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo
2327 32 => if (is_signed) Value.initTag(.i32_type) else Value.initTag(.u32_type),2610 32 => if (is_signed) Value.initTag(.i32_type) else Value.initTag(.u32_type),
2328 64 => if (is_signed) Value.initTag(.i64_type) else Value.initTag(.u64_type),2611 64 => if (is_signed) Value.initTag(.i64_type) else Value.initTag(.u64_type),
2329 else => {2612 else => {
2330 return rlWrap(mod, scope, rl, try addZIRInstConst(mod, scope, src, .{2613 return rvalue(mod, scope, rl, try addZIRInstConst(mod, scope, src, .{
2331 .ty = Type.initTag(.type),2614 .ty = Type.initTag(.type),
2332 .val = try Value.Tag.int_type.create(scope.arena(), .{2615 .val = try Value.Tag.int_type.create(scope.arena(), .{
2333 .signed = is_signed,2616 .signed = is_signed,
...@@ -2340,7 +2623,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo...@@ -2340,7 +2623,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo
2340 .ty = Type.initTag(.type),2623 .ty = Type.initTag(.type),
2341 .val = val,2624 .val = val,
2342 });2625 });
2343 return rlWrap(mod, scope, rl, result);2626 return rvalue(mod, scope, rl, result);
2344 }2627 }
2345 }2628 }
23462629
...@@ -2351,7 +2634,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo...@@ -2351,7 +2634,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo
2351 .local_val => {2634 .local_val => {
2352 const local_val = s.cast(Scope.LocalVal).?;2635 const local_val = s.cast(Scope.LocalVal).?;
2353 if (mem.eql(u8, local_val.name, ident_name)) {2636 if (mem.eql(u8, local_val.name, ident_name)) {
2354 return rlWrap(mod, scope, rl, local_val.inst);2637 return rvalue(mod, scope, rl, local_val.inst);
2355 }2638 }
2356 s = local_val.parent;2639 s = local_val.parent;
2357 },2640 },
...@@ -2360,7 +2643,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo...@@ -2360,7 +2643,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo
2360 if (mem.eql(u8, local_ptr.name, ident_name)) {2643 if (mem.eql(u8, local_ptr.name, ident_name)) {
2361 if (rl == .ref) return local_ptr.ptr;2644 if (rl == .ref) return local_ptr.ptr;
2362 const loaded = try addZIRUnOp(mod, scope, src, .deref, local_ptr.ptr);2645 const loaded = try addZIRUnOp(mod, scope, src, .deref, local_ptr.ptr);
2363 return rlWrap(mod, scope, rl, loaded);2646 return rvalue(mod, scope, rl, loaded);
2364 }2647 }
2365 s = local_ptr.parent;2648 s = local_ptr.parent;
2366 },2649 },
...@@ -2373,7 +2656,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo...@@ -2373,7 +2656,7 @@ fn identifier(mod: *Module, scope: *Scope, rl: ResultLoc, ident: *ast.Node.OneTo
2373 if (rl == .ref) {2656 if (rl == .ref) {
2374 return addZIRInst(mod, scope, src, zir.Inst.DeclRef, .{ .decl = decl }, .{});2657 return addZIRInst(mod, scope, src, zir.Inst.DeclRef, .{ .decl = decl }, .{});
2375 } else {2658 } else {
2376 return rlWrap(mod, scope, rl, try addZIRInst(mod, scope, src, zir.Inst.DeclVal, .{2659 return rvalue(mod, scope, rl, try addZIRInst(mod, scope, src, zir.Inst.DeclVal, .{
2377 .decl = decl,2660 .decl = decl,
2378 }, .{}));2661 }, .{}));
2379 }2662 }
...@@ -2590,7 +2873,7 @@ fn simpleCast(...@@ -2590,7 +2873,7 @@ fn simpleCast(
2590 const dest_type = try typeExpr(mod, scope, params[0]);2873 const dest_type = try typeExpr(mod, scope, params[0]);
2591 const rhs = try expr(mod, scope, .none, params[1]);2874 const rhs = try expr(mod, scope, .none, params[1]);
2592 const result = try addZIRBinOp(mod, scope, src, inst_tag, dest_type, rhs);2875 const result = try addZIRBinOp(mod, scope, src, inst_tag, dest_type, rhs);
2593 return rlWrap(mod, scope, rl, result);2876 return rvalue(mod, scope, rl, result);
2594}2877}
25952878
2596fn ptrToInt(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerError!*zir.Inst {2879fn ptrToInt(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerError!*zir.Inst {
...@@ -2601,31 +2884,30 @@ fn ptrToInt(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerError...@@ -2601,31 +2884,30 @@ fn ptrToInt(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerError
2601 return addZIRUnOp(mod, scope, src, .ptrtoint, operand);2884 return addZIRUnOp(mod, scope, src, .ptrtoint, operand);
2602}2885}
26032886
2604fn as(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.BuiltinCall) InnerError!*zir.Inst {2887fn as(
2888 mod: *Module,
2889 scope: *Scope,
2890 rl: ResultLoc,
2891 call: *ast.Node.BuiltinCall,
2892) InnerError!*zir.Inst {
2605 try ensureBuiltinParamCount(mod, scope, call, 2);2893 try ensureBuiltinParamCount(mod, scope, call, 2);
2606 const tree = scope.tree();2894 const tree = scope.tree();
2607 const src = tree.token_locs[call.builtin_token].start;2895 const src = tree.token_locs[call.builtin_token].start;
2608 const params = call.params();2896 const params = call.params();
2609 const dest_type = try typeExpr(mod, scope, params[0]);2897 const dest_type = try typeExpr(mod, scope, params[0]);
2610 switch (rl) {2898 switch (rl) {
2611 .none => return try expr(mod, scope, .{ .ty = dest_type }, params[1]),2899 .none, .discard, .ref, .ty => {
2612 .discard => {
2613 const result = try expr(mod, scope, .{ .ty = dest_type }, params[1]);
2614 _ = try addZIRUnOp(mod, scope, result.src, .ensure_result_non_error, result);
2615 return result;
2616 },
2617 .ref => {
2618 const result = try expr(mod, scope, .{ .ty = dest_type }, params[1]);
2619 return addZIRUnOp(mod, scope, result.src, .ref, result);
2620 },
2621 .ty => |result_ty| {
2622 const result = try expr(mod, scope, .{ .ty = dest_type }, params[1]);2900 const result = try expr(mod, scope, .{ .ty = dest_type }, params[1]);
2623 return addZIRBinOp(mod, scope, src, .as, result_ty, result);2901 return rvalue(mod, scope, rl, result);
2624 },2902 },
2903
2625 .ptr => |result_ptr| {2904 .ptr => |result_ptr| {
2626 const casted_result_ptr = try addZIRBinOp(mod, scope, src, .coerce_result_ptr, dest_type, result_ptr);2905 return asRlPtr(mod, scope, rl, src, result_ptr, params[1], dest_type);
2627 return expr(mod, scope, .{ .ptr = casted_result_ptr }, params[1]);2906 },
2907 .block_ptr => |block_scope| {
2908 return asRlPtr(mod, scope, rl, src, block_scope.rl_ptr.?, params[1], dest_type);
2628 },2909 },
2910
2629 .bitcasted_ptr => |bitcasted_ptr| {2911 .bitcasted_ptr => |bitcasted_ptr| {
2630 // TODO here we should be able to resolve the inference; we now have a type for the result.2912 // TODO here we should be able to resolve the inference; we now have a type for the result.
2631 return mod.failTok(scope, call.builtin_token, "TODO implement @as with result location @bitCast", .{});2913 return mod.failTok(scope, call.builtin_token, "TODO implement @as with result location @bitCast", .{});
...@@ -2634,13 +2916,50 @@ fn as(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.BuiltinCall) I...@@ -2634,13 +2916,50 @@ fn as(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.BuiltinCall) I
2634 // TODO here we should be able to resolve the inference; we now have a type for the result.2916 // TODO here we should be able to resolve the inference; we now have a type for the result.
2635 return mod.failTok(scope, call.builtin_token, "TODO implement @as with inferred-type result location pointer", .{});2917 return mod.failTok(scope, call.builtin_token, "TODO implement @as with inferred-type result location pointer", .{});
2636 },2918 },
2637 .block_ptr => |block_ptr| {2919 }
2638 const casted_block_ptr = try addZIRInst(mod, scope, src, zir.Inst.CoerceResultBlockPtr, .{2920}
2639 .dest_type = dest_type,2921
2640 .block = block_ptr,2922fn asRlPtr(
2641 }, .{});2923 mod: *Module,
2642 return expr(mod, scope, .{ .ptr = casted_block_ptr }, params[1]);2924 scope: *Scope,
2643 },2925 rl: ResultLoc,
2926 src: usize,
2927 result_ptr: *zir.Inst,
2928 operand_node: *ast.Node,
2929 dest_type: *zir.Inst,
2930) InnerError!*zir.Inst {
2931 // Detect whether this expr() call goes into rvalue() to store the result into the
2932 // result location. If it does, elide the coerce_result_ptr instruction
2933 // as well as the store instruction, instead passing the result as an rvalue.
2934 var as_scope: Scope.GenZIR = .{
2935 .parent = scope,
2936 .decl = scope.ownerDecl().?,
2937 .arena = scope.arena(),
2938 .force_comptime = scope.isComptime(),
2939 .instructions = .{},
2940 };
2941 defer as_scope.instructions.deinit(mod.gpa);
2942
2943 as_scope.rl_ptr = try addZIRBinOp(mod, &as_scope.base, src, .coerce_result_ptr, dest_type, result_ptr);
2944 const result = try expr(mod, &as_scope.base, .{ .block_ptr = &as_scope }, operand_node);
2945 const parent_zir = &scope.getGenZIR().instructions;
2946 if (as_scope.rvalue_rl_count == 1) {
2947 // Busted! This expression didn't actually need a pointer.
2948 const expected_len = parent_zir.items.len + as_scope.instructions.items.len - 2;
2949 try parent_zir.ensureCapacity(mod.gpa, expected_len);
2950 for (as_scope.instructions.items) |src_inst| {
2951 if (src_inst == as_scope.rl_ptr.?) continue;
2952 if (src_inst.castTag(.store_to_block_ptr)) |store| {
2953 if (store.positionals.lhs == as_scope.rl_ptr.?) continue;
2954 }
2955 parent_zir.appendAssumeCapacity(src_inst);
2956 }
2957 assert(parent_zir.items.len == expected_len);
2958 const casted_result = try addZIRBinOp(mod, scope, dest_type.src, .as, dest_type, result);
2959 return rvalue(mod, scope, rl, casted_result);
2960 } else {
2961 try parent_zir.appendSlice(mod.gpa, as_scope.instructions.items);
2962 return result;
2644 }2963 }
2645}2964}
26462965
...@@ -2703,7 +3022,7 @@ fn compileError(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerE...@@ -2703,7 +3022,7 @@ fn compileError(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerE
2703 const src = tree.token_locs[call.builtin_token].start;3022 const src = tree.token_locs[call.builtin_token].start;
2704 const params = call.params();3023 const params = call.params();
2705 const target = try expr(mod, scope, .none, params[0]);3024 const target = try expr(mod, scope, .none, params[0]);
2706 return addZIRUnOp(mod, scope, src, .compileerror, target);3025 return addZIRUnOp(mod, scope, src, .compile_error, target);
2707}3026}
27083027
2709fn setEvalBranchQuota(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerError!*zir.Inst {3028fn setEvalBranchQuota(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerError!*zir.Inst {
...@@ -2728,12 +3047,12 @@ fn typeOf(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.BuiltinCal...@@ -2728,12 +3047,12 @@ fn typeOf(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.BuiltinCal
2728 return mod.failTok(scope, call.builtin_token, "expected at least 1 argument, found 0", .{});3047 return mod.failTok(scope, call.builtin_token, "expected at least 1 argument, found 0", .{});
2729 }3048 }
2730 if (params.len == 1) {3049 if (params.len == 1) {
2731 return rlWrap(mod, scope, rl, try addZIRUnOp(mod, scope, src, .typeof, try expr(mod, scope, .none, params[0])));3050 return rvalue(mod, scope, rl, try addZIRUnOp(mod, scope, src, .typeof, try expr(mod, scope, .none, params[0])));
2732 }3051 }
2733 var items = try arena.alloc(*zir.Inst, params.len);3052 var items = try arena.alloc(*zir.Inst, params.len);
2734 for (params) |param, param_i|3053 for (params) |param, param_i|
2735 items[param_i] = try expr(mod, scope, .none, param);3054 items[param_i] = try expr(mod, scope, .none, param);
2736 return rlWrap(mod, scope, rl, try addZIRInst(mod, scope, src, zir.Inst.TypeOfPeer, .{ .items = items }, .{}));3055 return rvalue(mod, scope, rl, try addZIRInst(mod, scope, src, zir.Inst.TypeOfPeer, .{ .items = items }, .{}));
2737}3056}
2738fn compileLog(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerError!*zir.Inst {3057fn compileLog(mod: *Module, scope: *Scope, call: *ast.Node.BuiltinCall) InnerError!*zir.Inst {
2739 const tree = scope.tree();3058 const tree = scope.tree();
...@@ -2756,7 +3075,7 @@ fn builtinCall(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.Built...@@ -2756,7 +3075,7 @@ fn builtinCall(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.Built
2756 // Also, some builtins have a variable number of parameters.3075 // Also, some builtins have a variable number of parameters.
27573076
2758 if (mem.eql(u8, builtin_name, "@ptrToInt")) {3077 if (mem.eql(u8, builtin_name, "@ptrToInt")) {
2759 return rlWrap(mod, scope, rl, try ptrToInt(mod, scope, call));3078 return rvalue(mod, scope, rl, try ptrToInt(mod, scope, call));
2760 } else if (mem.eql(u8, builtin_name, "@as")) {3079 } else if (mem.eql(u8, builtin_name, "@as")) {
2761 return as(mod, scope, rl, call);3080 return as(mod, scope, rl, call);
2762 } else if (mem.eql(u8, builtin_name, "@floatCast")) {3081 } else if (mem.eql(u8, builtin_name, "@floatCast")) {
...@@ -2769,9 +3088,9 @@ fn builtinCall(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.Built...@@ -2769,9 +3088,9 @@ fn builtinCall(mod: *Module, scope: *Scope, rl: ResultLoc, call: *ast.Node.Built
2769 return typeOf(mod, scope, rl, call);3088 return typeOf(mod, scope, rl, call);
2770 } else if (mem.eql(u8, builtin_name, "@breakpoint")) {3089 } else if (mem.eql(u8, builtin_name, "@breakpoint")) {
2771 const src = tree.token_locs[call.builtin_token].start;3090 const src = tree.token_locs[call.builtin_token].start;
2772 return rlWrap(mod, scope, rl, try addZIRNoOp(mod, scope, src, .breakpoint));3091 return rvalue(mod, scope, rl, try addZIRNoOp(mod, scope, src, .breakpoint));
2773 } else if (mem.eql(u8, builtin_name, "@import")) {3092 } else if (mem.eql(u8, builtin_name, "@import")) {
2774 return rlWrap(mod, scope, rl, try import(mod, scope, call));3093 return rvalue(mod, scope, rl, try import(mod, scope, call));
2775 } else if (mem.eql(u8, builtin_name, "@compileError")) {3094 } else if (mem.eql(u8, builtin_name, "@compileError")) {
2776 return compileError(mod, scope, call);3095 return compileError(mod, scope, call);
2777 } else if (mem.eql(u8, builtin_name, "@setEvalBranchQuota")) {3096 } else if (mem.eql(u8, builtin_name, "@setEvalBranchQuota")) {
...@@ -2806,13 +3125,13 @@ fn callExpr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.Call) In...@@ -2806,13 +3125,13 @@ fn callExpr(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node.Call) In
2806 .args = args,3125 .args = args,
2807 }, .{});3126 }, .{});
2808 // TODO function call with result location3127 // TODO function call with result location
2809 return rlWrap(mod, scope, rl, result);3128 return rvalue(mod, scope, rl, result);
2810}3129}
28113130
2812fn unreach(mod: *Module, scope: *Scope, unreach_node: *ast.Node.OneToken) InnerError!*zir.Inst {3131fn unreach(mod: *Module, scope: *Scope, unreach_node: *ast.Node.OneToken) InnerError!*zir.Inst {
2813 const tree = scope.tree();3132 const tree = scope.tree();
2814 const src = tree.token_locs[unreach_node.token].start;3133 const src = tree.token_locs[unreach_node.token].start;
2815 return addZIRNoOp(mod, scope, src, .@"unreachable");3134 return addZIRNoOp(mod, scope, src, .unreachable_safe);
2816}3135}
28173136
2818fn getSimplePrimitiveValue(name: []const u8) ?TypedValue {3137fn getSimplePrimitiveValue(name: []const u8) ?TypedValue {
...@@ -3077,7 +3396,6 @@ fn nodeMayNeedMemoryLocation(start_node: *ast.Node, scope: *Scope) bool {...@@ -3077,7 +3396,6 @@ fn nodeMayNeedMemoryLocation(start_node: *ast.Node, scope: *Scope) bool {
3077 .{ "@round", false },3396 .{ "@round", false },
3078 .{ "@subWithOverflow", false },3397 .{ "@subWithOverflow", false },
3079 .{ "@tagName", false },3398 .{ "@tagName", false },
3080 .{ "@TagType", false },
3081 .{ "@This", false },3399 .{ "@This", false },
3082 .{ "@truncate", false },3400 .{ "@truncate", false },
3083 .{ "@Type", false },3401 .{ "@Type", false },
...@@ -3100,7 +3418,7 @@ fn nodeMayNeedMemoryLocation(start_node: *ast.Node, scope: *Scope) bool {...@@ -3100,7 +3418,7 @@ fn nodeMayNeedMemoryLocation(start_node: *ast.Node, scope: *Scope) bool {
3100/// result locations must call this function on their result.3418/// result locations must call this function on their result.
3101/// As an example, if the `ResultLoc` is `ptr`, it will write the result to the pointer.3419/// As an example, if the `ResultLoc` is `ptr`, it will write the result to the pointer.
3102/// If the `ResultLoc` is `ty`, it will coerce the result to the type.3420/// If the `ResultLoc` is `ty`, it will coerce the result to the type.
3103fn rlWrap(mod: *Module, scope: *Scope, rl: ResultLoc, result: *zir.Inst) InnerError!*zir.Inst {3421fn rvalue(mod: *Module, scope: *Scope, rl: ResultLoc, result: *zir.Inst) InnerError!*zir.Inst {
3104 switch (rl) {3422 switch (rl) {
3105 .none => return result,3423 .none => return result,
3106 .discard => {3424 .discard => {
...@@ -3114,42 +3432,97 @@ fn rlWrap(mod: *Module, scope: *Scope, rl: ResultLoc, result: *zir.Inst) InnerEr...@@ -3114,42 +3432,97 @@ fn rlWrap(mod: *Module, scope: *Scope, rl: ResultLoc, result: *zir.Inst) InnerEr
3114 },3432 },
3115 .ty => |ty_inst| return addZIRBinOp(mod, scope, result.src, .as, ty_inst, result),3433 .ty => |ty_inst| return addZIRBinOp(mod, scope, result.src, .as, ty_inst, result),
3116 .ptr => |ptr_inst| {3434 .ptr => |ptr_inst| {
3117 const casted_result = try addZIRInst(mod, scope, result.src, zir.Inst.CoerceToPtrElem, .{3435 _ = try addZIRBinOp(mod, scope, result.src, .store, ptr_inst, result);
3118 .ptr = ptr_inst,3436 return result;
3119 .value = result,
3120 }, .{});
3121 _ = try addZIRBinOp(mod, scope, result.src, .store, ptr_inst, casted_result);
3122 return casted_result;
3123 },3437 },
3124 .bitcasted_ptr => |bitcasted_ptr| {3438 .bitcasted_ptr => |bitcasted_ptr| {
3125 return mod.fail(scope, result.src, "TODO implement rlWrap .bitcasted_ptr", .{});3439 return mod.fail(scope, result.src, "TODO implement rvalue .bitcasted_ptr", .{});
3126 },3440 },
3127 .inferred_ptr => |alloc| {3441 .inferred_ptr => |alloc| {
3128 _ = try addZIRBinOp(mod, scope, result.src, .store_to_inferred_ptr, &alloc.base, result);3442 _ = try addZIRBinOp(mod, scope, result.src, .store_to_inferred_ptr, &alloc.base, result);
3129 return result;3443 return result;
3130 },3444 },
3131 .block_ptr => |block_ptr| {3445 .block_ptr => |block_scope| {
3132 return mod.fail(scope, result.src, "TODO implement rlWrap .block_ptr", .{});3446 block_scope.rvalue_rl_count += 1;
3447 _ = try addZIRBinOp(mod, scope, result.src, .store_to_block_ptr, block_scope.rl_ptr.?, result);
3448 return result;
3133 },3449 },
3134 }3450 }
3135}3451}
31363452
3137fn rlWrapVoid(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node, result: void) InnerError!*zir.Inst {3453fn rvalueVoid(mod: *Module, scope: *Scope, rl: ResultLoc, node: *ast.Node, result: void) InnerError!*zir.Inst {
3138 const src = scope.tree().token_locs[node.firstToken()].start;3454 const src = scope.tree().token_locs[node.firstToken()].start;
3139 const void_inst = try addZIRInstConst(mod, scope, src, .{3455 const void_inst = try addZIRInstConst(mod, scope, src, .{
3140 .ty = Type.initTag(.void),3456 .ty = Type.initTag(.void),
3141 .val = Value.initTag(.void_value),3457 .val = Value.initTag(.void_value),
3142 });3458 });
3143 return rlWrap(mod, scope, rl, void_inst);3459 return rvalue(mod, scope, rl, void_inst);
3460}
3461
3462fn rlStrategy(rl: ResultLoc, block_scope: *Scope.GenZIR) ResultLoc.Strategy {
3463 var elide_store_to_block_ptr_instructions = false;
3464 switch (rl) {
3465 // In this branch there will not be any store_to_block_ptr instructions.
3466 .discard, .none, .ty, .ref => return .{
3467 .tag = .break_operand,
3468 .elide_store_to_block_ptr_instructions = false,
3469 },
3470 // The pointer got passed through to the sub-expressions, so we will use
3471 // break_void here.
3472 // In this branch there will not be any store_to_block_ptr instructions.
3473 .ptr => return .{
3474 .tag = .break_void,
3475 .elide_store_to_block_ptr_instructions = false,
3476 },
3477 .inferred_ptr, .bitcasted_ptr, .block_ptr => {
3478 if (block_scope.rvalue_rl_count == block_scope.break_count) {
3479 // Neither prong of the if consumed the result location, so we can
3480 // use break instructions to create an rvalue.
3481 return .{
3482 .tag = .break_operand,
3483 .elide_store_to_block_ptr_instructions = true,
3484 };
3485 } else {
3486 // Allow the store_to_block_ptr instructions to remain so that
3487 // semantic analysis can turn them into bitcasts.
3488 return .{
3489 .tag = .break_void,
3490 .elide_store_to_block_ptr_instructions = false,
3491 };
3492 }
3493 },
3494 }
3144}3495}
31453496
3146/// TODO go over all the callsites and see where we can introduce "by-value" ZIR instructions3497fn setBlockResultLoc(block_scope: *Scope.GenZIR, parent_rl: ResultLoc) void {
3147/// to save ZIR memory. For example, see DeclVal vs DeclRef.3498 // Depending on whether the result location is a pointer or value, different
3148/// Do not add additional callsites to this function.3499 // ZIR needs to be generated. In the former case we rely on storing to the
3149fn rlWrapPtr(mod: *Module, scope: *Scope, rl: ResultLoc, ptr: *zir.Inst) InnerError!*zir.Inst {3500 // pointer to communicate the result, and use breakvoid; in the latter case
3150 if (rl == .ref) return ptr;3501 // the block break instructions will have the result values.
3502 // One more complication: when the result location is a pointer, we detect
3503 // the scenario where the result location is not consumed. In this case
3504 // we emit ZIR for the block break instructions to have the result values,
3505 // and then rvalue() on that to pass the value to the result location.
3506 switch (parent_rl) {
3507 .discard, .none, .ty, .ptr, .ref => {
3508 block_scope.break_result_loc = parent_rl;
3509 },
31513510
3152 return rlWrap(mod, scope, rl, try addZIRUnOp(mod, scope, ptr.src, .deref, ptr));3511 .inferred_ptr => |ptr| {
3512 block_scope.rl_ptr = &ptr.base;
3513 block_scope.break_result_loc = .{ .block_ptr = block_scope };
3514 },
3515
3516 .bitcasted_ptr => |ptr| {
3517 block_scope.rl_ptr = &ptr.base;
3518 block_scope.break_result_loc = .{ .block_ptr = block_scope };
3519 },
3520
3521 .block_ptr => |parent_block_scope| {
3522 block_scope.rl_ptr = parent_block_scope.rl_ptr.?;
3523 block_scope.break_result_loc = .{ .block_ptr = block_scope };
3524 },
3525 }
3153}3526}
31543527
3155pub fn addZirInstTag(3528pub fn addZirInstTag(
src/clang.zig+4-1
...@@ -848,7 +848,10 @@ pub const UnaryOperator = opaque {...@@ -848,7 +848,10 @@ pub const UnaryOperator = opaque {
848 extern fn ZigClangUnaryOperator_getBeginLoc(*const UnaryOperator) SourceLocation;848 extern fn ZigClangUnaryOperator_getBeginLoc(*const UnaryOperator) SourceLocation;
849};849};
850850
851pub const ValueDecl = opaque {};851pub const ValueDecl = opaque {
852 pub const getType = ZigClangValueDecl_getType;
853 extern fn ZigClangValueDecl_getType(*const ValueDecl) QualType;
854};
852855
853pub const VarDecl = opaque {856pub const VarDecl = opaque {
854 pub const getLocation = ZigClangVarDecl_getLocation;857 pub const getLocation = ZigClangVarDecl_getLocation;
src/clang_options_data.zig+8-1
...@@ -4305,7 +4305,14 @@ flagpd1("rewrite-macros"),...@@ -4305,7 +4305,14 @@ flagpd1("rewrite-macros"),
4305flagpd1("rewrite-objc"),4305flagpd1("rewrite-objc"),
4306flagpd1("rewrite-test"),4306flagpd1("rewrite-test"),
4307sepd1("rpath"),4307sepd1("rpath"),
4308flagpd1("s"),4308.{
4309 .name = "s",
4310 .syntax = .flag,
4311 .zig_equivalent = .strip,
4312 .pd1 = true,
4313 .pd2 = false,
4314 .psl = false,
4315},
4309.{4316.{
4310 .name = "save-stats",4317 .name = "save-stats",
4311 .syntax = .flag,4318 .syntax = .flag,
src/codegen.zig+136-93
...@@ -840,14 +840,15 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -840,14 +840,15 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
840 .arg => return self.genArg(inst.castTag(.arg).?),840 .arg => return self.genArg(inst.castTag(.arg).?),
841 .assembly => return self.genAsm(inst.castTag(.assembly).?),841 .assembly => return self.genAsm(inst.castTag(.assembly).?),
842 .bitcast => return self.genBitCast(inst.castTag(.bitcast).?),842 .bitcast => return self.genBitCast(inst.castTag(.bitcast).?),
843 .bitand => return self.genBitAnd(inst.castTag(.bitand).?),843 .bit_and => return self.genBitAnd(inst.castTag(.bit_and).?),
844 .bitor => return self.genBitOr(inst.castTag(.bitor).?),844 .bit_or => return self.genBitOr(inst.castTag(.bit_or).?),
845 .block => return self.genBlock(inst.castTag(.block).?),845 .block => return self.genBlock(inst.castTag(.block).?),
846 .br => return self.genBr(inst.castTag(.br).?),846 .br => return self.genBr(inst.castTag(.br).?),
847 .br_block_flat => return self.genBrBlockFlat(inst.castTag(.br_block_flat).?),
847 .breakpoint => return self.genBreakpoint(inst.src),848 .breakpoint => return self.genBreakpoint(inst.src),
848 .brvoid => return self.genBrVoid(inst.castTag(.brvoid).?),849 .br_void => return self.genBrVoid(inst.castTag(.br_void).?),
849 .booland => return self.genBoolOp(inst.castTag(.booland).?),850 .bool_and => return self.genBoolOp(inst.castTag(.bool_and).?),
850 .boolor => return self.genBoolOp(inst.castTag(.boolor).?),851 .bool_or => return self.genBoolOp(inst.castTag(.bool_or).?),
851 .call => return self.genCall(inst.castTag(.call).?),852 .call => return self.genCall(inst.castTag(.call).?),
852 .cmp_lt => return self.genCmp(inst.castTag(.cmp_lt).?, .lt),853 .cmp_lt => return self.genCmp(inst.castTag(.cmp_lt).?, .lt),
853 .cmp_lte => return self.genCmp(inst.castTag(.cmp_lte).?, .lte),854 .cmp_lte => return self.genCmp(inst.castTag(.cmp_lte).?, .lte),
...@@ -1097,7 +1098,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -1097,7 +1098,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
1097 if (inst.base.isUnused())1098 if (inst.base.isUnused())
1098 return MCValue.dead;1099 return MCValue.dead;
1099 switch (arch) {1100 switch (arch) {
1100 .arm, .armeb => return try self.genArmBinOp(&inst.base, inst.lhs, inst.rhs, .bitand),1101 .arm, .armeb => return try self.genArmBinOp(&inst.base, inst.lhs, inst.rhs, .bit_and),
1101 else => return self.fail(inst.base.src, "TODO implement bitwise and for {}", .{self.target.cpu.arch}),1102 else => return self.fail(inst.base.src, "TODO implement bitwise and for {}", .{self.target.cpu.arch}),
1102 }1103 }
1103 }1104 }
...@@ -1107,7 +1108,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -1107,7 +1108,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
1107 if (inst.base.isUnused())1108 if (inst.base.isUnused())
1108 return MCValue.dead;1109 return MCValue.dead;
1109 switch (arch) {1110 switch (arch) {
1110 .arm, .armeb => return try self.genArmBinOp(&inst.base, inst.lhs, inst.rhs, .bitor),1111 .arm, .armeb => return try self.genArmBinOp(&inst.base, inst.lhs, inst.rhs, .bit_or),
1111 else => return self.fail(inst.base.src, "TODO implement bitwise or for {}", .{self.target.cpu.arch}),1112 else => return self.fail(inst.base.src, "TODO implement bitwise or for {}", .{self.target.cpu.arch}),
1112 }1113 }
1113 }1114 }
...@@ -1294,38 +1295,31 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -1294,38 +1295,31 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
1294 const rhs = try self.resolveInst(op_rhs);1295 const rhs = try self.resolveInst(op_rhs);
12951296
1296 // Destination must be a register1297 // Destination must be a register
1297 // Source may be register, memory or an immediate
1298 //
1299 // So there are two options: (lhs is src and rhs is dest)
1300 // or (rhs is src and lhs is dest)
1301 const lhs_is_dest = blk: {
1302 if (self.reuseOperand(inst, 0, lhs)) {
1303 break :blk true;
1304 } else if (self.reuseOperand(inst, 1, rhs)) {
1305 break :blk false;
1306 } else {
1307 break :blk lhs == .register;
1308 }
1309 };
1310
1311 var dst_mcv: MCValue = undefined;1298 var dst_mcv: MCValue = undefined;
1312 var src_mcv: MCValue = undefined;1299 var lhs_mcv: MCValue = undefined;
1313 var src_inst: *ir.Inst = undefined;1300 var rhs_mcv: MCValue = undefined;
1314 if (lhs_is_dest) {1301 if (self.reuseOperand(inst, 0, lhs)) {
1315 // LHS is the destination1302 // LHS is the destination
1316 // RHS is the source1303 // RHS is the source
1317 src_inst = op_rhs;1304 lhs_mcv = if (lhs != .register) try self.copyToNewRegister(inst, lhs) else lhs;
1318 src_mcv = rhs;1305 rhs_mcv = rhs;
1319 dst_mcv = if (lhs != .register) try self.copyToNewRegister(inst, lhs) else lhs;1306 dst_mcv = lhs_mcv;
1320 } else {1307 } else if (self.reuseOperand(inst, 1, rhs)) {
1321 // RHS is the destination1308 // RHS is the destination
1322 // LHS is the source1309 // LHS is the source
1323 src_inst = op_lhs;1310 lhs_mcv = lhs;
1324 src_mcv = lhs;1311 rhs_mcv = if (rhs != .register) try self.copyToNewRegister(inst, rhs) else rhs;
1325 dst_mcv = if (rhs != .register) try self.copyToNewRegister(inst, rhs) else rhs;1312 dst_mcv = rhs_mcv;
1313 } else {
1314 // TODO save 1 copy instruction by directly allocating the destination register
1315 // LHS is the destination
1316 // RHS is the source
1317 lhs_mcv = try self.copyToNewRegister(inst, lhs);
1318 rhs_mcv = rhs;
1319 dst_mcv = lhs_mcv;
1326 }1320 }
13271321
1328 try self.genArmBinOpCode(inst.src, dst_mcv.register, src_mcv, lhs_is_dest, op);1322 try self.genArmBinOpCode(inst.src, dst_mcv.register, lhs_mcv, rhs_mcv, op);
1329 return dst_mcv;1323 return dst_mcv;
1330 }1324 }
13311325
...@@ -1333,11 +1327,17 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -1333,11 +1327,17 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
1333 self: *Self,1327 self: *Self,
1334 src: usize,1328 src: usize,
1335 dst_reg: Register,1329 dst_reg: Register,
1336 src_mcv: MCValue,1330 lhs_mcv: MCValue,
1337 lhs_is_dest: bool,1331 rhs_mcv: MCValue,
1338 op: ir.Inst.Tag,1332 op: ir.Inst.Tag,
1339 ) !void {1333 ) !void {
1340 const operand = switch (src_mcv) {1334 assert(lhs_mcv == .register or lhs_mcv == .register);
1335
1336 const swap_lhs_and_rhs = rhs_mcv == .register and lhs_mcv != .register;
1337 const op1 = if (swap_lhs_and_rhs) rhs_mcv.register else lhs_mcv.register;
1338 const op2 = if (swap_lhs_and_rhs) lhs_mcv else rhs_mcv;
1339
1340 const operand = switch (op2) {
1341 .none => unreachable,1341 .none => unreachable,
1342 .undef => unreachable,1342 .undef => unreachable,
1343 .dead, .unreach => unreachable,1343 .dead, .unreach => unreachable,
...@@ -1351,37 +1351,37 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -1351,37 +1351,37 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
1351 // Load immediate into register if it doesn't fit1351 // Load immediate into register if it doesn't fit
1352 // as an operand1352 // as an operand
1353 break :blk Instruction.Operand.fromU32(@intCast(u32, imm)) orelse1353 break :blk Instruction.Operand.fromU32(@intCast(u32, imm)) orelse
1354 Instruction.Operand.reg(try self.copyToTmpRegister(src, src_mcv), Instruction.Operand.Shift.none);1354 Instruction.Operand.reg(try self.copyToTmpRegister(src, op2), Instruction.Operand.Shift.none);
1355 },1355 },
1356 .register => |src_reg| Instruction.Operand.reg(src_reg, Instruction.Operand.Shift.none),1356 .register => |reg| Instruction.Operand.reg(reg, Instruction.Operand.Shift.none),
1357 .stack_offset,1357 .stack_offset,
1358 .embedded_in_code,1358 .embedded_in_code,
1359 .memory,1359 .memory,
1360 => Instruction.Operand.reg(try self.copyToTmpRegister(src, src_mcv), Instruction.Operand.Shift.none),1360 => Instruction.Operand.reg(try self.copyToTmpRegister(src, op2), Instruction.Operand.Shift.none),
1361 };1361 };
13621362
1363 switch (op) {1363 switch (op) {
1364 .add => {1364 .add => {
1365 writeInt(u32, try self.code.addManyAsArray(4), Instruction.add(.al, dst_reg, dst_reg, operand).toU32());1365 writeInt(u32, try self.code.addManyAsArray(4), Instruction.add(.al, dst_reg, op1, operand).toU32());
1366 },1366 },
1367 .sub => {1367 .sub => {
1368 if (lhs_is_dest) {1368 if (swap_lhs_and_rhs) {
1369 writeInt(u32, try self.code.addManyAsArray(4), Instruction.sub(.al, dst_reg, dst_reg, operand).toU32());1369 writeInt(u32, try self.code.addManyAsArray(4), Instruction.rsb(.al, dst_reg, op1, operand).toU32());
1370 } else {1370 } else {
1371 writeInt(u32, try self.code.addManyAsArray(4), Instruction.rsb(.al, dst_reg, dst_reg, operand).toU32());1371 writeInt(u32, try self.code.addManyAsArray(4), Instruction.sub(.al, dst_reg, op1, operand).toU32());
1372 }1372 }
1373 },1373 },
1374 .booland, .bitand => {1374 .bool_and, .bit_and => {
1375 writeInt(u32, try self.code.addManyAsArray(4), Instruction.@"and"(.al, dst_reg, dst_reg, operand).toU32());1375 writeInt(u32, try self.code.addManyAsArray(4), Instruction.@"and"(.al, dst_reg, op1, operand).toU32());
1376 },1376 },
1377 .boolor, .bitor => {1377 .bool_or, .bit_or => {
1378 writeInt(u32, try self.code.addManyAsArray(4), Instruction.orr(.al, dst_reg, dst_reg, operand).toU32());1378 writeInt(u32, try self.code.addManyAsArray(4), Instruction.orr(.al, dst_reg, op1, operand).toU32());
1379 },1379 },
1380 .not, .xor => {1380 .not, .xor => {
1381 writeInt(u32, try self.code.addManyAsArray(4), Instruction.eor(.al, dst_reg, dst_reg, operand).toU32());1381 writeInt(u32, try self.code.addManyAsArray(4), Instruction.eor(.al, dst_reg, op1, operand).toU32());
1382 },1382 },
1383 .cmp_eq => {1383 .cmp_eq => {
1384 writeInt(u32, try self.code.addManyAsArray(4), Instruction.cmp(.al, dst_reg, operand).toU32());1384 writeInt(u32, try self.code.addManyAsArray(4), Instruction.cmp(.al, op1, operand).toU32());
1385 },1385 },
1386 else => unreachable, // not a binary instruction1386 else => unreachable, // not a binary instruction
1387 }1387 }
...@@ -1566,6 +1566,59 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -1566,6 +1566,59 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
1566 }1566 }
1567 }1567 }
15681568
1569 fn genArgDbgInfo(self: *Self, inst: *ir.Inst.Arg, mcv: MCValue) !void {
1570 const name_with_null = inst.name[0 .. mem.lenZ(inst.name) + 1];
1571
1572 switch (mcv) {
1573 .register => |reg| {
1574 // Copy arg to stack for better debugging
1575 const ty = inst.base.ty;
1576 const abi_size = math.cast(u32, ty.abiSize(self.target.*)) catch {
1577 return self.fail(inst.base.src, "type '{}' too big to fit into stack frame", .{ty});
1578 };
1579 const abi_align = ty.abiAlignment(self.target.*);
1580 const stack_offset = try self.allocMem(&inst.base, abi_size, abi_align);
1581 try self.genSetStack(inst.base.src, ty, stack_offset, MCValue{ .register = reg });
1582 const adjusted_stack_offset = math.negateCast(stack_offset + abi_size) catch {
1583 return self.fail(inst.base.src, "Stack offset too large for arguments", .{});
1584 };
1585
1586 switch (self.debug_output) {
1587 .dwarf => |dbg_out| {
1588 switch (arch) {
1589 .arm, .armeb => {
1590 try dbg_out.dbg_info.append(link.File.Elf.abbrev_parameter);
1591
1592 // Get length of the LEB128 stack offset
1593 var counting_writer = std.io.countingWriter(std.io.null_writer);
1594 leb128.writeILEB128(counting_writer.writer(), adjusted_stack_offset) catch unreachable;
1595
1596 // DW.AT_location, DW.FORM_exprloc
1597 // ULEB128 dwarf expression length
1598 try leb128.writeULEB128(dbg_out.dbg_info.writer(), counting_writer.bytes_written + 1);
1599 try dbg_out.dbg_info.append(DW.OP_breg11);
1600 try leb128.writeILEB128(dbg_out.dbg_info.writer(), adjusted_stack_offset);
1601 },
1602 else => {
1603 try dbg_out.dbg_info.ensureCapacity(dbg_out.dbg_info.items.len + 3);
1604 dbg_out.dbg_info.appendAssumeCapacity(link.File.Elf.abbrev_parameter);
1605 dbg_out.dbg_info.appendSliceAssumeCapacity(&[2]u8{ // DW.AT_location, DW.FORM_exprloc
1606 1, // ULEB128 dwarf expression length
1607 reg.dwarfLocOp(),
1608 });
1609 },
1610 }
1611 try dbg_out.dbg_info.ensureCapacity(dbg_out.dbg_info.items.len + 5 + name_with_null.len);
1612 try self.addDbgInfoTypeReloc(inst.base.ty); // DW.AT_type, DW.FORM_ref4
1613 dbg_out.dbg_info.appendSliceAssumeCapacity(name_with_null); // DW.AT_name, DW.FORM_string
1614 },
1615 .none => {},
1616 }
1617 },
1618 else => {},
1619 }
1620 }
1621
1569 fn genArg(self: *Self, inst: *ir.Inst.Arg) !MCValue {1622 fn genArg(self: *Self, inst: *ir.Inst.Arg) !MCValue {
1570 const arg_index = self.arg_index;1623 const arg_index = self.arg_index;
1571 self.arg_index += 1;1624 self.arg_index += 1;
...@@ -1573,32 +1626,17 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -1573,32 +1626,17 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
1573 if (FreeRegInt == u0) {1626 if (FreeRegInt == u0) {
1574 return self.fail(inst.base.src, "TODO implement Register enum for {}", .{self.target.cpu.arch});1627 return self.fail(inst.base.src, "TODO implement Register enum for {}", .{self.target.cpu.arch});
1575 }1628 }
1576 if (inst.base.isUnused())
1577 return MCValue.dead;
1578
1579 try self.registers.ensureCapacity(self.gpa, self.registers.count() + 1);
15801629
1581 const result = self.args[arg_index];1630 const result = self.args[arg_index];
1631 try self.genArgDbgInfo(inst, result);
1632
1633 if (inst.base.isUnused())
1634 return MCValue.dead;
15821635
1583 const name_with_null = inst.name[0 .. mem.lenZ(inst.name) + 1];
1584 switch (result) {1636 switch (result) {
1585 .register => |reg| {1637 .register => |reg| {
1586 self.registers.putAssumeCapacityNoClobber(toCanonicalReg(reg), &inst.base);1638 try self.registers.putNoClobber(self.gpa, toCanonicalReg(reg), &inst.base);
1587 self.markRegUsed(reg);1639 self.markRegUsed(reg);
1588
1589 switch (self.debug_output) {
1590 .dwarf => |dbg_out| {
1591 try dbg_out.dbg_info.ensureCapacity(dbg_out.dbg_info.items.len + 8 + name_with_null.len);
1592 dbg_out.dbg_info.appendAssumeCapacity(link.File.Elf.abbrev_parameter);
1593 dbg_out.dbg_info.appendSliceAssumeCapacity(&[2]u8{ // DW.AT_location, DW.FORM_exprloc
1594 1, // ULEB128 dwarf expression length
1595 reg.dwarfLocOp(),
1596 });
1597 try self.addDbgInfoTypeReloc(inst.base.ty); // DW.AT_type, DW.FORM_ref4
1598 dbg_out.dbg_info.appendSliceAssumeCapacity(name_with_null); // DW.AT_name, DW.FORM_string
1599 },
1600 .none => {},
1601 }
1602 },1640 },
1603 else => {},1641 else => {},
1604 }1642 }
...@@ -2096,7 +2134,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -2096,7 +2134,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
2096 const src_mcv = rhs;2134 const src_mcv = rhs;
2097 const dst_mcv = if (lhs != .register) try self.copyToNewRegister(&inst.base, lhs) else lhs;2135 const dst_mcv = if (lhs != .register) try self.copyToNewRegister(&inst.base, lhs) else lhs;
20982136
2099 try self.genArmBinOpCode(inst.base.src, dst_mcv.register, src_mcv, true, .cmp_eq);2137 try self.genArmBinOpCode(inst.base.src, dst_mcv.register, dst_mcv, src_mcv, .cmp_eq);
2100 const info = inst.lhs.ty.intInfo(self.target.*);2138 const info = inst.lhs.ty.intInfo(self.target.*);
2101 return switch (info.signedness) {2139 return switch (info.signedness) {
2102 .signed => MCValue{ .compare_flags_signed = op },2140 .signed => MCValue{ .compare_flags_signed = op },
...@@ -2185,7 +2223,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -2185,7 +2223,7 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
2185 writeInt(u32, try self.code.addManyAsArray(4), Instruction.cmp(.al, reg, op).toU32());2223 writeInt(u32, try self.code.addManyAsArray(4), Instruction.cmp(.al, reg, op).toU32());
2186 break :blk .ne;2224 break :blk .ne;
2187 },2225 },
2188 else => return self.fail(inst.base.src, "TODO implement condbr {} when condition is {}", .{ self.target.cpu.arch, @tagName(cond) }),2226 else => return self.fail(inst.base.src, "TODO implement condbr {} when condition is {s}", .{ self.target.cpu.arch, @tagName(cond) }),
2189 };2227 };
21902228
2191 const reloc = Reloc{2229 const reloc = Reloc{
...@@ -2441,17 +2479,14 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -2441,17 +2479,14 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
2441 }2479 }
2442 }2480 }
24432481
2482 fn genBrBlockFlat(self: *Self, inst: *ir.Inst.BrBlockFlat) !MCValue {
2483 try self.genBody(inst.body);
2484 const last = inst.body.instructions[inst.body.instructions.len - 1];
2485 return self.br(inst.base.src, inst.block, last);
2486 }
2487
2444 fn genBr(self: *Self, inst: *ir.Inst.Br) !MCValue {2488 fn genBr(self: *Self, inst: *ir.Inst.Br) !MCValue {
2445 if (inst.operand.ty.hasCodeGenBits()) {2489 return self.br(inst.base.src, inst.block, inst.operand);
2446 const operand = try self.resolveInst(inst.operand);
2447 const block_mcv = @bitCast(MCValue, inst.block.codegen.mcv);
2448 if (block_mcv == .none) {
2449 inst.block.codegen.mcv = @bitCast(AnyMCValue, operand);
2450 } else {
2451 try self.setRegOrMem(inst.base.src, inst.block.base.ty, block_mcv, operand);
2452 }
2453 }
2454 return self.brVoid(inst.base.src, inst.block);
2455 }2490 }
24562491
2457 fn genBrVoid(self: *Self, inst: *ir.Inst.BrVoid) !MCValue {2492 fn genBrVoid(self: *Self, inst: *ir.Inst.BrVoid) !MCValue {
...@@ -2464,20 +2499,33 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -2464,20 +2499,33 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
2464 switch (arch) {2499 switch (arch) {
2465 .x86_64 => switch (inst.base.tag) {2500 .x86_64 => switch (inst.base.tag) {
2466 // lhs AND rhs2501 // lhs AND rhs
2467 .booland => return try self.genX8664BinMath(&inst.base, inst.lhs, inst.rhs, 4, 0x20),2502 .bool_and => return try self.genX8664BinMath(&inst.base, inst.lhs, inst.rhs, 4, 0x20),
2468 // lhs OR rhs2503 // lhs OR rhs
2469 .boolor => return try self.genX8664BinMath(&inst.base, inst.lhs, inst.rhs, 1, 0x08),2504 .bool_or => return try self.genX8664BinMath(&inst.base, inst.lhs, inst.rhs, 1, 0x08),
2470 else => unreachable, // Not a boolean operation2505 else => unreachable, // Not a boolean operation
2471 },2506 },
2472 .arm, .armeb => switch (inst.base.tag) {2507 .arm, .armeb => switch (inst.base.tag) {
2473 .booland => return try self.genArmBinOp(&inst.base, inst.lhs, inst.rhs, .booland),2508 .bool_and => return try self.genArmBinOp(&inst.base, inst.lhs, inst.rhs, .bool_and),
2474 .boolor => return try self.genArmBinOp(&inst.base, inst.lhs, inst.rhs, .boolor),2509 .bool_or => return try self.genArmBinOp(&inst.base, inst.lhs, inst.rhs, .bool_or),
2475 else => unreachable, // Not a boolean operation2510 else => unreachable, // Not a boolean operation
2476 },2511 },
2477 else => return self.fail(inst.base.src, "TODO implement boolean operations for {}", .{self.target.cpu.arch}),2512 else => return self.fail(inst.base.src, "TODO implement boolean operations for {}", .{self.target.cpu.arch}),
2478 }2513 }
2479 }2514 }
24802515
2516 fn br(self: *Self, src: usize, block: *ir.Inst.Block, operand: *ir.Inst) !MCValue {
2517 if (operand.ty.hasCodeGenBits()) {
2518 const operand_mcv = try self.resolveInst(operand);
2519 const block_mcv = @bitCast(MCValue, block.codegen.mcv);
2520 if (block_mcv == .none) {
2521 block.codegen.mcv = @bitCast(AnyMCValue, operand_mcv);
2522 } else {
2523 try self.setRegOrMem(src, block.base.ty, block_mcv, operand_mcv);
2524 }
2525 }
2526 return self.brVoid(src, block);
2527 }
2528
2481 fn brVoid(self: *Self, src: usize, block: *ir.Inst.Block) !MCValue {2529 fn brVoid(self: *Self, src: usize, block: *ir.Inst.Block) !MCValue {
2482 // Emit a jump with a relocation. It will be patched up after the block ends.2530 // Emit a jump with a relocation. It will be patched up after the block ends.
2483 try block.codegen.relocs.ensureCapacity(self.gpa, block.codegen.relocs.items.len + 1);2531 try block.codegen.relocs.ensureCapacity(self.gpa, block.codegen.relocs.items.len + 1);
...@@ -3694,10 +3742,8 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -3694,10 +3742,8 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
3694 var nsaa: u32 = 0; // Next stacked argument address3742 var nsaa: u32 = 0; // Next stacked argument address
36953743
3696 for (param_types) |ty, i| {3744 for (param_types) |ty, i| {
3697 if (ty.abiAlignment(self.target.*) == 8) {3745 if (ty.abiAlignment(self.target.*) == 8)
3698 // Round up NCRN to the next even number3746 ncrn = std.mem.alignForwardGeneric(usize, ncrn, 2);
3699 ncrn += ncrn % 2;
3700 }
37013747
3702 const param_size = @intCast(u32, ty.abiSize(self.target.*));3748 const param_size = @intCast(u32, ty.abiSize(self.target.*));
3703 if (std.math.divCeil(u32, param_size, 4) catch unreachable <= 4 - ncrn) {3749 if (std.math.divCeil(u32, param_size, 4) catch unreachable <= 4 - ncrn) {
...@@ -3711,11 +3757,8 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {...@@ -3711,11 +3757,8 @@ fn Function(comptime arch: std.Target.Cpu.Arch) type {
3711 return self.fail(src, "TODO MCValues split between registers and stack", .{});3757 return self.fail(src, "TODO MCValues split between registers and stack", .{});
3712 } else {3758 } else {
3713 ncrn = 4;3759 ncrn = 4;
3714 if (ty.abiAlignment(self.target.*) == 8) {3760 if (ty.abiAlignment(self.target.*) == 8)
3715 if (nsaa % 8 != 0) {3761 nsaa = std.mem.alignForwardGeneric(u32, nsaa, 8);
3716 nsaa += 8 - (nsaa % 8);
3717 }
3718 }
37193762
3720 result.args[i] = .{ .stack_offset = nsaa };3763 result.args[i] = .{ .stack_offset = nsaa };
3721 nsaa += param_size;3764 nsaa += param_size;
src/codegen/arm.zig+1-1
...@@ -186,7 +186,7 @@ pub const Psr = enum {...@@ -186,7 +186,7 @@ pub const Psr = enum {
186 spsr,186 spsr,
187};187};
188188
189pub const callee_preserved_regs = [_]Register{ .r0, .r1, .r2, .r3, .r4, .r5, .r6, .r7, .r8, .r10 };189pub const callee_preserved_regs = [_]Register{ .r4, .r5, .r6, .r7, .r8, .r10 };
190pub const c_abi_int_param_regs = [_]Register{ .r0, .r1, .r2, .r3 };190pub const c_abi_int_param_regs = [_]Register{ .r0, .r1, .r2, .r3 };
191pub const c_abi_int_return_regs = [_]Register{ .r0, .r1 };191pub const c_abi_int_return_regs = [_]Register{ .r0, .r1 };
192192
src/codegen/c.zig+212-96
...@@ -1,12 +1,12 @@...@@ -1,12 +1,12 @@
1const std = @import("std");1const std = @import("std");
2const mem = std.mem;2const mem = std.mem;
3const log = std.log.scoped(.c);3const log = std.log.scoped(.c);
4const Writer = std.ArrayList(u8).Writer;
54
6const link = @import("../link.zig");5const link = @import("../link.zig");
7const Module = @import("../Module.zig");6const Module = @import("../Module.zig");
8const Compilation = @import("../Compilation.zig");7const Compilation = @import("../Compilation.zig");
9const Inst = @import("../ir.zig").Inst;8const ir = @import("../ir.zig");
9const Inst = ir.Inst;
10const Value = @import("../value.zig").Value;10const Value = @import("../value.zig").Value;
11const Type = @import("../type.zig").Type;11const Type = @import("../type.zig").Type;
12const TypedValue = @import("../TypedValue.zig");12const TypedValue = @import("../TypedValue.zig");
...@@ -41,6 +41,8 @@ pub const Object = struct {...@@ -41,6 +41,8 @@ pub const Object = struct {
41 value_map: CValueMap,41 value_map: CValueMap,
42 next_arg_index: usize = 0,42 next_arg_index: usize = 0,
43 next_local_index: usize = 0,43 next_local_index: usize = 0,
44 next_block_index: usize = 0,
45 indent_writer: std.io.AutoIndentingStream(std.ArrayList(u8).Writer),
4446
45 fn resolveInst(o: *Object, inst: *Inst) !CValue {47 fn resolveInst(o: *Object, inst: *Inst) !CValue {
46 if (inst.value()) |_| {48 if (inst.value()) |_| {
...@@ -57,31 +59,28 @@ pub const Object = struct {...@@ -57,31 +59,28 @@ pub const Object = struct {
5759
58 fn allocLocal(o: *Object, ty: Type, mutability: Mutability) !CValue {60 fn allocLocal(o: *Object, ty: Type, mutability: Mutability) !CValue {
59 const local_value = o.allocLocalValue();61 const local_value = o.allocLocalValue();
60 try o.renderTypeAndName(o.code.writer(), ty, local_value, mutability);62 try o.renderTypeAndName(o.writer(), ty, local_value, mutability);
61 return local_value;63 return local_value;
62 }64 }
6365
64 fn indent(o: *Object) !void {66 fn writer(o: *Object) std.io.AutoIndentingStream(std.ArrayList(u8).Writer).Writer {
65 const indent_size = 4;67 return o.indent_writer.writer();
66 const indent_level = 1;
67 const indent_amt = indent_size * indent_level;
68 try o.code.writer().writeByteNTimes(' ', indent_amt);
69 }68 }
7069
71 fn writeCValue(o: *Object, writer: Writer, c_value: CValue) !void {70 fn writeCValue(o: *Object, w: anytype, c_value: CValue) !void {
72 switch (c_value) {71 switch (c_value) {
73 .none => unreachable,72 .none => unreachable,
74 .local => |i| return writer.print("t{d}", .{i}),73 .local => |i| return w.print("t{d}", .{i}),
75 .local_ref => |i| return writer.print("&t{d}", .{i}),74 .local_ref => |i| return w.print("&t{d}", .{i}),
76 .constant => |inst| return o.dg.renderValue(writer, inst.ty, inst.value().?),75 .constant => |inst| return o.dg.renderValue(w, inst.ty, inst.value().?),
77 .arg => |i| return writer.print("a{d}", .{i}),76 .arg => |i| return w.print("a{d}", .{i}),
78 .decl => |decl| return writer.writeAll(mem.span(decl.name)),77 .decl => |decl| return w.writeAll(mem.span(decl.name)),
79 }78 }
80 }79 }
8180
82 fn renderTypeAndName(81 fn renderTypeAndName(
83 o: *Object,82 o: *Object,
84 writer: Writer,83 w: anytype,
85 ty: Type,84 ty: Type,
86 name: CValue,85 name: CValue,
87 mutability: Mutability,86 mutability: Mutability,
...@@ -97,15 +96,15 @@ pub const Object = struct {...@@ -97,15 +96,15 @@ pub const Object = struct {
97 render_ty = render_ty.elemType();96 render_ty = render_ty.elemType();
98 }97 }
9998
100 try o.dg.renderType(writer, render_ty);99 try o.dg.renderType(w, render_ty);
101100
102 const const_prefix = switch (mutability) {101 const const_prefix = switch (mutability) {
103 .Const => "const ",102 .Const => "const ",
104 .Mut => "",103 .Mut => "",
105 };104 };
106 try writer.print(" {s}", .{const_prefix});105 try w.print(" {s}", .{const_prefix});
107 try o.writeCValue(writer, name);106 try o.writeCValue(w, name);
108 try writer.writeAll(suffix.items);107 try w.writeAll(suffix.items);
109 }108 }
110};109};
111110
...@@ -126,10 +125,13 @@ pub const DeclGen = struct {...@@ -126,10 +125,13 @@ pub const DeclGen = struct {
126125
127 fn renderValue(126 fn renderValue(
128 dg: *DeclGen,127 dg: *DeclGen,
129 writer: Writer,128 writer: anytype,
130 t: Type,129 t: Type,
131 val: Value,130 val: Value,
132 ) error{ OutOfMemory, AnalysisFail }!void {131 ) error{ OutOfMemory, AnalysisFail }!void {
132 if (val.isUndef()) {
133 return dg.fail(dg.decl.src(), "TODO: C backend: properly handle undefined in all cases (with debug safety?)", .{});
134 }
133 switch (t.zigTypeTag()) {135 switch (t.zigTypeTag()) {
134 .Int => {136 .Int => {
135 if (t.isSignedInt())137 if (t.isSignedInt())
...@@ -197,13 +199,14 @@ pub const DeclGen = struct {...@@ -197,13 +199,14 @@ pub const DeclGen = struct {
197 },199 },
198 }200 }
199 },201 },
202 .Bool => return writer.print("{}", .{val.toBool()}),
200 else => |e| return dg.fail(dg.decl.src(), "TODO: C backend: implement value {s}", .{203 else => |e| return dg.fail(dg.decl.src(), "TODO: C backend: implement value {s}", .{
201 @tagName(e),204 @tagName(e),
202 }),205 }),
203 }206 }
204 }207 }
205208
206 fn renderFunctionSignature(dg: *DeclGen, w: Writer, is_global: bool) !void {209 fn renderFunctionSignature(dg: *DeclGen, w: anytype, is_global: bool) !void {
207 if (!is_global) {210 if (!is_global) {
208 try w.writeAll("static ");211 try w.writeAll("static ");
209 }212 }
...@@ -227,7 +230,7 @@ pub const DeclGen = struct {...@@ -227,7 +230,7 @@ pub const DeclGen = struct {
227 try w.writeByte(')');230 try w.writeByte(')');
228 }231 }
229232
230 fn renderType(dg: *DeclGen, w: Writer, t: Type) error{ OutOfMemory, AnalysisFail }!void {233 fn renderType(dg: *DeclGen, w: anytype, t: Type) error{ OutOfMemory, AnalysisFail }!void {
231 switch (t.zigTypeTag()) {234 switch (t.zigTypeTag()) {
232 .NoReturn => {235 .NoReturn => {
233 try w.writeAll("zig_noreturn void");236 try w.writeAll("zig_noreturn void");
...@@ -257,8 +260,8 @@ pub const DeclGen = struct {...@@ -257,8 +260,8 @@ pub const DeclGen = struct {
257 .int_signed, .int_unsigned => {260 .int_signed, .int_unsigned => {
258 const info = t.intInfo(dg.module.getTarget());261 const info = t.intInfo(dg.module.getTarget());
259 const sign_prefix = switch (info.signedness) {262 const sign_prefix = switch (info.signedness) {
260 .signed => "i",263 .signed => "",
261 .unsigned => "",264 .unsigned => "u",
262 };265 };
263 inline for (.{ 8, 16, 32, 64, 128 }) |nbits| {266 inline for (.{ 8, 16, 32, 64, 128 }) |nbits| {
264 if (info.bits <= nbits) {267 if (info.bits <= nbits) {
...@@ -290,6 +293,7 @@ pub const DeclGen = struct {...@@ -290,6 +293,7 @@ pub const DeclGen = struct {
290 try dg.renderType(w, t.elemType());293 try dg.renderType(w, t.elemType());
291 try w.writeAll(" *");294 try w.writeAll(" *");
292 },295 },
296 .Null, .Undefined => unreachable, // must be const or comptime
293 else => |e| return dg.fail(dg.decl.src(), "TODO: C backend: implement type {s}", .{297 else => |e| return dg.fail(dg.decl.src(), "TODO: C backend: implement type {s}", .{
294 @tagName(e),298 @tagName(e),
295 }),299 }),
...@@ -324,58 +328,20 @@ pub fn genDecl(o: *Object) !void {...@@ -324,58 +328,20 @@ pub fn genDecl(o: *Object) !void {
324 try fwd_decl_writer.writeAll(";\n");328 try fwd_decl_writer.writeAll(";\n");
325329
326 const func: *Module.Fn = func_payload.data;330 const func: *Module.Fn = func_payload.data;
327 const instructions = func.body.instructions;331 try o.indent_writer.insertNewline();
328 const writer = o.code.writer();332 try o.dg.renderFunctionSignature(o.writer(), is_global);
329 try writer.writeAll("\n");
330 try o.dg.renderFunctionSignature(writer, is_global);
331 if (instructions.len == 0) {
332 try writer.writeAll(" {}\n");
333 return;
334 }
335333
336 try writer.writeAll(" {");334 try o.writer().writeByte(' ');
337335 try genBody(o, func.body);
338 try writer.writeAll("\n");
339 for (instructions) |inst| {
340 const result_value = switch (inst.tag) {
341 .add => try genBinOp(o, inst.castTag(.add).?, " + "),
342 .alloc => try genAlloc(o, inst.castTag(.alloc).?),
343 .arg => genArg(o),
344 .assembly => try genAsm(o, inst.castTag(.assembly).?),
345 .block => try genBlock(o, inst.castTag(.block).?),
346 .bitcast => try genBitcast(o, inst.castTag(.bitcast).?),
347 .breakpoint => try genBreakpoint(o, inst.castTag(.breakpoint).?),
348 .call => try genCall(o, inst.castTag(.call).?),
349 .cmp_eq => try genBinOp(o, inst.castTag(.cmp_eq).?, " == "),
350 .cmp_gt => try genBinOp(o, inst.castTag(.cmp_gt).?, " > "),
351 .cmp_gte => try genBinOp(o, inst.castTag(.cmp_gte).?, " >= "),
352 .cmp_lt => try genBinOp(o, inst.castTag(.cmp_lt).?, " < "),
353 .cmp_lte => try genBinOp(o, inst.castTag(.cmp_lte).?, " <= "),
354 .cmp_neq => try genBinOp(o, inst.castTag(.cmp_neq).?, " != "),
355 .dbg_stmt => try genDbgStmt(o, inst.castTag(.dbg_stmt).?),
356 .intcast => try genIntCast(o, inst.castTag(.intcast).?),
357 .load => try genLoad(o, inst.castTag(.load).?),
358 .ret => try genRet(o, inst.castTag(.ret).?),
359 .retvoid => try genRetVoid(o),
360 .store => try genStore(o, inst.castTag(.store).?),
361 .sub => try genBinOp(o, inst.castTag(.sub).?, " - "),
362 .unreach => try genUnreach(o, inst.castTag(.unreach).?),
363 else => |e| return o.dg.fail(o.dg.decl.src(), "TODO: C backend: implement codegen for {}", .{e}),
364 };
365 switch (result_value) {
366 .none => {},
367 else => try o.value_map.putNoClobber(inst, result_value),
368 }
369 }
370336
371 try writer.writeAll("}\n");337 try o.indent_writer.insertNewline();
372 } else if (tv.val.tag() == .extern_fn) {338 } else if (tv.val.tag() == .extern_fn) {
373 const writer = o.code.writer();339 const writer = o.writer();
374 try writer.writeAll("ZIG_EXTERN_C ");340 try writer.writeAll("ZIG_EXTERN_C ");
375 try o.dg.renderFunctionSignature(writer, true);341 try o.dg.renderFunctionSignature(writer, true);
376 try writer.writeAll(";\n");342 try writer.writeAll(";\n");
377 } else {343 } else {
378 const writer = o.code.writer();344 const writer = o.writer();
379 try writer.writeAll("static ");345 try writer.writeAll("static ");
380346
381 // TODO ask the Decl if it is const347 // TODO ask the Decl if it is const
...@@ -410,11 +376,69 @@ pub fn genHeader(dg: *DeclGen) error{ AnalysisFail, OutOfMemory }!void {...@@ -410,11 +376,69 @@ pub fn genHeader(dg: *DeclGen) error{ AnalysisFail, OutOfMemory }!void {
410 }376 }
411}377}
412378
379pub fn genBody(o: *Object, body: ir.Body) error{ AnalysisFail, OutOfMemory }!void {
380 const writer = o.writer();
381 if (body.instructions.len == 0) {
382 try writer.writeAll("{}");
383 return;
384 }
385
386 try writer.writeAll("{\n");
387 o.indent_writer.pushIndent();
388
389 for (body.instructions) |inst| {
390 const result_value = switch (inst.tag) {
391 .constant => unreachable, // excluded from function bodies
392 .add => try genBinOp(o, inst.castTag(.add).?, " + "),
393 .alloc => try genAlloc(o, inst.castTag(.alloc).?),
394 .arg => genArg(o),
395 .assembly => try genAsm(o, inst.castTag(.assembly).?),
396 .block => try genBlock(o, inst.castTag(.block).?),
397 .bitcast => try genBitcast(o, inst.castTag(.bitcast).?),
398 .breakpoint => try genBreakpoint(o, inst.castTag(.breakpoint).?),
399 .call => try genCall(o, inst.castTag(.call).?),
400 .cmp_eq => try genBinOp(o, inst.castTag(.cmp_eq).?, " == "),
401 .cmp_gt => try genBinOp(o, inst.castTag(.cmp_gt).?, " > "),
402 .cmp_gte => try genBinOp(o, inst.castTag(.cmp_gte).?, " >= "),
403 .cmp_lt => try genBinOp(o, inst.castTag(.cmp_lt).?, " < "),
404 .cmp_lte => try genBinOp(o, inst.castTag(.cmp_lte).?, " <= "),
405 .cmp_neq => try genBinOp(o, inst.castTag(.cmp_neq).?, " != "),
406 .dbg_stmt => try genDbgStmt(o, inst.castTag(.dbg_stmt).?),
407 .intcast => try genIntCast(o, inst.castTag(.intcast).?),
408 .load => try genLoad(o, inst.castTag(.load).?),
409 .ret => try genRet(o, inst.castTag(.ret).?),
410 .retvoid => try genRetVoid(o),
411 .store => try genStore(o, inst.castTag(.store).?),
412 .sub => try genBinOp(o, inst.castTag(.sub).?, " - "),
413 .unreach => try genUnreach(o, inst.castTag(.unreach).?),
414 .loop => try genLoop(o, inst.castTag(.loop).?),
415 .condbr => try genCondBr(o, inst.castTag(.condbr).?),
416 .br => try genBr(o, inst.castTag(.br).?),
417 .br_void => try genBrVoid(o, inst.castTag(.br_void).?.block),
418 .switchbr => try genSwitchBr(o, inst.castTag(.switchbr).?),
419 // bool_and and bool_or are non-short-circuit operations
420 .bool_and => try genBinOp(o, inst.castTag(.bool_and).?, " & "),
421 .bool_or => try genBinOp(o, inst.castTag(.bool_or).?, " | "),
422 .bit_and => try genBinOp(o, inst.castTag(.bit_and).?, " & "),
423 .bit_or => try genBinOp(o, inst.castTag(.bit_or).?, " | "),
424 .xor => try genBinOp(o, inst.castTag(.xor).?, " ^ "),
425 .not => try genUnOp(o, inst.castTag(.not).?, "!"),
426 else => |e| return o.dg.fail(o.dg.decl.src(), "TODO: C backend: implement codegen for {}", .{e}),
427 };
428 switch (result_value) {
429 .none => {},
430 else => try o.value_map.putNoClobber(inst, result_value),
431 }
432 }
433
434 o.indent_writer.popIndent();
435 try writer.writeAll("}");
436}
437
413fn genAlloc(o: *Object, alloc: *Inst.NoOp) !CValue {438fn genAlloc(o: *Object, alloc: *Inst.NoOp) !CValue {
414 const writer = o.code.writer();439 const writer = o.writer();
415440
416 // First line: the variable used as data storage.441 // First line: the variable used as data storage.
417 try o.indent();
418 const elem_type = alloc.base.ty.elemType();442 const elem_type = alloc.base.ty.elemType();
419 const mutability: Mutability = if (alloc.base.ty.isConstPtr()) .Const else .Mut;443 const mutability: Mutability = if (alloc.base.ty.isConstPtr()) .Const else .Mut;
420 const local = try o.allocLocal(elem_type, mutability);444 const local = try o.allocLocal(elem_type, mutability);
...@@ -430,15 +454,13 @@ fn genArg(o: *Object) CValue {...@@ -430,15 +454,13 @@ fn genArg(o: *Object) CValue {
430}454}
431455
432fn genRetVoid(o: *Object) !CValue {456fn genRetVoid(o: *Object) !CValue {
433 try o.indent();457 try o.writer().print("return;\n", .{});
434 try o.code.writer().print("return;\n", .{});
435 return CValue.none;458 return CValue.none;
436}459}
437460
438fn genLoad(o: *Object, inst: *Inst.UnOp) !CValue {461fn genLoad(o: *Object, inst: *Inst.UnOp) !CValue {
439 const operand = try o.resolveInst(inst.operand);462 const operand = try o.resolveInst(inst.operand);
440 const writer = o.code.writer();463 const writer = o.writer();
441 try o.indent();
442 const local = try o.allocLocal(inst.base.ty, .Const);464 const local = try o.allocLocal(inst.base.ty, .Const);
443 switch (operand) {465 switch (operand) {
444 .local_ref => |i| {466 .local_ref => |i| {
...@@ -458,8 +480,7 @@ fn genLoad(o: *Object, inst: *Inst.UnOp) !CValue {...@@ -458,8 +480,7 @@ fn genLoad(o: *Object, inst: *Inst.UnOp) !CValue {
458480
459fn genRet(o: *Object, inst: *Inst.UnOp) !CValue {481fn genRet(o: *Object, inst: *Inst.UnOp) !CValue {
460 const operand = try o.resolveInst(inst.operand);482 const operand = try o.resolveInst(inst.operand);
461 try o.indent();483 const writer = o.writer();
462 const writer = o.code.writer();
463 try writer.writeAll("return ");484 try writer.writeAll("return ");
464 try o.writeCValue(writer, operand);485 try o.writeCValue(writer, operand);
465 try writer.writeAll(";\n");486 try writer.writeAll(";\n");
...@@ -472,8 +493,7 @@ fn genIntCast(o: *Object, inst: *Inst.UnOp) !CValue {...@@ -472,8 +493,7 @@ fn genIntCast(o: *Object, inst: *Inst.UnOp) !CValue {
472493
473 const from = try o.resolveInst(inst.operand);494 const from = try o.resolveInst(inst.operand);
474495
475 try o.indent();496 const writer = o.writer();
476 const writer = o.code.writer();
477 const local = try o.allocLocal(inst.base.ty, .Const);497 const local = try o.allocLocal(inst.base.ty, .Const);
478 try writer.writeAll(" = (");498 try writer.writeAll(" = (");
479 try o.dg.renderType(writer, inst.base.ty);499 try o.dg.renderType(writer, inst.base.ty);
...@@ -488,8 +508,7 @@ fn genStore(o: *Object, inst: *Inst.BinOp) !CValue {...@@ -488,8 +508,7 @@ fn genStore(o: *Object, inst: *Inst.BinOp) !CValue {
488 const dest_ptr = try o.resolveInst(inst.lhs);508 const dest_ptr = try o.resolveInst(inst.lhs);
489 const src_val = try o.resolveInst(inst.rhs);509 const src_val = try o.resolveInst(inst.rhs);
490510
491 try o.indent();511 const writer = o.writer();
492 const writer = o.code.writer();
493 switch (dest_ptr) {512 switch (dest_ptr) {
494 .local_ref => |i| {513 .local_ref => |i| {
495 const dest: CValue = .{ .local = i };514 const dest: CValue = .{ .local = i };
...@@ -516,8 +535,7 @@ fn genBinOp(o: *Object, inst: *Inst.BinOp, operator: []const u8) !CValue {...@@ -516,8 +535,7 @@ fn genBinOp(o: *Object, inst: *Inst.BinOp, operator: []const u8) !CValue {
516 const lhs = try o.resolveInst(inst.lhs);535 const lhs = try o.resolveInst(inst.lhs);
517 const rhs = try o.resolveInst(inst.rhs);536 const rhs = try o.resolveInst(inst.rhs);
518537
519 try o.indent();538 const writer = o.writer();
520 const writer = o.code.writer();
521 const local = try o.allocLocal(inst.base.ty, .Const);539 const local = try o.allocLocal(inst.base.ty, .Const);
522540
523 try writer.writeAll(" = ");541 try writer.writeAll(" = ");
...@@ -529,6 +547,22 @@ fn genBinOp(o: *Object, inst: *Inst.BinOp, operator: []const u8) !CValue {...@@ -529,6 +547,22 @@ fn genBinOp(o: *Object, inst: *Inst.BinOp, operator: []const u8) !CValue {
529 return local;547 return local;
530}548}
531549
550fn genUnOp(o: *Object, inst: *Inst.UnOp, operator: []const u8) !CValue {
551 if (inst.base.isUnused())
552 return CValue.none;
553
554 const operand = try o.resolveInst(inst.operand);
555
556 const writer = o.writer();
557 const local = try o.allocLocal(inst.base.ty, .Const);
558
559 try writer.print(" = {s}", .{operator});
560 try o.writeCValue(writer, operand);
561 try writer.writeAll(";\n");
562
563 return local;
564}
565
532fn genCall(o: *Object, inst: *Inst.Call) !CValue {566fn genCall(o: *Object, inst: *Inst.Call) !CValue {
533 if (inst.func.castTag(.constant)) |func_inst| {567 if (inst.func.castTag(.constant)) |func_inst| {
534 const fn_decl = if (func_inst.val.castTag(.extern_fn)) |extern_fn|568 const fn_decl = if (func_inst.val.castTag(.extern_fn)) |extern_fn|
...@@ -543,8 +577,7 @@ fn genCall(o: *Object, inst: *Inst.Call) !CValue {...@@ -543,8 +577,7 @@ fn genCall(o: *Object, inst: *Inst.Call) !CValue {
543 const unused_result = inst.base.isUnused();577 const unused_result = inst.base.isUnused();
544 var result_local: CValue = .none;578 var result_local: CValue = .none;
545579
546 try o.indent();580 const writer = o.writer();
547 const writer = o.code.writer();
548 if (unused_result) {581 if (unused_result) {
549 if (ret_ty.hasCodeGenBits()) {582 if (ret_ty.hasCodeGenBits()) {
550 try writer.print("(void)", .{});583 try writer.print("(void)", .{});
...@@ -581,14 +614,53 @@ fn genDbgStmt(o: *Object, inst: *Inst.NoOp) !CValue {...@@ -581,14 +614,53 @@ fn genDbgStmt(o: *Object, inst: *Inst.NoOp) !CValue {
581}614}
582615
583fn genBlock(o: *Object, inst: *Inst.Block) !CValue {616fn genBlock(o: *Object, inst: *Inst.Block) !CValue {
584 return o.dg.fail(o.dg.decl.src(), "TODO: C backend: implement blocks", .{});617 const block_id: usize = o.next_block_index;
618 o.next_block_index += 1;
619 const writer = o.writer();
620
621 // store the block id in relocs.capacity as it is not used for anything else in the C backend.
622 inst.codegen.relocs.capacity = block_id;
623 const result = if (inst.base.ty.tag() != .void and !inst.base.isUnused()) blk: {
624 // allocate a location for the result
625 const local = try o.allocLocal(inst.base.ty, .Mut);
626 try writer.writeAll(";\n");
627 break :blk local;
628 } else
629 CValue{ .none = {} };
630
631 inst.codegen.mcv = @bitCast(@import("../codegen.zig").AnyMCValue, result);
632 try genBody(o, inst.body);
633 try o.indent_writer.insertNewline();
634 // label must be followed by an expression, add an empty one.
635 try writer.print("zig_block_{d}:;\n", .{block_id});
636 return result;
637}
638
639fn genBr(o: *Object, inst: *Inst.Br) !CValue {
640 const result = @bitCast(CValue, inst.block.codegen.mcv);
641 const writer = o.writer();
642
643 // If result is .none then the value of the block is unused.
644 if (inst.operand.ty.tag() != .void and result != .none) {
645 const operand = try o.resolveInst(inst.operand);
646 try o.writeCValue(writer, result);
647 try writer.writeAll(" = ");
648 try o.writeCValue(writer, operand);
649 try writer.writeAll(";\n");
650 }
651
652 return genBrVoid(o, inst.block);
653}
654
655fn genBrVoid(o: *Object, block: *Inst.Block) !CValue {
656 try o.writer().print("goto zig_block_{d};\n", .{block.codegen.relocs.capacity});
657 return CValue.none;
585}658}
586659
587fn genBitcast(o: *Object, inst: *Inst.UnOp) !CValue {660fn genBitcast(o: *Object, inst: *Inst.UnOp) !CValue {
588 const operand = try o.resolveInst(inst.operand);661 const operand = try o.resolveInst(inst.operand);
589662
590 const writer = o.code.writer();663 const writer = o.writer();
591 try o.indent();
592 if (inst.base.ty.zigTypeTag() == .Pointer and inst.operand.ty.zigTypeTag() == .Pointer) {664 if (inst.base.ty.zigTypeTag() == .Pointer and inst.operand.ty.zigTypeTag() == .Pointer) {
593 const local = try o.allocLocal(inst.base.ty, .Const);665 const local = try o.allocLocal(inst.base.ty, .Const);
594 try writer.writeAll(" = (");666 try writer.writeAll(" = (");
...@@ -602,7 +674,6 @@ fn genBitcast(o: *Object, inst: *Inst.UnOp) !CValue {...@@ -602,7 +674,6 @@ fn genBitcast(o: *Object, inst: *Inst.UnOp) !CValue {
602674
603 const local = try o.allocLocal(inst.base.ty, .Mut);675 const local = try o.allocLocal(inst.base.ty, .Mut);
604 try writer.writeAll(";\n");676 try writer.writeAll(";\n");
605 try o.indent();
606677
607 try writer.writeAll("memcpy(&");678 try writer.writeAll("memcpy(&");
608 try o.writeCValue(writer, local);679 try o.writeCValue(writer, local);
...@@ -616,14 +687,61 @@ fn genBitcast(o: *Object, inst: *Inst.UnOp) !CValue {...@@ -616,14 +687,61 @@ fn genBitcast(o: *Object, inst: *Inst.UnOp) !CValue {
616}687}
617688
618fn genBreakpoint(o: *Object, inst: *Inst.NoOp) !CValue {689fn genBreakpoint(o: *Object, inst: *Inst.NoOp) !CValue {
619 try o.indent();690 try o.writer().writeAll("zig_breakpoint();\n");
620 try o.code.writer().writeAll("zig_breakpoint();\n");
621 return CValue.none;691 return CValue.none;
622}692}
623693
624fn genUnreach(o: *Object, inst: *Inst.NoOp) !CValue {694fn genUnreach(o: *Object, inst: *Inst.NoOp) !CValue {
625 try o.indent();695 try o.writer().writeAll("zig_unreachable();\n");
626 try o.code.writer().writeAll("zig_unreachable();\n");696 return CValue.none;
697}
698
699fn genLoop(o: *Object, inst: *Inst.Loop) !CValue {
700 try o.writer().writeAll("while (true) ");
701 try genBody(o, inst.body);
702 try o.indent_writer.insertNewline();
703 return CValue.none;
704}
705
706fn genCondBr(o: *Object, inst: *Inst.CondBr) !CValue {
707 const cond = try o.resolveInst(inst.condition);
708 const writer = o.writer();
709
710 try writer.writeAll("if (");
711 try o.writeCValue(writer, cond);
712 try writer.writeAll(") ");
713 try genBody(o, inst.then_body);
714 try writer.writeAll(" else ");
715 try genBody(o, inst.else_body);
716 try o.indent_writer.insertNewline();
717
718 return CValue.none;
719}
720
721fn genSwitchBr(o: *Object, inst: *Inst.SwitchBr) !CValue {
722 const target = try o.resolveInst(inst.target);
723 const writer = o.writer();
724
725 try writer.writeAll("switch (");
726 try o.writeCValue(writer, target);
727 try writer.writeAll(") {\n");
728 o.indent_writer.pushIndent();
729
730 for (inst.cases) |case| {
731 try writer.writeAll("case ");
732 try o.dg.renderValue(writer, inst.target.ty, case.item);
733 try writer.writeAll(": ");
734 // the case body must be noreturn so we don't need to insert a break
735 try genBody(o, case.body);
736 try o.indent_writer.insertNewline();
737 }
738
739 try writer.writeAll("default: ");
740 try genBody(o, inst.else_body);
741 try o.indent_writer.insertNewline();
742
743 o.indent_writer.popIndent();
744 try writer.writeAll("}\n");
627 return CValue.none;745 return CValue.none;
628}746}
629747
...@@ -631,13 +749,12 @@ fn genAsm(o: *Object, as: *Inst.Assembly) !CValue {...@@ -631,13 +749,12 @@ fn genAsm(o: *Object, as: *Inst.Assembly) !CValue {
631 if (as.base.isUnused() and !as.is_volatile)749 if (as.base.isUnused() and !as.is_volatile)
632 return CValue.none;750 return CValue.none;
633751
634 const writer = o.code.writer();752 const writer = o.writer();
635 for (as.inputs) |i, index| {753 for (as.inputs) |i, index| {
636 if (i[0] == '{' and i[i.len - 1] == '}') {754 if (i[0] == '{' and i[i.len - 1] == '}') {
637 const reg = i[1 .. i.len - 1];755 const reg = i[1 .. i.len - 1];
638 const arg = as.args[index];756 const arg = as.args[index];
639 const arg_c_value = try o.resolveInst(arg);757 const arg_c_value = try o.resolveInst(arg);
640 try o.indent();
641 try writer.writeAll("register ");758 try writer.writeAll("register ");
642 try o.dg.renderType(writer, arg.ty);759 try o.dg.renderType(writer, arg.ty);
643760
...@@ -648,7 +765,6 @@ fn genAsm(o: *Object, as: *Inst.Assembly) !CValue {...@@ -648,7 +765,6 @@ fn genAsm(o: *Object, as: *Inst.Assembly) !CValue {
648 return o.dg.fail(o.dg.decl.src(), "TODO non-explicit inline asm regs", .{});765 return o.dg.fail(o.dg.decl.src(), "TODO non-explicit inline asm regs", .{});
649 }766 }
650 }767 }
651 try o.indent();
652 const volatile_string: []const u8 = if (as.is_volatile) "volatile " else "";768 const volatile_string: []const u8 = if (as.is_volatile) "volatile " else "";
653 try writer.print("__asm {s}(\"{s}\"", .{ volatile_string, as.asm_source });769 try writer.print("__asm {s}(\"{s}\"", .{ volatile_string, as.asm_source });
654 if (as.output) |_| {770 if (as.output) |_| {
src/codegen/llvm.zig+5
...@@ -69,6 +69,8 @@ pub fn targetTriple(allocator: *Allocator, target: std.Target) ![:0]u8 {...@@ -69,6 +69,8 @@ pub fn targetTriple(allocator: *Allocator, target: std.Target) ![:0]u8 {
69 .renderscript64 => "renderscript64",69 .renderscript64 => "renderscript64",
70 .ve => "ve",70 .ve => "ve",
71 .spu_2 => return error.LLVMBackendDoesNotSupportSPUMarkII,71 .spu_2 => return error.LLVMBackendDoesNotSupportSPUMarkII,
72 .spirv32 => return error.LLVMBackendDoesNotSupportSPIRV,
73 .spirv64 => return error.LLVMBackendDoesNotSupportSPIRV,
72 };74 };
73 // TODO Add a sub-arch for some architectures depending on CPU features.75 // TODO Add a sub-arch for some architectures depending on CPU features.
7476
...@@ -109,6 +111,9 @@ pub fn targetTriple(allocator: *Allocator, target: std.Target) ![:0]u8 {...@@ -109,6 +111,9 @@ pub fn targetTriple(allocator: *Allocator, target: std.Target) ![:0]u8 {
109 .wasi => "wasi",111 .wasi => "wasi",
110 .emscripten => "emscripten",112 .emscripten => "emscripten",
111 .uefi => "windows",113 .uefi => "windows",
114 .opencl => return error.LLVMBackendDoesNotSupportOpenCL,
115 .glsl450 => return error.LLVMBackendDoesNotSupportGLSL450,
116 .vulkan => return error.LLVMBackendDoesNotSupportVulkan,
112 .other => "unknown",117 .other => "unknown",
113 };118 };
114119
src/codegen/spirv.zig created+51
...@@ -0,0 +1,51 @@
1const std = @import("std");
2const Allocator = std.mem.Allocator;
3
4const spec = @import("spirv/spec.zig");
5const Module = @import("../Module.zig");
6const Decl = Module.Decl;
7
8pub fn writeInstruction(code: *std.ArrayList(u32), instr: spec.Opcode, args: []const u32) !void {
9 const word_count = @intCast(u32, args.len + 1);
10 try code.append((word_count << 16) | @enumToInt(instr));
11 try code.appendSlice(args);
12}
13
14pub const SPIRVModule = struct {
15 next_id: u32 = 0,
16 free_id_list: std.ArrayList(u32),
17
18 pub fn init(allocator: *Allocator) SPIRVModule {
19 return .{
20 .free_id_list = std.ArrayList(u32).init(allocator),
21 };
22 }
23
24 pub fn deinit(self: *SPIRVModule) void {
25 self.free_id_list.deinit();
26 }
27
28 pub fn allocId(self: *SPIRVModule) u32 {
29 if (self.free_id_list.popOrNull()) |id| return id;
30
31 defer self.next_id += 1;
32 return self.next_id;
33 }
34
35 pub fn freeId(self: *SPIRVModule, id: u32) void {
36 if (id + 1 == self.next_id) {
37 self.next_id -= 1;
38 } else {
39 // If no more memory to append the id to the free list, just ignore it.
40 self.free_id_list.append(id) catch {};
41 }
42 }
43
44 pub fn idBound(self: *SPIRVModule) u32 {
45 return self.next_id;
46 }
47
48 pub fn genDecl(self: SPIRVModule, id: u32, code: *std.ArrayList(u32), decl: *Decl) !void {
49
50 }
51};
src/codegen/spirv/spec.zig created+1645
...@@ -0,0 +1,1645 @@
1// Copyright (c) 2014-2020 The Khronos Group Inc.
2//
3// Permission is hereby granted, free of charge, to any person obtaining a copy
4// of this software and/or associated documentation files (the "Materials"),
5// to deal in the Materials without restriction, including without limitation
6// the rights to use, copy, modify, merge, publish, distribute, sublicense,
7// and/or sell copies of the Materials, and to permit persons to whom the
8// Materials are furnished to do so, subject to the following conditions:
9//
10// The above copyright notice and this permission notice shall be included in
11// all copies or substantial portions of the Materials.
12//
13// MODIFICATIONS TO THIS FILE MAY MEAN IT NO LONGER ACCURATELY REFLECTS KHRONOS
14// STANDARDS. THE UNMODIFIED, NORMATIVE VERSIONS OF KHRONOS SPECIFICATIONS AND
15// HEADER INFORMATION ARE LOCATED AT https://www.khronos.org/registry/
16//
17// THE MATERIALS ARE PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS
18// OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
19// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
20// THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
21// LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
22// FROM,OUT OF OR IN CONNECTION WITH THE MATERIALS OR THE USE OR OTHER DEALINGS
23// IN THE MATERIALS.
24const Version = @import("builtin").Version;
25pub const version = Version{ .major = 1, .minor = 5, .patch = 4 };
26pub const magic_number: u32 = 0x07230203;
27pub const Opcode = extern enum(u16) {
28 OpNop = 0,
29 OpUndef = 1,
30 OpSourceContinued = 2,
31 OpSource = 3,
32 OpSourceExtension = 4,
33 OpName = 5,
34 OpMemberName = 6,
35 OpString = 7,
36 OpLine = 8,
37 OpExtension = 10,
38 OpExtInstImport = 11,
39 OpExtInst = 12,
40 OpMemoryModel = 14,
41 OpEntryPoint = 15,
42 OpExecutionMode = 16,
43 OpCapability = 17,
44 OpTypeVoid = 19,
45 OpTypeBool = 20,
46 OpTypeInt = 21,
47 OpTypeFloat = 22,
48 OpTypeVector = 23,
49 OpTypeMatrix = 24,
50 OpTypeImage = 25,
51 OpTypeSampler = 26,
52 OpTypeSampledImage = 27,
53 OpTypeArray = 28,
54 OpTypeRuntimeArray = 29,
55 OpTypeStruct = 30,
56 OpTypeOpaque = 31,
57 OpTypePointer = 32,
58 OpTypeFunction = 33,
59 OpTypeEvent = 34,
60 OpTypeDeviceEvent = 35,
61 OpTypeReserveId = 36,
62 OpTypeQueue = 37,
63 OpTypePipe = 38,
64 OpTypeForwardPointer = 39,
65 OpConstantTrue = 41,
66 OpConstantFalse = 42,
67 OpConstant = 43,
68 OpConstantComposite = 44,
69 OpConstantSampler = 45,
70 OpConstantNull = 46,
71 OpSpecConstantTrue = 48,
72 OpSpecConstantFalse = 49,
73 OpSpecConstant = 50,
74 OpSpecConstantComposite = 51,
75 OpSpecConstantOp = 52,
76 OpFunction = 54,
77 OpFunctionParameter = 55,
78 OpFunctionEnd = 56,
79 OpFunctionCall = 57,
80 OpVariable = 59,
81 OpImageTexelPointer = 60,
82 OpLoad = 61,
83 OpStore = 62,
84 OpCopyMemory = 63,
85 OpCopyMemorySized = 64,
86 OpAccessChain = 65,
87 OpInBoundsAccessChain = 66,
88 OpPtrAccessChain = 67,
89 OpArrayLength = 68,
90 OpGenericPtrMemSemantics = 69,
91 OpInBoundsPtrAccessChain = 70,
92 OpDecorate = 71,
93 OpMemberDecorate = 72,
94 OpDecorationGroup = 73,
95 OpGroupDecorate = 74,
96 OpGroupMemberDecorate = 75,
97 OpVectorExtractDynamic = 77,
98 OpVectorInsertDynamic = 78,
99 OpVectorShuffle = 79,
100 OpCompositeConstruct = 80,
101 OpCompositeExtract = 81,
102 OpCompositeInsert = 82,
103 OpCopyObject = 83,
104 OpTranspose = 84,
105 OpSampledImage = 86,
106 OpImageSampleImplicitLod = 87,
107 OpImageSampleExplicitLod = 88,
108 OpImageSampleDrefImplicitLod = 89,
109 OpImageSampleDrefExplicitLod = 90,
110 OpImageSampleProjImplicitLod = 91,
111 OpImageSampleProjExplicitLod = 92,
112 OpImageSampleProjDrefImplicitLod = 93,
113 OpImageSampleProjDrefExplicitLod = 94,
114 OpImageFetch = 95,
115 OpImageGather = 96,
116 OpImageDrefGather = 97,
117 OpImageRead = 98,
118 OpImageWrite = 99,
119 OpImage = 100,
120 OpImageQueryFormat = 101,
121 OpImageQueryOrder = 102,
122 OpImageQuerySizeLod = 103,
123 OpImageQuerySize = 104,
124 OpImageQueryLod = 105,
125 OpImageQueryLevels = 106,
126 OpImageQuerySamples = 107,
127 OpConvertFToU = 109,
128 OpConvertFToS = 110,
129 OpConvertSToF = 111,
130 OpConvertUToF = 112,
131 OpUConvert = 113,
132 OpSConvert = 114,
133 OpFConvert = 115,
134 OpQuantizeToF16 = 116,
135 OpConvertPtrToU = 117,
136 OpSatConvertSToU = 118,
137 OpSatConvertUToS = 119,
138 OpConvertUToPtr = 120,
139 OpPtrCastToGeneric = 121,
140 OpGenericCastToPtr = 122,
141 OpGenericCastToPtrExplicit = 123,
142 OpBitcast = 124,
143 OpSNegate = 126,
144 OpFNegate = 127,
145 OpIAdd = 128,
146 OpFAdd = 129,
147 OpISub = 130,
148 OpFSub = 131,
149 OpIMul = 132,
150 OpFMul = 133,
151 OpUDiv = 134,
152 OpSDiv = 135,
153 OpFDiv = 136,
154 OpUMod = 137,
155 OpSRem = 138,
156 OpSMod = 139,
157 OpFRem = 140,
158 OpFMod = 141,
159 OpVectorTimesScalar = 142,
160 OpMatrixTimesScalar = 143,
161 OpVectorTimesMatrix = 144,
162 OpMatrixTimesVector = 145,
163 OpMatrixTimesMatrix = 146,
164 OpOuterProduct = 147,
165 OpDot = 148,
166 OpIAddCarry = 149,
167 OpISubBorrow = 150,
168 OpUMulExtended = 151,
169 OpSMulExtended = 152,
170 OpAny = 154,
171 OpAll = 155,
172 OpIsNan = 156,
173 OpIsInf = 157,
174 OpIsFinite = 158,
175 OpIsNormal = 159,
176 OpSignBitSet = 160,
177 OpLessOrGreater = 161,
178 OpOrdered = 162,
179 OpUnordered = 163,
180 OpLogicalEqual = 164,
181 OpLogicalNotEqual = 165,
182 OpLogicalOr = 166,
183 OpLogicalAnd = 167,
184 OpLogicalNot = 168,
185 OpSelect = 169,
186 OpIEqual = 170,
187 OpINotEqual = 171,
188 OpUGreaterThan = 172,
189 OpSGreaterThan = 173,
190 OpUGreaterThanEqual = 174,
191 OpSGreaterThanEqual = 175,
192 OpULessThan = 176,
193 OpSLessThan = 177,
194 OpULessThanEqual = 178,
195 OpSLessThanEqual = 179,
196 OpFOrdEqual = 180,
197 OpFUnordEqual = 181,
198 OpFOrdNotEqual = 182,
199 OpFUnordNotEqual = 183,
200 OpFOrdLessThan = 184,
201 OpFUnordLessThan = 185,
202 OpFOrdGreaterThan = 186,
203 OpFUnordGreaterThan = 187,
204 OpFOrdLessThanEqual = 188,
205 OpFUnordLessThanEqual = 189,
206 OpFOrdGreaterThanEqual = 190,
207 OpFUnordGreaterThanEqual = 191,
208 OpShiftRightLogical = 194,
209 OpShiftRightArithmetic = 195,
210 OpShiftLeftLogical = 196,
211 OpBitwiseOr = 197,
212 OpBitwiseXor = 198,
213 OpBitwiseAnd = 199,
214 OpNot = 200,
215 OpBitFieldInsert = 201,
216 OpBitFieldSExtract = 202,
217 OpBitFieldUExtract = 203,
218 OpBitReverse = 204,
219 OpBitCount = 205,
220 OpDPdx = 207,
221 OpDPdy = 208,
222 OpFwidth = 209,
223 OpDPdxFine = 210,
224 OpDPdyFine = 211,
225 OpFwidthFine = 212,
226 OpDPdxCoarse = 213,
227 OpDPdyCoarse = 214,
228 OpFwidthCoarse = 215,
229 OpEmitVertex = 218,
230 OpEndPrimitive = 219,
231 OpEmitStreamVertex = 220,
232 OpEndStreamPrimitive = 221,
233 OpControlBarrier = 224,
234 OpMemoryBarrier = 225,
235 OpAtomicLoad = 227,
236 OpAtomicStore = 228,
237 OpAtomicExchange = 229,
238 OpAtomicCompareExchange = 230,
239 OpAtomicCompareExchangeWeak = 231,
240 OpAtomicIIncrement = 232,
241 OpAtomicIDecrement = 233,
242 OpAtomicIAdd = 234,
243 OpAtomicISub = 235,
244 OpAtomicSMin = 236,
245 OpAtomicUMin = 237,
246 OpAtomicSMax = 238,
247 OpAtomicUMax = 239,
248 OpAtomicAnd = 240,
249 OpAtomicOr = 241,
250 OpAtomicXor = 242,
251 OpPhi = 245,
252 OpLoopMerge = 246,
253 OpSelectionMerge = 247,
254 OpLabel = 248,
255 OpBranch = 249,
256 OpBranchConditional = 250,
257 OpSwitch = 251,
258 OpKill = 252,
259 OpReturn = 253,
260 OpReturnValue = 254,
261 OpUnreachable = 255,
262 OpLifetimeStart = 256,
263 OpLifetimeStop = 257,
264 OpGroupAsyncCopy = 259,
265 OpGroupWaitEvents = 260,
266 OpGroupAll = 261,
267 OpGroupAny = 262,
268 OpGroupBroadcast = 263,
269 OpGroupIAdd = 264,
270 OpGroupFAdd = 265,
271 OpGroupFMin = 266,
272 OpGroupUMin = 267,
273 OpGroupSMin = 268,
274 OpGroupFMax = 269,
275 OpGroupUMax = 270,
276 OpGroupSMax = 271,
277 OpReadPipe = 274,
278 OpWritePipe = 275,
279 OpReservedReadPipe = 276,
280 OpReservedWritePipe = 277,
281 OpReserveReadPipePackets = 278,
282 OpReserveWritePipePackets = 279,
283 OpCommitReadPipe = 280,
284 OpCommitWritePipe = 281,
285 OpIsValidReserveId = 282,
286 OpGetNumPipePackets = 283,
287 OpGetMaxPipePackets = 284,
288 OpGroupReserveReadPipePackets = 285,
289 OpGroupReserveWritePipePackets = 286,
290 OpGroupCommitReadPipe = 287,
291 OpGroupCommitWritePipe = 288,
292 OpEnqueueMarker = 291,
293 OpEnqueueKernel = 292,
294 OpGetKernelNDrangeSubGroupCount = 293,
295 OpGetKernelNDrangeMaxSubGroupSize = 294,
296 OpGetKernelWorkGroupSize = 295,
297 OpGetKernelPreferredWorkGroupSizeMultiple = 296,
298 OpRetainEvent = 297,
299 OpReleaseEvent = 298,
300 OpCreateUserEvent = 299,
301 OpIsValidEvent = 300,
302 OpSetUserEventStatus = 301,
303 OpCaptureEventProfilingInfo = 302,
304 OpGetDefaultQueue = 303,
305 OpBuildNDRange = 304,
306 OpImageSparseSampleImplicitLod = 305,
307 OpImageSparseSampleExplicitLod = 306,
308 OpImageSparseSampleDrefImplicitLod = 307,
309 OpImageSparseSampleDrefExplicitLod = 308,
310 OpImageSparseSampleProjImplicitLod = 309,
311 OpImageSparseSampleProjExplicitLod = 310,
312 OpImageSparseSampleProjDrefImplicitLod = 311,
313 OpImageSparseSampleProjDrefExplicitLod = 312,
314 OpImageSparseFetch = 313,
315 OpImageSparseGather = 314,
316 OpImageSparseDrefGather = 315,
317 OpImageSparseTexelsResident = 316,
318 OpNoLine = 317,
319 OpAtomicFlagTestAndSet = 318,
320 OpAtomicFlagClear = 319,
321 OpImageSparseRead = 320,
322 OpSizeOf = 321,
323 OpTypePipeStorage = 322,
324 OpConstantPipeStorage = 323,
325 OpCreatePipeFromPipeStorage = 324,
326 OpGetKernelLocalSizeForSubgroupCount = 325,
327 OpGetKernelMaxNumSubgroups = 326,
328 OpTypeNamedBarrier = 327,
329 OpNamedBarrierInitialize = 328,
330 OpMemoryNamedBarrier = 329,
331 OpModuleProcessed = 330,
332 OpExecutionModeId = 331,
333 OpDecorateId = 332,
334 OpGroupNonUniformElect = 333,
335 OpGroupNonUniformAll = 334,
336 OpGroupNonUniformAny = 335,
337 OpGroupNonUniformAllEqual = 336,
338 OpGroupNonUniformBroadcast = 337,
339 OpGroupNonUniformBroadcastFirst = 338,
340 OpGroupNonUniformBallot = 339,
341 OpGroupNonUniformInverseBallot = 340,
342 OpGroupNonUniformBallotBitExtract = 341,
343 OpGroupNonUniformBallotBitCount = 342,
344 OpGroupNonUniformBallotFindLSB = 343,
345 OpGroupNonUniformBallotFindMSB = 344,
346 OpGroupNonUniformShuffle = 345,
347 OpGroupNonUniformShuffleXor = 346,
348 OpGroupNonUniformShuffleUp = 347,
349 OpGroupNonUniformShuffleDown = 348,
350 OpGroupNonUniformIAdd = 349,
351 OpGroupNonUniformFAdd = 350,
352 OpGroupNonUniformIMul = 351,
353 OpGroupNonUniformFMul = 352,
354 OpGroupNonUniformSMin = 353,
355 OpGroupNonUniformUMin = 354,
356 OpGroupNonUniformFMin = 355,
357 OpGroupNonUniformSMax = 356,
358 OpGroupNonUniformUMax = 357,
359 OpGroupNonUniformFMax = 358,
360 OpGroupNonUniformBitwiseAnd = 359,
361 OpGroupNonUniformBitwiseOr = 360,
362 OpGroupNonUniformBitwiseXor = 361,
363 OpGroupNonUniformLogicalAnd = 362,
364 OpGroupNonUniformLogicalOr = 363,
365 OpGroupNonUniformLogicalXor = 364,
366 OpGroupNonUniformQuadBroadcast = 365,
367 OpGroupNonUniformQuadSwap = 366,
368 OpCopyLogical = 400,
369 OpPtrEqual = 401,
370 OpPtrNotEqual = 402,
371 OpPtrDiff = 403,
372 OpTerminateInvocation = 4416,
373 OpSubgroupBallotKHR = 4421,
374 OpSubgroupFirstInvocationKHR = 4422,
375 OpSubgroupAllKHR = 4428,
376 OpSubgroupAnyKHR = 4429,
377 OpSubgroupAllEqualKHR = 4430,
378 OpSubgroupReadInvocationKHR = 4432,
379 OpTraceRayKHR = 4445,
380 OpExecuteCallableKHR = 4446,
381 OpConvertUToAccelerationStructureKHR = 4447,
382 OpIgnoreIntersectionKHR = 4448,
383 OpTerminateRayKHR = 4449,
384 OpTypeRayQueryKHR = 4472,
385 OpRayQueryInitializeKHR = 4473,
386 OpRayQueryTerminateKHR = 4474,
387 OpRayQueryGenerateIntersectionKHR = 4475,
388 OpRayQueryConfirmIntersectionKHR = 4476,
389 OpRayQueryProceedKHR = 4477,
390 OpRayQueryGetIntersectionTypeKHR = 4479,
391 OpGroupIAddNonUniformAMD = 5000,
392 OpGroupFAddNonUniformAMD = 5001,
393 OpGroupFMinNonUniformAMD = 5002,
394 OpGroupUMinNonUniformAMD = 5003,
395 OpGroupSMinNonUniformAMD = 5004,
396 OpGroupFMaxNonUniformAMD = 5005,
397 OpGroupUMaxNonUniformAMD = 5006,
398 OpGroupSMaxNonUniformAMD = 5007,
399 OpFragmentMaskFetchAMD = 5011,
400 OpFragmentFetchAMD = 5012,
401 OpReadClockKHR = 5056,
402 OpImageSampleFootprintNV = 5283,
403 OpGroupNonUniformPartitionNV = 5296,
404 OpWritePackedPrimitiveIndices4x8NV = 5299,
405 OpReportIntersectionNV = 5334,
406 OpReportIntersectionKHR = 5334,
407 OpIgnoreIntersectionNV = 5335,
408 OpTerminateRayNV = 5336,
409 OpTraceNV = 5337,
410 OpTypeAccelerationStructureNV = 5341,
411 OpTypeAccelerationStructureKHR = 5341,
412 OpExecuteCallableNV = 5344,
413 OpTypeCooperativeMatrixNV = 5358,
414 OpCooperativeMatrixLoadNV = 5359,
415 OpCooperativeMatrixStoreNV = 5360,
416 OpCooperativeMatrixMulAddNV = 5361,
417 OpCooperativeMatrixLengthNV = 5362,
418 OpBeginInvocationInterlockEXT = 5364,
419 OpEndInvocationInterlockEXT = 5365,
420 OpDemoteToHelperInvocationEXT = 5380,
421 OpIsHelperInvocationEXT = 5381,
422 OpSubgroupShuffleINTEL = 5571,
423 OpSubgroupShuffleDownINTEL = 5572,
424 OpSubgroupShuffleUpINTEL = 5573,
425 OpSubgroupShuffleXorINTEL = 5574,
426 OpSubgroupBlockReadINTEL = 5575,
427 OpSubgroupBlockWriteINTEL = 5576,
428 OpSubgroupImageBlockReadINTEL = 5577,
429 OpSubgroupImageBlockWriteINTEL = 5578,
430 OpSubgroupImageMediaBlockReadINTEL = 5580,
431 OpSubgroupImageMediaBlockWriteINTEL = 5581,
432 OpUCountLeadingZerosINTEL = 5585,
433 OpUCountTrailingZerosINTEL = 5586,
434 OpAbsISubINTEL = 5587,
435 OpAbsUSubINTEL = 5588,
436 OpIAddSatINTEL = 5589,
437 OpUAddSatINTEL = 5590,
438 OpIAverageINTEL = 5591,
439 OpUAverageINTEL = 5592,
440 OpIAverageRoundedINTEL = 5593,
441 OpUAverageRoundedINTEL = 5594,
442 OpISubSatINTEL = 5595,
443 OpUSubSatINTEL = 5596,
444 OpIMul32x16INTEL = 5597,
445 OpUMul32x16INTEL = 5598,
446 OpFunctionPointerINTEL = 5600,
447 OpFunctionPointerCallINTEL = 5601,
448 OpDecorateString = 5632,
449 OpDecorateStringGOOGLE = 5632,
450 OpMemberDecorateString = 5633,
451 OpMemberDecorateStringGOOGLE = 5633,
452 OpVmeImageINTEL = 5699,
453 OpTypeVmeImageINTEL = 5700,
454 OpTypeAvcImePayloadINTEL = 5701,
455 OpTypeAvcRefPayloadINTEL = 5702,
456 OpTypeAvcSicPayloadINTEL = 5703,
457 OpTypeAvcMcePayloadINTEL = 5704,
458 OpTypeAvcMceResultINTEL = 5705,
459 OpTypeAvcImeResultINTEL = 5706,
460 OpTypeAvcImeResultSingleReferenceStreamoutINTEL = 5707,
461 OpTypeAvcImeResultDualReferenceStreamoutINTEL = 5708,
462 OpTypeAvcImeSingleReferenceStreaminINTEL = 5709,
463 OpTypeAvcImeDualReferenceStreaminINTEL = 5710,
464 OpTypeAvcRefResultINTEL = 5711,
465 OpTypeAvcSicResultINTEL = 5712,
466 OpSubgroupAvcMceGetDefaultInterBaseMultiReferencePenaltyINTEL = 5713,
467 OpSubgroupAvcMceSetInterBaseMultiReferencePenaltyINTEL = 5714,
468 OpSubgroupAvcMceGetDefaultInterShapePenaltyINTEL = 5715,
469 OpSubgroupAvcMceSetInterShapePenaltyINTEL = 5716,
470 OpSubgroupAvcMceGetDefaultInterDirectionPenaltyINTEL = 5717,
471 OpSubgroupAvcMceSetInterDirectionPenaltyINTEL = 5718,
472 OpSubgroupAvcMceGetDefaultIntraLumaShapePenaltyINTEL = 5719,
473 OpSubgroupAvcMceGetDefaultInterMotionVectorCostTableINTEL = 5720,
474 OpSubgroupAvcMceGetDefaultHighPenaltyCostTableINTEL = 5721,
475 OpSubgroupAvcMceGetDefaultMediumPenaltyCostTableINTEL = 5722,
476 OpSubgroupAvcMceGetDefaultLowPenaltyCostTableINTEL = 5723,
477 OpSubgroupAvcMceSetMotionVectorCostFunctionINTEL = 5724,
478 OpSubgroupAvcMceGetDefaultIntraLumaModePenaltyINTEL = 5725,
479 OpSubgroupAvcMceGetDefaultNonDcLumaIntraPenaltyINTEL = 5726,
480 OpSubgroupAvcMceGetDefaultIntraChromaModeBasePenaltyINTEL = 5727,
481 OpSubgroupAvcMceSetAcOnlyHaarINTEL = 5728,
482 OpSubgroupAvcMceSetSourceInterlacedFieldPolarityINTEL = 5729,
483 OpSubgroupAvcMceSetSingleReferenceInterlacedFieldPolarityINTEL = 5730,
484 OpSubgroupAvcMceSetDualReferenceInterlacedFieldPolaritiesINTEL = 5731,
485 OpSubgroupAvcMceConvertToImePayloadINTEL = 5732,
486 OpSubgroupAvcMceConvertToImeResultINTEL = 5733,
487 OpSubgroupAvcMceConvertToRefPayloadINTEL = 5734,
488 OpSubgroupAvcMceConvertToRefResultINTEL = 5735,
489 OpSubgroupAvcMceConvertToSicPayloadINTEL = 5736,
490 OpSubgroupAvcMceConvertToSicResultINTEL = 5737,
491 OpSubgroupAvcMceGetMotionVectorsINTEL = 5738,
492 OpSubgroupAvcMceGetInterDistortionsINTEL = 5739,
493 OpSubgroupAvcMceGetBestInterDistortionsINTEL = 5740,
494 OpSubgroupAvcMceGetInterMajorShapeINTEL = 5741,
495 OpSubgroupAvcMceGetInterMinorShapeINTEL = 5742,
496 OpSubgroupAvcMceGetInterDirectionsINTEL = 5743,
497 OpSubgroupAvcMceGetInterMotionVectorCountINTEL = 5744,
498 OpSubgroupAvcMceGetInterReferenceIdsINTEL = 5745,
499 OpSubgroupAvcMceGetInterReferenceInterlacedFieldPolaritiesINTEL = 5746,
500 OpSubgroupAvcImeInitializeINTEL = 5747,
501 OpSubgroupAvcImeSetSingleReferenceINTEL = 5748,
502 OpSubgroupAvcImeSetDualReferenceINTEL = 5749,
503 OpSubgroupAvcImeRefWindowSizeINTEL = 5750,
504 OpSubgroupAvcImeAdjustRefOffsetINTEL = 5751,
505 OpSubgroupAvcImeConvertToMcePayloadINTEL = 5752,
506 OpSubgroupAvcImeSetMaxMotionVectorCountINTEL = 5753,
507 OpSubgroupAvcImeSetUnidirectionalMixDisableINTEL = 5754,
508 OpSubgroupAvcImeSetEarlySearchTerminationThresholdINTEL = 5755,
509 OpSubgroupAvcImeSetWeightedSadINTEL = 5756,
510 OpSubgroupAvcImeEvaluateWithSingleReferenceINTEL = 5757,
511 OpSubgroupAvcImeEvaluateWithDualReferenceINTEL = 5758,
512 OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminINTEL = 5759,
513 OpSubgroupAvcImeEvaluateWithDualReferenceStreaminINTEL = 5760,
514 OpSubgroupAvcImeEvaluateWithSingleReferenceStreamoutINTEL = 5761,
515 OpSubgroupAvcImeEvaluateWithDualReferenceStreamoutINTEL = 5762,
516 OpSubgroupAvcImeEvaluateWithSingleReferenceStreaminoutINTEL = 5763,
517 OpSubgroupAvcImeEvaluateWithDualReferenceStreaminoutINTEL = 5764,
518 OpSubgroupAvcImeConvertToMceResultINTEL = 5765,
519 OpSubgroupAvcImeGetSingleReferenceStreaminINTEL = 5766,
520 OpSubgroupAvcImeGetDualReferenceStreaminINTEL = 5767,
521 OpSubgroupAvcImeStripSingleReferenceStreamoutINTEL = 5768,
522 OpSubgroupAvcImeStripDualReferenceStreamoutINTEL = 5769,
523 OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeMotionVectorsINTEL = 5770,
524 OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeDistortionsINTEL = 5771,
525 OpSubgroupAvcImeGetStreamoutSingleReferenceMajorShapeReferenceIdsINTEL = 5772,
526 OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeMotionVectorsINTEL = 5773,
527 OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeDistortionsINTEL = 5774,
528 OpSubgroupAvcImeGetStreamoutDualReferenceMajorShapeReferenceIdsINTEL = 5775,
529 OpSubgroupAvcImeGetBorderReachedINTEL = 5776,
530 OpSubgroupAvcImeGetTruncatedSearchIndicationINTEL = 5777,
531 OpSubgroupAvcImeGetUnidirectionalEarlySearchTerminationINTEL = 5778,
532 OpSubgroupAvcImeGetWeightingPatternMinimumMotionVectorINTEL = 5779,
533 OpSubgroupAvcImeGetWeightingPatternMinimumDistortionINTEL = 5780,
534 OpSubgroupAvcFmeInitializeINTEL = 5781,
535 OpSubgroupAvcBmeInitializeINTEL = 5782,
536 OpSubgroupAvcRefConvertToMcePayloadINTEL = 5783,
537 OpSubgroupAvcRefSetBidirectionalMixDisableINTEL = 5784,
538 OpSubgroupAvcRefSetBilinearFilterEnableINTEL = 5785,
539 OpSubgroupAvcRefEvaluateWithSingleReferenceINTEL = 5786,
540 OpSubgroupAvcRefEvaluateWithDualReferenceINTEL = 5787,
541 OpSubgroupAvcRefEvaluateWithMultiReferenceINTEL = 5788,
542 OpSubgroupAvcRefEvaluateWithMultiReferenceInterlacedINTEL = 5789,
543 OpSubgroupAvcRefConvertToMceResultINTEL = 5790,
544 OpSubgroupAvcSicInitializeINTEL = 5791,
545 OpSubgroupAvcSicConfigureSkcINTEL = 5792,
546 OpSubgroupAvcSicConfigureIpeLumaINTEL = 5793,
547 OpSubgroupAvcSicConfigureIpeLumaChromaINTEL = 5794,
548 OpSubgroupAvcSicGetMotionVectorMaskINTEL = 5795,
549 OpSubgroupAvcSicConvertToMcePayloadINTEL = 5796,
550 OpSubgroupAvcSicSetIntraLumaShapePenaltyINTEL = 5797,
551 OpSubgroupAvcSicSetIntraLumaModeCostFunctionINTEL = 5798,
552 OpSubgroupAvcSicSetIntraChromaModeCostFunctionINTEL = 5799,
553 OpSubgroupAvcSicSetBilinearFilterEnableINTEL = 5800,
554 OpSubgroupAvcSicSetSkcForwardTransformEnableINTEL = 5801,
555 OpSubgroupAvcSicSetBlockBasedRawSkipSadINTEL = 5802,
556 OpSubgroupAvcSicEvaluateIpeINTEL = 5803,
557 OpSubgroupAvcSicEvaluateWithSingleReferenceINTEL = 5804,
558 OpSubgroupAvcSicEvaluateWithDualReferenceINTEL = 5805,
559 OpSubgroupAvcSicEvaluateWithMultiReferenceINTEL = 5806,
560 OpSubgroupAvcSicEvaluateWithMultiReferenceInterlacedINTEL = 5807,
561 OpSubgroupAvcSicConvertToMceResultINTEL = 5808,
562 OpSubgroupAvcSicGetIpeLumaShapeINTEL = 5809,
563 OpSubgroupAvcSicGetBestIpeLumaDistortionINTEL = 5810,
564 OpSubgroupAvcSicGetBestIpeChromaDistortionINTEL = 5811,
565 OpSubgroupAvcSicGetPackedIpeLumaModesINTEL = 5812,
566 OpSubgroupAvcSicGetIpeChromaModeINTEL = 5813,
567 OpSubgroupAvcSicGetPackedSkcLumaCountThresholdINTEL = 5814,
568 OpSubgroupAvcSicGetPackedSkcLumaSumThresholdINTEL = 5815,
569 OpSubgroupAvcSicGetInterRawSadsINTEL = 5816,
570 OpLoopControlINTEL = 5887,
571 OpReadPipeBlockingINTEL = 5946,
572 OpWritePipeBlockingINTEL = 5947,
573 OpFPGARegINTEL = 5949,
574 OpRayQueryGetRayTMinKHR = 6016,
575 OpRayQueryGetRayFlagsKHR = 6017,
576 OpRayQueryGetIntersectionTKHR = 6018,
577 OpRayQueryGetIntersectionInstanceCustomIndexKHR = 6019,
578 OpRayQueryGetIntersectionInstanceIdKHR = 6020,
579 OpRayQueryGetIntersectionInstanceShaderBindingTableRecordOffsetKHR = 6021,
580 OpRayQueryGetIntersectionGeometryIndexKHR = 6022,
581 OpRayQueryGetIntersectionPrimitiveIndexKHR = 6023,
582 OpRayQueryGetIntersectionBarycentricsKHR = 6024,
583 OpRayQueryGetIntersectionFrontFaceKHR = 6025,
584 OpRayQueryGetIntersectionCandidateAABBOpaqueKHR = 6026,
585 OpRayQueryGetIntersectionObjectRayDirectionKHR = 6027,
586 OpRayQueryGetIntersectionObjectRayOriginKHR = 6028,
587 OpRayQueryGetWorldRayDirectionKHR = 6029,
588 OpRayQueryGetWorldRayOriginKHR = 6030,
589 OpRayQueryGetIntersectionObjectToWorldKHR = 6031,
590 OpRayQueryGetIntersectionWorldToObjectKHR = 6032,
591 OpAtomicFAddEXT = 6035,
592 _,
593};
594pub const ImageOperands = packed struct {
595 Bias: bool align(@alignOf(u32)) = false,
596 Lod: bool = false,
597 Grad: bool = false,
598 ConstOffset: bool = false,
599 Offset: bool = false,
600 ConstOffsets: bool = false,
601 Sample: bool = false,
602 MinLod: bool = false,
603 MakeTexelAvailable: bool = false,
604 MakeTexelVisible: bool = false,
605 NonPrivateTexel: bool = false,
606 VolatileTexel: bool = false,
607 SignExtend: bool = false,
608 ZeroExtend: bool = false,
609 _reserved_bit_14: bool = false,
610 _reserved_bit_15: bool = false,
611 _reserved_bit_16: bool = false,
612 _reserved_bit_17: bool = false,
613 _reserved_bit_18: bool = false,
614 _reserved_bit_19: bool = false,
615 _reserved_bit_20: bool = false,
616 _reserved_bit_21: bool = false,
617 _reserved_bit_22: bool = false,
618 _reserved_bit_23: bool = false,
619 _reserved_bit_24: bool = false,
620 _reserved_bit_25: bool = false,
621 _reserved_bit_26: bool = false,
622 _reserved_bit_27: bool = false,
623 _reserved_bit_28: bool = false,
624 _reserved_bit_29: bool = false,
625 _reserved_bit_30: bool = false,
626 _reserved_bit_31: bool = false,
627};
628pub const FPFastMathMode = packed struct {
629 NotNaN: bool align(@alignOf(u32)) = false,
630 NotInf: bool = false,
631 NSZ: bool = false,
632 AllowRecip: bool = false,
633 Fast: bool = false,
634 _reserved_bit_5: bool = false,
635 _reserved_bit_6: bool = false,
636 _reserved_bit_7: bool = false,
637 _reserved_bit_8: bool = false,
638 _reserved_bit_9: bool = false,
639 _reserved_bit_10: bool = false,
640 _reserved_bit_11: bool = false,
641 _reserved_bit_12: bool = false,
642 _reserved_bit_13: bool = false,
643 _reserved_bit_14: bool = false,
644 _reserved_bit_15: bool = false,
645 _reserved_bit_16: bool = false,
646 _reserved_bit_17: bool = false,
647 _reserved_bit_18: bool = false,
648 _reserved_bit_19: bool = false,
649 _reserved_bit_20: bool = false,
650 _reserved_bit_21: bool = false,
651 _reserved_bit_22: bool = false,
652 _reserved_bit_23: bool = false,
653 _reserved_bit_24: bool = false,
654 _reserved_bit_25: bool = false,
655 _reserved_bit_26: bool = false,
656 _reserved_bit_27: bool = false,
657 _reserved_bit_28: bool = false,
658 _reserved_bit_29: bool = false,
659 _reserved_bit_30: bool = false,
660 _reserved_bit_31: bool = false,
661};
662pub const SelectionControl = packed struct {
663 Flatten: bool align(@alignOf(u32)) = false,
664 DontFlatten: bool = false,
665 _reserved_bit_2: bool = false,
666 _reserved_bit_3: bool = false,
667 _reserved_bit_4: bool = false,
668 _reserved_bit_5: bool = false,
669 _reserved_bit_6: bool = false,
670 _reserved_bit_7: bool = false,
671 _reserved_bit_8: bool = false,
672 _reserved_bit_9: bool = false,
673 _reserved_bit_10: bool = false,
674 _reserved_bit_11: bool = false,
675 _reserved_bit_12: bool = false,
676 _reserved_bit_13: bool = false,
677 _reserved_bit_14: bool = false,
678 _reserved_bit_15: bool = false,
679 _reserved_bit_16: bool = false,
680 _reserved_bit_17: bool = false,
681 _reserved_bit_18: bool = false,
682 _reserved_bit_19: bool = false,
683 _reserved_bit_20: bool = false,
684 _reserved_bit_21: bool = false,
685 _reserved_bit_22: bool = false,
686 _reserved_bit_23: bool = false,
687 _reserved_bit_24: bool = false,
688 _reserved_bit_25: bool = false,
689 _reserved_bit_26: bool = false,
690 _reserved_bit_27: bool = false,
691 _reserved_bit_28: bool = false,
692 _reserved_bit_29: bool = false,
693 _reserved_bit_30: bool = false,
694 _reserved_bit_31: bool = false,
695};
696pub const LoopControl = packed struct {
697 Unroll: bool align(@alignOf(u32)) = false,
698 DontUnroll: bool = false,
699 DependencyInfinite: bool = false,
700 DependencyLength: bool = false,
701 MinIterations: bool = false,
702 MaxIterations: bool = false,
703 IterationMultiple: bool = false,
704 PeelCount: bool = false,
705 PartialCount: bool = false,
706 _reserved_bit_9: bool = false,
707 _reserved_bit_10: bool = false,
708 _reserved_bit_11: bool = false,
709 _reserved_bit_12: bool = false,
710 _reserved_bit_13: bool = false,
711 _reserved_bit_14: bool = false,
712 _reserved_bit_15: bool = false,
713 InitiationIntervalINTEL: bool = false,
714 MaxConcurrencyINTEL: bool = false,
715 DependencyArrayINTEL: bool = false,
716 PipelineEnableINTEL: bool = false,
717 LoopCoalesceINTEL: bool = false,
718 MaxInterleavingINTEL: bool = false,
719 SpeculatedIterationsINTEL: bool = false,
720 _reserved_bit_23: bool = false,
721 _reserved_bit_24: bool = false,
722 _reserved_bit_25: bool = false,
723 _reserved_bit_26: bool = false,
724 _reserved_bit_27: bool = false,
725 _reserved_bit_28: bool = false,
726 _reserved_bit_29: bool = false,
727 _reserved_bit_30: bool = false,
728 _reserved_bit_31: bool = false,
729};
730pub const FunctionControl = packed struct {
731 Inline: bool align(@alignOf(u32)) = false,
732 DontInline: bool = false,
733 Pure: bool = false,
734 Const: bool = false,
735 _reserved_bit_4: bool = false,
736 _reserved_bit_5: bool = false,
737 _reserved_bit_6: bool = false,
738 _reserved_bit_7: bool = false,
739 _reserved_bit_8: bool = false,
740 _reserved_bit_9: bool = false,
741 _reserved_bit_10: bool = false,
742 _reserved_bit_11: bool = false,
743 _reserved_bit_12: bool = false,
744 _reserved_bit_13: bool = false,
745 _reserved_bit_14: bool = false,
746 _reserved_bit_15: bool = false,
747 _reserved_bit_16: bool = false,
748 _reserved_bit_17: bool = false,
749 _reserved_bit_18: bool = false,
750 _reserved_bit_19: bool = false,
751 _reserved_bit_20: bool = false,
752 _reserved_bit_21: bool = false,
753 _reserved_bit_22: bool = false,
754 _reserved_bit_23: bool = false,
755 _reserved_bit_24: bool = false,
756 _reserved_bit_25: bool = false,
757 _reserved_bit_26: bool = false,
758 _reserved_bit_27: bool = false,
759 _reserved_bit_28: bool = false,
760 _reserved_bit_29: bool = false,
761 _reserved_bit_30: bool = false,
762 _reserved_bit_31: bool = false,
763};
764pub const MemorySemantics = packed struct {
765 _reserved_bit_0: bool align(@alignOf(u32)) = false,
766 Acquire: bool = false,
767 Release: bool = false,
768 AcquireRelease: bool = false,
769 SequentiallyConsistent: bool = false,
770 _reserved_bit_5: bool = false,
771 UniformMemory: bool = false,
772 SubgroupMemory: bool = false,
773 WorkgroupMemory: bool = false,
774 CrossWorkgroupMemory: bool = false,
775 AtomicCounterMemory: bool = false,
776 ImageMemory: bool = false,
777 OutputMemory: bool = false,
778 MakeAvailable: bool = false,
779 MakeVisible: bool = false,
780 Volatile: bool = false,
781 _reserved_bit_16: bool = false,
782 _reserved_bit_17: bool = false,
783 _reserved_bit_18: bool = false,
784 _reserved_bit_19: bool = false,
785 _reserved_bit_20: bool = false,
786 _reserved_bit_21: bool = false,
787 _reserved_bit_22: bool = false,
788 _reserved_bit_23: bool = false,
789 _reserved_bit_24: bool = false,
790 _reserved_bit_25: bool = false,
791 _reserved_bit_26: bool = false,
792 _reserved_bit_27: bool = false,
793 _reserved_bit_28: bool = false,
794 _reserved_bit_29: bool = false,
795 _reserved_bit_30: bool = false,
796 _reserved_bit_31: bool = false,
797};
798pub const MemoryAccess = packed struct {
799 Volatile: bool align(@alignOf(u32)) = false,
800 Aligned: bool = false,
801 Nontemporal: bool = false,
802 MakePointerAvailable: bool = false,
803 MakePointerVisible: bool = false,
804 NonPrivatePointer: bool = false,
805 _reserved_bit_6: bool = false,
806 _reserved_bit_7: bool = false,
807 _reserved_bit_8: bool = false,
808 _reserved_bit_9: bool = false,
809 _reserved_bit_10: bool = false,
810 _reserved_bit_11: bool = false,
811 _reserved_bit_12: bool = false,
812 _reserved_bit_13: bool = false,
813 _reserved_bit_14: bool = false,
814 _reserved_bit_15: bool = false,
815 _reserved_bit_16: bool = false,
816 _reserved_bit_17: bool = false,
817 _reserved_bit_18: bool = false,
818 _reserved_bit_19: bool = false,
819 _reserved_bit_20: bool = false,
820 _reserved_bit_21: bool = false,
821 _reserved_bit_22: bool = false,
822 _reserved_bit_23: bool = false,
823 _reserved_bit_24: bool = false,
824 _reserved_bit_25: bool = false,
825 _reserved_bit_26: bool = false,
826 _reserved_bit_27: bool = false,
827 _reserved_bit_28: bool = false,
828 _reserved_bit_29: bool = false,
829 _reserved_bit_30: bool = false,
830 _reserved_bit_31: bool = false,
831};
832pub const KernelProfilingInfo = packed struct {
833 CmdExecTime: bool align(@alignOf(u32)) = false,
834 _reserved_bit_1: bool = false,
835 _reserved_bit_2: bool = false,
836 _reserved_bit_3: bool = false,
837 _reserved_bit_4: bool = false,
838 _reserved_bit_5: bool = false,
839 _reserved_bit_6: bool = false,
840 _reserved_bit_7: bool = false,
841 _reserved_bit_8: bool = false,
842 _reserved_bit_9: bool = false,
843 _reserved_bit_10: bool = false,
844 _reserved_bit_11: bool = false,
845 _reserved_bit_12: bool = false,
846 _reserved_bit_13: bool = false,
847 _reserved_bit_14: bool = false,
848 _reserved_bit_15: bool = false,
849 _reserved_bit_16: bool = false,
850 _reserved_bit_17: bool = false,
851 _reserved_bit_18: bool = false,
852 _reserved_bit_19: bool = false,
853 _reserved_bit_20: bool = false,
854 _reserved_bit_21: bool = false,
855 _reserved_bit_22: bool = false,
856 _reserved_bit_23: bool = false,
857 _reserved_bit_24: bool = false,
858 _reserved_bit_25: bool = false,
859 _reserved_bit_26: bool = false,
860 _reserved_bit_27: bool = false,
861 _reserved_bit_28: bool = false,
862 _reserved_bit_29: bool = false,
863 _reserved_bit_30: bool = false,
864 _reserved_bit_31: bool = false,
865};
866pub const RayFlags = packed struct {
867 OpaqueKHR: bool align(@alignOf(u32)) = false,
868 NoOpaqueKHR: bool = false,
869 TerminateOnFirstHitKHR: bool = false,
870 SkipClosestHitShaderKHR: bool = false,
871 CullBackFacingTrianglesKHR: bool = false,
872 CullFrontFacingTrianglesKHR: bool = false,
873 CullOpaqueKHR: bool = false,
874 CullNoOpaqueKHR: bool = false,
875 SkipTrianglesKHR: bool = false,
876 SkipAABBsKHR: bool = false,
877 _reserved_bit_10: bool = false,
878 _reserved_bit_11: bool = false,
879 _reserved_bit_12: bool = false,
880 _reserved_bit_13: bool = false,
881 _reserved_bit_14: bool = false,
882 _reserved_bit_15: bool = false,
883 _reserved_bit_16: bool = false,
884 _reserved_bit_17: bool = false,
885 _reserved_bit_18: bool = false,
886 _reserved_bit_19: bool = false,
887 _reserved_bit_20: bool = false,
888 _reserved_bit_21: bool = false,
889 _reserved_bit_22: bool = false,
890 _reserved_bit_23: bool = false,
891 _reserved_bit_24: bool = false,
892 _reserved_bit_25: bool = false,
893 _reserved_bit_26: bool = false,
894 _reserved_bit_27: bool = false,
895 _reserved_bit_28: bool = false,
896 _reserved_bit_29: bool = false,
897 _reserved_bit_30: bool = false,
898 _reserved_bit_31: bool = false,
899};
900pub const FragmentShadingRate = packed struct {
901 Vertical2Pixels: bool align(@alignOf(u32)) = false,
902 Vertical4Pixels: bool = false,
903 Horizontal2Pixels: bool = false,
904 Horizontal4Pixels: bool = false,
905 _reserved_bit_4: bool = false,
906 _reserved_bit_5: bool = false,
907 _reserved_bit_6: bool = false,
908 _reserved_bit_7: bool = false,
909 _reserved_bit_8: bool = false,
910 _reserved_bit_9: bool = false,
911 _reserved_bit_10: bool = false,
912 _reserved_bit_11: bool = false,
913 _reserved_bit_12: bool = false,
914 _reserved_bit_13: bool = false,
915 _reserved_bit_14: bool = false,
916 _reserved_bit_15: bool = false,
917 _reserved_bit_16: bool = false,
918 _reserved_bit_17: bool = false,
919 _reserved_bit_18: bool = false,
920 _reserved_bit_19: bool = false,
921 _reserved_bit_20: bool = false,
922 _reserved_bit_21: bool = false,
923 _reserved_bit_22: bool = false,
924 _reserved_bit_23: bool = false,
925 _reserved_bit_24: bool = false,
926 _reserved_bit_25: bool = false,
927 _reserved_bit_26: bool = false,
928 _reserved_bit_27: bool = false,
929 _reserved_bit_28: bool = false,
930 _reserved_bit_29: bool = false,
931 _reserved_bit_30: bool = false,
932 _reserved_bit_31: bool = false,
933};
934pub const SourceLanguage = extern enum(u32) {
935 Unknown = 0,
936 ESSL = 1,
937 GLSL = 2,
938 OpenCL_C = 3,
939 OpenCL_CPP = 4,
940 HLSL = 5,
941 _,
942};
943pub const ExecutionModel = extern enum(u32) {
944 Vertex = 0,
945 TessellationControl = 1,
946 TessellationEvaluation = 2,
947 Geometry = 3,
948 Fragment = 4,
949 GLCompute = 5,
950 Kernel = 6,
951 TaskNV = 5267,
952 MeshNV = 5268,
953 RayGenerationNV = 5313,
954 RayGenerationKHR = 5313,
955 IntersectionNV = 5314,
956 IntersectionKHR = 5314,
957 AnyHitNV = 5315,
958 AnyHitKHR = 5315,
959 ClosestHitNV = 5316,
960 ClosestHitKHR = 5316,
961 MissNV = 5317,
962 MissKHR = 5317,
963 CallableNV = 5318,
964 CallableKHR = 5318,
965 _,
966};
967pub const AddressingModel = extern enum(u32) {
968 Logical = 0,
969 Physical32 = 1,
970 Physical64 = 2,
971 PhysicalStorageBuffer64 = 5348,
972 PhysicalStorageBuffer64EXT = 5348,
973 _,
974};
975pub const MemoryModel = extern enum(u32) {
976 Simple = 0,
977 GLSL450 = 1,
978 OpenCL = 2,
979 Vulkan = 3,
980 VulkanKHR = 3,
981 _,
982};
983pub const ExecutionMode = extern enum(u32) {
984 Invocations = 0,
985 SpacingEqual = 1,
986 SpacingFractionalEven = 2,
987 SpacingFractionalOdd = 3,
988 VertexOrderCw = 4,
989 VertexOrderCcw = 5,
990 PixelCenterInteger = 6,
991 OriginUpperLeft = 7,
992 OriginLowerLeft = 8,
993 EarlyFragmentTests = 9,
994 PointMode = 10,
995 Xfb = 11,
996 DepthReplacing = 12,
997 DepthGreater = 14,
998 DepthLess = 15,
999 DepthUnchanged = 16,
1000 LocalSize = 17,
1001 LocalSizeHint = 18,
1002 InputPoints = 19,
1003 InputLines = 20,
1004 InputLinesAdjacency = 21,
1005 Triangles = 22,
1006 InputTrianglesAdjacency = 23,
1007 Quads = 24,
1008 Isolines = 25,
1009 OutputVertices = 26,
1010 OutputPoints = 27,
1011 OutputLineStrip = 28,
1012 OutputTriangleStrip = 29,
1013 VecTypeHint = 30,
1014 ContractionOff = 31,
1015 Initializer = 33,
1016 Finalizer = 34,
1017 SubgroupSize = 35,
1018 SubgroupsPerWorkgroup = 36,
1019 SubgroupsPerWorkgroupId = 37,
1020 LocalSizeId = 38,
1021 LocalSizeHintId = 39,
1022 PostDepthCoverage = 4446,
1023 DenormPreserve = 4459,
1024 DenormFlushToZero = 4460,
1025 SignedZeroInfNanPreserve = 4461,
1026 RoundingModeRTE = 4462,
1027 RoundingModeRTZ = 4463,
1028 StencilRefReplacingEXT = 5027,
1029 OutputLinesNV = 5269,
1030 OutputPrimitivesNV = 5270,
1031 DerivativeGroupQuadsNV = 5289,
1032 DerivativeGroupLinearNV = 5290,
1033 OutputTrianglesNV = 5298,
1034 PixelInterlockOrderedEXT = 5366,
1035 PixelInterlockUnorderedEXT = 5367,
1036 SampleInterlockOrderedEXT = 5368,
1037 SampleInterlockUnorderedEXT = 5369,
1038 ShadingRateInterlockOrderedEXT = 5370,
1039 ShadingRateInterlockUnorderedEXT = 5371,
1040 MaxWorkgroupSizeINTEL = 5893,
1041 MaxWorkDimINTEL = 5894,
1042 NoGlobalOffsetINTEL = 5895,
1043 NumSIMDWorkitemsINTEL = 5896,
1044 _,
1045};
1046pub const StorageClass = extern enum(u32) {
1047 UniformConstant = 0,
1048 Input = 1,
1049 Uniform = 2,
1050 Output = 3,
1051 Workgroup = 4,
1052 CrossWorkgroup = 5,
1053 Private = 6,
1054 Function = 7,
1055 Generic = 8,
1056 PushConstant = 9,
1057 AtomicCounter = 10,
1058 Image = 11,
1059 StorageBuffer = 12,
1060 CallableDataNV = 5328,
1061 CallableDataKHR = 5328,
1062 IncomingCallableDataNV = 5329,
1063 IncomingCallableDataKHR = 5329,
1064 RayPayloadNV = 5338,
1065 RayPayloadKHR = 5338,
1066 HitAttributeNV = 5339,
1067 HitAttributeKHR = 5339,
1068 IncomingRayPayloadNV = 5342,
1069 IncomingRayPayloadKHR = 5342,
1070 ShaderRecordBufferNV = 5343,
1071 ShaderRecordBufferKHR = 5343,
1072 PhysicalStorageBuffer = 5349,
1073 PhysicalStorageBufferEXT = 5349,
1074 CodeSectionINTEL = 5605,
1075 _,
1076};
1077pub const Dim = extern enum(u32) {
1078 @"1D" = 0,
1079 @"2D" = 1,
1080 @"3D" = 2,
1081 Cube = 3,
1082 Rect = 4,
1083 Buffer = 5,
1084 SubpassData = 6,
1085 _,
1086};
1087pub const SamplerAddressingMode = extern enum(u32) {
1088 None = 0,
1089 ClampToEdge = 1,
1090 Clamp = 2,
1091 Repeat = 3,
1092 RepeatMirrored = 4,
1093 _,
1094};
1095pub const SamplerFilterMode = extern enum(u32) {
1096 Nearest = 0,
1097 Linear = 1,
1098 _,
1099};
1100pub const ImageFormat = extern enum(u32) {
1101 Unknown = 0,
1102 Rgba32f = 1,
1103 Rgba16f = 2,
1104 R32f = 3,
1105 Rgba8 = 4,
1106 Rgba8Snorm = 5,
1107 Rg32f = 6,
1108 Rg16f = 7,
1109 R11fG11fB10f = 8,
1110 R16f = 9,
1111 Rgba16 = 10,
1112 Rgb10A2 = 11,
1113 Rg16 = 12,
1114 Rg8 = 13,
1115 R16 = 14,
1116 R8 = 15,
1117 Rgba16Snorm = 16,
1118 Rg16Snorm = 17,
1119 Rg8Snorm = 18,
1120 R16Snorm = 19,
1121 R8Snorm = 20,
1122 Rgba32i = 21,
1123 Rgba16i = 22,
1124 Rgba8i = 23,
1125 R32i = 24,
1126 Rg32i = 25,
1127 Rg16i = 26,
1128 Rg8i = 27,
1129 R16i = 28,
1130 R8i = 29,
1131 Rgba32ui = 30,
1132 Rgba16ui = 31,
1133 Rgba8ui = 32,
1134 R32ui = 33,
1135 Rgb10a2ui = 34,
1136 Rg32ui = 35,
1137 Rg16ui = 36,
1138 Rg8ui = 37,
1139 R16ui = 38,
1140 R8ui = 39,
1141 R64ui = 40,
1142 R64i = 41,
1143 _,
1144};
1145pub const ImageChannelOrder = extern enum(u32) {
1146 R = 0,
1147 A = 1,
1148 RG = 2,
1149 RA = 3,
1150 RGB = 4,
1151 RGBA = 5,
1152 BGRA = 6,
1153 ARGB = 7,
1154 Intensity = 8,
1155 Luminance = 9,
1156 Rx = 10,
1157 RGx = 11,
1158 RGBx = 12,
1159 Depth = 13,
1160 DepthStencil = 14,
1161 sRGB = 15,
1162 sRGBx = 16,
1163 sRGBA = 17,
1164 sBGRA = 18,
1165 ABGR = 19,
1166 _,
1167};
1168pub const ImageChannelDataType = extern enum(u32) {
1169 SnormInt8 = 0,
1170 SnormInt16 = 1,
1171 UnormInt8 = 2,
1172 UnormInt16 = 3,
1173 UnormShort565 = 4,
1174 UnormShort555 = 5,
1175 UnormInt101010 = 6,
1176 SignedInt8 = 7,
1177 SignedInt16 = 8,
1178 SignedInt32 = 9,
1179 UnsignedInt8 = 10,
1180 UnsignedInt16 = 11,
1181 UnsignedInt32 = 12,
1182 HalfFloat = 13,
1183 Float = 14,
1184 UnormInt24 = 15,
1185 UnormInt101010_2 = 16,
1186 _,
1187};
1188pub const FPRoundingMode = extern enum(u32) {
1189 RTE = 0,
1190 RTZ = 1,
1191 RTP = 2,
1192 RTN = 3,
1193 _,
1194};
1195pub const LinkageType = extern enum(u32) {
1196 Export = 0,
1197 Import = 1,
1198 _,
1199};
1200pub const AccessQualifier = extern enum(u32) {
1201 ReadOnly = 0,
1202 WriteOnly = 1,
1203 ReadWrite = 2,
1204 _,
1205};
1206pub const FunctionParameterAttribute = extern enum(u32) {
1207 Zext = 0,
1208 Sext = 1,
1209 ByVal = 2,
1210 Sret = 3,
1211 NoAlias = 4,
1212 NoCapture = 5,
1213 NoWrite = 6,
1214 NoReadWrite = 7,
1215 _,
1216};
1217pub const Decoration = extern enum(u32) {
1218 RelaxedPrecision = 0,
1219 SpecId = 1,
1220 Block = 2,
1221 BufferBlock = 3,
1222 RowMajor = 4,
1223 ColMajor = 5,
1224 ArrayStride = 6,
1225 MatrixStride = 7,
1226 GLSLShared = 8,
1227 GLSLPacked = 9,
1228 CPacked = 10,
1229 BuiltIn = 11,
1230 NoPerspective = 13,
1231 Flat = 14,
1232 Patch = 15,
1233 Centroid = 16,
1234 Sample = 17,
1235 Invariant = 18,
1236 Restrict = 19,
1237 Aliased = 20,
1238 Volatile = 21,
1239 Constant = 22,
1240 Coherent = 23,
1241 NonWritable = 24,
1242 NonReadable = 25,
1243 Uniform = 26,
1244 UniformId = 27,
1245 SaturatedConversion = 28,
1246 Stream = 29,
1247 Location = 30,
1248 Component = 31,
1249 Index = 32,
1250 Binding = 33,
1251 DescriptorSet = 34,
1252 Offset = 35,
1253 XfbBuffer = 36,
1254 XfbStride = 37,
1255 FuncParamAttr = 38,
1256 FPRoundingMode = 39,
1257 FPFastMathMode = 40,
1258 LinkageAttributes = 41,
1259 NoContraction = 42,
1260 InputAttachmentIndex = 43,
1261 Alignment = 44,
1262 MaxByteOffset = 45,
1263 AlignmentId = 46,
1264 MaxByteOffsetId = 47,
1265 NoSignedWrap = 4469,
1266 NoUnsignedWrap = 4470,
1267 ExplicitInterpAMD = 4999,
1268 OverrideCoverageNV = 5248,
1269 PassthroughNV = 5250,
1270 ViewportRelativeNV = 5252,
1271 SecondaryViewportRelativeNV = 5256,
1272 PerPrimitiveNV = 5271,
1273 PerViewNV = 5272,
1274 PerTaskNV = 5273,
1275 PerVertexNV = 5285,
1276 NonUniform = 5300,
1277 NonUniformEXT = 5300,
1278 RestrictPointer = 5355,
1279 RestrictPointerEXT = 5355,
1280 AliasedPointer = 5356,
1281 AliasedPointerEXT = 5356,
1282 ReferencedIndirectlyINTEL = 5602,
1283 CounterBuffer = 5634,
1284 HlslCounterBufferGOOGLE = 5634,
1285 UserSemantic = 5635,
1286 HlslSemanticGOOGLE = 5635,
1287 UserTypeGOOGLE = 5636,
1288 RegisterINTEL = 5825,
1289 MemoryINTEL = 5826,
1290 NumbanksINTEL = 5827,
1291 BankwidthINTEL = 5828,
1292 MaxPrivateCopiesINTEL = 5829,
1293 SinglepumpINTEL = 5830,
1294 DoublepumpINTEL = 5831,
1295 MaxReplicatesINTEL = 5832,
1296 SimpleDualPortINTEL = 5833,
1297 MergeINTEL = 5834,
1298 BankBitsINTEL = 5835,
1299 ForcePow2DepthINTEL = 5836,
1300 _,
1301};
1302pub const BuiltIn = extern enum(u32) {
1303 Position = 0,
1304 PointSize = 1,
1305 ClipDistance = 3,
1306 CullDistance = 4,
1307 VertexId = 5,
1308 InstanceId = 6,
1309 PrimitiveId = 7,
1310 InvocationId = 8,
1311 Layer = 9,
1312 ViewportIndex = 10,
1313 TessLevelOuter = 11,
1314 TessLevelInner = 12,
1315 TessCoord = 13,
1316 PatchVertices = 14,
1317 FragCoord = 15,
1318 PointCoord = 16,
1319 FrontFacing = 17,
1320 SampleId = 18,
1321 SamplePosition = 19,
1322 SampleMask = 20,
1323 FragDepth = 22,
1324 HelperInvocation = 23,
1325 NumWorkgroups = 24,
1326 WorkgroupSize = 25,
1327 WorkgroupId = 26,
1328 LocalInvocationId = 27,
1329 GlobalInvocationId = 28,
1330 LocalInvocationIndex = 29,
1331 WorkDim = 30,
1332 GlobalSize = 31,
1333 EnqueuedWorkgroupSize = 32,
1334 GlobalOffset = 33,
1335 GlobalLinearId = 34,
1336 SubgroupSize = 36,
1337 SubgroupMaxSize = 37,
1338 NumSubgroups = 38,
1339 NumEnqueuedSubgroups = 39,
1340 SubgroupId = 40,
1341 SubgroupLocalInvocationId = 41,
1342 VertexIndex = 42,
1343 InstanceIndex = 43,
1344 SubgroupEqMask = 4416,
1345 SubgroupGeMask = 4417,
1346 SubgroupGtMask = 4418,
1347 SubgroupLeMask = 4419,
1348 SubgroupLtMask = 4420,
1349 SubgroupEqMaskKHR = 4416,
1350 SubgroupGeMaskKHR = 4417,
1351 SubgroupGtMaskKHR = 4418,
1352 SubgroupLeMaskKHR = 4419,
1353 SubgroupLtMaskKHR = 4420,
1354 BaseVertex = 4424,
1355 BaseInstance = 4425,
1356 DrawIndex = 4426,
1357 PrimitiveShadingRateKHR = 4432,
1358 DeviceIndex = 4438,
1359 ViewIndex = 4440,
1360 ShadingRateKHR = 4444,
1361 BaryCoordNoPerspAMD = 4992,
1362 BaryCoordNoPerspCentroidAMD = 4993,
1363 BaryCoordNoPerspSampleAMD = 4994,
1364 BaryCoordSmoothAMD = 4995,
1365 BaryCoordSmoothCentroidAMD = 4996,
1366 BaryCoordSmoothSampleAMD = 4997,
1367 BaryCoordPullModelAMD = 4998,
1368 FragStencilRefEXT = 5014,
1369 ViewportMaskNV = 5253,
1370 SecondaryPositionNV = 5257,
1371 SecondaryViewportMaskNV = 5258,
1372 PositionPerViewNV = 5261,
1373 ViewportMaskPerViewNV = 5262,
1374 FullyCoveredEXT = 5264,
1375 TaskCountNV = 5274,
1376 PrimitiveCountNV = 5275,
1377 PrimitiveIndicesNV = 5276,
1378 ClipDistancePerViewNV = 5277,
1379 CullDistancePerViewNV = 5278,
1380 LayerPerViewNV = 5279,
1381 MeshViewCountNV = 5280,
1382 MeshViewIndicesNV = 5281,
1383 BaryCoordNV = 5286,
1384 BaryCoordNoPerspNV = 5287,
1385 FragSizeEXT = 5292,
1386 FragmentSizeNV = 5292,
1387 FragInvocationCountEXT = 5293,
1388 InvocationsPerPixelNV = 5293,
1389 LaunchIdNV = 5319,
1390 LaunchIdKHR = 5319,
1391 LaunchSizeNV = 5320,
1392 LaunchSizeKHR = 5320,
1393 WorldRayOriginNV = 5321,
1394 WorldRayOriginKHR = 5321,
1395 WorldRayDirectionNV = 5322,
1396 WorldRayDirectionKHR = 5322,
1397 ObjectRayOriginNV = 5323,
1398 ObjectRayOriginKHR = 5323,
1399 ObjectRayDirectionNV = 5324,
1400 ObjectRayDirectionKHR = 5324,
1401 RayTminNV = 5325,
1402 RayTminKHR = 5325,
1403 RayTmaxNV = 5326,
1404 RayTmaxKHR = 5326,
1405 InstanceCustomIndexNV = 5327,
1406 InstanceCustomIndexKHR = 5327,
1407 ObjectToWorldNV = 5330,
1408 ObjectToWorldKHR = 5330,
1409 WorldToObjectNV = 5331,
1410 WorldToObjectKHR = 5331,
1411 HitTNV = 5332,
1412 HitKindNV = 5333,
1413 HitKindKHR = 5333,
1414 IncomingRayFlagsNV = 5351,
1415 IncomingRayFlagsKHR = 5351,
1416 RayGeometryIndexKHR = 5352,
1417 WarpsPerSMNV = 5374,
1418 SMCountNV = 5375,
1419 WarpIDNV = 5376,
1420 SMIDNV = 5377,
1421 _,
1422};
1423pub const Scope = extern enum(u32) {
1424 CrossDevice = 0,
1425 Device = 1,
1426 Workgroup = 2,
1427 Subgroup = 3,
1428 Invocation = 4,
1429 QueueFamily = 5,
1430 QueueFamilyKHR = 5,
1431 ShaderCallKHR = 6,
1432 _,
1433};
1434pub const GroupOperation = extern enum(u32) {
1435 Reduce = 0,
1436 InclusiveScan = 1,
1437 ExclusiveScan = 2,
1438 ClusteredReduce = 3,
1439 PartitionedReduceNV = 6,
1440 PartitionedInclusiveScanNV = 7,
1441 PartitionedExclusiveScanNV = 8,
1442 _,
1443};
1444pub const KernelEnqueueFlags = extern enum(u32) {
1445 NoWait = 0,
1446 WaitKernel = 1,
1447 WaitWorkGroup = 2,
1448 _,
1449};
1450pub const Capability = extern enum(u32) {
1451 Matrix = 0,
1452 Shader = 1,
1453 Geometry = 2,
1454 Tessellation = 3,
1455 Addresses = 4,
1456 Linkage = 5,
1457 Kernel = 6,
1458 Vector16 = 7,
1459 Float16Buffer = 8,
1460 Float16 = 9,
1461 Float64 = 10,
1462 Int64 = 11,
1463 Int64Atomics = 12,
1464 ImageBasic = 13,
1465 ImageReadWrite = 14,
1466 ImageMipmap = 15,
1467 Pipes = 17,
1468 Groups = 18,
1469 DeviceEnqueue = 19,
1470 LiteralSampler = 20,
1471 AtomicStorage = 21,
1472 Int16 = 22,
1473 TessellationPointSize = 23,
1474 GeometryPointSize = 24,
1475 ImageGatherExtended = 25,
1476 StorageImageMultisample = 27,
1477 UniformBufferArrayDynamicIndexing = 28,
1478 SampledImageArrayDynamicIndexing = 29,
1479 StorageBufferArrayDynamicIndexing = 30,
1480 StorageImageArrayDynamicIndexing = 31,
1481 ClipDistance = 32,
1482 CullDistance = 33,
1483 ImageCubeArray = 34,
1484 SampleRateShading = 35,
1485 ImageRect = 36,
1486 SampledRect = 37,
1487 GenericPointer = 38,
1488 Int8 = 39,
1489 InputAttachment = 40,
1490 SparseResidency = 41,
1491 MinLod = 42,
1492 Sampled1D = 43,
1493 Image1D = 44,
1494 SampledCubeArray = 45,
1495 SampledBuffer = 46,
1496 ImageBuffer = 47,
1497 ImageMSArray = 48,
1498 StorageImageExtendedFormats = 49,
1499 ImageQuery = 50,
1500 DerivativeControl = 51,
1501 InterpolationFunction = 52,
1502 TransformFeedback = 53,
1503 GeometryStreams = 54,
1504 StorageImageReadWithoutFormat = 55,
1505 StorageImageWriteWithoutFormat = 56,
1506 MultiViewport = 57,
1507 SubgroupDispatch = 58,
1508 NamedBarrier = 59,
1509 PipeStorage = 60,
1510 GroupNonUniform = 61,
1511 GroupNonUniformVote = 62,
1512 GroupNonUniformArithmetic = 63,
1513 GroupNonUniformBallot = 64,
1514 GroupNonUniformShuffle = 65,
1515 GroupNonUniformShuffleRelative = 66,
1516 GroupNonUniformClustered = 67,
1517 GroupNonUniformQuad = 68,
1518 ShaderLayer = 69,
1519 ShaderViewportIndex = 70,
1520 FragmentShadingRateKHR = 4422,
1521 SubgroupBallotKHR = 4423,
1522 DrawParameters = 4427,
1523 SubgroupVoteKHR = 4431,
1524 StorageBuffer16BitAccess = 4433,
1525 StorageUniformBufferBlock16 = 4433,
1526 UniformAndStorageBuffer16BitAccess = 4434,
1527 StorageUniform16 = 4434,
1528 StoragePushConstant16 = 4435,
1529 StorageInputOutput16 = 4436,
1530 DeviceGroup = 4437,
1531 MultiView = 4439,
1532 VariablePointersStorageBuffer = 4441,
1533 VariablePointers = 4442,
1534 AtomicStorageOps = 4445,
1535 SampleMaskPostDepthCoverage = 4447,
1536 StorageBuffer8BitAccess = 4448,
1537 UniformAndStorageBuffer8BitAccess = 4449,
1538 StoragePushConstant8 = 4450,
1539 DenormPreserve = 4464,
1540 DenormFlushToZero = 4465,
1541 SignedZeroInfNanPreserve = 4466,
1542 RoundingModeRTE = 4467,
1543 RoundingModeRTZ = 4468,
1544 RayQueryProvisionalKHR = 4471,
1545 RayQueryKHR = 4472,
1546 RayTraversalPrimitiveCullingKHR = 4478,
1547 RayTracingKHR = 4479,
1548 Float16ImageAMD = 5008,
1549 ImageGatherBiasLodAMD = 5009,
1550 FragmentMaskAMD = 5010,
1551 StencilExportEXT = 5013,
1552 ImageReadWriteLodAMD = 5015,
1553 Int64ImageEXT = 5016,
1554 ShaderClockKHR = 5055,
1555 SampleMaskOverrideCoverageNV = 5249,
1556 GeometryShaderPassthroughNV = 5251,
1557 ShaderViewportIndexLayerEXT = 5254,
1558 ShaderViewportIndexLayerNV = 5254,
1559 ShaderViewportMaskNV = 5255,
1560 ShaderStereoViewNV = 5259,
1561 PerViewAttributesNV = 5260,
1562 FragmentFullyCoveredEXT = 5265,
1563 MeshShadingNV = 5266,
1564 ImageFootprintNV = 5282,
1565 FragmentBarycentricNV = 5284,
1566 ComputeDerivativeGroupQuadsNV = 5288,
1567 FragmentDensityEXT = 5291,
1568 ShadingRateNV = 5291,
1569 GroupNonUniformPartitionedNV = 5297,
1570 ShaderNonUniform = 5301,
1571 ShaderNonUniformEXT = 5301,
1572 RuntimeDescriptorArray = 5302,
1573 RuntimeDescriptorArrayEXT = 5302,
1574 InputAttachmentArrayDynamicIndexing = 5303,
1575 InputAttachmentArrayDynamicIndexingEXT = 5303,
1576 UniformTexelBufferArrayDynamicIndexing = 5304,
1577 UniformTexelBufferArrayDynamicIndexingEXT = 5304,
1578 StorageTexelBufferArrayDynamicIndexing = 5305,
1579 StorageTexelBufferArrayDynamicIndexingEXT = 5305,
1580 UniformBufferArrayNonUniformIndexing = 5306,
1581 UniformBufferArrayNonUniformIndexingEXT = 5306,
1582 SampledImageArrayNonUniformIndexing = 5307,
1583 SampledImageArrayNonUniformIndexingEXT = 5307,
1584 StorageBufferArrayNonUniformIndexing = 5308,
1585 StorageBufferArrayNonUniformIndexingEXT = 5308,
1586 StorageImageArrayNonUniformIndexing = 5309,
1587 StorageImageArrayNonUniformIndexingEXT = 5309,
1588 InputAttachmentArrayNonUniformIndexing = 5310,
1589 InputAttachmentArrayNonUniformIndexingEXT = 5310,
1590 UniformTexelBufferArrayNonUniformIndexing = 5311,
1591 UniformTexelBufferArrayNonUniformIndexingEXT = 5311,
1592 StorageTexelBufferArrayNonUniformIndexing = 5312,
1593 StorageTexelBufferArrayNonUniformIndexingEXT = 5312,
1594 RayTracingNV = 5340,
1595 VulkanMemoryModel = 5345,
1596 VulkanMemoryModelKHR = 5345,
1597 VulkanMemoryModelDeviceScope = 5346,
1598 VulkanMemoryModelDeviceScopeKHR = 5346,
1599 PhysicalStorageBufferAddresses = 5347,
1600 PhysicalStorageBufferAddressesEXT = 5347,
1601 ComputeDerivativeGroupLinearNV = 5350,
1602 RayTracingProvisionalKHR = 5353,
1603 CooperativeMatrixNV = 5357,
1604 FragmentShaderSampleInterlockEXT = 5363,
1605 FragmentShaderShadingRateInterlockEXT = 5372,
1606 ShaderSMBuiltinsNV = 5373,
1607 FragmentShaderPixelInterlockEXT = 5378,
1608 DemoteToHelperInvocationEXT = 5379,
1609 SubgroupShuffleINTEL = 5568,
1610 SubgroupBufferBlockIOINTEL = 5569,
1611 SubgroupImageBlockIOINTEL = 5570,
1612 SubgroupImageMediaBlockIOINTEL = 5579,
1613 IntegerFunctions2INTEL = 5584,
1614 FunctionPointersINTEL = 5603,
1615 IndirectReferencesINTEL = 5604,
1616 SubgroupAvcMotionEstimationINTEL = 5696,
1617 SubgroupAvcMotionEstimationIntraINTEL = 5697,
1618 SubgroupAvcMotionEstimationChromaINTEL = 5698,
1619 FPGAMemoryAttributesINTEL = 5824,
1620 UnstructuredLoopControlsINTEL = 5886,
1621 FPGALoopControlsINTEL = 5888,
1622 KernelAttributesINTEL = 5892,
1623 FPGAKernelAttributesINTEL = 5897,
1624 BlockingPipesINTEL = 5945,
1625 FPGARegINTEL = 5948,
1626 AtomicFloat32AddEXT = 6033,
1627 AtomicFloat64AddEXT = 6034,
1628 _,
1629};
1630pub const RayQueryIntersection = extern enum(u32) {
1631 RayQueryCandidateIntersectionKHR = 0,
1632 RayQueryCommittedIntersectionKHR = 1,
1633 _,
1634};
1635pub const RayQueryCommittedIntersectionType = extern enum(u32) {
1636 RayQueryCommittedIntersectionNoneKHR = 0,
1637 RayQueryCommittedIntersectionTriangleKHR = 1,
1638 RayQueryCommittedIntersectionGeneratedKHR = 2,
1639 _,
1640};
1641pub const RayQueryCandidateIntersectionType = extern enum(u32) {
1642 RayQueryCandidateIntersectionTriangleKHR = 0,
1643 RayQueryCandidateIntersectionAABBKHR = 1,
1644 _,
1645};
src/codegen/wasm.zig+267-68
...@@ -4,6 +4,7 @@ const ArrayList = std.ArrayList;...@@ -4,6 +4,7 @@ const ArrayList = std.ArrayList;
4const assert = std.debug.assert;4const assert = std.debug.assert;
5const leb = std.leb;5const leb = std.leb;
6const mem = std.mem;6const mem = std.mem;
7const wasm = std.wasm;
78
8const Module = @import("../Module.zig");9const Module = @import("../Module.zig");
9const Decl = Module.Decl;10const Decl = Module.Decl;
...@@ -12,6 +13,7 @@ const Inst = ir.Inst;...@@ -12,6 +13,7 @@ const Inst = ir.Inst;
12const Type = @import("../type.zig").Type;13const Type = @import("../type.zig").Type;
13const Value = @import("../value.zig").Value;14const Value = @import("../value.zig").Value;
14const Compilation = @import("../Compilation.zig");15const Compilation = @import("../Compilation.zig");
16const AnyMCValue = @import("../codegen.zig").AnyMCValue;
1517
16/// Wasm Value, created when generating an instruction18/// Wasm Value, created when generating an instruction
17const WValue = union(enum) {19const WValue = union(enum) {
...@@ -20,23 +22,14 @@ const WValue = union(enum) {...@@ -20,23 +22,14 @@ const WValue = union(enum) {
20 local: u32,22 local: u32,
21 /// Instruction holding a constant `Value`23 /// Instruction holding a constant `Value`
22 constant: *Inst,24 constant: *Inst,
23 /// Block label25 /// Offset position in the list of bytecode instructions
26 code_offset: usize,
27 /// The label of the block, used by breaks to find its relative distance
24 block_idx: u32,28 block_idx: u32,
25};29};
2630
27/// Hashmap to store generated `WValue` for each `Inst`31/// Hashmap to store generated `WValue` for each `Inst`
28pub const ValueTable = std.AutoHashMap(*Inst, WValue);32pub const ValueTable = std.AutoHashMapUnmanaged(*Inst, WValue);
29
30/// Using a given `Type`, returns the corresponding wasm value type
31fn genValtype(ty: Type) ?u8 {
32 return switch (ty.tag()) {
33 .f32 => 0x7D,
34 .f64 => 0x7C,
35 .u32, .i32 => 0x7F,
36 .u64, .i64 => 0x7E,
37 else => null,
38 };
39}
4033
41/// Code represents the `Code` section of wasm that34/// Code represents the `Code` section of wasm that
42/// belongs to a function35/// belongs to a function
...@@ -58,13 +51,25 @@ pub const Context = struct {...@@ -58,13 +51,25 @@ pub const Context = struct {
58 local_index: u32 = 0,51 local_index: u32 = 0,
59 /// If codegen fails, an error messages will be allocated and saved in `err_msg`52 /// If codegen fails, an error messages will be allocated and saved in `err_msg`
60 err_msg: *Module.ErrorMsg,53 err_msg: *Module.ErrorMsg,
54 /// Current block depth. Used to calculate the relative difference between a break
55 /// and block
56 block_depth: u32 = 0,
57 /// List of all locals' types generated throughout this declaration
58 /// used to emit locals count at start of 'code' section.
59 locals: std.ArrayListUnmanaged(u8),
6160
62 const InnerError = error{61 const InnerError = error{
63 OutOfMemory,62 OutOfMemory,
64 CodegenFail,63 CodegenFail,
65 };64 };
6665
67 /// Sets `err_msg` on `Context` and returns `error.CodegenFail` which is caught in link/Wasm.zig66 pub fn deinit(self: *Context) void {
67 self.values.deinit(self.gpa);
68 self.locals.deinit(self.gpa);
69 self.* = undefined;
70 }
71
72 /// Sets `err_msg` on `Context` and returns `error.CodegemFail` which is caught in link/Wasm.zig
68 fn fail(self: *Context, src: usize, comptime fmt: []const u8, args: anytype) InnerError {73 fn fail(self: *Context, src: usize, comptime fmt: []const u8, args: anytype) InnerError {
69 self.err_msg = try Module.ErrorMsg.create(self.gpa, .{74 self.err_msg = try Module.ErrorMsg.create(self.gpa, .{
70 .file_scope = self.decl.getFileScope(),75 .file_scope = self.decl.getFileScope(),
...@@ -85,13 +90,35 @@ pub const Context = struct {...@@ -85,13 +90,35 @@ pub const Context = struct {
85 return self.values.get(inst).?; // Instruction does not dominate all uses!90 return self.values.get(inst).?; // Instruction does not dominate all uses!
86 }91 }
8792
93 /// Using a given `Type`, returns the corresponding wasm value type
94 fn genValtype(self: *Context, src: usize, ty: Type) InnerError!u8 {
95 return switch (ty.tag()) {
96 .f32 => wasm.valtype(.f32),
97 .f64 => wasm.valtype(.f64),
98 .u32, .i32 => wasm.valtype(.i32),
99 .u64, .i64 => wasm.valtype(.i64),
100 else => self.fail(src, "TODO - Wasm genValtype for type '{s}'", .{ty.tag()}),
101 };
102 }
103
104 /// Using a given `Type`, returns the corresponding wasm value type
105 /// Differently from `genValtype` this also allows `void` to create a block
106 /// with no return type
107 fn genBlockType(self: *Context, src: usize, ty: Type) InnerError!u8 {
108 return switch (ty.tag()) {
109 .void, .noreturn => wasm.block_empty,
110 else => self.genValtype(src, ty),
111 };
112 }
113
88 /// Writes the bytecode depending on the given `WValue` in `val`114 /// Writes the bytecode depending on the given `WValue` in `val`
89 fn emitWValue(self: *Context, val: WValue) InnerError!void {115 fn emitWValue(self: *Context, val: WValue) InnerError!void {
90 const writer = self.code.writer();116 const writer = self.code.writer();
91 switch (val) {117 switch (val) {
92 .none, .block_idx => {},118 .block_idx => unreachable,
119 .none, .code_offset => {},
93 .local => |idx| {120 .local => |idx| {
94 try writer.writeByte(0x20); // local.get121 try writer.writeByte(wasm.opcode(.local_get));
95 try leb.writeULEB128(writer, idx);122 try leb.writeULEB128(writer, idx);
96 },123 },
97 .constant => |inst| try self.emitConstant(inst.castTag(.constant).?), // creates a new constant onto the stack124 .constant => |inst| try self.emitConstant(inst.castTag(.constant).?), // creates a new constant onto the stack
...@@ -102,8 +129,7 @@ pub const Context = struct {...@@ -102,8 +129,7 @@ pub const Context = struct {
102 const ty = self.decl.typed_value.most_recent.typed_value.ty;129 const ty = self.decl.typed_value.most_recent.typed_value.ty;
103 const writer = self.func_type_data.writer();130 const writer = self.func_type_data.writer();
104131
105 // functype magic132 try writer.writeByte(wasm.function_type);
106 try writer.writeByte(0x60);
107133
108 // param types134 // param types
109 try leb.writeULEB128(writer, @intCast(u32, ty.fnParamLen()));135 try leb.writeULEB128(writer, @intCast(u32, ty.fnParamLen()));
...@@ -112,8 +138,8 @@ pub const Context = struct {...@@ -112,8 +138,8 @@ pub const Context = struct {
112 defer self.gpa.free(params);138 defer self.gpa.free(params);
113 ty.fnParamTypes(params);139 ty.fnParamTypes(params);
114 for (params) |param_type| {140 for (params) |param_type| {
115 const val_type = genValtype(param_type) orelse141 // Can we maybe get the source index of each param?
116 return self.fail(self.decl.src(), "TODO: Wasm codegen - arg type value for type '{s}'", .{param_type.tag()});142 const val_type = try self.genValtype(self.decl.src(), param_type);
117 try writer.writeByte(val_type);143 try writer.writeByte(val_type);
118 }144 }
119 }145 }
...@@ -124,8 +150,8 @@ pub const Context = struct {...@@ -124,8 +150,8 @@ pub const Context = struct {
124 .void, .noreturn => try leb.writeULEB128(writer, @as(u32, 0)),150 .void, .noreturn => try leb.writeULEB128(writer, @as(u32, 0)),
125 else => |ret_type| {151 else => |ret_type| {
126 try leb.writeULEB128(writer, @as(u32, 1));152 try leb.writeULEB128(writer, @as(u32, 1));
127 const val_type = genValtype(return_type) orelse153 // Can we maybe get the source index of the return type?
128 return self.fail(self.decl.src(), "TODO: Wasm codegen - return type value for type '{s}'", .{ret_type});154 const val_type = try self.genValtype(self.decl.src(), return_type);
129 try writer.writeByte(val_type);155 try writer.writeByte(val_type);
130 },156 },
131 }157 }
...@@ -137,40 +163,33 @@ pub const Context = struct {...@@ -137,40 +163,33 @@ pub const Context = struct {
137 try self.genFunctype();163 try self.genFunctype();
138 const writer = self.code.writer();164 const writer = self.code.writer();
139165
140 // Reserve space to write the size after generating the code166 // Reserve space to write the size after generating the code as well as space for locals count
141 try self.code.resize(5);167 try self.code.resize(10);
142168
143 // Write instructions169 // Write instructions
144 // TODO: check for and handle death of instructions170 // TODO: check for and handle death of instructions
145 const tv = self.decl.typed_value.most_recent.typed_value;171 const tv = self.decl.typed_value.most_recent.typed_value;
146 const mod_fn = tv.val.castTag(.function).?.data;172 const mod_fn = tv.val.castTag(.function).?.data;
173 try self.genBody(mod_fn.body);
147174
148 var locals = std.ArrayList(u8).init(self.gpa);175 // finally, write our local types at the 'offset' position
149 defer locals.deinit();176 {
150177 leb.writeUnsignedFixed(5, self.code.items[5..10], @intCast(u32, self.locals.items.len));
151 for (mod_fn.body.instructions) |inst| {
152 if (inst.tag != .alloc) continue;
153
154 const alloc: *Inst.NoOp = inst.castTag(.alloc).?;
155 const elem_type = alloc.base.ty.elemType();
156
157 const wasm_type = genValtype(elem_type) orelse
158 return self.fail(inst.src, "TODO: Wasm codegen - valtype for type '{s}'", .{elem_type.tag()});
159
160 try locals.append(wasm_type);
161 }
162178
163 try leb.writeULEB128(writer, @intCast(u32, locals.items.len));179 // offset into 'code' section where we will put our locals types
180 var local_offset: usize = 10;
164181
165 // emit the actual locals amount182 // emit the actual locals amount
166 for (locals.items) |local| {183 for (self.locals.items) |local| {
167 try leb.writeULEB128(writer, @as(u32, 1));184 var buf: [6]u8 = undefined;
168 try leb.writeULEB128(writer, local); // valtype185 leb.writeUnsignedFixed(5, buf[0..5], @as(u32, 1));
186 buf[5] = local;
187 try self.code.insertSlice(local_offset, &buf);
188 local_offset += 6;
189 }
169 }190 }
170191
171 try self.genBody(mod_fn.body);192 try writer.writeByte(wasm.opcode(.end));
172
173 try writer.writeByte(0x0B); // end
174193
175 // Fill in the size of the generated code to the reserved space at the194 // Fill in the size of the generated code to the reserved space at the
176 // beginning of the buffer.195 // beginning of the buffer.
...@@ -183,10 +202,20 @@ pub const Context = struct {...@@ -183,10 +202,20 @@ pub const Context = struct {
183 .add => self.genAdd(inst.castTag(.add).?),202 .add => self.genAdd(inst.castTag(.add).?),
184 .alloc => self.genAlloc(inst.castTag(.alloc).?),203 .alloc => self.genAlloc(inst.castTag(.alloc).?),
185 .arg => self.genArg(inst.castTag(.arg).?),204 .arg => self.genArg(inst.castTag(.arg).?),
205 .block => self.genBlock(inst.castTag(.block).?),
206 .br => self.genBr(inst.castTag(.br).?),
186 .call => self.genCall(inst.castTag(.call).?),207 .call => self.genCall(inst.castTag(.call).?),
208 .cmp_eq => self.genCmp(inst.castTag(.cmp_eq).?, .eq),
209 .cmp_gte => self.genCmp(inst.castTag(.cmp_gte).?, .gte),
210 .cmp_gt => self.genCmp(inst.castTag(.cmp_gt).?, .gt),
211 .cmp_lte => self.genCmp(inst.castTag(.cmp_lte).?, .lte),
212 .cmp_lt => self.genCmp(inst.castTag(.cmp_lt).?, .lt),
213 .cmp_neq => self.genCmp(inst.castTag(.cmp_neq).?, .neq),
214 .condbr => self.genCondBr(inst.castTag(.condbr).?),
187 .constant => unreachable,215 .constant => unreachable,
188 .dbg_stmt => WValue.none,216 .dbg_stmt => WValue.none,
189 .load => self.genLoad(inst.castTag(.load).?),217 .load => self.genLoad(inst.castTag(.load).?),
218 .loop => self.genLoop(inst.castTag(.loop).?),
190 .ret => self.genRet(inst.castTag(.ret).?),219 .ret => self.genRet(inst.castTag(.ret).?),
191 .retvoid => WValue.none,220 .retvoid => WValue.none,
192 .store => self.genStore(inst.castTag(.store).?),221 .store => self.genStore(inst.castTag(.store).?),
...@@ -197,7 +226,7 @@ pub const Context = struct {...@@ -197,7 +226,7 @@ pub const Context = struct {
197 fn genBody(self: *Context, body: ir.Body) InnerError!void {226 fn genBody(self: *Context, body: ir.Body) InnerError!void {
198 for (body.instructions) |inst| {227 for (body.instructions) |inst| {
199 const result = try self.genInst(inst);228 const result = try self.genInst(inst);
200 try self.values.putNoClobber(inst, result);229 try self.values.putNoClobber(self.gpa, inst, result);
201 }230 }
202 }231 }
203232
...@@ -205,7 +234,7 @@ pub const Context = struct {...@@ -205,7 +234,7 @@ pub const Context = struct {
205 // TODO: Implement tail calls234 // TODO: Implement tail calls
206 const operand = self.resolveInst(inst.operand);235 const operand = self.resolveInst(inst.operand);
207 try self.emitWValue(operand);236 try self.emitWValue(operand);
208 return WValue.none;237 return .none;
209 }238 }
210239
211 fn genCall(self: *Context, inst: *Inst.Call) InnerError!WValue {240 fn genCall(self: *Context, inst: *Inst.Call) InnerError!WValue {
...@@ -219,7 +248,7 @@ pub const Context = struct {...@@ -219,7 +248,7 @@ pub const Context = struct {
219 try self.emitWValue(arg_val);248 try self.emitWValue(arg_val);
220 }249 }
221250
222 try self.code.append(0x10); // call251 try self.code.append(wasm.opcode(.call));
223252
224 // The function index immediate argument will be filled in using this data253 // The function index immediate argument will be filled in using this data
225 // in link.Wasm.flush().254 // in link.Wasm.flush().
...@@ -228,10 +257,14 @@ pub const Context = struct {...@@ -228,10 +257,14 @@ pub const Context = struct {
228 .decl = target,257 .decl = target,
229 });258 });
230259
231 return WValue.none;260 return .none;
232 }261 }
233262
234 fn genAlloc(self: *Context, inst: *Inst.NoOp) InnerError!WValue {263 fn genAlloc(self: *Context, inst: *Inst.NoOp) InnerError!WValue {
264 const elem_type = inst.base.ty.elemType();
265 const valtype = try self.genValtype(inst.base.src, elem_type);
266 try self.locals.append(self.gpa, valtype);
267
235 defer self.local_index += 1;268 defer self.local_index += 1;
236 return WValue{ .local = self.local_index };269 return WValue{ .local = self.local_index };
237 }270 }
...@@ -243,15 +276,13 @@ pub const Context = struct {...@@ -243,15 +276,13 @@ pub const Context = struct {
243 const rhs = self.resolveInst(inst.rhs);276 const rhs = self.resolveInst(inst.rhs);
244 try self.emitWValue(rhs);277 try self.emitWValue(rhs);
245278
246 try writer.writeByte(0x21); // local.set279 try writer.writeByte(wasm.opcode(.local_set));
247 try leb.writeULEB128(writer, lhs.local);280 try leb.writeULEB128(writer, lhs.local);
248 return WValue.none;281 return .none;
249 }282 }
250283
251 fn genLoad(self: *Context, inst: *Inst.UnOp) InnerError!WValue {284 fn genLoad(self: *Context, inst: *Inst.UnOp) InnerError!WValue {
252 const operand = self.resolveInst(inst.operand);285 return self.resolveInst(inst.operand);
253 try self.emitWValue(operand);
254 return WValue.none;
255 }286 }
256287
257 fn genArg(self: *Context, inst: *Inst.Arg) InnerError!WValue {288 fn genArg(self: *Context, inst: *Inst.Arg) InnerError!WValue {
...@@ -267,44 +298,44 @@ pub const Context = struct {...@@ -267,44 +298,44 @@ pub const Context = struct {
267 try self.emitWValue(lhs);298 try self.emitWValue(lhs);
268 try self.emitWValue(rhs);299 try self.emitWValue(rhs);
269300
270 const opcode: u8 = switch (inst.base.ty.tag()) {301 const opcode: wasm.Opcode = switch (inst.base.ty.tag()) {
271 .u32, .i32 => 0x6A, //i32.add302 .u32, .i32 => .i32_add,
272 .u64, .i64 => 0x7C, //i64.add303 .u64, .i64 => .i64_add,
273 .f32 => 0x92, //f32.add304 .f32 => .f32_add,
274 .f64 => 0xA0, //f64.add305 .f64 => .f64_add,
275 else => return self.fail(inst.base.src, "TODO - Implement wasm genAdd for type '{s}'", .{inst.base.ty.tag()}),306 else => return self.fail(inst.base.src, "TODO - Implement wasm genAdd for type '{s}'", .{inst.base.ty.tag()}),
276 };307 };
277308
278 try self.code.append(opcode);309 try self.code.append(wasm.opcode(opcode));
279 return WValue.none;310 return .none;
280 }311 }
281312
282 fn emitConstant(self: *Context, inst: *Inst.Constant) InnerError!void {313 fn emitConstant(self: *Context, inst: *Inst.Constant) InnerError!void {
283 const writer = self.code.writer();314 const writer = self.code.writer();
284 switch (inst.base.ty.tag()) {315 switch (inst.base.ty.tag()) {
285 .u32 => {316 .u32 => {
286 try writer.writeByte(0x41); // i32.const317 try writer.writeByte(wasm.opcode(.i32_const));
287 try leb.writeILEB128(writer, inst.val.toUnsignedInt());318 try leb.writeILEB128(writer, inst.val.toUnsignedInt());
288 },319 },
289 .i32 => {320 .i32 => {
290 try writer.writeByte(0x41); // i32.const321 try writer.writeByte(wasm.opcode(.i32_const));
291 try leb.writeILEB128(writer, inst.val.toSignedInt());322 try leb.writeILEB128(writer, inst.val.toSignedInt());
292 },323 },
293 .u64 => {324 .u64 => {
294 try writer.writeByte(0x42); // i64.const325 try writer.writeByte(wasm.opcode(.i64_const));
295 try leb.writeILEB128(writer, inst.val.toUnsignedInt());326 try leb.writeILEB128(writer, inst.val.toUnsignedInt());
296 },327 },
297 .i64 => {328 .i64 => {
298 try writer.writeByte(0x42); // i64.const329 try writer.writeByte(wasm.opcode(.i64_const));
299 try leb.writeILEB128(writer, inst.val.toSignedInt());330 try leb.writeILEB128(writer, inst.val.toSignedInt());
300 },331 },
301 .f32 => {332 .f32 => {
302 try writer.writeByte(0x43); // f32.const333 try writer.writeByte(wasm.opcode(.f32_const));
303 // TODO: enforce LE byte order334 // TODO: enforce LE byte order
304 try writer.writeAll(mem.asBytes(&inst.val.toFloat(f32)));335 try writer.writeAll(mem.asBytes(&inst.val.toFloat(f32)));
305 },336 },
306 .f64 => {337 .f64 => {
307 try writer.writeByte(0x44); // f64.const338 try writer.writeByte(wasm.opcode(.f64_const));
308 // TODO: enforce LE byte order339 // TODO: enforce LE byte order
309 try writer.writeAll(mem.asBytes(&inst.val.toFloat(f64)));340 try writer.writeAll(mem.asBytes(&inst.val.toFloat(f64)));
310 },341 },
...@@ -312,4 +343,172 @@ pub const Context = struct {...@@ -312,4 +343,172 @@ pub const Context = struct {
312 else => |ty| return self.fail(inst.base.src, "Wasm TODO: emitConstant for type {s}", .{ty}),343 else => |ty| return self.fail(inst.base.src, "Wasm TODO: emitConstant for type {s}", .{ty}),
313 }344 }
314 }345 }
346
347 fn genBlock(self: *Context, block: *Inst.Block) InnerError!WValue {
348 const block_ty = try self.genBlockType(block.base.src, block.base.ty);
349
350 try self.startBlock(.block, block_ty, null);
351 block.codegen = .{
352 // we don't use relocs, so using `relocs` is illegal behaviour.
353 .relocs = undefined,
354 // Here we set the current block idx, so breaks know the depth to jump
355 // to when breaking out.
356 .mcv = @bitCast(AnyMCValue, WValue{ .block_idx = self.block_depth }),
357 };
358 try self.genBody(block.body);
359 try self.endBlock();
360
361 return .none;
362 }
363
364 /// appends a new wasm block to the code section and increases the `block_depth` by 1
365 fn startBlock(self: *Context, block_type: wasm.Opcode, valtype: u8, with_offset: ?usize) !void {
366 self.block_depth += 1;
367 if (with_offset) |offset| {
368 try self.code.insert(offset, wasm.opcode(block_type));
369 try self.code.insert(offset + 1, valtype);
370 } else {
371 try self.code.append(wasm.opcode(block_type));
372 try self.code.append(valtype);
373 }
374 }
375
376 /// Ends the current wasm block and decreases the `block_depth` by 1
377 fn endBlock(self: *Context) !void {
378 try self.code.append(wasm.opcode(.end));
379 self.block_depth -= 1;
380 }
381
382 fn genLoop(self: *Context, loop: *Inst.Loop) InnerError!WValue {
383 const loop_ty = try self.genBlockType(loop.base.src, loop.base.ty);
384
385 try self.startBlock(.loop, loop_ty, null);
386 try self.genBody(loop.body);
387
388 // breaking to the index of a loop block will continue the loop instead
389 try self.code.append(wasm.opcode(.br));
390 try leb.writeULEB128(self.code.writer(), @as(u32, 0));
391
392 try self.endBlock();
393
394 return .none;
395 }
396
397 fn genCondBr(self: *Context, condbr: *Inst.CondBr) InnerError!WValue {
398 const condition = self.resolveInst(condbr.condition);
399 const writer = self.code.writer();
400
401 // TODO: Handle death instructions for then and else body
402
403 // insert blocks at the position of `offset` so
404 // the condition can jump to it
405 const offset = condition.code_offset;
406 const block_ty = try self.genBlockType(condbr.base.src, condbr.base.ty);
407 try self.startBlock(.block, block_ty, offset);
408
409 // we inserted the block in front of the condition
410 // so now check if condition matches. If not, break outside this block
411 // and continue with the then codepath
412 try writer.writeByte(wasm.opcode(.br_if));
413 try leb.writeULEB128(writer, @as(u32, 0));
414
415 try self.genBody(condbr.else_body);
416 try self.endBlock();
417
418 // Outer block that matches the condition
419 try self.genBody(condbr.then_body);
420
421 return .none;
422 }
423
424 fn genCmp(self: *Context, inst: *Inst.BinOp, op: std.math.CompareOperator) InnerError!WValue {
425 const ty = inst.lhs.ty.tag();
426
427 // save offset, so potential conditions can insert blocks in front of
428 // the comparison that we can later jump back to
429 const offset = self.code.items.len;
430
431 const lhs = self.resolveInst(inst.lhs);
432 const rhs = self.resolveInst(inst.rhs);
433
434 try self.emitWValue(lhs);
435 try self.emitWValue(rhs);
436
437 const opcode_maybe: ?wasm.Opcode = switch (op) {
438 .lt => @as(?wasm.Opcode, switch (ty) {
439 .i32 => .i32_lt_s,
440 .u32 => .i32_lt_u,
441 .i64 => .i64_lt_s,
442 .u64 => .i64_lt_u,
443 .f32 => .f32_lt,
444 .f64 => .f64_lt,
445 else => null,
446 }),
447 .lte => @as(?wasm.Opcode, switch (ty) {
448 .i32 => .i32_le_s,
449 .u32 => .i32_le_u,
450 .i64 => .i64_le_s,
451 .u64 => .i64_le_u,
452 .f32 => .f32_le,
453 .f64 => .f64_le,
454 else => null,
455 }),
456 .eq => @as(?wasm.Opcode, switch (ty) {
457 .i32, .u32 => .i32_eq,
458 .i64, .u64 => .i64_eq,
459 .f32 => .f32_eq,
460 .f64 => .f64_eq,
461 else => null,
462 }),
463 .gte => @as(?wasm.Opcode, switch (ty) {
464 .i32 => .i32_ge_s,
465 .u32 => .i32_ge_u,
466 .i64 => .i64_ge_s,
467 .u64 => .i64_ge_u,
468 .f32 => .f32_ge,
469 .f64 => .f64_ge,
470 else => null,
471 }),
472 .gt => @as(?wasm.Opcode, switch (ty) {
473 .i32 => .i32_gt_s,
474 .u32 => .i32_gt_u,
475 .i64 => .i64_gt_s,
476 .u64 => .i64_gt_u,
477 .f32 => .f32_gt,
478 .f64 => .f64_gt,
479 else => null,
480 }),
481 .neq => @as(?wasm.Opcode, switch (ty) {
482 .i32, .u32 => .i32_ne,
483 .i64, .u64 => .i64_ne,
484 .f32 => .f32_ne,
485 .f64 => .f64_ne,
486 else => null,
487 }),
488 };
489
490 const opcode = opcode_maybe orelse
491 return self.fail(inst.base.src, "TODO - Wasm genCmp for type '{s}' and operator '{s}'", .{ ty, @tagName(op) });
492
493 try self.code.append(wasm.opcode(opcode));
494 return WValue{ .code_offset = offset };
495 }
496
497 fn genBr(self: *Context, br: *Inst.Br) InnerError!WValue {
498 // of operand has codegen bits we should break with a value
499 if (br.operand.ty.hasCodeGenBits()) {
500 const operand = self.resolveInst(br.operand);
501 try self.emitWValue(operand);
502 }
503
504 // every block contains a `WValue` with its block index.
505 // We then determine how far we have to jump to it by substracting it from current block depth
506 const wvalue = @bitCast(WValue, br.block.codegen.mcv);
507 const idx: u32 = self.block_depth - wvalue.block_idx;
508 const writer = self.code.writer();
509 try writer.writeByte(wasm.opcode(.br));
510 try leb.writeULEB128(writer, idx);
511
512 return .none;
513 }
315};514};
src/ir.zig+45-15
...@@ -56,13 +56,20 @@ pub const Inst = struct {...@@ -56,13 +56,20 @@ pub const Inst = struct {
56 alloc,56 alloc,
57 arg,57 arg,
58 assembly,58 assembly,
59 bitand,59 bit_and,
60 bitcast,60 bitcast,
61 bitor,61 bit_or,
62 block,62 block,
63 br,63 br,
64 /// Same as `br` except the operand is a list of instructions to be treated as
65 /// a flat block; that is there is only 1 break instruction from the block, and
66 /// it is implied to be after the last instruction, and the last instruction is
67 /// the break operand.
68 /// This instruction exists for late-stage semantic analysis patch ups, to
69 /// replace one br operand with multiple instructions, without moving anything else around.
70 br_block_flat,
64 breakpoint,71 breakpoint,
65 brvoid,72 br_void,
66 call,73 call,
67 cmp_lt,74 cmp_lt,
68 cmp_lte,75 cmp_lte,
...@@ -85,8 +92,8 @@ pub const Inst = struct {...@@ -85,8 +92,8 @@ pub const Inst = struct {
85 is_err,92 is_err,
86 // *E!T => bool93 // *E!T => bool
87 is_err_ptr,94 is_err_ptr,
88 booland,95 bool_and,
89 boolor,96 bool_or,
90 /// Read a value from a pointer.97 /// Read a value from a pointer.
91 load,98 load,
92 loop,99 loop,
...@@ -147,10 +154,10 @@ pub const Inst = struct {...@@ -147,10 +154,10 @@ pub const Inst = struct {
147 .cmp_gt,154 .cmp_gt,
148 .cmp_neq,155 .cmp_neq,
149 .store,156 .store,
150 .booland,157 .bool_and,
151 .boolor,158 .bool_or,
152 .bitand,159 .bit_and,
153 .bitor,160 .bit_or,
154 .xor,161 .xor,
155 => BinOp,162 => BinOp,
156163
...@@ -158,7 +165,8 @@ pub const Inst = struct {...@@ -158,7 +165,8 @@ pub const Inst = struct {
158 .assembly => Assembly,165 .assembly => Assembly,
159 .block => Block,166 .block => Block,
160 .br => Br,167 .br => Br,
161 .brvoid => BrVoid,168 .br_block_flat => BrBlockFlat,
169 .br_void => BrVoid,
162 .call => Call,170 .call => Call,
163 .condbr => CondBr,171 .condbr => CondBr,
164 .constant => Constant,172 .constant => Constant,
...@@ -251,7 +259,8 @@ pub const Inst = struct {...@@ -251,7 +259,8 @@ pub const Inst = struct {
251 pub fn breakBlock(base: *Inst) ?*Block {259 pub fn breakBlock(base: *Inst) ?*Block {
252 return switch (base.tag) {260 return switch (base.tag) {
253 .br => base.castTag(.br).?.block,261 .br => base.castTag(.br).?.block,
254 .brvoid => base.castTag(.brvoid).?.block,262 .br_void => base.castTag(.br_void).?.block,
263 .br_block_flat => base.castTag(.br_block_flat).?.block,
255 else => null,264 else => null,
256 };265 };
257 }266 }
...@@ -355,6 +364,27 @@ pub const Inst = struct {...@@ -355,6 +364,27 @@ pub const Inst = struct {
355 }364 }
356 };365 };
357366
367 pub const convertable_br_size = std.math.max(@sizeOf(BrBlockFlat), @sizeOf(Br));
368 pub const convertable_br_align = std.math.max(@alignOf(BrBlockFlat), @alignOf(Br));
369 comptime {
370 assert(@byteOffsetOf(BrBlockFlat, "base") == @byteOffsetOf(Br, "base"));
371 }
372
373 pub const BrBlockFlat = struct {
374 pub const base_tag = Tag.br_block_flat;
375
376 base: Inst,
377 block: *Block,
378 body: Body,
379
380 pub fn operandCount(self: *const BrBlockFlat) usize {
381 return 0;
382 }
383 pub fn getOperand(self: *const BrBlockFlat, index: usize) ?*Inst {
384 return null;
385 }
386 };
387
358 pub const Br = struct {388 pub const Br = struct {
359 pub const base_tag = Tag.br;389 pub const base_tag = Tag.br;
360390
...@@ -363,7 +393,7 @@ pub const Inst = struct {...@@ -363,7 +393,7 @@ pub const Inst = struct {
363 operand: *Inst,393 operand: *Inst,
364394
365 pub fn operandCount(self: *const Br) usize {395 pub fn operandCount(self: *const Br) usize {
366 return 0;396 return 1;
367 }397 }
368 pub fn getOperand(self: *const Br, index: usize) ?*Inst {398 pub fn getOperand(self: *const Br, index: usize) ?*Inst {
369 if (index == 0)399 if (index == 0)
...@@ -373,7 +403,7 @@ pub const Inst = struct {...@@ -373,7 +403,7 @@ pub const Inst = struct {
373 };403 };
374404
375 pub const BrVoid = struct {405 pub const BrVoid = struct {
376 pub const base_tag = Tag.brvoid;406 pub const base_tag = Tag.br_void;
377407
378 base: Inst,408 base: Inst,
379 block: *Block,409 block: *Block,
...@@ -491,7 +521,7 @@ pub const Inst = struct {...@@ -491,7 +521,7 @@ pub const Inst = struct {
491 pub const base_tag = Tag.switchbr;521 pub const base_tag = Tag.switchbr;
492522
493 base: Inst,523 base: Inst,
494 target_ptr: *Inst,524 target: *Inst,
495 cases: []Case,525 cases: []Case,
496 /// Set of instructions whose lifetimes end at the start of one of the cases.526 /// Set of instructions whose lifetimes end at the start of one of the cases.
497 /// In same order as cases, deaths[0..case_0_count, case_0_count .. case_1_count, ... ].527 /// In same order as cases, deaths[0..case_0_count, case_0_count .. case_1_count, ... ].
...@@ -514,7 +544,7 @@ pub const Inst = struct {...@@ -514,7 +544,7 @@ pub const Inst = struct {
514 var i = index;544 var i = index;
515545
516 if (i < 1)546 if (i < 1)
517 return self.target_ptr;547 return self.target;
518 i -= 1;548 i -= 1;
519549
520 return null;550 return null;
src/link.zig+24-5
...@@ -139,6 +139,7 @@ pub const File = struct {...@@ -139,6 +139,7 @@ pub const File = struct {
139 macho: MachO.TextBlock,139 macho: MachO.TextBlock,
140 c: C.DeclBlock,140 c: C.DeclBlock,
141 wasm: void,141 wasm: void,
142 spirv: void,
142 };143 };
143144
144 pub const LinkFn = union {145 pub const LinkFn = union {
...@@ -147,6 +148,7 @@ pub const File = struct {...@@ -147,6 +148,7 @@ pub const File = struct {
147 macho: MachO.SrcFn,148 macho: MachO.SrcFn,
148 c: C.FnBlock,149 c: C.FnBlock,
149 wasm: ?Wasm.FnData,150 wasm: ?Wasm.FnData,
151 spirv: SpirV.FnData,
150 };152 };
151153
152 pub const Export = union {154 pub const Export = union {
...@@ -155,6 +157,7 @@ pub const File = struct {...@@ -155,6 +157,7 @@ pub const File = struct {
155 macho: MachO.Export,157 macho: MachO.Export,
156 c: void,158 c: void,
157 wasm: void,159 wasm: void,
160 spirv: void,
158 };161 };
159162
160 /// For DWARF .debug_info.163 /// For DWARF .debug_info.
...@@ -183,6 +186,7 @@ pub const File = struct {...@@ -183,6 +186,7 @@ pub const File = struct {
183 .macho => &(try MachO.createEmpty(allocator, options)).base,186 .macho => &(try MachO.createEmpty(allocator, options)).base,
184 .wasm => &(try Wasm.createEmpty(allocator, options)).base,187 .wasm => &(try Wasm.createEmpty(allocator, options)).base,
185 .c => unreachable, // Reported error earlier.188 .c => unreachable, // Reported error earlier.
189 .spirv => &(try SpirV.createEmpty(allocator, options)).base,
186 .hex => return error.HexObjectFormatUnimplemented,190 .hex => return error.HexObjectFormatUnimplemented,
187 .raw => return error.RawObjectFormatUnimplemented,191 .raw => return error.RawObjectFormatUnimplemented,
188 };192 };
...@@ -198,6 +202,7 @@ pub const File = struct {...@@ -198,6 +202,7 @@ pub const File = struct {
198 .macho => &(try MachO.createEmpty(allocator, options)).base,202 .macho => &(try MachO.createEmpty(allocator, options)).base,
199 .wasm => &(try Wasm.createEmpty(allocator, options)).base,203 .wasm => &(try Wasm.createEmpty(allocator, options)).base,
200 .c => unreachable, // Reported error earlier.204 .c => unreachable, // Reported error earlier.
205 .spirv => &(try SpirV.createEmpty(allocator, options)).base,
201 .hex => return error.HexObjectFormatUnimplemented,206 .hex => return error.HexObjectFormatUnimplemented,
202 .raw => return error.RawObjectFormatUnimplemented,207 .raw => return error.RawObjectFormatUnimplemented,
203 };208 };
...@@ -213,6 +218,7 @@ pub const File = struct {...@@ -213,6 +218,7 @@ pub const File = struct {
213 .macho => &(try MachO.openPath(allocator, sub_path, options)).base,218 .macho => &(try MachO.openPath(allocator, sub_path, options)).base,
214 .wasm => &(try Wasm.openPath(allocator, sub_path, options)).base,219 .wasm => &(try Wasm.openPath(allocator, sub_path, options)).base,
215 .c => &(try C.openPath(allocator, sub_path, options)).base,220 .c => &(try C.openPath(allocator, sub_path, options)).base,
221 .spirv => &(try SpirV.openPath(allocator, sub_path, options)).base,
216 .hex => return error.HexObjectFormatUnimplemented,222 .hex => return error.HexObjectFormatUnimplemented,
217 .raw => return error.RawObjectFormatUnimplemented,223 .raw => return error.RawObjectFormatUnimplemented,
218 };224 };
...@@ -242,7 +248,7 @@ pub const File = struct {...@@ -242,7 +248,7 @@ pub const File = struct {
242 .mode = determineMode(base.options),248 .mode = determineMode(base.options),
243 });249 });
244 },250 },
245 .c, .wasm => {},251 .c, .wasm, .spirv => {},
246 }252 }
247 }253 }
248254
...@@ -287,7 +293,7 @@ pub const File = struct {...@@ -287,7 +293,7 @@ pub const File = struct {
287 f.close();293 f.close();
288 base.file = null;294 base.file = null;
289 },295 },
290 .c, .wasm => {},296 .c, .wasm, .spirv => {},
291 }297 }
292 }298 }
293299
...@@ -300,6 +306,7 @@ pub const File = struct {...@@ -300,6 +306,7 @@ pub const File = struct {
300 .macho => return @fieldParentPtr(MachO, "base", base).updateDecl(module, decl),306 .macho => return @fieldParentPtr(MachO, "base", base).updateDecl(module, decl),
301 .c => return @fieldParentPtr(C, "base", base).updateDecl(module, decl),307 .c => return @fieldParentPtr(C, "base", base).updateDecl(module, decl),
302 .wasm => return @fieldParentPtr(Wasm, "base", base).updateDecl(module, decl),308 .wasm => return @fieldParentPtr(Wasm, "base", base).updateDecl(module, decl),
309 .spirv => return @fieldParentPtr(SpirV, "base", base).updateDecl(module, decl),
303 }310 }
304 }311 }
305312
...@@ -309,7 +316,7 @@ pub const File = struct {...@@ -309,7 +316,7 @@ pub const File = struct {
309 .elf => return @fieldParentPtr(Elf, "base", base).updateDeclLineNumber(module, decl),316 .elf => return @fieldParentPtr(Elf, "base", base).updateDeclLineNumber(module, decl),
310 .macho => return @fieldParentPtr(MachO, "base", base).updateDeclLineNumber(module, decl),317 .macho => return @fieldParentPtr(MachO, "base", base).updateDeclLineNumber(module, decl),
311 .c => return @fieldParentPtr(C, "base", base).updateDeclLineNumber(module, decl),318 .c => return @fieldParentPtr(C, "base", base).updateDeclLineNumber(module, decl),
312 .wasm => {},319 .wasm, .spirv => {},
313 }320 }
314 }321 }
315322
...@@ -321,7 +328,7 @@ pub const File = struct {...@@ -321,7 +328,7 @@ pub const File = struct {
321 .elf => return @fieldParentPtr(Elf, "base", base).allocateDeclIndexes(decl),328 .elf => return @fieldParentPtr(Elf, "base", base).allocateDeclIndexes(decl),
322 .macho => return @fieldParentPtr(MachO, "base", base).allocateDeclIndexes(decl),329 .macho => return @fieldParentPtr(MachO, "base", base).allocateDeclIndexes(decl),
323 .c => return @fieldParentPtr(C, "base", base).allocateDeclIndexes(decl),330 .c => return @fieldParentPtr(C, "base", base).allocateDeclIndexes(decl),
324 .wasm => {},331 .wasm, .spirv => {},
325 }332 }
326 }333 }
327334
...@@ -368,6 +375,11 @@ pub const File = struct {...@@ -368,6 +375,11 @@ pub const File = struct {
368 parent.deinit();375 parent.deinit();
369 base.allocator.destroy(parent);376 base.allocator.destroy(parent);
370 },377 },
378 .spirv => {
379 const parent = @fieldParentPtr(SpirV, "base", base);
380 parent.deinit();
381 base.allocator.destroy(parent);
382 },
371 }383 }
372 }384 }
373385
...@@ -401,6 +413,7 @@ pub const File = struct {...@@ -401,6 +413,7 @@ pub const File = struct {
401 .macho => return @fieldParentPtr(MachO, "base", base).flush(comp),413 .macho => return @fieldParentPtr(MachO, "base", base).flush(comp),
402 .c => return @fieldParentPtr(C, "base", base).flush(comp),414 .c => return @fieldParentPtr(C, "base", base).flush(comp),
403 .wasm => return @fieldParentPtr(Wasm, "base", base).flush(comp),415 .wasm => return @fieldParentPtr(Wasm, "base", base).flush(comp),
416 .spirv => return @fieldParentPtr(SpirV, "base", base).flush(comp),
404 }417 }
405 }418 }
406419
...@@ -413,6 +426,7 @@ pub const File = struct {...@@ -413,6 +426,7 @@ pub const File = struct {
413 .macho => return @fieldParentPtr(MachO, "base", base).flushModule(comp),426 .macho => return @fieldParentPtr(MachO, "base", base).flushModule(comp),
414 .c => return @fieldParentPtr(C, "base", base).flushModule(comp),427 .c => return @fieldParentPtr(C, "base", base).flushModule(comp),
415 .wasm => return @fieldParentPtr(Wasm, "base", base).flushModule(comp),428 .wasm => return @fieldParentPtr(Wasm, "base", base).flushModule(comp),
429 .spirv => return @fieldParentPtr(SpirV, "base", base).flushModule(comp),
416 }430 }
417 }431 }
418432
...@@ -424,6 +438,7 @@ pub const File = struct {...@@ -424,6 +438,7 @@ pub const File = struct {
424 .macho => @fieldParentPtr(MachO, "base", base).freeDecl(decl),438 .macho => @fieldParentPtr(MachO, "base", base).freeDecl(decl),
425 .c => @fieldParentPtr(C, "base", base).freeDecl(decl),439 .c => @fieldParentPtr(C, "base", base).freeDecl(decl),
426 .wasm => @fieldParentPtr(Wasm, "base", base).freeDecl(decl),440 .wasm => @fieldParentPtr(Wasm, "base", base).freeDecl(decl),
441 .spirv => @fieldParentPtr(SpirV, "base", base).freeDecl(decl),
427 }442 }
428 }443 }
429444
...@@ -433,7 +448,7 @@ pub const File = struct {...@@ -433,7 +448,7 @@ pub const File = struct {
433 .elf => return @fieldParentPtr(Elf, "base", base).error_flags,448 .elf => return @fieldParentPtr(Elf, "base", base).error_flags,
434 .macho => return @fieldParentPtr(MachO, "base", base).error_flags,449 .macho => return @fieldParentPtr(MachO, "base", base).error_flags,
435 .c => return .{ .no_entry_point_found = false },450 .c => return .{ .no_entry_point_found = false },
436 .wasm => return ErrorFlags{},451 .wasm, .spirv => return ErrorFlags{},
437 }452 }
438 }453 }
439454
...@@ -451,6 +466,7 @@ pub const File = struct {...@@ -451,6 +466,7 @@ pub const File = struct {
451 .macho => return @fieldParentPtr(MachO, "base", base).updateDeclExports(module, decl, exports),466 .macho => return @fieldParentPtr(MachO, "base", base).updateDeclExports(module, decl, exports),
452 .c => return @fieldParentPtr(C, "base", base).updateDeclExports(module, decl, exports),467 .c => return @fieldParentPtr(C, "base", base).updateDeclExports(module, decl, exports),
453 .wasm => return @fieldParentPtr(Wasm, "base", base).updateDeclExports(module, decl, exports),468 .wasm => return @fieldParentPtr(Wasm, "base", base).updateDeclExports(module, decl, exports),
469 .spirv => return @fieldParentPtr(SpirV, "base", base).updateDeclExports(module, decl, exports),
454 }470 }
455 }471 }
456472
...@@ -461,6 +477,7 @@ pub const File = struct {...@@ -461,6 +477,7 @@ pub const File = struct {
461 .macho => return @fieldParentPtr(MachO, "base", base).getDeclVAddr(decl),477 .macho => return @fieldParentPtr(MachO, "base", base).getDeclVAddr(decl),
462 .c => unreachable,478 .c => unreachable,
463 .wasm => unreachable,479 .wasm => unreachable,
480 .spirv => unreachable,
464 }481 }
465 }482 }
466483
...@@ -601,6 +618,7 @@ pub const File = struct {...@@ -601,6 +618,7 @@ pub const File = struct {
601 macho,618 macho,
602 c,619 c,
603 wasm,620 wasm,
621 spirv,
604 };622 };
605623
606 pub const ErrorFlags = struct {624 pub const ErrorFlags = struct {
...@@ -611,6 +629,7 @@ pub const File = struct {...@@ -611,6 +629,7 @@ pub const File = struct {
611 pub const Coff = @import("link/Coff.zig");629 pub const Coff = @import("link/Coff.zig");
612 pub const Elf = @import("link/Elf.zig");630 pub const Elf = @import("link/Elf.zig");
613 pub const MachO = @import("link/MachO.zig");631 pub const MachO = @import("link/MachO.zig");
632 pub const SpirV = @import("link/SpirV.zig");
614 pub const Wasm = @import("link/Wasm.zig");633 pub const Wasm = @import("link/Wasm.zig");
615};634};
616635
src/link/C.zig+2
...@@ -95,7 +95,9 @@ pub fn updateDecl(self: *C, module: *Module, decl: *Module.Decl) !void {...@@ -95,7 +95,9 @@ pub fn updateDecl(self: *C, module: *Module, decl: *Module.Decl) !void {
95 .gpa = module.gpa,95 .gpa = module.gpa,
96 .code = code.toManaged(module.gpa),96 .code = code.toManaged(module.gpa),
97 .value_map = codegen.CValueMap.init(module.gpa),97 .value_map = codegen.CValueMap.init(module.gpa),
98 .indent_writer = undefined, // set later so we can get a pointer to object.code
98 };99 };
100 object.indent_writer = std.io.autoIndentingStream(4, object.code.writer());
99 defer object.value_map.deinit();101 defer object.value_map.deinit();
100 defer object.code.deinit();102 defer object.code.deinit();
101 defer object.dg.fwd_decl.deinit();103 defer object.dg.fwd_decl.deinit();
src/link/MachO.zig+1-1
...@@ -2366,7 +2366,7 @@ fn allocatedSizeLinkedit(self: *MachO, start: u64) u64 {...@@ -2366,7 +2366,7 @@ fn allocatedSizeLinkedit(self: *MachO, start: u64) u64 {
2366 return min_pos - start;2366 return min_pos - start;
2367}2367}
23682368
2369inline fn checkForCollision(start: u64, end: u64, off: u64, size: u64) ?u64 {2369fn checkForCollision(start: u64, end: u64, off: u64, size: u64) callconv(.Inline) ?u64 {
2370 const increased_size = padToIdeal(size);2370 const increased_size = padToIdeal(size);
2371 const test_end = off + increased_size;2371 const test_end = off + increased_size;
2372 if (end > off and start < test_end) {2372 if (end > off and start < test_end) {
src/link/MachO/commands.zig+1-1
...@@ -140,7 +140,7 @@ pub const LoadCommand = union(enum) {...@@ -140,7 +140,7 @@ pub const LoadCommand = union(enum) {
140 }140 }
141141
142 fn eql(self: LoadCommand, other: LoadCommand) bool {142 fn eql(self: LoadCommand, other: LoadCommand) bool {
143 if (@as(@TagType(LoadCommand), self) != @as(@TagType(LoadCommand), other)) return false;143 if (@as(meta.Tag(LoadCommand), self) != @as(meta.Tag(LoadCommand), other)) return false;
144 return switch (self) {144 return switch (self) {
145 .DyldInfoOnly => |x| meta.eql(x, other.DyldInfoOnly),145 .DyldInfoOnly => |x| meta.eql(x, other.DyldInfoOnly),
146 .Symtab => |x| meta.eql(x, other.Symtab),146 .Symtab => |x| meta.eql(x, other.Symtab),
src/link/SpirV.zig created+234
...@@ -0,0 +1,234 @@
1const SpirV = @This();
2
3const std = @import("std");
4const Allocator = std.mem.Allocator;
5const assert = std.debug.assert;
6
7const Module = @import("../Module.zig");
8const Compilation = @import("../Compilation.zig");
9const link = @import("../link.zig");
10const codegen = @import("../codegen/spirv.zig");
11const trace = @import("../tracy.zig").trace;
12const build_options = @import("build_options");
13const spec = @import("../codegen/spirv/spec.zig");
14
15//! SPIR-V Spec documentation: https://www.khronos.org/registry/spir-v/specs/unified1/SPIRV.html
16//! According to above documentation, a SPIR-V module has the following logical layout:
17//! Header.
18//! OpCapability instructions.
19//! OpExtension instructions.
20//! OpExtInstImport instructions.
21//! A single OpMemoryModel instruction.
22//! All entry points, declared with OpEntryPoint instructions.
23//! All execution-mode declarators; OpExecutionMode and OpExecutionModeId instructions.
24//! Debug instructions:
25//! - First, OpString, OpSourceExtension, OpSource, OpSourceContinued (no forward references).
26//! - OpName and OpMemberName instructions.
27//! - OpModuleProcessed instructions.
28//! All annotation (decoration) instructions.
29//! All type declaration instructions, constant instructions, global variable declarations, (preferrably) OpUndef instructions.
30//! All function declarations without a body (extern functions presumably).
31//! All regular functions.
32
33pub const FnData = struct {
34 id: ?u32 = null,
35 code: std.ArrayListUnmanaged(u32) = .{},
36};
37
38base: link.File,
39
40// TODO: Does this file need to support multiple independent modules?
41spirv_module: codegen.SPIRVModule,
42
43pub fn createEmpty(gpa: *Allocator, options: link.Options) !*SpirV {
44 const spirv = try gpa.create(SpirV);
45 spirv.* = .{
46 .base = .{
47 .tag = .spirv,
48 .options = options,
49 .file = null,
50 .allocator = gpa,
51 },
52 .spirv_module = codegen.SPIRVModule.init(gpa),
53 };
54
55 // TODO: Figure out where to put all of these
56 switch (options.target.cpu.arch) {
57 .spirv32, .spirv64 => {},
58 else => return error.TODOArchNotSupported,
59 }
60
61 switch (options.target.os.tag) {
62 .opencl, .glsl450, .vulkan => {},
63 else => return error.TODOOsNotSupported,
64 }
65
66 if (options.target.abi != .none) {
67 return error.TODOAbiNotSupported;
68 }
69
70 return spirv;
71}
72
73pub fn openPath(allocator: *Allocator, sub_path: []const u8, options: link.Options) !*SpirV {
74 assert(options.object_format == .spirv);
75
76 if (options.use_llvm) return error.LLVM_BackendIsTODO_ForSpirV; // TODO: LLVM Doesn't support SpirV at all.
77 if (options.use_lld) return error.LLD_LinkingIsTODO_ForSpirV; // TODO: LLD Doesn't support SpirV at all.
78
79 // TODO: read the file and keep vaild parts instead of truncating
80 const file = try options.emit.?.directory.handle.createFile(sub_path, .{ .truncate = true, .read = true });
81 errdefer file.close();
82
83 const spirv = try createEmpty(allocator, options);
84 errdefer spirv.base.destroy();
85
86 spirv.base.file = file;
87 return spirv;
88}
89
90pub fn deinit(self: *SpirV) void {
91 self.spirv_module.deinit();
92}
93
94pub fn updateDecl(self: *SpirV, module: *Module, decl: *Module.Decl) !void {
95 const tracy = trace(@src());
96 defer tracy.end();
97
98 const fn_data = &decl.fn_link.spirv;
99 if (fn_data.id == null) {
100 fn_data.id = self.spirv_module.allocId();
101 }
102
103 var managed_code = fn_data.code.toManaged(self.base.allocator);
104 managed_code.items.len = 0;
105
106 try self.spirv_module.genDecl(fn_data.id.?, &managed_code, decl);
107 fn_data.code = managed_code.toUnmanaged();
108
109 // Free excess allocated memory for this Decl.
110 fn_data.code.shrinkAndFree(self.base.allocator, fn_data.code.items.len);
111}
112
113pub fn updateDeclExports(
114 self: *SpirV,
115 module: *Module,
116 decl: *const Module.Decl,
117 exports: []const *Module.Export,
118) !void {}
119
120pub fn freeDecl(self: *SpirV, decl: *Module.Decl) void {
121 var fn_data = decl.fn_link.spirv;
122 fn_data.code.deinit(self.base.allocator);
123 if (fn_data.id) |id| self.spirv_module.freeId(id);
124 decl.fn_link.spirv = undefined;
125}
126
127pub fn flush(self: *SpirV, comp: *Compilation) !void {
128 if (build_options.have_llvm and self.base.options.use_lld) {
129 return error.LLD_LinkingIsTODO_ForSpirV; // TODO: LLD Doesn't support SpirV at all.
130 } else {
131 return self.flushModule(comp);
132 }
133}
134
135pub fn flushModule(self: *SpirV, comp: *Compilation) !void {
136 const tracy = trace(@src());
137 defer tracy.end();
138
139 const module = self.base.options.module.?;
140 const target = comp.getTarget();
141
142 var binary = std.ArrayList(u32).init(self.base.allocator);
143 defer binary.deinit();
144
145 // Note: The order of adding sections to the final binary
146 // follows the SPIR-V logical module format!
147
148 try binary.appendSlice(&[_]u32{
149 spec.magic_number,
150 (spec.version.major << 16) | (spec.version.minor << 8),
151 0, // TODO: Register Zig compiler magic number.
152 self.spirv_module.idBound(),
153 0, // Schema (currently reserved for future use in the SPIR-V spec).
154 });
155
156 try writeCapabilities(&binary, target);
157 try writeMemoryModel(&binary, target);
158
159 // Collect list of buffers to write.
160 // SPIR-V files support both little and big endian words. The actual format is
161 // disambiguated by the magic number, and so theoretically we don't need to worry
162 // about endian-ness when writing the final binary.
163 var all_buffers = std.ArrayList(std.os.iovec_const).init(self.base.allocator);
164 defer all_buffers.deinit();
165
166 // Pre-allocate enough for the binary info + all functions
167 try all_buffers.ensureCapacity(module.decl_table.count() + 1);
168
169 all_buffers.appendAssumeCapacity(wordsToIovConst(binary.items));
170
171 for (module.decl_table.items()) |entry| {
172 const decl = entry.value;
173 switch (decl.typed_value) {
174 .most_recent => |tvm| {
175 const fn_data = &decl.fn_link.spirv;
176 all_buffers.appendAssumeCapacity(wordsToIovConst(fn_data.code.items));
177 },
178 .never_succeeded => continue,
179 }
180 }
181
182 var file_size: u64 = 0;
183 for (all_buffers.items) |iov| {
184 file_size += iov.iov_len;
185 }
186
187 const file = self.base.file.?;
188 try file.seekTo(0);
189 try file.setEndPos(file_size);
190 try file.pwritevAll(all_buffers.items, 0);
191}
192
193fn writeCapabilities(binary: *std.ArrayList(u32), target: std.Target) !void {
194 // TODO: Integrate with a hypothetical feature system
195 const cap: spec.Capability = switch (target.os.tag) {
196 .opencl => .Kernel,
197 .glsl450 => .Shader,
198 .vulkan => .VulkanMemoryModel,
199 else => unreachable, // TODO
200 };
201
202 try codegen.writeInstruction(binary, .OpCapability, &[_]u32{ @enumToInt(cap) });
203}
204
205fn writeMemoryModel(binary: *std.ArrayList(u32), target: std.Target) !void {
206 const addressing_model = switch (target.os.tag) {
207 .opencl => switch (target.cpu.arch) {
208 .spirv32 => spec.AddressingModel.Physical32,
209 .spirv64 => spec.AddressingModel.Physical64,
210 else => unreachable, // TODO
211 },
212 .glsl450, .vulkan => spec.AddressingModel.Logical,
213 else => unreachable, // TODO
214 };
215
216 const memory_model: spec.MemoryModel = switch (target.os.tag) {
217 .opencl => .OpenCL,
218 .glsl450 => .GLSL450,
219 .vulkan => .Vulkan,
220 else => unreachable,
221 };
222
223 try codegen.writeInstruction(binary, .OpMemoryModel, &[_]u32{
224 @enumToInt(addressing_model), @enumToInt(memory_model)
225 });
226}
227
228fn wordsToIovConst(words: []const u32) std.os.iovec_const {
229 const bytes = std.mem.sliceAsBytes(words);
230 return .{
231 .iov_base = bytes.ptr,
232 .iov_len = bytes.len,
233 };
234}
src/link/Wasm.zig+28-38
...@@ -7,6 +7,7 @@ const assert = std.debug.assert;...@@ -7,6 +7,7 @@ const assert = std.debug.assert;
7const fs = std.fs;7const fs = std.fs;
8const leb = std.leb;8const leb = std.leb;
9const log = std.log.scoped(.link);9const log = std.log.scoped(.link);
10const wasm = std.wasm;
1011
11const Module = @import("../Module.zig");12const Module = @import("../Module.zig");
12const Compilation = @import("../Compilation.zig");13const Compilation = @import("../Compilation.zig");
...@@ -16,25 +17,6 @@ const trace = @import("../tracy.zig").trace;...@@ -16,25 +17,6 @@ const trace = @import("../tracy.zig").trace;
16const build_options = @import("build_options");17const build_options = @import("build_options");
17const Cache = @import("../Cache.zig");18const Cache = @import("../Cache.zig");
1819
19/// Various magic numbers defined by the wasm spec
20const spec = struct {
21 const magic = [_]u8{ 0x00, 0x61, 0x73, 0x6D }; // \0asm
22 const version = [_]u8{ 0x01, 0x00, 0x00, 0x00 }; // version 1
23
24 const custom_id = 0;
25 const types_id = 1;
26 const imports_id = 2;
27 const funcs_id = 3;
28 const tables_id = 4;
29 const memories_id = 5;
30 const globals_id = 6;
31 const exports_id = 7;
32 const start_id = 8;
33 const elements_id = 9;
34 const code_id = 10;
35 const data_id = 11;
36};
37
38pub const base_tag = link.File.Tag.wasm;20pub const base_tag = link.File.Tag.wasm;
3921
40pub const FnData = struct {22pub const FnData = struct {
...@@ -65,19 +47,19 @@ pub fn openPath(allocator: *Allocator, sub_path: []const u8, options: link.Optio...@@ -65,19 +47,19 @@ pub fn openPath(allocator: *Allocator, sub_path: []const u8, options: link.Optio
65 const file = try options.emit.?.directory.handle.createFile(sub_path, .{ .truncate = true, .read = true });47 const file = try options.emit.?.directory.handle.createFile(sub_path, .{ .truncate = true, .read = true });
66 errdefer file.close();48 errdefer file.close();
6749
68 const wasm = try createEmpty(allocator, options);50 const wasm_bin = try createEmpty(allocator, options);
69 errdefer wasm.base.destroy();51 errdefer wasm_bin.base.destroy();
7052
71 wasm.base.file = file;53 wasm_bin.base.file = file;
7254
73 try file.writeAll(&(spec.magic ++ spec.version));55 try file.writeAll(&(wasm.magic ++ wasm.version));
7456
75 return wasm;57 return wasm_bin;
76}58}
7759
78pub fn createEmpty(gpa: *Allocator, options: link.Options) !*Wasm {60pub fn createEmpty(gpa: *Allocator, options: link.Options) !*Wasm {
79 const wasm = try gpa.create(Wasm);61 const wasm_bin = try gpa.create(Wasm);
80 wasm.* = .{62 wasm_bin.* = .{
81 .base = .{63 .base = .{
82 .tag = .wasm,64 .tag = .wasm,
83 .options = options,65 .options = options,
...@@ -85,7 +67,7 @@ pub fn createEmpty(gpa: *Allocator, options: link.Options) !*Wasm {...@@ -85,7 +67,7 @@ pub fn createEmpty(gpa: *Allocator, options: link.Options) !*Wasm {
85 .allocator = gpa,67 .allocator = gpa,
86 },68 },
87 };69 };
88 return wasm;70 return wasm_bin;
89}71}
9072
91pub fn deinit(self: *Wasm) void {73pub fn deinit(self: *Wasm) void {
...@@ -121,13 +103,14 @@ pub fn updateDecl(self: *Wasm, module: *Module, decl: *Module.Decl) !void {...@@ -121,13 +103,14 @@ pub fn updateDecl(self: *Wasm, module: *Module, decl: *Module.Decl) !void {
121103
122 var context = codegen.Context{104 var context = codegen.Context{
123 .gpa = self.base.allocator,105 .gpa = self.base.allocator,
124 .values = codegen.ValueTable.init(self.base.allocator),106 .values = .{},
125 .code = managed_code,107 .code = managed_code,
126 .func_type_data = managed_functype,108 .func_type_data = managed_functype,
127 .decl = decl,109 .decl = decl,
128 .err_msg = undefined,110 .err_msg = undefined,
111 .locals = .{},
129 };112 };
130 defer context.values.deinit();113 defer context.deinit();
131114
132 // generate the 'code' section for the function declaration115 // generate the 'code' section for the function declaration
133 context.gen() catch |err| switch (err) {116 context.gen() catch |err| switch (err) {
...@@ -139,6 +122,13 @@ pub fn updateDecl(self: *Wasm, module: *Module, decl: *Module.Decl) !void {...@@ -139,6 +122,13 @@ pub fn updateDecl(self: *Wasm, module: *Module, decl: *Module.Decl) !void {
139 else => |e| return err,122 else => |e| return err,
140 };123 };
141124
125 // as locals are patched afterwards, the offsets of funcidx's are off,
126 // here we update them to correct them
127 for (decl.fn_link.wasm.?.idx_refs.items) |*func| {
128 // For each local, add 6 bytes (count + type)
129 func.offset += @intCast(u32, context.locals.items.len * 6);
130 }
131
142 fn_data.functype = context.func_type_data.toUnmanaged();132 fn_data.functype = context.func_type_data.toUnmanaged();
143 fn_data.code = context.code.toUnmanaged();133 fn_data.code = context.code.toUnmanaged();
144}134}
...@@ -176,8 +166,8 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {...@@ -176,8 +166,8 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {
176 const header_size = 5 + 1;166 const header_size = 5 + 1;
177167
178 // No need to rewrite the magic/version header168 // No need to rewrite the magic/version header
179 try file.setEndPos(@sizeOf(@TypeOf(spec.magic ++ spec.version)));169 try file.setEndPos(@sizeOf(@TypeOf(wasm.magic ++ wasm.version)));
180 try file.seekTo(@sizeOf(@TypeOf(spec.magic ++ spec.version)));170 try file.seekTo(@sizeOf(@TypeOf(wasm.magic ++ wasm.version)));
181171
182 // Type section172 // Type section
183 {173 {
...@@ -188,7 +178,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {...@@ -188,7 +178,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {
188 try writeVecSectionHeader(178 try writeVecSectionHeader(
189 file,179 file,
190 header_offset,180 header_offset,
191 spec.types_id,181 .type,
192 @intCast(u32, (try file.getPos()) - header_offset - header_size),182 @intCast(u32, (try file.getPos()) - header_offset - header_size),
193 @intCast(u32, self.funcs.items.len),183 @intCast(u32, self.funcs.items.len),
194 );184 );
...@@ -202,7 +192,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {...@@ -202,7 +192,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {
202 try writeVecSectionHeader(192 try writeVecSectionHeader(
203 file,193 file,
204 header_offset,194 header_offset,
205 spec.funcs_id,195 .function,
206 @intCast(u32, (try file.getPos()) - header_offset - header_size),196 @intCast(u32, (try file.getPos()) - header_offset - header_size),
207 @intCast(u32, self.funcs.items.len),197 @intCast(u32, self.funcs.items.len),
208 );198 );
...@@ -235,7 +225,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {...@@ -235,7 +225,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {
235 try writeVecSectionHeader(225 try writeVecSectionHeader(
236 file,226 file,
237 header_offset,227 header_offset,
238 spec.exports_id,228 .@"export",
239 @intCast(u32, (try file.getPos()) - header_offset - header_size),229 @intCast(u32, (try file.getPos()) - header_offset - header_size),
240 count,230 count,
241 );231 );
...@@ -255,7 +245,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {...@@ -255,7 +245,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {
255 try writer.writeAll(fn_data.code.items[current..idx_ref.offset]);245 try writer.writeAll(fn_data.code.items[current..idx_ref.offset]);
256 current = idx_ref.offset;246 current = idx_ref.offset;
257 // Use a fixed width here to make calculating the code size247 // Use a fixed width here to make calculating the code size
258 // in codegen.wasm.genCode() simpler.248 // in codegen.wasm.gen() simpler.
259 var buf: [5]u8 = undefined;249 var buf: [5]u8 = undefined;
260 leb.writeUnsignedFixed(5, &buf, self.getFuncidx(idx_ref.decl).?);250 leb.writeUnsignedFixed(5, &buf, self.getFuncidx(idx_ref.decl).?);
261 try writer.writeAll(&buf);251 try writer.writeAll(&buf);
...@@ -266,7 +256,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {...@@ -266,7 +256,7 @@ pub fn flushModule(self: *Wasm, comp: *Compilation) !void {
266 try writeVecSectionHeader(256 try writeVecSectionHeader(
267 file,257 file,
268 header_offset,258 header_offset,
269 spec.code_id,259 .code,
270 @intCast(u32, (try file.getPos()) - header_offset - header_size),260 @intCast(u32, (try file.getPos()) - header_offset - header_size),
271 @intCast(u32, self.funcs.items.len),261 @intCast(u32, self.funcs.items.len),
272 );262 );
...@@ -549,9 +539,9 @@ fn reserveVecSectionHeader(file: fs.File) !u64 {...@@ -549,9 +539,9 @@ fn reserveVecSectionHeader(file: fs.File) !u64 {
549 return (try file.getPos()) - header_size;539 return (try file.getPos()) - header_size;
550}540}
551541
552fn writeVecSectionHeader(file: fs.File, offset: u64, section: u8, size: u32, items: u32) !void {542fn writeVecSectionHeader(file: fs.File, offset: u64, section: wasm.Section, size: u32, items: u32) !void {
553 var buf: [1 + 5 + 5]u8 = undefined;543 var buf: [1 + 5 + 5]u8 = undefined;
554 buf[0] = section;544 buf[0] = @enumToInt(section);
555 leb.writeUnsignedFixed(5, buf[1..6], size);545 leb.writeUnsignedFixed(5, buf[1..6], size);
556 leb.writeUnsignedFixed(5, buf[6..], items);546 leb.writeUnsignedFixed(5, buf[6..], items);
557 try file.pwriteAll(&buf, offset);547 try file.pwriteAll(&buf, offset);
src/main.zig+8-2
...@@ -312,6 +312,7 @@ const usage_build_generic =...@@ -312,6 +312,7 @@ const usage_build_generic =
312 \\ pe Portable Executable (Windows)312 \\ pe Portable Executable (Windows)
313 \\ coff Common Object File Format (Windows)313 \\ coff Common Object File Format (Windows)
314 \\ macho macOS relocatables314 \\ macho macOS relocatables
315 \\ spirv Standard, Portable Intermediate Representation V (SPIR-V)
315 \\ hex (planned) Intel IHEX316 \\ hex (planned) Intel IHEX
316 \\ raw (planned) Dump machine code directly317 \\ raw (planned) Dump machine code directly
317 \\ -dirafter [dir] Add directory to AFTER include search path318 \\ -dirafter [dir] Add directory to AFTER include search path
...@@ -1185,6 +1186,7 @@ fn buildOutputType(...@@ -1185,6 +1186,7 @@ fn buildOutputType(
1185 .framework_dir => try framework_dirs.append(it.only_arg),1186 .framework_dir => try framework_dirs.append(it.only_arg),
1186 .framework => try frameworks.append(it.only_arg),1187 .framework => try frameworks.append(it.only_arg),
1187 .nostdlibinc => want_native_include_dirs = false,1188 .nostdlibinc => want_native_include_dirs = false,
1189 .strip => strip = true,
1188 }1190 }
1189 }1191 }
1190 // Parse linker args.1192 // Parse linker args.
...@@ -1535,8 +1537,9 @@ fn buildOutputType(...@@ -1535,8 +1537,9 @@ fn buildOutputType(
1535 }1537 }
15361538
1537 const has_sysroot = if (comptime std.Target.current.isDarwin()) outer: {1539 const has_sysroot = if (comptime std.Target.current.isDarwin()) outer: {
1538 const at_least_big_sur = target_info.target.os.getVersionRange().semver.min.major >= 11;1540 const min = target_info.target.os.getVersionRange().semver.min;
1539 if (at_least_big_sur) {1541 const at_least_catalina = min.major >= 11 or (min.major >= 10 and min.minor >= 15);
1542 if (at_least_catalina) {
1540 const sdk_path = try std.zig.system.getSDKPath(arena);1543 const sdk_path = try std.zig.system.getSDKPath(arena);
1541 try clang_argv.ensureCapacity(clang_argv.items.len + 2);1544 try clang_argv.ensureCapacity(clang_argv.items.len + 2);
1542 clang_argv.appendAssumeCapacity("-isysroot");1545 clang_argv.appendAssumeCapacity("-isysroot");
...@@ -1588,6 +1591,8 @@ fn buildOutputType(...@@ -1588,6 +1591,8 @@ fn buildOutputType(
1588 break :blk .hex;1591 break :blk .hex;
1589 } else if (mem.eql(u8, ofmt, "raw")) {1592 } else if (mem.eql(u8, ofmt, "raw")) {
1590 break :blk .raw;1593 break :blk .raw;
1594 } else if (mem.eql(u8, ofmt, "spirv")) {
1595 break :blk .spirv;
1591 } else {1596 } else {
1592 fatal("unsupported object format: {s}", .{ofmt});1597 fatal("unsupported object format: {s}", .{ofmt});
1593 }1598 }
...@@ -3047,6 +3052,7 @@ pub const ClangArgIterator = struct {...@@ -3047,6 +3052,7 @@ pub const ClangArgIterator = struct {
3047 nostdlibinc,3052 nostdlibinc,
3048 red_zone,3053 red_zone,
3049 no_red_zone,3054 no_red_zone,
3055 strip,
3050 };3056 };
30513057
3052 const Args = struct {3058 const Args = struct {
src/musl.zig+14
...@@ -522,6 +522,7 @@ const src_files = [_][]const u8{...@@ -522,6 +522,7 @@ const src_files = [_][]const u8{
522 "musl/src/errno/strerror.c",522 "musl/src/errno/strerror.c",
523 "musl/src/exit/_Exit.c",523 "musl/src/exit/_Exit.c",
524 "musl/src/exit/abort.c",524 "musl/src/exit/abort.c",
525 "musl/src/exit/abort_lock.c",
525 "musl/src/exit/arm/__aeabi_atexit.c",526 "musl/src/exit/arm/__aeabi_atexit.c",
526 "musl/src/exit/assert.c",527 "musl/src/exit/assert.c",
527 "musl/src/exit/at_quick_exit.c",528 "musl/src/exit/at_quick_exit.c",
...@@ -658,6 +659,7 @@ const src_files = [_][]const u8{...@@ -658,6 +659,7 @@ const src_files = [_][]const u8{
658 "musl/src/linux/flock.c",659 "musl/src/linux/flock.c",
659 "musl/src/linux/getdents.c",660 "musl/src/linux/getdents.c",
660 "musl/src/linux/getrandom.c",661 "musl/src/linux/getrandom.c",
662 "musl/src/linux/gettid.c",
661 "musl/src/linux/inotify.c",663 "musl/src/linux/inotify.c",
662 "musl/src/linux/ioperm.c",664 "musl/src/linux/ioperm.c",
663 "musl/src/linux/iopl.c",665 "musl/src/linux/iopl.c",
...@@ -731,6 +733,8 @@ const src_files = [_][]const u8{...@@ -731,6 +733,8 @@ const src_files = [_][]const u8{
731 "musl/src/locale/wcscoll.c",733 "musl/src/locale/wcscoll.c",
732 "musl/src/locale/wcsxfrm.c",734 "musl/src/locale/wcsxfrm.c",
733 "musl/src/malloc/calloc.c",735 "musl/src/malloc/calloc.c",
736 "musl/src/malloc/free.c",
737 "musl/src/malloc/libc_calloc.c",
734 "musl/src/malloc/lite_malloc.c",738 "musl/src/malloc/lite_malloc.c",
735 "musl/src/malloc/mallocng/aligned_alloc.c",739 "musl/src/malloc/mallocng/aligned_alloc.c",
736 "musl/src/malloc/mallocng/donate.c",740 "musl/src/malloc/mallocng/donate.c",
...@@ -739,7 +743,12 @@ const src_files = [_][]const u8{...@@ -739,7 +743,12 @@ const src_files = [_][]const u8{
739 "musl/src/malloc/mallocng/malloc_usable_size.c",743 "musl/src/malloc/mallocng/malloc_usable_size.c",
740 "musl/src/malloc/mallocng/realloc.c",744 "musl/src/malloc/mallocng/realloc.c",
741 "musl/src/malloc/memalign.c",745 "musl/src/malloc/memalign.c",
746 "musl/src/malloc/oldmalloc/aligned_alloc.c",
747 "musl/src/malloc/oldmalloc/malloc.c",
748 "musl/src/malloc/oldmalloc/malloc_usable_size.c",
742 "musl/src/malloc/posix_memalign.c",749 "musl/src/malloc/posix_memalign.c",
750 "musl/src/malloc/realloc.c",
751 "musl/src/malloc/reallocarray.c",
743 "musl/src/malloc/replaced.c",752 "musl/src/malloc/replaced.c",
744 "musl/src/math/__cos.c",753 "musl/src/math/__cos.c",
745 "musl/src/math/__cosdf.c",754 "musl/src/math/__cosdf.c",
...@@ -754,6 +763,7 @@ const src_files = [_][]const u8{...@@ -754,6 +763,7 @@ const src_files = [_][]const u8{
754 "musl/src/math/__math_divzerof.c",763 "musl/src/math/__math_divzerof.c",
755 "musl/src/math/__math_invalid.c",764 "musl/src/math/__math_invalid.c",
756 "musl/src/math/__math_invalidf.c",765 "musl/src/math/__math_invalidf.c",
766 "musl/src/math/__math_invalidl.c",
757 "musl/src/math/__math_oflow.c",767 "musl/src/math/__math_oflow.c",
758 "musl/src/math/__math_oflowf.c",768 "musl/src/math/__math_oflowf.c",
759 "musl/src/math/__math_uflow.c",769 "musl/src/math/__math_uflow.c",
...@@ -1137,6 +1147,7 @@ const src_files = [_][]const u8{...@@ -1137,6 +1147,7 @@ const src_files = [_][]const u8{
1137 "musl/src/math/sinhl.c",1147 "musl/src/math/sinhl.c",
1138 "musl/src/math/sinl.c",1148 "musl/src/math/sinl.c",
1139 "musl/src/math/sqrt.c",1149 "musl/src/math/sqrt.c",
1150 "musl/src/math/sqrt_data.c",
1140 "musl/src/math/sqrtf.c",1151 "musl/src/math/sqrtf.c",
1141 "musl/src/math/sqrtl.c",1152 "musl/src/math/sqrtl.c",
1142 "musl/src/math/tan.c",1153 "musl/src/math/tan.c",
...@@ -1406,6 +1417,7 @@ const src_files = [_][]const u8{...@@ -1406,6 +1417,7 @@ const src_files = [_][]const u8{
1406 "musl/src/prng/random.c",1417 "musl/src/prng/random.c",
1407 "musl/src/prng/seed48.c",1418 "musl/src/prng/seed48.c",
1408 "musl/src/prng/srand48.c",1419 "musl/src/prng/srand48.c",
1420 "musl/src/process/_Fork.c",
1409 "musl/src/process/arm/vfork.s",1421 "musl/src/process/arm/vfork.s",
1410 "musl/src/process/execl.c",1422 "musl/src/process/execl.c",
1411 "musl/src/process/execle.c",1423 "musl/src/process/execle.c",
...@@ -1833,8 +1845,10 @@ const src_files = [_][]const u8{...@@ -1833,8 +1845,10 @@ const src_files = [_][]const u8{
1833 "musl/src/termios/tcflush.c",1845 "musl/src/termios/tcflush.c",
1834 "musl/src/termios/tcgetattr.c",1846 "musl/src/termios/tcgetattr.c",
1835 "musl/src/termios/tcgetsid.c",1847 "musl/src/termios/tcgetsid.c",
1848 "musl/src/termios/tcgetwinsize.c",
1836 "musl/src/termios/tcsendbreak.c",1849 "musl/src/termios/tcsendbreak.c",
1837 "musl/src/termios/tcsetattr.c",1850 "musl/src/termios/tcsetattr.c",
1851 "musl/src/termios/tcsetwinsize.c",
1838 "musl/src/thread/__lock.c",1852 "musl/src/thread/__lock.c",
1839 "musl/src/thread/__set_thread_area.c",1853 "musl/src/thread/__set_thread_area.c",
1840 "musl/src/thread/__syscall_cp.c",1854 "musl/src/thread/__syscall_cp.c",
src/stage1/all_types.hpp+3-17
...@@ -74,6 +74,7 @@ enum CallingConvention {...@@ -74,6 +74,7 @@ enum CallingConvention {
74 CallingConventionC,74 CallingConventionC,
75 CallingConventionNaked,75 CallingConventionNaked,
76 CallingConventionAsync,76 CallingConventionAsync,
77 CallingConventionInline,
77 CallingConventionInterrupt,78 CallingConventionInterrupt,
78 CallingConventionSignal,79 CallingConventionSignal,
79 CallingConventionStdcall,80 CallingConventionStdcall,
...@@ -703,12 +704,6 @@ enum NodeType {...@@ -703,12 +704,6 @@ enum NodeType {
703 NodeTypeAnyTypeField,704 NodeTypeAnyTypeField,
704};705};
705706
706enum FnInline {
707 FnInlineAuto,
708 FnInlineAlways,
709 FnInlineNever,
710};
711
712struct AstNodeFnProto {707struct AstNodeFnProto {
713 Buf *name;708 Buf *name;
714 ZigList<AstNode *> params;709 ZigList<AstNode *> params;
...@@ -725,13 +720,12 @@ struct AstNodeFnProto {...@@ -725,13 +720,12 @@ struct AstNodeFnProto {
725 AstNode *callconv_expr;720 AstNode *callconv_expr;
726 Buf doc_comments;721 Buf doc_comments;
727722
728 FnInline fn_inline;
729
730 VisibMod visib_mod;723 VisibMod visib_mod;
731 bool auto_err_set;724 bool auto_err_set;
732 bool is_var_args;725 bool is_var_args;
733 bool is_extern;726 bool is_extern;
734 bool is_export;727 bool is_export;
728 bool is_noinline;
735};729};
736730
737struct AstNodeFnDef {731struct AstNodeFnDef {
...@@ -1719,7 +1713,6 @@ struct ZigFn {...@@ -1719,7 +1713,6 @@ struct ZigFn {
17191713
1720 LLVMValueRef valgrind_client_request_array;1714 LLVMValueRef valgrind_client_request_array;
17211715
1722 FnInline fn_inline;
1723 FnAnalState anal_state;1716 FnAnalState anal_state;
17241717
1725 uint32_t align_bytes;1718 uint32_t align_bytes;
...@@ -1728,6 +1721,7 @@ struct ZigFn {...@@ -1728,6 +1721,7 @@ struct ZigFn {
1728 bool calls_or_awaits_errorable_fn;1721 bool calls_or_awaits_errorable_fn;
1729 bool is_cold;1722 bool is_cold;
1730 bool is_test;1723 bool is_test;
1724 bool is_noinline;
1731};1725};
17321726
1733uint32_t fn_table_entry_hash(ZigFn*);1727uint32_t fn_table_entry_hash(ZigFn*);
...@@ -1811,7 +1805,6 @@ enum BuiltinFnId {...@@ -1811,7 +1805,6 @@ enum BuiltinFnId {
1811 BuiltinFnIdIntToPtr,1805 BuiltinFnIdIntToPtr,
1812 BuiltinFnIdPtrToInt,1806 BuiltinFnIdPtrToInt,
1813 BuiltinFnIdTagName,1807 BuiltinFnIdTagName,
1814 BuiltinFnIdTagType,
1815 BuiltinFnIdFieldParentPtr,1808 BuiltinFnIdFieldParentPtr,
1816 BuiltinFnIdByteOffsetOf,1809 BuiltinFnIdByteOffsetOf,
1817 BuiltinFnIdBitOffsetOf,1810 BuiltinFnIdBitOffsetOf,
...@@ -2623,7 +2616,6 @@ enum IrInstSrcId {...@@ -2623,7 +2616,6 @@ enum IrInstSrcId {
2623 IrInstSrcIdDeclRef,2616 IrInstSrcIdDeclRef,
2624 IrInstSrcIdPanic,2617 IrInstSrcIdPanic,
2625 IrInstSrcIdTagName,2618 IrInstSrcIdTagName,
2626 IrInstSrcIdTagType,
2627 IrInstSrcIdFieldParentPtr,2619 IrInstSrcIdFieldParentPtr,
2628 IrInstSrcIdByteOffsetOf,2620 IrInstSrcIdByteOffsetOf,
2629 IrInstSrcIdBitOffsetOf,2621 IrInstSrcIdBitOffsetOf,
...@@ -4074,12 +4066,6 @@ struct IrInstGenTagName {...@@ -4074,12 +4066,6 @@ struct IrInstGenTagName {
4074 IrInstGen *target;4066 IrInstGen *target;
4075};4067};
40764068
4077struct IrInstSrcTagType {
4078 IrInstSrc base;
4079
4080 IrInstSrc *target;
4081};
4082
4083struct IrInstSrcFieldParentPtr {4069struct IrInstSrcFieldParentPtr {
4084 IrInstSrc base;4070 IrInstSrc base;
40854071
src/stage1/analyze.cpp+16-6
...@@ -973,6 +973,7 @@ const char *calling_convention_name(CallingConvention cc) {...@@ -973,6 +973,7 @@ const char *calling_convention_name(CallingConvention cc) {
973 case CallingConventionAPCS: return "APCS";973 case CallingConventionAPCS: return "APCS";
974 case CallingConventionAAPCS: return "AAPCS";974 case CallingConventionAAPCS: return "AAPCS";
975 case CallingConventionAAPCSVFP: return "AAPCSVFP";975 case CallingConventionAAPCSVFP: return "AAPCSVFP";
976 case CallingConventionInline: return "Inline";
976 }977 }
977 zig_unreachable();978 zig_unreachable();
978}979}
...@@ -981,6 +982,7 @@ bool calling_convention_allows_zig_types(CallingConvention cc) {...@@ -981,6 +982,7 @@ bool calling_convention_allows_zig_types(CallingConvention cc) {
981 switch (cc) {982 switch (cc) {
982 case CallingConventionUnspecified:983 case CallingConventionUnspecified:
983 case CallingConventionAsync:984 case CallingConventionAsync:
985 case CallingConventionInline:
984 return true;986 return true;
985 case CallingConventionC:987 case CallingConventionC:
986 case CallingConventionNaked:988 case CallingConventionNaked:
...@@ -1007,7 +1009,8 @@ ZigType *get_stack_trace_type(CodeGen *g) {...@@ -1007,7 +1009,8 @@ ZigType *get_stack_trace_type(CodeGen *g) {
1007}1009}
10081010
1009bool want_first_arg_sret(CodeGen *g, FnTypeId *fn_type_id) {1011bool want_first_arg_sret(CodeGen *g, FnTypeId *fn_type_id) {
1010 if (fn_type_id->cc == CallingConventionUnspecified) {1012 if (fn_type_id->cc == CallingConventionUnspecified
1013 || fn_type_id->cc == CallingConventionInline) {
1011 return handle_is_ptr(g, fn_type_id->return_type);1014 return handle_is_ptr(g, fn_type_id->return_type);
1012 }1015 }
1013 if (fn_type_id->cc != CallingConventionC) {1016 if (fn_type_id->cc != CallingConventionC) {
...@@ -1888,6 +1891,7 @@ Error emit_error_unless_callconv_allowed_for_target(CodeGen *g, AstNode *source_...@@ -1888,6 +1891,7 @@ Error emit_error_unless_callconv_allowed_for_target(CodeGen *g, AstNode *source_
1888 case CallingConventionC:1891 case CallingConventionC:
1889 case CallingConventionNaked:1892 case CallingConventionNaked:
1890 case CallingConventionAsync:1893 case CallingConventionAsync:
1894 case CallingConventionInline:
1891 break;1895 break;
1892 case CallingConventionInterrupt:1896 case CallingConventionInterrupt:
1893 if (g->zig_target->arch != ZigLLVM_x861897 if (g->zig_target->arch != ZigLLVM_x86
...@@ -3267,7 +3271,7 @@ static Error resolve_union_zero_bits(CodeGen *g, ZigType *union_type) {...@@ -3267,7 +3271,7 @@ static Error resolve_union_zero_bits(CodeGen *g, ZigType *union_type) {
32673271
3268 tag_type = new_type_table_entry(ZigTypeIdEnum);3272 tag_type = new_type_table_entry(ZigTypeIdEnum);
3269 buf_resize(&tag_type->name, 0);3273 buf_resize(&tag_type->name, 0);
3270 buf_appendf(&tag_type->name, "@TagType(%s)", buf_ptr(&union_type->name));3274 buf_appendf(&tag_type->name, "@typeInfo(%s).Union.tag_type.?", buf_ptr(&union_type->name));
3271 tag_type->llvm_type = tag_int_type->llvm_type;3275 tag_type->llvm_type = tag_int_type->llvm_type;
3272 tag_type->llvm_di_type = tag_int_type->llvm_di_type;3276 tag_type->llvm_di_type = tag_int_type->llvm_di_type;
3273 tag_type->abi_size = tag_int_type->abi_size;3277 tag_type->abi_size = tag_int_type->abi_size;
...@@ -3587,7 +3591,7 @@ static void get_fully_qualified_decl_name(CodeGen *g, Buf *buf, Tld *tld, bool i...@@ -3587,7 +3591,7 @@ static void get_fully_qualified_decl_name(CodeGen *g, Buf *buf, Tld *tld, bool i
3587 }3591 }
3588}3592}
35893593
3590static ZigFn *create_fn_raw(CodeGen *g, FnInline inline_value) {3594static ZigFn *create_fn_raw(CodeGen *g, bool is_noinline) {
3591 ZigFn *fn_entry = heap::c_allocator.create<ZigFn>();3595 ZigFn *fn_entry = heap::c_allocator.create<ZigFn>();
3592 fn_entry->ir_executable = heap::c_allocator.create<IrExecutableSrc>();3596 fn_entry->ir_executable = heap::c_allocator.create<IrExecutableSrc>();
35933597
...@@ -3597,7 +3601,7 @@ static ZigFn *create_fn_raw(CodeGen *g, FnInline inline_value) {...@@ -3597,7 +3601,7 @@ static ZigFn *create_fn_raw(CodeGen *g, FnInline inline_value) {
3597 fn_entry->analyzed_executable.backward_branch_quota = &fn_entry->prealloc_backward_branch_quota;3601 fn_entry->analyzed_executable.backward_branch_quota = &fn_entry->prealloc_backward_branch_quota;
3598 fn_entry->analyzed_executable.fn_entry = fn_entry;3602 fn_entry->analyzed_executable.fn_entry = fn_entry;
3599 fn_entry->ir_executable->fn_entry = fn_entry;3603 fn_entry->ir_executable->fn_entry = fn_entry;
3600 fn_entry->fn_inline = inline_value;3604 fn_entry->is_noinline = is_noinline;
36013605
3602 return fn_entry;3606 return fn_entry;
3603}3607}
...@@ -3606,7 +3610,7 @@ ZigFn *create_fn(CodeGen *g, AstNode *proto_node) {...@@ -3606,7 +3610,7 @@ ZigFn *create_fn(CodeGen *g, AstNode *proto_node) {
3606 assert(proto_node->type == NodeTypeFnProto);3610 assert(proto_node->type == NodeTypeFnProto);
3607 AstNodeFnProto *fn_proto = &proto_node->data.fn_proto;3611 AstNodeFnProto *fn_proto = &proto_node->data.fn_proto;
36083612
3609 ZigFn *fn_entry = create_fn_raw(g, fn_proto->fn_inline);3613 ZigFn *fn_entry = create_fn_raw(g, fn_proto->is_noinline);
36103614
3611 fn_entry->proto_node = proto_node;3615 fn_entry->proto_node = proto_node;
3612 fn_entry->body_node = (proto_node->data.fn_proto.fn_def_node == nullptr) ? nullptr :3616 fn_entry->body_node = (proto_node->data.fn_proto.fn_def_node == nullptr) ? nullptr :
...@@ -3739,6 +3743,12 @@ static void resolve_decl_fn(CodeGen *g, TldFn *tld_fn) {...@@ -3739,6 +3743,12 @@ static void resolve_decl_fn(CodeGen *g, TldFn *tld_fn) {
3739 fn_table_entry->type_entry = g->builtin_types.entry_invalid;3743 fn_table_entry->type_entry = g->builtin_types.entry_invalid;
3740 tld_fn->base.resolution = TldResolutionInvalid;3744 tld_fn->base.resolution = TldResolutionInvalid;
3741 return;3745 return;
3746 case CallingConventionInline:
3747 add_node_error(g, fn_def_node,
3748 buf_sprintf("exported function cannot be inline"));
3749 fn_table_entry->type_entry = g->builtin_types.entry_invalid;
3750 tld_fn->base.resolution = TldResolutionInvalid;
3751 return;
3742 case CallingConventionC:3752 case CallingConventionC:
3743 case CallingConventionNaked:3753 case CallingConventionNaked:
3744 case CallingConventionInterrupt:3754 case CallingConventionInterrupt:
...@@ -3774,7 +3784,7 @@ static void resolve_decl_fn(CodeGen *g, TldFn *tld_fn) {...@@ -3774,7 +3784,7 @@ static void resolve_decl_fn(CodeGen *g, TldFn *tld_fn) {
3774 fn_table_entry->inferred_async_node = fn_table_entry->proto_node;3784 fn_table_entry->inferred_async_node = fn_table_entry->proto_node;
3775 }3785 }
3776 } else if (source_node->type == NodeTypeTestDecl) {3786 } else if (source_node->type == NodeTypeTestDecl) {
3777 ZigFn *fn_table_entry = create_fn_raw(g, FnInlineAuto);3787 ZigFn *fn_table_entry = create_fn_raw(g, false);
37783788
3779 get_fully_qualified_decl_name(g, &fn_table_entry->symbol_name, &tld_fn->base, true);3789 get_fully_qualified_decl_name(g, &fn_table_entry->symbol_name, &tld_fn->base, true);
37803790
src/stage1/ast_render.cpp+3-8
...@@ -123,13 +123,8 @@ static const char *export_string(bool is_export) {...@@ -123,13 +123,8 @@ static const char *export_string(bool is_export) {
123// zig_unreachable();123// zig_unreachable();
124//}124//}
125125
126static const char *inline_string(FnInline fn_inline) {126static const char *inline_string(bool is_inline) {
127 switch (fn_inline) {127 return is_inline ? "inline" : "";
128 case FnInlineAlways: return "inline ";
129 case FnInlineNever: return "noinline ";
130 case FnInlineAuto: return "";
131 }
132 zig_unreachable();
133}128}
134129
135static const char *const_or_var_string(bool is_const) {130static const char *const_or_var_string(bool is_const) {
...@@ -446,7 +441,7 @@ static void render_node_extra(AstRender *ar, AstNode *node, bool grouped) {...@@ -446,7 +441,7 @@ static void render_node_extra(AstRender *ar, AstNode *node, bool grouped) {
446 const char *pub_str = visib_mod_string(node->data.fn_proto.visib_mod);441 const char *pub_str = visib_mod_string(node->data.fn_proto.visib_mod);
447 const char *extern_str = extern_string(node->data.fn_proto.is_extern);442 const char *extern_str = extern_string(node->data.fn_proto.is_extern);
448 const char *export_str = export_string(node->data.fn_proto.is_export);443 const char *export_str = export_string(node->data.fn_proto.is_export);
449 const char *inline_str = inline_string(node->data.fn_proto.fn_inline);444 const char *inline_str = inline_string(node->data.fn_proto.is_noinline);
450 fprintf(ar->f, "%s%s%s%sfn ", pub_str, inline_str, export_str, extern_str);445 fprintf(ar->f, "%s%s%s%sfn ", pub_str, inline_str, export_str, extern_str);
451 if (node->data.fn_proto.name != nullptr) {446 if (node->data.fn_proto.name != nullptr) {
452 print_symbol(ar, node->data.fn_proto.name);447 print_symbol(ar, node->data.fn_proto.name);
src/stage1/codegen.cpp+18-29
...@@ -159,6 +159,7 @@ static const char *get_mangled_name(CodeGen *g, const char *original_name) {...@@ -159,6 +159,7 @@ static const char *get_mangled_name(CodeGen *g, const char *original_name) {
159static ZigLLVM_CallingConv get_llvm_cc(CodeGen *g, CallingConvention cc) {159static ZigLLVM_CallingConv get_llvm_cc(CodeGen *g, CallingConvention cc) {
160 switch (cc) {160 switch (cc) {
161 case CallingConventionUnspecified:161 case CallingConventionUnspecified:
162 case CallingConventionInline:
162 return ZigLLVM_Fast;163 return ZigLLVM_Fast;
163 case CallingConventionC:164 case CallingConventionC:
164 return ZigLLVM_C;165 return ZigLLVM_C;
...@@ -350,6 +351,7 @@ static bool cc_want_sret_attr(CallingConvention cc) {...@@ -350,6 +351,7 @@ static bool cc_want_sret_attr(CallingConvention cc) {
350 return true;351 return true;
351 case CallingConventionAsync:352 case CallingConventionAsync:
352 case CallingConventionUnspecified:353 case CallingConventionUnspecified:
354 case CallingConventionInline:
353 return false;355 return false;
354 }356 }
355 zig_unreachable();357 zig_unreachable();
...@@ -452,20 +454,11 @@ static LLVMValueRef make_fn_llvm_value(CodeGen *g, ZigFn *fn) {...@@ -452,20 +454,11 @@ static LLVMValueRef make_fn_llvm_value(CodeGen *g, ZigFn *fn) {
452 }454 }
453 }455 }
454456
455 switch (fn->fn_inline) {457 if (cc == CallingConventionInline)
456 case FnInlineAlways:458 addLLVMFnAttr(llvm_fn, "alwaysinline");
457 addLLVMFnAttr(llvm_fn, "alwaysinline");459
458 g->inline_fns.append(fn);460 if (fn->is_noinline || (cc != CallingConventionInline && fn->alignstack_value != 0))
459 break;461 addLLVMFnAttr(llvm_fn, "noinline");
460 case FnInlineNever:
461 addLLVMFnAttr(llvm_fn, "noinline");
462 break;
463 case FnInlineAuto:
464 if (fn->alignstack_value != 0) {
465 addLLVMFnAttr(llvm_fn, "noinline");
466 }
467 break;
468 }
469462
470 if (cc == CallingConventionNaked) {463 if (cc == CallingConventionNaked) {
471 addLLVMFnAttr(llvm_fn, "naked");464 addLLVMFnAttr(llvm_fn, "naked");
...@@ -532,7 +525,7 @@ static LLVMValueRef make_fn_llvm_value(CodeGen *g, ZigFn *fn) {...@@ -532,7 +525,7 @@ static LLVMValueRef make_fn_llvm_value(CodeGen *g, ZigFn *fn) {
532 addLLVMFnAttr(llvm_fn, "nounwind");525 addLLVMFnAttr(llvm_fn, "nounwind");
533 add_uwtable_attr(g, llvm_fn);526 add_uwtable_attr(g, llvm_fn);
534 addLLVMFnAttr(llvm_fn, "nobuiltin");527 addLLVMFnAttr(llvm_fn, "nobuiltin");
535 if (codegen_have_frame_pointer(g) && fn->fn_inline != FnInlineAlways) {528 if (codegen_have_frame_pointer(g) && cc != CallingConventionInline) {
536 ZigLLVMAddFunctionAttr(llvm_fn, "frame-pointer", "all");529 ZigLLVMAddFunctionAttr(llvm_fn, "frame-pointer", "all");
537 }530 }
538 if (fn->section_name) {531 if (fn->section_name) {
...@@ -8842,7 +8835,6 @@ static void define_builtin_fns(CodeGen *g) {...@@ -8842,7 +8835,6 @@ static void define_builtin_fns(CodeGen *g) {
8842 create_builtin_fn(g, BuiltinFnIdIntToPtr, "intToPtr", 2);8835 create_builtin_fn(g, BuiltinFnIdIntToPtr, "intToPtr", 2);
8843 create_builtin_fn(g, BuiltinFnIdPtrToInt, "ptrToInt", 1);8836 create_builtin_fn(g, BuiltinFnIdPtrToInt, "ptrToInt", 1);
8844 create_builtin_fn(g, BuiltinFnIdTagName, "tagName", 1);8837 create_builtin_fn(g, BuiltinFnIdTagName, "tagName", 1);
8845 create_builtin_fn(g, BuiltinFnIdTagType, "TagType", 1);
8846 create_builtin_fn(g, BuiltinFnIdFieldParentPtr, "fieldParentPtr", 3);8838 create_builtin_fn(g, BuiltinFnIdFieldParentPtr, "fieldParentPtr", 3);
8847 create_builtin_fn(g, BuiltinFnIdByteOffsetOf, "byteOffsetOf", 2);8839 create_builtin_fn(g, BuiltinFnIdByteOffsetOf, "byteOffsetOf", 2);
8848 create_builtin_fn(g, BuiltinFnIdBitOffsetOf, "bitOffsetOf", 2);8840 create_builtin_fn(g, BuiltinFnIdBitOffsetOf, "bitOffsetOf", 2);
...@@ -9044,19 +9036,16 @@ Buf *codegen_generate_builtin_source(CodeGen *g) {...@@ -9044,19 +9036,16 @@ Buf *codegen_generate_builtin_source(CodeGen *g) {
9044 static_assert(CallingConventionC == 1, "");9036 static_assert(CallingConventionC == 1, "");
9045 static_assert(CallingConventionNaked == 2, "");9037 static_assert(CallingConventionNaked == 2, "");
9046 static_assert(CallingConventionAsync == 3, "");9038 static_assert(CallingConventionAsync == 3, "");
9047 static_assert(CallingConventionInterrupt == 4, "");9039 static_assert(CallingConventionInline == 4, "");
9048 static_assert(CallingConventionSignal == 5, "");9040 static_assert(CallingConventionInterrupt == 5, "");
9049 static_assert(CallingConventionStdcall == 6, "");9041 static_assert(CallingConventionSignal == 6, "");
9050 static_assert(CallingConventionFastcall == 7, "");9042 static_assert(CallingConventionStdcall == 7, "");
9051 static_assert(CallingConventionVectorcall == 8, "");9043 static_assert(CallingConventionFastcall == 8, "");
9052 static_assert(CallingConventionThiscall == 9, "");9044 static_assert(CallingConventionVectorcall == 9, "");
9053 static_assert(CallingConventionAPCS == 10, "");9045 static_assert(CallingConventionThiscall == 10, "");
9054 static_assert(CallingConventionAAPCS == 11, "");9046 static_assert(CallingConventionAPCS == 11, "");
9055 static_assert(CallingConventionAAPCSVFP == 12, "");9047 static_assert(CallingConventionAAPCS == 12, "");
90569048 static_assert(CallingConventionAAPCSVFP == 13, "");
9057 static_assert(FnInlineAuto == 0, "");
9058 static_assert(FnInlineAlways == 1, "");
9059 static_assert(FnInlineNever == 2, "");
90609049
9061 static_assert(BuiltinPtrSizeOne == 0, "");9050 static_assert(BuiltinPtrSizeOne == 0, "");
9062 static_assert(BuiltinPtrSizeMany == 1, "");9051 static_assert(BuiltinPtrSizeMany == 1, "");
src/stage1/ir.cpp+16-68
...@@ -516,8 +516,6 @@ static void destroy_instruction_src(IrInstSrc *inst) {...@@ -516,8 +516,6 @@ static void destroy_instruction_src(IrInstSrc *inst) {
516 return heap::c_allocator.destroy(reinterpret_cast<IrInstSrcSetAlignStack *>(inst));516 return heap::c_allocator.destroy(reinterpret_cast<IrInstSrcSetAlignStack *>(inst));
517 case IrInstSrcIdArgType:517 case IrInstSrcIdArgType:
518 return heap::c_allocator.destroy(reinterpret_cast<IrInstSrcArgType *>(inst));518 return heap::c_allocator.destroy(reinterpret_cast<IrInstSrcArgType *>(inst));
519 case IrInstSrcIdTagType:
520 return heap::c_allocator.destroy(reinterpret_cast<IrInstSrcTagType *>(inst));
521 case IrInstSrcIdExport:519 case IrInstSrcIdExport:
522 return heap::c_allocator.destroy(reinterpret_cast<IrInstSrcExport *>(inst));520 return heap::c_allocator.destroy(reinterpret_cast<IrInstSrcExport *>(inst));
523 case IrInstSrcIdExtern:521 case IrInstSrcIdExtern:
...@@ -1496,10 +1494,6 @@ static constexpr IrInstSrcId ir_inst_id(IrInstSrcTagName *) {...@@ -1496,10 +1494,6 @@ static constexpr IrInstSrcId ir_inst_id(IrInstSrcTagName *) {
1496 return IrInstSrcIdTagName;1494 return IrInstSrcIdTagName;
1497}1495}
14981496
1499static constexpr IrInstSrcId ir_inst_id(IrInstSrcTagType *) {
1500 return IrInstSrcIdTagType;
1501}
1502
1503static constexpr IrInstSrcId ir_inst_id(IrInstSrcFieldParentPtr *) {1497static constexpr IrInstSrcId ir_inst_id(IrInstSrcFieldParentPtr *) {
1504 return IrInstSrcIdFieldParentPtr;1498 return IrInstSrcIdFieldParentPtr;
1505}1499}
...@@ -4450,17 +4444,6 @@ static IrInstGen *ir_build_tag_name_gen(IrAnalyze *ira, IrInst *source_instr, Ir...@@ -4450,17 +4444,6 @@ static IrInstGen *ir_build_tag_name_gen(IrAnalyze *ira, IrInst *source_instr, Ir
4450 return &instruction->base;4444 return &instruction->base;
4451}4445}
44524446
4453static IrInstSrc *ir_build_tag_type(IrBuilderSrc *irb, Scope *scope, AstNode *source_node,
4454 IrInstSrc *target)
4455{
4456 IrInstSrcTagType *instruction = ir_build_instruction<IrInstSrcTagType>(irb, scope, source_node);
4457 instruction->target = target;
4458
4459 ir_ref_instruction(target, irb->current_basic_block);
4460
4461 return &instruction->base;
4462}
4463
4464static IrInstSrc *ir_build_field_parent_ptr_src(IrBuilderSrc *irb, Scope *scope, AstNode *source_node,4447static IrInstSrc *ir_build_field_parent_ptr_src(IrBuilderSrc *irb, Scope *scope, AstNode *source_node,
4465 IrInstSrc *type_value, IrInstSrc *field_name, IrInstSrc *field_ptr)4448 IrInstSrc *type_value, IrInstSrc *field_name, IrInstSrc *field_ptr)
4466{4449{
...@@ -7202,16 +7185,6 @@ static IrInstSrc *ir_gen_builtin_fn_call(IrBuilderSrc *irb, Scope *scope, AstNod...@@ -7202,16 +7185,6 @@ static IrInstSrc *ir_gen_builtin_fn_call(IrBuilderSrc *irb, Scope *scope, AstNod
7202 IrInstSrc *tag_name = ir_build_tag_name_src(irb, scope, node, arg0_value);7185 IrInstSrc *tag_name = ir_build_tag_name_src(irb, scope, node, arg0_value);
7203 return ir_lval_wrap(irb, scope, tag_name, lval, result_loc);7186 return ir_lval_wrap(irb, scope, tag_name, lval, result_loc);
7204 }7187 }
7205 case BuiltinFnIdTagType:
7206 {
7207 AstNode *arg0_node = node->data.fn_call_expr.params.at(0);
7208 IrInstSrc *arg0_value = ir_gen_node(irb, arg0_node, scope);
7209 if (arg0_value == irb->codegen->invalid_inst_src)
7210 return arg0_value;
7211
7212 IrInstSrc *tag_type = ir_build_tag_type(irb, scope, node, arg0_value);
7213 return ir_lval_wrap(irb, scope, tag_type, lval, result_loc);
7214 }
7215 case BuiltinFnIdFieldParentPtr:7188 case BuiltinFnIdFieldParentPtr:
7216 {7189 {
7217 AstNode *arg0_node = node->data.fn_call_expr.params.at(0);7190 AstNode *arg0_node = node->data.fn_call_expr.params.at(0);
...@@ -19027,7 +19000,7 @@ static IrInstGen *ir_analyze_instruction_decl_var(IrAnalyze *ira, IrInstSrcDeclV...@@ -19027,7 +19000,7 @@ static IrInstGen *ir_analyze_instruction_decl_var(IrAnalyze *ira, IrInstSrcDeclV
19027 } else if (init_val->type->id == ZigTypeIdFn &&19000 } else if (init_val->type->id == ZigTypeIdFn &&
19028 init_val->special != ConstValSpecialUndef &&19001 init_val->special != ConstValSpecialUndef &&
19029 init_val->data.x_ptr.special == ConstPtrSpecialFunction &&19002 init_val->data.x_ptr.special == ConstPtrSpecialFunction &&
19030 init_val->data.x_ptr.data.fn.fn_entry->fn_inline == FnInlineAlways)19003 init_val->data.x_ptr.data.fn.fn_entry->type_entry->data.fn.fn_type_id.cc == CallingConventionInline)
19031 {19004 {
19032 var_class_requires_const = true;19005 var_class_requires_const = true;
19033 if (!var->src_is_const && !is_comptime_var) {19006 if (!var->src_is_const && !is_comptime_var) {
...@@ -19209,6 +19182,11 @@ static IrInstGen *ir_analyze_instruction_export(IrAnalyze *ira, IrInstSrcExport...@@ -19209,6 +19182,11 @@ static IrInstGen *ir_analyze_instruction_export(IrAnalyze *ira, IrInstSrcExport
19209 buf_sprintf("exported function cannot be async"));19182 buf_sprintf("exported function cannot be async"));
19210 add_error_note(ira->codegen, msg, fn_entry->proto_node, buf_sprintf("declared here"));19183 add_error_note(ira->codegen, msg, fn_entry->proto_node, buf_sprintf("declared here"));
19211 } break;19184 } break;
19185 case CallingConventionInline: {
19186 ErrorMsg *msg = ir_add_error(ira, &target->base,
19187 buf_sprintf("exported function cannot be inline"));
19188 add_error_note(ira->codegen, msg, fn_entry->proto_node, buf_sprintf("declared here"));
19189 } break;
19212 case CallingConventionC:19190 case CallingConventionC:
19213 case CallingConventionNaked:19191 case CallingConventionNaked:
19214 case CallingConventionInterrupt:19192 case CallingConventionInterrupt:
...@@ -21147,7 +21125,7 @@ static IrInstGen *ir_analyze_fn_call(IrAnalyze *ira, IrInst* source_instr,...@@ -21147,7 +21125,7 @@ static IrInstGen *ir_analyze_fn_call(IrAnalyze *ira, IrInst* source_instr,
21147 if (type_is_invalid(return_type))21125 if (type_is_invalid(return_type))
21148 return ira->codegen->invalid_inst_gen;21126 return ira->codegen->invalid_inst_gen;
2114921127
21150 if (fn_entry != nullptr && fn_entry->fn_inline == FnInlineAlways && modifier == CallModifierNeverInline) {21128 if (fn_entry != nullptr && fn_type_id->cc == CallingConventionInline && modifier == CallModifierNeverInline) {
21151 ir_add_error(ira, source_instr,21129 ir_add_error(ira, source_instr,
21152 buf_sprintf("no-inline call of inline function"));21130 buf_sprintf("no-inline call of inline function"));
21153 return ira->codegen->invalid_inst_gen;21131 return ira->codegen->invalid_inst_gen;
...@@ -22655,9 +22633,10 @@ static IrInstGen *ir_analyze_instruction_elem_ptr(IrAnalyze *ira, IrInstSrcElemP...@@ -22655,9 +22633,10 @@ static IrInstGen *ir_analyze_instruction_elem_ptr(IrAnalyze *ira, IrInstSrcElemP
22655 if (ptr_field->data.x_ptr.data.base_array.array_val->data.x_array.special !=22633 if (ptr_field->data.x_ptr.data.base_array.array_val->data.x_array.special !=
22656 ConstArraySpecialBuf)22634 ConstArraySpecialBuf)
22657 {22635 {
22658 ir_assert(new_index <22636 if (new_index >= ptr_field->data.x_ptr.data.base_array.array_val->type->data.array.len) {
22659 ptr_field->data.x_ptr.data.base_array.array_val->type->data.array.len,22637 ir_add_error(ira, &elem_ptr_instruction->base.base, buf_sprintf("out of bounds slice"));
22660 &elem_ptr_instruction->base.base);22638 return ira->codegen->invalid_inst_gen;
22639 }
22661 }22640 }
22662 out_val->data.x_ptr.special = ConstPtrSpecialBaseArray;22641 out_val->data.x_ptr.special = ConstPtrSpecialBaseArray;
22663 out_val->data.x_ptr.data.base_array.array_val =22642 out_val->data.x_ptr.data.base_array.array_val =
...@@ -25245,10 +25224,6 @@ static Error ir_make_type_info_decls(IrAnalyze *ira, IrInst* source_instr, ZigVa...@@ -25245,10 +25224,6 @@ static Error ir_make_type_info_decls(IrAnalyze *ira, IrInst* source_instr, ZigVa
25245 if ((err = type_resolve(ira->codegen, type_info_fn_decl_type, ResolveStatusSizeKnown)))25224 if ((err = type_resolve(ira->codegen, type_info_fn_decl_type, ResolveStatusSizeKnown)))
25246 return err;25225 return err;
2524725226
25248 ZigType *type_info_fn_decl_inline_type = ir_type_info_get_type(ira, "Inline", type_info_fn_decl_type);
25249 if ((err = type_resolve(ira->codegen, type_info_fn_decl_inline_type, ResolveStatusSizeKnown)))
25250 return err;
25251
25252 resolve_container_usingnamespace_decls(ira->codegen, decls_scope);25227 resolve_container_usingnamespace_decls(ira->codegen, decls_scope);
2525325228
25254 // The unresolved declarations are collected in a separate queue to avoid25229 // The unresolved declarations are collected in a separate queue to avoid
...@@ -25391,11 +25366,11 @@ static Error ir_make_type_info_decls(IrAnalyze *ira, IrInst* source_instr, ZigVa...@@ -25391,11 +25366,11 @@ static Error ir_make_type_info_decls(IrAnalyze *ira, IrInst* source_instr, ZigVa
25391 fn_decl_fields[0]->special = ConstValSpecialStatic;25366 fn_decl_fields[0]->special = ConstValSpecialStatic;
25392 fn_decl_fields[0]->type = ira->codegen->builtin_types.entry_type;25367 fn_decl_fields[0]->type = ira->codegen->builtin_types.entry_type;
25393 fn_decl_fields[0]->data.x_type = fn_entry->type_entry;25368 fn_decl_fields[0]->data.x_type = fn_entry->type_entry;
25394 // inline_type: Data.FnDecl.Inline25369 // is_noinline: bool
25395 ensure_field_index(fn_decl_val->type, "inline_type", 1);25370 ensure_field_index(fn_decl_val->type, "is_noinline", 1);
25396 fn_decl_fields[1]->special = ConstValSpecialStatic;25371 fn_decl_fields[1]->special = ConstValSpecialStatic;
25397 fn_decl_fields[1]->type = type_info_fn_decl_inline_type;25372 fn_decl_fields[1]->type = ira->codegen->builtin_types.entry_bool;
25398 bigint_init_unsigned(&fn_decl_fields[1]->data.x_enum_tag, fn_entry->fn_inline);25373 fn_decl_fields[1]->data.x_bool = fn_entry->is_noinline;
25399 // is_var_args: bool25374 // is_var_args: bool
25400 ensure_field_index(fn_decl_val->type, "is_var_args", 2);25375 ensure_field_index(fn_decl_val->type, "is_var_args", 2);
25401 bool is_varargs = fn_node->is_var_args;25376 bool is_varargs = fn_node->is_var_args;
...@@ -30983,7 +30958,7 @@ static IrInstGen *ir_analyze_instruction_set_align_stack(IrAnalyze *ira, IrInstS...@@ -30983,7 +30958,7 @@ static IrInstGen *ir_analyze_instruction_set_align_stack(IrAnalyze *ira, IrInstS
30983 return ira->codegen->invalid_inst_gen;30958 return ira->codegen->invalid_inst_gen;
30984 }30959 }
3098530960
30986 if (fn_entry->fn_inline == FnInlineAlways) {30961 if (fn_entry->type_entry->data.fn.fn_type_id.cc == CallingConventionInline) {
30987 ir_add_error(ira, &instruction->base.base, buf_sprintf("@setAlignStack in inline function"));30962 ir_add_error(ira, &instruction->base.base, buf_sprintf("@setAlignStack in inline function"));
30988 return ira->codegen->invalid_inst_gen;30963 return ira->codegen->invalid_inst_gen;
30989 }30964 }
...@@ -31050,30 +31025,6 @@ static IrInstGen *ir_analyze_instruction_arg_type(IrAnalyze *ira, IrInstSrcArgTy...@@ -31050,30 +31025,6 @@ static IrInstGen *ir_analyze_instruction_arg_type(IrAnalyze *ira, IrInstSrcArgTy
31050 return ir_const_type(ira, &instruction->base.base, result_type);31025 return ir_const_type(ira, &instruction->base.base, result_type);
31051}31026}
3105231027
31053static IrInstGen *ir_analyze_instruction_tag_type(IrAnalyze *ira, IrInstSrcTagType *instruction) {
31054 Error err;
31055 IrInstGen *target_inst = instruction->target->child;
31056 ZigType *enum_type = ir_resolve_type(ira, target_inst);
31057 if (type_is_invalid(enum_type))
31058 return ira->codegen->invalid_inst_gen;
31059
31060 if (enum_type->id == ZigTypeIdEnum) {
31061 if ((err = type_resolve(ira->codegen, enum_type, ResolveStatusSizeKnown)))
31062 return ira->codegen->invalid_inst_gen;
31063
31064 return ir_const_type(ira, &instruction->base.base, enum_type->data.enumeration.tag_int_type);
31065 } else if (enum_type->id == ZigTypeIdUnion) {
31066 ZigType *tag_type = ir_resolve_union_tag_type(ira, instruction->target->base.source_node, enum_type);
31067 if (type_is_invalid(tag_type))
31068 return ira->codegen->invalid_inst_gen;
31069 return ir_const_type(ira, &instruction->base.base, tag_type);
31070 } else {
31071 ir_add_error(ira, &target_inst->base, buf_sprintf("expected enum or union, found '%s'",
31072 buf_ptr(&enum_type->name)));
31073 return ira->codegen->invalid_inst_gen;
31074 }
31075}
31076
31077static ZigType *ir_resolve_atomic_operand_type(IrAnalyze *ira, IrInstGen *op) {31028static ZigType *ir_resolve_atomic_operand_type(IrAnalyze *ira, IrInstGen *op) {
31078 ZigType *operand_type = ir_resolve_type(ira, op);31029 ZigType *operand_type = ir_resolve_type(ira, op);
31079 if (type_is_invalid(operand_type))31030 if (type_is_invalid(operand_type))
...@@ -32434,8 +32385,6 @@ static IrInstGen *ir_analyze_instruction_base(IrAnalyze *ira, IrInstSrc *instruc...@@ -32434,8 +32385,6 @@ static IrInstGen *ir_analyze_instruction_base(IrAnalyze *ira, IrInstSrc *instruc
32434 return ir_analyze_instruction_set_align_stack(ira, (IrInstSrcSetAlignStack *)instruction);32385 return ir_analyze_instruction_set_align_stack(ira, (IrInstSrcSetAlignStack *)instruction);
32435 case IrInstSrcIdArgType:32386 case IrInstSrcIdArgType:
32436 return ir_analyze_instruction_arg_type(ira, (IrInstSrcArgType *)instruction);32387 return ir_analyze_instruction_arg_type(ira, (IrInstSrcArgType *)instruction);
32437 case IrInstSrcIdTagType:
32438 return ir_analyze_instruction_tag_type(ira, (IrInstSrcTagType *)instruction);
32439 case IrInstSrcIdExport:32388 case IrInstSrcIdExport:
32440 return ir_analyze_instruction_export(ira, (IrInstSrcExport *)instruction);32389 return ir_analyze_instruction_export(ira, (IrInstSrcExport *)instruction);
32441 case IrInstSrcIdExtern:32390 case IrInstSrcIdExtern:
...@@ -32878,7 +32827,6 @@ bool ir_inst_src_has_side_effects(IrInstSrc *instruction) {...@@ -32878,7 +32827,6 @@ bool ir_inst_src_has_side_effects(IrInstSrc *instruction) {
32878 case IrInstSrcIdImplicitCast:32827 case IrInstSrcIdImplicitCast:
32879 case IrInstSrcIdResolveResult:32828 case IrInstSrcIdResolveResult:
32880 case IrInstSrcIdArgType:32829 case IrInstSrcIdArgType:
32881 case IrInstSrcIdTagType:
32882 case IrInstSrcIdErrorReturnTrace:32830 case IrInstSrcIdErrorReturnTrace:
32883 case IrInstSrcIdErrorUnion:32831 case IrInstSrcIdErrorUnion:
32884 case IrInstSrcIdFloatOp:32832 case IrInstSrcIdFloatOp:
src/stage1/ir_print.cpp-11
...@@ -282,8 +282,6 @@ const char* ir_inst_src_type_str(IrInstSrcId id) {...@@ -282,8 +282,6 @@ const char* ir_inst_src_type_str(IrInstSrcId id) {
282 return "SrcPanic";282 return "SrcPanic";
283 case IrInstSrcIdTagName:283 case IrInstSrcIdTagName:
284 return "SrcTagName";284 return "SrcTagName";
285 case IrInstSrcIdTagType:
286 return "SrcTagType";
287 case IrInstSrcIdFieldParentPtr:285 case IrInstSrcIdFieldParentPtr:
288 return "SrcFieldParentPtr";286 return "SrcFieldParentPtr";
289 case IrInstSrcIdByteOffsetOf:287 case IrInstSrcIdByteOffsetOf:
...@@ -2354,12 +2352,6 @@ static void ir_print_arg_type(IrPrintSrc *irp, IrInstSrcArgType *instruction) {...@@ -2354,12 +2352,6 @@ static void ir_print_arg_type(IrPrintSrc *irp, IrInstSrcArgType *instruction) {
2354 fprintf(irp->f, ")");2352 fprintf(irp->f, ")");
2355}2353}
23562354
2357static void ir_print_enum_tag_type(IrPrintSrc *irp, IrInstSrcTagType *instruction) {
2358 fprintf(irp->f, "@TagType(");
2359 ir_print_other_inst_src(irp, instruction->target);
2360 fprintf(irp->f, ")");
2361}
2362
2363static void ir_print_export(IrPrintSrc *irp, IrInstSrcExport *instruction) {2355static void ir_print_export(IrPrintSrc *irp, IrInstSrcExport *instruction) {
2364 fprintf(irp->f, "@export(");2356 fprintf(irp->f, "@export(");
2365 ir_print_other_inst_src(irp, instruction->target);2357 ir_print_other_inst_src(irp, instruction->target);
...@@ -2953,9 +2945,6 @@ static void ir_print_inst_src(IrPrintSrc *irp, IrInstSrc *instruction, bool trai...@@ -2953,9 +2945,6 @@ static void ir_print_inst_src(IrPrintSrc *irp, IrInstSrc *instruction, bool trai
2953 case IrInstSrcIdArgType:2945 case IrInstSrcIdArgType:
2954 ir_print_arg_type(irp, (IrInstSrcArgType *)instruction);2946 ir_print_arg_type(irp, (IrInstSrcArgType *)instruction);
2955 break;2947 break;
2956 case IrInstSrcIdTagType:
2957 ir_print_enum_tag_type(irp, (IrInstSrcTagType *)instruction);
2958 break;
2959 case IrInstSrcIdExport:2948 case IrInstSrcIdExport:
2960 ir_print_export(irp, (IrInstSrcExport *)instruction);2949 ir_print_export(irp, (IrInstSrcExport *)instruction);
2961 break;2950 break;
src/stage1/parser.cpp+3-14
...@@ -693,8 +693,6 @@ static AstNode *ast_parse_top_level_decl(ParseContext *pc, VisibMod visib_mod, B...@@ -693,8 +693,6 @@ static AstNode *ast_parse_top_level_decl(ParseContext *pc, VisibMod visib_mod, B
693 Token *first = eat_token_if(pc, TokenIdKeywordExport);693 Token *first = eat_token_if(pc, TokenIdKeywordExport);
694 if (first == nullptr)694 if (first == nullptr)
695 first = eat_token_if(pc, TokenIdKeywordExtern);695 first = eat_token_if(pc, TokenIdKeywordExtern);
696 if (first == nullptr)
697 first = eat_token_if(pc, TokenIdKeywordInline);
698 if (first == nullptr)696 if (first == nullptr)
699 first = eat_token_if(pc, TokenIdKeywordNoInline);697 first = eat_token_if(pc, TokenIdKeywordNoInline);
700 if (first != nullptr) {698 if (first != nullptr) {
...@@ -702,7 +700,7 @@ static AstNode *ast_parse_top_level_decl(ParseContext *pc, VisibMod visib_mod, B...@@ -702,7 +700,7 @@ static AstNode *ast_parse_top_level_decl(ParseContext *pc, VisibMod visib_mod, B
702 if (first->id == TokenIdKeywordExtern)700 if (first->id == TokenIdKeywordExtern)
703 lib_name = eat_token_if(pc, TokenIdStringLiteral);701 lib_name = eat_token_if(pc, TokenIdStringLiteral);
704702
705 if (first->id != TokenIdKeywordInline && first->id != TokenIdKeywordNoInline) {703 if (first->id != TokenIdKeywordNoInline) {
706 Token *thread_local_kw = eat_token_if(pc, TokenIdKeywordThreadLocal);704 Token *thread_local_kw = eat_token_if(pc, TokenIdKeywordThreadLocal);
707 AstNode *var_decl = ast_parse_var_decl(pc);705 AstNode *var_decl = ast_parse_var_decl(pc);
708 if (var_decl != nullptr) {706 if (var_decl != nullptr) {
...@@ -739,17 +737,8 @@ static AstNode *ast_parse_top_level_decl(ParseContext *pc, VisibMod visib_mod, B...@@ -739,17 +737,8 @@ static AstNode *ast_parse_top_level_decl(ParseContext *pc, VisibMod visib_mod, B
739 if (!fn_proto->data.fn_proto.is_extern)737 if (!fn_proto->data.fn_proto.is_extern)
740 fn_proto->data.fn_proto.is_extern = first->id == TokenIdKeywordExtern;738 fn_proto->data.fn_proto.is_extern = first->id == TokenIdKeywordExtern;
741 fn_proto->data.fn_proto.is_export = first->id == TokenIdKeywordExport;739 fn_proto->data.fn_proto.is_export = first->id == TokenIdKeywordExport;
742 switch (first->id) {740 if (first->id == TokenIdKeywordNoInline)
743 case TokenIdKeywordInline:741 fn_proto->data.fn_proto.is_noinline = true;
744 fn_proto->data.fn_proto.fn_inline = FnInlineAlways;
745 break;
746 case TokenIdKeywordNoInline:
747 fn_proto->data.fn_proto.fn_inline = FnInlineNever;
748 break;
749 default:
750 fn_proto->data.fn_proto.fn_inline = FnInlineAuto;
751 break;
752 }
753 fn_proto->data.fn_proto.lib_name = token_buf(lib_name);742 fn_proto->data.fn_proto.lib_name = token_buf(lib_name);
754743
755 AstNode *res = fn_proto;744 AstNode *res = fn_proto;
src/target.zig+2-2
...@@ -189,7 +189,7 @@ pub fn supportsStackProbing(target: std.Target) bool {...@@ -189,7 +189,7 @@ pub fn supportsStackProbing(target: std.Target) bool {
189189
190pub fn osToLLVM(os_tag: std.Target.Os.Tag) llvm.OSType {190pub fn osToLLVM(os_tag: std.Target.Os.Tag) llvm.OSType {
191 return switch (os_tag) {191 return switch (os_tag) {
192 .freestanding, .other => .UnknownOS,192 .freestanding, .other, .opencl, .glsl450, .vulkan => .UnknownOS,
193 .windows, .uefi => .Win32,193 .windows, .uefi => .Win32,
194 .ananas => .Ananas,194 .ananas => .Ananas,
195 .cloudabi => .CloudABI,195 .cloudabi => .CloudABI,
...@@ -280,7 +280,7 @@ pub fn archToLLVM(arch_tag: std.Target.Cpu.Arch) llvm.ArchType {...@@ -280,7 +280,7 @@ pub fn archToLLVM(arch_tag: std.Target.Cpu.Arch) llvm.ArchType {
280 .renderscript32 => .renderscript32,280 .renderscript32 => .renderscript32,
281 .renderscript64 => .renderscript64,281 .renderscript64 => .renderscript64,
282 .ve => .ve,282 .ve => .ve,
283 .spu_2 => .UnknownArch,283 .spu_2, .spirv32, .spirv64 => .UnknownArch,
284 };284 };
285}285}
286286
src/test.zig+2-2
...@@ -750,7 +750,7 @@ pub const TestContext = struct {...@@ -750,7 +750,7 @@ pub const TestContext = struct {
750750
751 for (actual_errors.list) |actual_error| {751 for (actual_errors.list) |actual_error| {
752 for (case_error_list) |case_msg, i| {752 for (case_error_list) |case_msg, i| {
753 const ex_tag: @TagType(@TypeOf(case_msg)) = case_msg;753 const ex_tag: std.meta.Tag(@TypeOf(case_msg)) = case_msg;
754 switch (actual_error) {754 switch (actual_error) {
755 .src => |actual_msg| {755 .src => |actual_msg| {
756 for (actual_msg.notes) |*note| {756 for (actual_msg.notes) |*note| {
...@@ -789,7 +789,7 @@ pub const TestContext = struct {...@@ -789,7 +789,7 @@ pub const TestContext = struct {
789 }789 }
790 while (notes_to_check.popOrNull()) |note| {790 while (notes_to_check.popOrNull()) |note| {
791 for (case_error_list) |case_msg, i| {791 for (case_error_list) |case_msg, i| {
792 const ex_tag: @TagType(@TypeOf(case_msg)) = case_msg;792 const ex_tag: std.meta.Tag(@TypeOf(case_msg)) = case_msg;
793 switch (note.*) {793 switch (note.*) {
794 .src => |actual_msg| {794 .src => |actual_msg| {
795 for (actual_msg.notes) |*sub_note| {795 for (actual_msg.notes) |*sub_note| {
src/tracy.zig+1-1
...@@ -31,7 +31,7 @@ pub const Ctx = if (enable) ___tracy_c_zone_context else struct {...@@ -31,7 +31,7 @@ pub const Ctx = if (enable) ___tracy_c_zone_context else struct {
31 pub fn end(self: Ctx) void {}31 pub fn end(self: Ctx) void {}
32};32};
3333
34pub inline fn trace(comptime src: std.builtin.SourceLocation) Ctx {34pub fn trace(comptime src: std.builtin.SourceLocation) callconv(.Inline) Ctx {
35 if (!enable) return .{};35 if (!enable) return .{};
3636
37 const loc: ___tracy_source_location_data = .{37 const loc: ___tracy_source_location_data = .{
src/translate_c.zig+146-61
...@@ -78,6 +78,10 @@ const Scope = struct {...@@ -78,6 +78,10 @@ const Scope = struct {
78 mangle_count: u32 = 0,78 mangle_count: u32 = 0,
79 lbrace: ast.TokenIndex,79 lbrace: ast.TokenIndex,
8080
81 /// When the block corresponds to a function, keep track of the return type
82 /// so that the return expression can be cast, if necessary
83 return_type: ?clang.QualType = null,
84
81 fn init(c: *Context, parent: *Scope, labeled: bool) !Block {85 fn init(c: *Context, parent: *Scope, labeled: bool) !Block {
82 var blk = Block{86 var blk = Block{
83 .base = .{87 .base = .{
...@@ -209,6 +213,21 @@ const Scope = struct {...@@ -209,6 +213,21 @@ const Scope = struct {
209 }213 }
210 }214 }
211215
216 fn findBlockReturnType(inner: *Scope, c: *Context) ?clang.QualType {
217 var scope = inner;
218 while (true) {
219 switch (scope.id) {
220 .Root => return null,
221 .Block => {
222 const block = @fieldParentPtr(Block, "base", scope);
223 if (block.return_type) |qt| return qt;
224 scope = scope.parent.?;
225 },
226 else => scope = scope.parent.?,
227 }
228 }
229 }
230
212 fn getAlias(scope: *Scope, name: []const u8) []const u8 {231 fn getAlias(scope: *Scope, name: []const u8) []const u8 {
213 return switch (scope.id) {232 return switch (scope.id) {
214 .Root => return name,233 .Root => return name,
...@@ -588,6 +607,8 @@ fn visitFnDecl(c: *Context, fn_decl: *const clang.FunctionDecl) Error!void {...@@ -588,6 +607,8 @@ fn visitFnDecl(c: *Context, fn_decl: *const clang.FunctionDecl) Error!void {
588 else => break fn_type,607 else => break fn_type,
589 }608 }
590 } else unreachable;609 } else unreachable;
610 const fn_ty = @ptrCast(*const clang.FunctionType, fn_type);
611 const return_qt = fn_ty.getReturnType();
591612
592 const proto_node = switch (fn_type.getTypeClass()) {613 const proto_node = switch (fn_type.getTypeClass()) {
593 .FunctionProto => blk: {614 .FunctionProto => blk: {
...@@ -625,7 +646,9 @@ fn visitFnDecl(c: *Context, fn_decl: *const clang.FunctionDecl) Error!void {...@@ -625,7 +646,9 @@ fn visitFnDecl(c: *Context, fn_decl: *const clang.FunctionDecl) Error!void {
625 // actual function definition with body646 // actual function definition with body
626 const body_stmt = fn_decl.getBody();647 const body_stmt = fn_decl.getBody();
627 var block_scope = try Scope.Block.init(rp.c, &c.global_scope.base, false);648 var block_scope = try Scope.Block.init(rp.c, &c.global_scope.base, false);
649 block_scope.return_type = return_qt;
628 defer block_scope.deinit();650 defer block_scope.deinit();
651
629 var scope = &block_scope.base;652 var scope = &block_scope.base;
630653
631 var param_id: c_uint = 0;654 var param_id: c_uint = 0;
...@@ -675,10 +698,7 @@ fn visitFnDecl(c: *Context, fn_decl: *const clang.FunctionDecl) Error!void {...@@ -675,10 +698,7 @@ fn visitFnDecl(c: *Context, fn_decl: *const clang.FunctionDecl) Error!void {
675 };698 };
676 // add return statement if the function didn't have one699 // add return statement if the function didn't have one
677 blk: {700 blk: {
678 const fn_ty = @ptrCast(*const clang.FunctionType, fn_type);
679
680 if (fn_ty.getNoReturnAttr()) break :blk;701 if (fn_ty.getNoReturnAttr()) break :blk;
681 const return_qt = fn_ty.getReturnType();
682 if (isCVoid(return_qt)) break :blk;702 if (isCVoid(return_qt)) break :blk;
683703
684 if (block_scope.statements.items.len > 0) {704 if (block_scope.statements.items.len > 0) {
...@@ -788,7 +808,7 @@ fn visitVarDecl(c: *Context, var_decl: *const clang.VarDecl, mangled_name: ?[]co...@@ -788,7 +808,7 @@ fn visitVarDecl(c: *Context, var_decl: *const clang.VarDecl, mangled_name: ?[]co
788 eq_tok = try appendToken(c, .Equal, "=");808 eq_tok = try appendToken(c, .Equal, "=");
789 if (decl_init) |expr| {809 if (decl_init) |expr| {
790 const node_or_error = if (expr.getStmtClass() == .StringLiteralClass)810 const node_or_error = if (expr.getStmtClass() == .StringLiteralClass)
791 transStringLiteralAsArray(rp, &c.global_scope.base, @ptrCast(*const clang.StringLiteral, expr), type_node)811 transStringLiteralAsArray(rp, &c.global_scope.base, @ptrCast(*const clang.StringLiteral, expr), zigArraySize(rp.c, type_node) catch 0)
792 else812 else
793 transExprCoercing(rp, scope, expr, .used, .r_value);813 transExprCoercing(rp, scope, expr, .used, .r_value);
794 init_node = node_or_error catch |err| switch (err) {814 init_node = node_or_error catch |err| switch (err) {
...@@ -1426,30 +1446,25 @@ fn transBinaryOperator(...@@ -1426,30 +1446,25 @@ fn transBinaryOperator(
1426 switch (op) {1446 switch (op) {
1427 .Assign => return try transCreateNodeAssign(rp, scope, result_used, stmt.getLHS(), stmt.getRHS()),1447 .Assign => return try transCreateNodeAssign(rp, scope, result_used, stmt.getLHS(), stmt.getRHS()),
1428 .Comma => {1448 .Comma => {
1429 const block_scope = try scope.findBlockScope(rp.c);1449 var block_scope = try Scope.Block.init(rp.c, scope, true);
1430 const expr = block_scope.base.parent == scope;1450 const lparen = try appendToken(rp.c, .LParen, "(");
1431 const lparen = if (expr) try appendToken(rp.c, .LParen, "(") else undefined;
14321451
1433 const lhs = try transExpr(rp, &block_scope.base, stmt.getLHS(), .unused, .r_value);1452 const lhs = try transExpr(rp, &block_scope.base, stmt.getLHS(), .unused, .r_value);
1434 try block_scope.statements.append(lhs);1453 try block_scope.statements.append(lhs);
14351454
1436 const rhs = try transExpr(rp, &block_scope.base, stmt.getRHS(), .used, .r_value);1455 const rhs = try transExpr(rp, &block_scope.base, stmt.getRHS(), .used, .r_value);
1437 if (expr) {1456 _ = try appendToken(rp.c, .Semicolon, ";");
1438 _ = try appendToken(rp.c, .Semicolon, ";");1457 const break_node = try transCreateNodeBreak(rp.c, block_scope.label, rhs);
1439 const break_node = try transCreateNodeBreak(rp.c, block_scope.label, rhs);1458 try block_scope.statements.append(&break_node.base);
1440 try block_scope.statements.append(&break_node.base);1459 const block_node = try block_scope.complete(rp.c);
1441 const block_node = try block_scope.complete(rp.c);1460 const rparen = try appendToken(rp.c, .RParen, ")");
1442 const rparen = try appendToken(rp.c, .RParen, ")");1461 const grouped_expr = try rp.c.arena.create(ast.Node.GroupedExpression);
1443 const grouped_expr = try rp.c.arena.create(ast.Node.GroupedExpression);1462 grouped_expr.* = .{
1444 grouped_expr.* = .{1463 .lparen = lparen,
1445 .lparen = lparen,1464 .expr = block_node,
1446 .expr = block_node,1465 .rparen = rparen,
1447 .rparen = rparen,1466 };
1448 };1467 return maybeSuppressResult(rp, scope, result_used, &grouped_expr.base);
1449 return maybeSuppressResult(rp, scope, result_used, &grouped_expr.base);
1450 } else {
1451 return maybeSuppressResult(rp, scope, result_used, rhs);
1452 }
1453 },1468 },
1454 .Div => {1469 .Div => {
1455 if (cIsSignedInteger(qt)) {1470 if (cIsSignedInteger(qt)) {
...@@ -1670,7 +1685,7 @@ fn transDeclStmtOne(...@@ -1670,7 +1685,7 @@ fn transDeclStmtOne(
1670 const eq_token = try appendToken(c, .Equal, "=");1685 const eq_token = try appendToken(c, .Equal, "=");
1671 var init_node = if (decl_init) |expr|1686 var init_node = if (decl_init) |expr|
1672 if (expr.getStmtClass() == .StringLiteralClass)1687 if (expr.getStmtClass() == .StringLiteralClass)
1673 try transStringLiteralAsArray(rp, scope, @ptrCast(*const clang.StringLiteral, expr), type_node)1688 try transStringLiteralAsArray(rp, scope, @ptrCast(*const clang.StringLiteral, expr), try zigArraySize(rp.c, type_node))
1674 else1689 else
1675 try transExprCoercing(rp, scope, expr, .used, .r_value)1690 try transExprCoercing(rp, scope, expr, .used, .r_value)
1676 else1691 else
...@@ -2026,16 +2041,32 @@ fn transIntegerLiteral(...@@ -2026,16 +2041,32 @@ fn transIntegerLiteral(
2026 return maybeSuppressResult(rp, scope, result_used, &as_node.base);2041 return maybeSuppressResult(rp, scope, result_used, &as_node.base);
2027}2042}
20282043
2044/// In C if a function has return type `int` and the return value is a boolean
2045/// expression, there is no implicit cast. So the translated Zig will need to
2046/// call @boolToInt
2047fn zigShouldCastBooleanReturnToInt(node: ?*ast.Node, qt: ?clang.QualType) bool {
2048 if (node == null or qt == null) return false;
2049 return isBoolRes(node.?) and cIsNativeInt(qt.?);
2050}
2051
2029fn transReturnStmt(2052fn transReturnStmt(
2030 rp: RestorePoint,2053 rp: RestorePoint,
2031 scope: *Scope,2054 scope: *Scope,
2032 expr: *const clang.ReturnStmt,2055 expr: *const clang.ReturnStmt,
2033) TransError!*ast.Node {2056) TransError!*ast.Node {
2034 const return_kw = try appendToken(rp.c, .Keyword_return, "return");2057 const return_kw = try appendToken(rp.c, .Keyword_return, "return");
2035 const rhs: ?*ast.Node = if (expr.getRetValue()) |val_expr|2058 var rhs: ?*ast.Node = if (expr.getRetValue()) |val_expr|
2036 try transExprCoercing(rp, scope, val_expr, .used, .r_value)2059 try transExprCoercing(rp, scope, val_expr, .used, .r_value)
2037 else2060 else
2038 null;2061 null;
2062 const return_qt = scope.findBlockReturnType(rp.c);
2063 if (zigShouldCastBooleanReturnToInt(rhs, return_qt)) {
2064 const bool_to_int_node = try rp.c.createBuiltinCall("@boolToInt", 1);
2065 bool_to_int_node.params()[0] = rhs.?;
2066 bool_to_int_node.rparen_token = try appendToken(rp.c, .RParen, ")");
2067
2068 rhs = &bool_to_int_node.base;
2069 }
2039 const return_expr = try ast.Node.ControlFlowExpression.create(rp.c.arena, .{2070 const return_expr = try ast.Node.ControlFlowExpression.create(rp.c.arena, .{
2040 .ltoken = return_kw,2071 .ltoken = return_kw,
2041 .tag = .Return,2072 .tag = .Return,
...@@ -2067,16 +2098,41 @@ fn transStringLiteral(...@@ -2067,16 +2098,41 @@ fn transStringLiteral(
2067 };2098 };
2068 return maybeSuppressResult(rp, scope, result_used, &node.base);2099 return maybeSuppressResult(rp, scope, result_used, &node.base);
2069 },2100 },
2070 .UTF16, .UTF32, .Wide => return revertAndWarn(2101 .UTF16, .UTF32, .Wide => {
2071 rp,2102 const node = try transWideStringLiteral(rp, scope, stmt);
2072 error.UnsupportedTranslation,2103 return maybeSuppressResult(rp, scope, result_used, node);
2073 @ptrCast(*const clang.Stmt, stmt).getBeginLoc(),2104 },
2074 "TODO: support string literal kind {s}",
2075 .{kind},
2076 ),
2077 }2105 }
2078}2106}
20792107
2108/// Translates a wide string literal as a global "anonymous" array of the relevant-sized
2109/// integer type + null terminator, and returns an identifier node for it
2110fn transWideStringLiteral(rp: RestorePoint, scope: *Scope, stmt: *const clang.StringLiteral) TransError!*ast.Node {
2111 const str_type = @tagName(stmt.getKind());
2112 const mangle = rp.c.getMangle();
2113 const name = try std.fmt.allocPrint(rp.c.arena, "zig.{s}_string_{d}", .{ str_type, mangle });
2114
2115 const const_tok = try appendToken(rp.c, .Keyword_const, "const");
2116 const name_tok = try appendIdentifier(rp.c, name);
2117 const eq_tok = try appendToken(rp.c, .Equal, "=");
2118 var semi_tok: ast.TokenIndex = undefined;
2119
2120 const lit_array = try transStringLiteralAsArray(rp, scope, stmt, stmt.getLength() + 1);
2121
2122 semi_tok = try appendToken(rp.c, .Semicolon, ";");
2123 const var_decl_node = try ast.Node.VarDecl.create(rp.c.arena, .{
2124 .name_token = name_tok,
2125 .mut_token = const_tok,
2126 .semicolon_token = semi_tok,
2127 }, .{
2128 .visib_token = null,
2129 .eq_token = eq_tok,
2130 .init_node = lit_array,
2131 });
2132 try addTopLevelDecl(rp.c, name, &var_decl_node.base);
2133 return transCreateNodeIdentifier(rp.c, name);
2134}
2135
2080/// Parse the size of an array back out from an ast Node.2136/// Parse the size of an array back out from an ast Node.
2081fn zigArraySize(c: *Context, node: *ast.Node) TransError!usize {2137fn zigArraySize(c: *Context, node: *ast.Node) TransError!usize {
2082 if (node.castTag(.ArrayType)) |array| {2138 if (node.castTag(.ArrayType)) |array| {
...@@ -2089,17 +2145,18 @@ fn zigArraySize(c: *Context, node: *ast.Node) TransError!usize {...@@ -2089,17 +2145,18 @@ fn zigArraySize(c: *Context, node: *ast.Node) TransError!usize {
2089}2145}
20902146
2091/// Translate a string literal to an array of integers. Used when an2147/// Translate a string literal to an array of integers. Used when an
2092/// array is initialized from a string literal. `target_node` is the2148/// array is initialized from a string literal. `array_size` is the
2093/// array being initialized. If the string literal is larger than the2149/// size of the array being initialized. If the string literal is larger
2094/// array, truncate the string. If the array is larger than the string2150/// than the array, truncate the string. If the array is larger than the
2095/// literal, pad the array with 0's2151/// string literal, pad the array with 0's
2096fn transStringLiteralAsArray(2152fn transStringLiteralAsArray(
2097 rp: RestorePoint,2153 rp: RestorePoint,
2098 scope: *Scope,2154 scope: *Scope,
2099 stmt: *const clang.StringLiteral,2155 stmt: *const clang.StringLiteral,
2100 target_node: *ast.Node,2156 array_size: usize,
2101) TransError!*ast.Node {2157) TransError!*ast.Node {
2102 const array_size = try zigArraySize(rp.c, target_node);2158 if (array_size == 0) return error.UnsupportedType;
2159
2103 const str_length = stmt.getLength();2160 const str_length = stmt.getLength();
21042161
2105 const expr_base = @ptrCast(*const clang.Expr, stmt);2162 const expr_base = @ptrCast(*const clang.Expr, stmt);
...@@ -3190,6 +3247,38 @@ fn transArrayAccess(rp: RestorePoint, scope: *Scope, stmt: *const clang.ArraySub...@@ -3190,6 +3247,38 @@ fn transArrayAccess(rp: RestorePoint, scope: *Scope, stmt: *const clang.ArraySub
3190 return maybeSuppressResult(rp, scope, result_used, &node.base);3247 return maybeSuppressResult(rp, scope, result_used, &node.base);
3191}3248}
31923249
3250/// Check if an expression is ultimately a reference to a function declaration
3251/// (which means it should not be unwrapped with `.?` in translated code)
3252fn cIsFunctionDeclRef(expr: *const clang.Expr) bool {
3253 switch (expr.getStmtClass()) {
3254 .ParenExprClass => {
3255 const op_expr = @ptrCast(*const clang.ParenExpr, expr).getSubExpr();
3256 return cIsFunctionDeclRef(op_expr);
3257 },
3258 .DeclRefExprClass => {
3259 const decl_ref = @ptrCast(*const clang.DeclRefExpr, expr);
3260 const value_decl = decl_ref.getDecl();
3261 const qt = value_decl.getType();
3262 return qualTypeChildIsFnProto(qt);
3263 },
3264 .ImplicitCastExprClass => {
3265 const implicit_cast = @ptrCast(*const clang.ImplicitCastExpr, expr);
3266 const cast_kind = implicit_cast.getCastKind();
3267 if (cast_kind == .BuiltinFnToFnPtr) return true;
3268 if (cast_kind == .FunctionToPointerDecay) {
3269 return cIsFunctionDeclRef(implicit_cast.getSubExpr());
3270 }
3271 return false;
3272 },
3273 .UnaryOperatorClass => {
3274 const un_op = @ptrCast(*const clang.UnaryOperator, expr);
3275 const opcode = un_op.getOpcode();
3276 return (opcode == .AddrOf or opcode == .Deref) and cIsFunctionDeclRef(un_op.getSubExpr());
3277 },
3278 else => return false,
3279 }
3280}
3281
3193fn transCallExpr(rp: RestorePoint, scope: *Scope, stmt: *const clang.CallExpr, result_used: ResultUsed) TransError!*ast.Node {3282fn transCallExpr(rp: RestorePoint, scope: *Scope, stmt: *const clang.CallExpr, result_used: ResultUsed) TransError!*ast.Node {
3194 const callee = stmt.getCallee();3283 const callee = stmt.getCallee();
3195 var raw_fn_expr = try transExpr(rp, scope, callee, .used, .r_value);3284 var raw_fn_expr = try transExpr(rp, scope, callee, .used, .r_value);
...@@ -3197,24 +3286,9 @@ fn transCallExpr(rp: RestorePoint, scope: *Scope, stmt: *const clang.CallExpr, r...@@ -3197,24 +3286,9 @@ fn transCallExpr(rp: RestorePoint, scope: *Scope, stmt: *const clang.CallExpr, r
3197 var is_ptr = false;3286 var is_ptr = false;
3198 const fn_ty = qualTypeGetFnProto(callee.getType(), &is_ptr);3287 const fn_ty = qualTypeGetFnProto(callee.getType(), &is_ptr);
31993288
3200 const fn_expr = if (is_ptr and fn_ty != null) blk: {3289 const fn_expr = if (is_ptr and fn_ty != null and !cIsFunctionDeclRef(callee))
3201 if (callee.getStmtClass() == .ImplicitCastExprClass) {3290 try transCreateNodeUnwrapNull(rp.c, raw_fn_expr)
3202 const implicit_cast = @ptrCast(*const clang.ImplicitCastExpr, callee);3291 else
3203 const cast_kind = implicit_cast.getCastKind();
3204 if (cast_kind == .BuiltinFnToFnPtr) break :blk raw_fn_expr;
3205 if (cast_kind == .FunctionToPointerDecay) {
3206 const subexpr = implicit_cast.getSubExpr();
3207 if (subexpr.getStmtClass() == .DeclRefExprClass) {
3208 const decl_ref = @ptrCast(*const clang.DeclRefExpr, subexpr);
3209 const named_decl = decl_ref.getFoundDecl();
3210 if (@ptrCast(*const clang.Decl, named_decl).getKind() == .Function) {
3211 break :blk raw_fn_expr;
3212 }
3213 }
3214 }
3215 }
3216 break :blk try transCreateNodeUnwrapNull(rp.c, raw_fn_expr);
3217 } else
3218 raw_fn_expr;3292 raw_fn_expr;
32193293
3220 const num_args = stmt.getNumArgs();3294 const num_args = stmt.getNumArgs();
...@@ -3270,7 +3344,7 @@ const ClangFunctionType = union(enum) {...@@ -3270,7 +3344,7 @@ const ClangFunctionType = union(enum) {
3270 NoProto: *const clang.FunctionType,3344 NoProto: *const clang.FunctionType,
32713345
3272 fn getReturnType(self: @This()) clang.QualType {3346 fn getReturnType(self: @This()) clang.QualType {
3273 switch (@as(@TagType(@This()), self)) {3347 switch (@as(std.meta.Tag(@This()), self)) {
3274 .Proto => return self.Proto.getReturnType(),3348 .Proto => return self.Proto.getReturnType(),
3275 .NoProto => return self.NoProto.getReturnType(),3349 .NoProto => return self.NoProto.getReturnType(),
3276 }3350 }
...@@ -3361,6 +3435,9 @@ fn transUnaryOperator(rp: RestorePoint, scope: *Scope, stmt: *const clang.UnaryO...@@ -3361,6 +3435,9 @@ fn transUnaryOperator(rp: RestorePoint, scope: *Scope, stmt: *const clang.UnaryO
3361 else3435 else
3362 return transCreatePreCrement(rp, scope, stmt, .AssignSub, .MinusEqual, "-=", used),3436 return transCreatePreCrement(rp, scope, stmt, .AssignSub, .MinusEqual, "-=", used),
3363 .AddrOf => {3437 .AddrOf => {
3438 if (cIsFunctionDeclRef(op_expr)) {
3439 return transExpr(rp, scope, op_expr, used, .r_value);
3440 }
3364 const op_node = try transCreateNodeSimplePrefixOp(rp.c, .AddressOf, .Ampersand, "&");3441 const op_node = try transCreateNodeSimplePrefixOp(rp.c, .AddressOf, .Ampersand, "&");
3365 op_node.rhs = try transExpr(rp, scope, op_expr, used, .r_value);3442 op_node.rhs = try transExpr(rp, scope, op_expr, used, .r_value);
3366 return &op_node.base;3443 return &op_node.base;
...@@ -4647,7 +4724,6 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a...@@ -4647,7 +4724,6 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a
4647 const scope = &c.global_scope.base;4724 const scope = &c.global_scope.base;
46484725
4649 const pub_tok = try appendToken(c, .Keyword_pub, "pub");4726 const pub_tok = try appendToken(c, .Keyword_pub, "pub");
4650 const inline_tok = try appendToken(c, .Keyword_inline, "inline");
4651 const fn_tok = try appendToken(c, .Keyword_fn, "fn");4727 const fn_tok = try appendToken(c, .Keyword_fn, "fn");
4652 const name_tok = try appendIdentifier(c, name);4728 const name_tok = try appendIdentifier(c, name);
4653 _ = try appendToken(c, .LParen, "(");4729 _ = try appendToken(c, .LParen, "(");
...@@ -4675,6 +4751,11 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a...@@ -4675,6 +4751,11 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a
46754751
4676 _ = try appendToken(c, .RParen, ")");4752 _ = try appendToken(c, .RParen, ")");
46774753
4754 _ = try appendToken(c, .Keyword_callconv, "callconv");
4755 _ = try appendToken(c, .LParen, "(");
4756 const callconv_expr = try transCreateNodeEnumLiteral(c, "Inline");
4757 _ = try appendToken(c, .RParen, ")");
4758
4678 const block_lbrace = try appendToken(c, .LBrace, "{");4759 const block_lbrace = try appendToken(c, .LBrace, "{");
46794760
4680 const return_kw = try appendToken(c, .Keyword_return, "return");4761 const return_kw = try appendToken(c, .Keyword_return, "return");
...@@ -4714,8 +4795,8 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a...@@ -4714,8 +4795,8 @@ fn transCreateNodeMacroFn(c: *Context, name: []const u8, ref: *ast.Node, proto_a
4714 }, .{4795 }, .{
4715 .visib_token = pub_tok,4796 .visib_token = pub_tok,
4716 .name_token = name_tok,4797 .name_token = name_tok,
4717 .extern_export_inline_token = inline_tok,
4718 .body_node = &block.base,4798 .body_node = &block.base,
4799 .callconv_expr = callconv_expr,
4719 });4800 });
4720 mem.copy(ast.Node.FnProto.ParamDecl, fn_proto.params(), fn_params.items);4801 mem.copy(ast.Node.FnProto.ParamDecl, fn_proto.params(), fn_params.items);
4721 return &fn_proto.base;4802 return &fn_proto.base;
...@@ -5665,7 +5746,6 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void {...@@ -5665,7 +5746,6 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void {
5665 const scope = &block_scope.base;5746 const scope = &block_scope.base;
56665747
5667 const pub_tok = try appendToken(c, .Keyword_pub, "pub");5748 const pub_tok = try appendToken(c, .Keyword_pub, "pub");
5668 const inline_tok = try appendToken(c, .Keyword_inline, "inline");
5669 const fn_tok = try appendToken(c, .Keyword_fn, "fn");5749 const fn_tok = try appendToken(c, .Keyword_fn, "fn");
5670 const name_tok = try appendIdentifier(c, m.name);5750 const name_tok = try appendIdentifier(c, m.name);
5671 _ = try appendToken(c, .LParen, "(");5751 _ = try appendToken(c, .LParen, "(");
...@@ -5710,6 +5790,11 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void {...@@ -5710,6 +5790,11 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void {
57105790
5711 _ = try appendToken(c, .RParen, ")");5791 _ = try appendToken(c, .RParen, ")");
57125792
5793 _ = try appendToken(c, .Keyword_callconv, "callconv");
5794 _ = try appendToken(c, .LParen, "(");
5795 const callconv_expr = try transCreateNodeEnumLiteral(c, "Inline");
5796 _ = try appendToken(c, .RParen, ")");
5797
5713 const type_of = try c.createBuiltinCall("@TypeOf", 1);5798 const type_of = try c.createBuiltinCall("@TypeOf", 1);
57145799
5715 const return_kw = try appendToken(c, .Keyword_return, "return");5800 const return_kw = try appendToken(c, .Keyword_return, "return");
...@@ -5741,9 +5826,9 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void {...@@ -5741,9 +5826,9 @@ fn transMacroFnDefine(c: *Context, m: *MacroCtx) ParseError!void {
5741 .return_type = .{ .Explicit = &type_of.base },5826 .return_type = .{ .Explicit = &type_of.base },
5742 }, .{5827 }, .{
5743 .visib_token = pub_tok,5828 .visib_token = pub_tok,
5744 .extern_export_inline_token = inline_tok,
5745 .name_token = name_tok,5829 .name_token = name_tok,
5746 .body_node = block_node,5830 .body_node = block_node,
5831 .callconv_expr = callconv_expr,
5747 });5832 });
5748 mem.copy(ast.Node.FnProto.ParamDecl, fn_proto.params(), fn_params.items);5833 mem.copy(ast.Node.FnProto.ParamDecl, fn_proto.params(), fn_params.items);
57495834
src/type.zig+7-2
...@@ -110,7 +110,7 @@ pub const Type = extern union {...@@ -110,7 +110,7 @@ pub const Type = extern union {
110110
111 pub fn tag(self: Type) Tag {111 pub fn tag(self: Type) Tag {
112 if (self.tag_if_small_enough < Tag.no_payload_count) {112 if (self.tag_if_small_enough < Tag.no_payload_count) {
113 return @intToEnum(Tag, @intCast(@TagType(Tag), self.tag_if_small_enough));113 return @intToEnum(Tag, @intCast(std.meta.Tag(Tag), self.tag_if_small_enough));
114 } else {114 } else {
115 return self.ptr_otherwise.tag;115 return self.ptr_otherwise.tag;
116 }116 }
...@@ -552,7 +552,9 @@ pub const Type = extern union {...@@ -552,7 +552,9 @@ pub const Type = extern union {
552 if (i != 0) try out_stream.writeAll(", ");552 if (i != 0) try out_stream.writeAll(", ");
553 try param_type.format("", .{}, out_stream);553 try param_type.format("", .{}, out_stream);
554 }554 }
555 try out_stream.writeAll(") ");555 try out_stream.writeAll(") callconv(.");
556 try out_stream.writeAll(@tagName(payload.cc));
557 try out_stream.writeAll(")");
556 ty = payload.return_type;558 ty = payload.return_type;
557 continue;559 continue;
558 },560 },
...@@ -3597,6 +3599,9 @@ pub const CType = enum {...@@ -3597,6 +3599,9 @@ pub const CType = enum {
3597 .amdpal,3599 .amdpal,
3598 .hermit,3600 .hermit,
3599 .hurd,3601 .hurd,
3602 .opencl,
3603 .glsl450,
3604 .vulkan,
3600 => @panic("TODO specify the C integer and float type sizes for this OS"),3605 => @panic("TODO specify the C integer and float type sizes for this OS"),
3601 }3606 }
3602 }3607 }
src/value.zig+1-1
...@@ -223,7 +223,7 @@ pub const Value = extern union {...@@ -223,7 +223,7 @@ pub const Value = extern union {
223223
224 pub fn tag(self: Value) Tag {224 pub fn tag(self: Value) Tag {
225 if (self.tag_if_small_enough < Tag.no_payload_count) {225 if (self.tag_if_small_enough < Tag.no_payload_count) {
226 return @intToEnum(Tag, @intCast(@TagType(Tag), self.tag_if_small_enough));226 return @intToEnum(Tag, @intCast(std.meta.Tag(Tag), self.tag_if_small_enough));
227 } else {227 } else {
228 return self.ptr_otherwise.tag;228 return self.ptr_otherwise.tag;
229 }229 }
src/zig_clang.cpp+5
...@@ -2773,6 +2773,11 @@ struct ZigClangSourceLocation ZigClangUnaryOperator_getBeginLoc(const struct Zig...@@ -2773,6 +2773,11 @@ struct ZigClangSourceLocation ZigClangUnaryOperator_getBeginLoc(const struct Zig
2773 return bitcast(casted->getBeginLoc());2773 return bitcast(casted->getBeginLoc());
2774}2774}
27752775
2776struct ZigClangQualType ZigClangValueDecl_getType(const struct ZigClangValueDecl *self) {
2777 auto casted = reinterpret_cast<const clang::ValueDecl *>(self);
2778 return bitcast(casted->getType());
2779}
2780
2776const struct ZigClangExpr *ZigClangWhileStmt_getCond(const struct ZigClangWhileStmt *self) {2781const struct ZigClangExpr *ZigClangWhileStmt_getCond(const struct ZigClangWhileStmt *self) {
2777 auto casted = reinterpret_cast<const clang::WhileStmt *>(self);2782 auto casted = reinterpret_cast<const clang::WhileStmt *>(self);
2778 return reinterpret_cast<const struct ZigClangExpr *>(casted->getCond());2783 return reinterpret_cast<const struct ZigClangExpr *>(casted->getCond());
src/zig_clang.h+2
...@@ -1200,6 +1200,8 @@ ZIG_EXTERN_C struct ZigClangQualType ZigClangUnaryOperator_getType(const struct...@@ -1200,6 +1200,8 @@ ZIG_EXTERN_C struct ZigClangQualType ZigClangUnaryOperator_getType(const struct
1200ZIG_EXTERN_C const struct ZigClangExpr *ZigClangUnaryOperator_getSubExpr(const struct ZigClangUnaryOperator *);1200ZIG_EXTERN_C const struct ZigClangExpr *ZigClangUnaryOperator_getSubExpr(const struct ZigClangUnaryOperator *);
1201ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangUnaryOperator_getBeginLoc(const struct ZigClangUnaryOperator *);1201ZIG_EXTERN_C struct ZigClangSourceLocation ZigClangUnaryOperator_getBeginLoc(const struct ZigClangUnaryOperator *);
12021202
1203ZIG_EXTERN_C struct ZigClangQualType ZigClangValueDecl_getType(const struct ZigClangValueDecl *);
1204
1203ZIG_EXTERN_C const struct ZigClangExpr *ZigClangWhileStmt_getCond(const struct ZigClangWhileStmt *);1205ZIG_EXTERN_C const struct ZigClangExpr *ZigClangWhileStmt_getCond(const struct ZigClangWhileStmt *);
1204ZIG_EXTERN_C const struct ZigClangStmt *ZigClangWhileStmt_getBody(const struct ZigClangWhileStmt *);1206ZIG_EXTERN_C const struct ZigClangStmt *ZigClangWhileStmt_getBody(const struct ZigClangWhileStmt *);
12051207
src/zir.zig+144-142
...@@ -59,7 +59,7 @@ pub const Inst = struct {...@@ -59,7 +59,7 @@ pub const Inst = struct {
59 /// Inline assembly.59 /// Inline assembly.
60 @"asm",60 @"asm",
61 /// Bitwise AND. `&`61 /// Bitwise AND. `&`
62 bitand,62 bit_and,
63 /// TODO delete this instruction, it has no purpose.63 /// TODO delete this instruction, it has no purpose.
64 bitcast,64 bitcast,
65 /// An arbitrary typed pointer is pointer-casted to a new Pointer.65 /// An arbitrary typed pointer is pointer-casted to a new Pointer.
...@@ -71,9 +71,9 @@ pub const Inst = struct {...@@ -71,9 +71,9 @@ pub const Inst = struct {
71 /// The new result location pointer has an inferred type.71 /// The new result location pointer has an inferred type.
72 bitcast_result_ptr,72 bitcast_result_ptr,
73 /// Bitwise NOT. `~`73 /// Bitwise NOT. `~`
74 bitnot,74 bit_not,
75 /// Bitwise OR. `|`75 /// Bitwise OR. `|`
76 bitor,76 bit_or,
77 /// A labeled block of code, which can return a value.77 /// A labeled block of code, which can return a value.
78 block,78 block,
79 /// A block of code, which can return a value. There are no instructions that break out of79 /// A block of code, which can return a value. There are no instructions that break out of
...@@ -83,17 +83,17 @@ pub const Inst = struct {...@@ -83,17 +83,17 @@ pub const Inst = struct {
83 block_comptime,83 block_comptime,
84 /// Same as `block_flat` but additionally makes the inner instructions execute at comptime.84 /// Same as `block_flat` but additionally makes the inner instructions execute at comptime.
85 block_comptime_flat,85 block_comptime_flat,
86 /// Boolean AND. See also `bitand`.86 /// Boolean AND. See also `bit_and`.
87 booland,87 bool_and,
88 /// Boolean NOT. See also `bitnot`.88 /// Boolean NOT. See also `bit_not`.
89 boolnot,89 bool_not,
90 /// Boolean OR. See also `bitor`.90 /// Boolean OR. See also `bit_or`.
91 boolor,91 bool_or,
92 /// Return a value from a `Block`.92 /// Return a value from a `Block`.
93 @"break",93 @"break",
94 breakpoint,94 breakpoint,
95 /// Same as `break` but without an operand; the operand is assumed to be the void value.95 /// Same as `break` but without an operand; the operand is assumed to be the void value.
96 breakvoid,96 break_void,
97 /// Function call.97 /// Function call.
98 call,98 call,
99 /// `<`99 /// `<`
...@@ -112,16 +112,10 @@ pub const Inst = struct {...@@ -112,16 +112,10 @@ pub const Inst = struct {
112 /// as type coercion from the new element type to the old element type.112 /// as type coercion from the new element type to the old element type.
113 /// LHS is destination element type, RHS is result pointer.113 /// LHS is destination element type, RHS is result pointer.
114 coerce_result_ptr,114 coerce_result_ptr,
115 /// This instruction does a `coerce_result_ptr` operation on a `Block`'s
116 /// result location pointer, whose type is inferred by peer type resolution on the
117 /// `Block`'s corresponding `break` instructions.
118 coerce_result_block_ptr,
119 /// Equivalent to `as(ptr_child_type(typeof(ptr)), value)`.
120 coerce_to_ptr_elem,
121 /// Emit an error message and fail compilation.115 /// Emit an error message and fail compilation.
122 compileerror,116 compile_error,
123 /// Log compile time variables and emit an error message.117 /// Log compile time variables and emit an error message.
124 compilelog,118 compile_log,
125 /// Conditional branch. Splits control flow based on a boolean condition value.119 /// Conditional branch. Splits control flow based on a boolean condition value.
126 condbr,120 condbr,
127 /// Special case, has no textual representation.121 /// Special case, has no textual representation.
...@@ -135,11 +129,11 @@ pub const Inst = struct {...@@ -135,11 +129,11 @@ pub const Inst = struct {
135 /// Declares the beginning of a statement. Used for debug info.129 /// Declares the beginning of a statement. Used for debug info.
136 dbg_stmt,130 dbg_stmt,
137 /// Represents a pointer to a global decl.131 /// Represents a pointer to a global decl.
138 declref,132 decl_ref,
139 /// Represents a pointer to a global decl by string name.133 /// Represents a pointer to a global decl by string name.
140 declref_str,134 decl_ref_str,
141 /// Equivalent to a declref followed by deref.135 /// Equivalent to a decl_ref followed by deref.
142 declval,136 decl_val,
143 /// Load the value from a pointer.137 /// Load the value from a pointer.
144 deref,138 deref,
145 /// Arithmetic division. Asserts no integer overflow.139 /// Arithmetic division. Asserts no integer overflow.
...@@ -185,7 +179,7 @@ pub const Inst = struct {...@@ -185,7 +179,7 @@ pub const Inst = struct {
185 /// can hold the same mathematical value.179 /// can hold the same mathematical value.
186 intcast,180 intcast,
187 /// Make an integer type out of signedness and bit count.181 /// Make an integer type out of signedness and bit count.
188 inttype,182 int_type,
189 /// Return a boolean false if an optional is null. `x != null`183 /// Return a boolean false if an optional is null. `x != null`
190 is_non_null,184 is_non_null,
191 /// Return a boolean true if an optional is null. `x == null`185 /// Return a boolean true if an optional is null. `x == null`
...@@ -232,7 +226,7 @@ pub const Inst = struct {...@@ -232,7 +226,7 @@ pub const Inst = struct {
232 /// Sends control flow back to the function's callee. Takes an operand as the return value.226 /// Sends control flow back to the function's callee. Takes an operand as the return value.
233 @"return",227 @"return",
234 /// Same as `return` but there is no operand; the operand is implicitly the void value.228 /// Same as `return` but there is no operand; the operand is implicitly the void value.
235 returnvoid,229 return_void,
236 /// Changes the maximum number of backwards branches that compile-time230 /// Changes the maximum number of backwards branches that compile-time
237 /// code execution can use before giving up and making a compile error.231 /// code execution can use before giving up and making a compile error.
238 set_eval_branch_quota,232 set_eval_branch_quota,
...@@ -270,6 +264,9 @@ pub const Inst = struct {...@@ -270,6 +264,9 @@ pub const Inst = struct {
270 /// Write a value to a pointer. For loading, see `deref`.264 /// Write a value to a pointer. For loading, see `deref`.
271 store,265 store,
272 /// Same as `store` but the type of the value being stored will be used to infer266 /// Same as `store` but the type of the value being stored will be used to infer
267 /// the block type. The LHS is the pointer to store to.
268 store_to_block_ptr,
269 /// Same as `store` but the type of the value being stored will be used to infer
273 /// the pointer type.270 /// the pointer type.
274 store_to_inferred_ptr,271 store_to_inferred_ptr,
275 /// String Literal. Makes an anonymous Decl and then takes a pointer to it.272 /// String Literal. Makes an anonymous Decl and then takes a pointer to it.
...@@ -286,11 +283,11 @@ pub const Inst = struct {...@@ -286,11 +283,11 @@ pub const Inst = struct {
286 typeof_peer,283 typeof_peer,
287 /// Asserts control-flow will not reach this instruction. Not safety checked - the compiler284 /// Asserts control-flow will not reach this instruction. Not safety checked - the compiler
288 /// will assume the correctness of this instruction.285 /// will assume the correctness of this instruction.
289 unreach_nocheck,286 unreachable_unsafe,
290 /// Asserts control-flow will not reach this instruction. In safety-checked modes,287 /// Asserts control-flow will not reach this instruction. In safety-checked modes,
291 /// this will generate a call to the panic function unless it can be proven unreachable288 /// this will generate a call to the panic function unless it can be proven unreachable
292 /// by the compiler.289 /// by the compiler.
293 @"unreachable",290 unreachable_safe,
294 /// Bitwise XOR. `^`291 /// Bitwise XOR. `^`
295 xor,292 xor,
296 /// Create an optional type '?T'293 /// Create an optional type '?T'
...@@ -339,6 +336,8 @@ pub const Inst = struct {...@@ -339,6 +336,8 @@ pub const Inst = struct {
339 enum_literal,336 enum_literal,
340 /// Create an enum type.337 /// Create an enum type.
341 enum_type,338 enum_type,
339 /// Does nothing; returns a void value.
340 void_value,
342 /// A switch expression.341 /// A switch expression.
343 switchbr,342 switchbr,
344 /// A range in a switch case, `lhs...rhs`.343 /// A range in a switch case, `lhs...rhs`.
...@@ -352,18 +351,19 @@ pub const Inst = struct {...@@ -352,18 +351,19 @@ pub const Inst = struct {
352 .alloc_inferred_mut,351 .alloc_inferred_mut,
353 .breakpoint,352 .breakpoint,
354 .dbg_stmt,353 .dbg_stmt,
355 .returnvoid,354 .return_void,
356 .ret_ptr,355 .ret_ptr,
357 .ret_type,356 .ret_type,
358 .unreach_nocheck,357 .unreach_nocheck,
359 .@"unreachable",358 .@"unreachable",
360 .arg,359 .arg,
360 .void_value,
361 => NoOp,361 => NoOp,
362362
363 .alloc,363 .alloc,
364 .alloc_mut,364 .alloc_mut,
365 .boolnot,365 .bool_not,
366 .compileerror,366 .compile_error,
367 .deref,367 .deref,
368 .@"return",368 .@"return",
369 .is_null,369 .is_null,
...@@ -401,7 +401,7 @@ pub const Inst = struct {...@@ -401,7 +401,7 @@ pub const Inst = struct {
401 .err_union_code_ptr,401 .err_union_code_ptr,
402 .ensure_err_payload_void,402 .ensure_err_payload_void,
403 .anyframe_type,403 .anyframe_type,
404 .bitnot,404 .bit_not,
405 .import,405 .import,
406 .set_eval_branch_quota,406 .set_eval_branch_quota,
407 .indexable_ptr_len,407 .indexable_ptr_len,
...@@ -412,10 +412,10 @@ pub const Inst = struct {...@@ -412,10 +412,10 @@ pub const Inst = struct {
412 .array_cat,412 .array_cat,
413 .array_mul,413 .array_mul,
414 .array_type,414 .array_type,
415 .bitand,415 .bit_and,
416 .bitor,416 .bit_or,
417 .booland,417 .bool_and,
418 .boolor,418 .bool_or,
419 .div,419 .div,
420 .mod_rem,420 .mod_rem,
421 .mul,421 .mul,
...@@ -423,6 +423,7 @@ pub const Inst = struct {...@@ -423,6 +423,7 @@ pub const Inst = struct {
423 .shl,423 .shl,
424 .shr,424 .shr,
425 .store,425 .store,
426 .store_to_block_ptr,
426 .store_to_inferred_ptr,427 .store_to_inferred_ptr,
427 .sub,428 .sub,
428 .subwrap,429 .subwrap,
...@@ -452,19 +453,17 @@ pub const Inst = struct {...@@ -452,19 +453,17 @@ pub const Inst = struct {
452453
453 .array_type_sentinel => ArrayTypeSentinel,454 .array_type_sentinel => ArrayTypeSentinel,
454 .@"break" => Break,455 .@"break" => Break,
455 .breakvoid => BreakVoid,456 .break_void => BreakVoid,
456 .call => Call,457 .call => Call,
457 .coerce_to_ptr_elem => CoerceToPtrElem,458 .decl_ref => DeclRef,
458 .declref => DeclRef,459 .decl_ref_str => DeclRefStr,
459 .declref_str => DeclRefStr,460 .decl_val => DeclVal,
460 .declval => DeclVal,461 .compile_log => CompileLog,
461 .coerce_result_block_ptr => CoerceResultBlockPtr,
462 .compilelog => CompileLog,
463 .loop => Loop,462 .loop => Loop,
464 .@"const" => Const,463 .@"const" => Const,
465 .str => Str,464 .str => Str,
466 .int => Int,465 .int => Int,
467 .inttype => IntType,466 .int_type => IntType,
468 .field_ptr, .field_val => Field,467 .field_ptr, .field_val => Field,
469 .field_ptr_named, .field_val_named => FieldNamed,468 .field_ptr_named, .field_val_named => FieldNamed,
470 .@"asm" => Asm,469 .@"asm" => Asm,
...@@ -479,7 +478,6 @@ pub const Inst = struct {...@@ -479,7 +478,6 @@ pub const Inst = struct {
479 .enum_literal => EnumLiteral,478 .enum_literal => EnumLiteral,
480 .error_set => ErrorSet,479 .error_set => ErrorSet,
481 .slice => Slice,480 .slice => Slice,
482 .switchbr => SwitchBr,
483 .typeof_peer => TypeOfPeer,481 .typeof_peer => TypeOfPeer,
484 .container_field_named => ContainerFieldNamed,482 .container_field_named => ContainerFieldNamed,
485 .container_field_typed => ContainerFieldTyped,483 .container_field_typed => ContainerFieldTyped,
...@@ -487,6 +485,7 @@ pub const Inst = struct {...@@ -487,6 +485,7 @@ pub const Inst = struct {
487 .enum_type => EnumType,485 .enum_type => EnumType,
488 .union_type => UnionType,486 .union_type => UnionType,
489 .struct_type => StructType,487 .struct_type => StructType,
488 .switchbr => SwitchBr,
490 };489 };
491 }490 }
492491
...@@ -508,18 +507,18 @@ pub const Inst = struct {...@@ -508,18 +507,18 @@ pub const Inst = struct {
508 .arg,507 .arg,
509 .as,508 .as,
510 .@"asm",509 .@"asm",
511 .bitand,510 .bit_and,
512 .bitcast,511 .bitcast,
513 .bitcast_ref,512 .bitcast_ref,
514 .bitcast_result_ptr,513 .bitcast_result_ptr,
515 .bitor,514 .bit_or,
516 .block,515 .block,
517 .block_flat,516 .block_flat,
518 .block_comptime,517 .block_comptime,
519 .block_comptime_flat,518 .block_comptime_flat,
520 .boolnot,519 .bool_not,
521 .booland,520 .bool_and,
522 .boolor,521 .bool_or,
523 .breakpoint,522 .breakpoint,
524 .call,523 .call,
525 .cmp_lt,524 .cmp_lt,
...@@ -529,13 +528,11 @@ pub const Inst = struct {...@@ -529,13 +528,11 @@ pub const Inst = struct {
529 .cmp_gt,528 .cmp_gt,
530 .cmp_neq,529 .cmp_neq,
531 .coerce_result_ptr,530 .coerce_result_ptr,
532 .coerce_result_block_ptr,
533 .coerce_to_ptr_elem,
534 .@"const",531 .@"const",
535 .dbg_stmt,532 .dbg_stmt,
536 .declref,533 .decl_ref,
537 .declref_str,534 .decl_ref_str,
538 .declval,535 .decl_val,
539 .deref,536 .deref,
540 .div,537 .div,
541 .elem_ptr,538 .elem_ptr,
...@@ -552,7 +549,7 @@ pub const Inst = struct {...@@ -552,7 +549,7 @@ pub const Inst = struct {
552 .fntype,549 .fntype,
553 .int,550 .int,
554 .intcast,551 .intcast,
555 .inttype,552 .int_type,
556 .is_non_null,553 .is_non_null,
557 .is_null,554 .is_null,
558 .is_non_null_ptr,555 .is_non_null_ptr,
...@@ -579,6 +576,7 @@ pub const Inst = struct {...@@ -579,6 +576,7 @@ pub const Inst = struct {
579 .mut_slice_type,576 .mut_slice_type,
580 .const_slice_type,577 .const_slice_type,
581 .store,578 .store,
579 .store_to_block_ptr,
582 .store_to_inferred_ptr,580 .store_to_inferred_ptr,
583 .str,581 .str,
584 .sub,582 .sub,
...@@ -602,31 +600,32 @@ pub const Inst = struct {...@@ -602,31 +600,32 @@ pub const Inst = struct {
602 .merge_error_sets,600 .merge_error_sets,
603 .anyframe_type,601 .anyframe_type,
604 .error_union_type,602 .error_union_type,
605 .bitnot,603 .bit_not,
606 .error_set,604 .error_set,
607 .slice,605 .slice,
608 .slice_start,606 .slice_start,
609 .import,607 .import,
610 .switch_range,
611 .typeof_peer,608 .typeof_peer,
612 .resolve_inferred_alloc,609 .resolve_inferred_alloc,
613 .set_eval_branch_quota,610 .set_eval_branch_quota,
614 .compilelog,611 .compile_log,
615 .enum_type,612 .enum_type,
616 .union_type,613 .union_type,
617 .struct_type,614 .struct_type,
615 .void_value,
616 .switch_range,
617 .switchbr,
618 => false,618 => false,
619619
620 .@"break",620 .@"break",
621 .breakvoid,621 .break_void,
622 .condbr,622 .condbr,
623 .compileerror,623 .compile_error,
624 .@"return",624 .@"return",
625 .returnvoid,625 .return_void,
626 .unreach_nocheck,626 .unreachable_unsafe,
627 .@"unreachable",627 .unreachable_safe,
628 .loop,628 .loop,
629 .switchbr,
630 .container_field_named,629 .container_field_named,
631 .container_field_typed,630 .container_field_typed,
632 .container_field,631 .container_field,
...@@ -707,7 +706,7 @@ pub const Inst = struct {...@@ -707,7 +706,7 @@ pub const Inst = struct {
707 };706 };
708707
709 pub const BreakVoid = struct {708 pub const BreakVoid = struct {
710 pub const base_tag = Tag.breakvoid;709 pub const base_tag = Tag.break_void;
711 base: Inst,710 base: Inst,
712711
713 positionals: struct {712 positionals: struct {
...@@ -729,19 +728,8 @@ pub const Inst = struct {...@@ -729,19 +728,8 @@ pub const Inst = struct {
729 },728 },
730 };729 };
731730
732 pub const CoerceToPtrElem = struct {
733 pub const base_tag = Tag.coerce_to_ptr_elem;
734 base: Inst,
735
736 positionals: struct {
737 ptr: *Inst,
738 value: *Inst,
739 },
740 kw_args: struct {},
741 };
742
743 pub const DeclRef = struct {731 pub const DeclRef = struct {
744 pub const base_tag = Tag.declref;732 pub const base_tag = Tag.decl_ref;
745 base: Inst,733 base: Inst,
746734
747 positionals: struct {735 positionals: struct {
...@@ -751,7 +739,7 @@ pub const Inst = struct {...@@ -751,7 +739,7 @@ pub const Inst = struct {
751 };739 };
752740
753 pub const DeclRefStr = struct {741 pub const DeclRefStr = struct {
754 pub const base_tag = Tag.declref_str;742 pub const base_tag = Tag.decl_ref_str;
755 base: Inst,743 base: Inst,
756744
757 positionals: struct {745 positionals: struct {
...@@ -761,7 +749,7 @@ pub const Inst = struct {...@@ -761,7 +749,7 @@ pub const Inst = struct {
761 };749 };
762750
763 pub const DeclVal = struct {751 pub const DeclVal = struct {
764 pub const base_tag = Tag.declval;752 pub const base_tag = Tag.decl_val;
765 base: Inst,753 base: Inst,
766754
767 positionals: struct {755 positionals: struct {
...@@ -770,19 +758,8 @@ pub const Inst = struct {...@@ -770,19 +758,8 @@ pub const Inst = struct {
770 kw_args: struct {},758 kw_args: struct {},
771 };759 };
772760
773 pub const CoerceResultBlockPtr = struct {
774 pub const base_tag = Tag.coerce_result_block_ptr;
775 base: Inst,
776
777 positionals: struct {
778 dest_type: *Inst,
779 block: *Block,
780 },
781 kw_args: struct {},
782 };
783
784 pub const CompileLog = struct {761 pub const CompileLog = struct {
785 pub const base_tag = Tag.compilelog;762 pub const base_tag = Tag.compile_log;
786 base: Inst,763 base: Inst,
787764
788 positionals: struct {765 positionals: struct {
...@@ -876,9 +853,7 @@ pub const Inst = struct {...@@ -876,9 +853,7 @@ pub const Inst = struct {
876 fn_type: *Inst,853 fn_type: *Inst,
877 body: Body,854 body: Body,
878 },855 },
879 kw_args: struct {856 kw_args: struct {},
880 is_inline: bool = false,
881 },
882 };857 };
883858
884 pub const FnType = struct {859 pub const FnType = struct {
...@@ -888,14 +863,13 @@ pub const Inst = struct {...@@ -888,14 +863,13 @@ pub const Inst = struct {
888 positionals: struct {863 positionals: struct {
889 param_types: []*Inst,864 param_types: []*Inst,
890 return_type: *Inst,865 return_type: *Inst,
866 cc: *Inst,
891 },867 },
892 kw_args: struct {868 kw_args: struct {},
893 cc: std.builtin.CallingConvention = .Unspecified,
894 },
895 };869 };
896870
897 pub const IntType = struct {871 pub const IntType = struct {
898 pub const base_tag = Tag.inttype;872 pub const base_tag = Tag.int_type;
899 base: Inst,873 base: Inst,
900874
901 positionals: struct {875 positionals: struct {
...@@ -1104,32 +1078,6 @@ pub const Inst = struct {...@@ -1104,32 +1078,6 @@ pub const Inst = struct {
1104 },1078 },
1105 };1079 };
11061080
1107 pub const SwitchBr = struct {
1108 pub const base_tag = Tag.switchbr;
1109 base: Inst,
1110
1111 positionals: struct {
1112 target_ptr: *Inst,
1113 /// List of all individual items and ranges
1114 items: []*Inst,
1115 cases: []Case,
1116 else_body: Body,
1117 },
1118 kw_args: struct {
1119 /// Pointer to first range if such exists.
1120 range: ?*Inst = null,
1121 special_prong: enum {
1122 none,
1123 @"else",
1124 underscore,
1125 } = .none,
1126 },
1127
1128 pub const Case = struct {
1129 item: *Inst,
1130 body: Body,
1131 };
1132 };
1133 pub const TypeOfPeer = struct {1081 pub const TypeOfPeer = struct {
1134 pub const base_tag = .typeof_peer;1082 pub const base_tag = .typeof_peer;
1135 base: Inst,1083 base: Inst,
...@@ -1220,6 +1168,36 @@ pub const Inst = struct {...@@ -1220,6 +1168,36 @@ pub const Inst = struct {
1220 none,1168 none,
1221 };1169 };
1222 };1170 };
1171
1172 pub const SwitchBr = struct {
1173 pub const base_tag = Tag.switchbr;
1174 base: Inst,
1175
1176 positionals: struct {
1177 target: *Inst,
1178 /// List of all individual items and ranges
1179 items: []*Inst,
1180 cases: []Case,
1181 else_body: Body,
1182 },
1183 kw_args: struct {
1184 /// Pointer to first range if such exists.
1185 range: ?*Inst = null,
1186 special_prong: SpecialProng = .none,
1187 },
1188
1189 // Not anonymous due to stage1 limitations
1190 pub const SpecialProng = enum {
1191 none,
1192 @"else",
1193 underscore,
1194 };
1195
1196 pub const Case = struct {
1197 item: *Inst,
1198 body: Body,
1199 };
1200 };
1223};1201};
12241202
1225pub const ErrorMsg = struct {1203pub const ErrorMsg = struct {
...@@ -1463,7 +1441,7 @@ const Writer = struct {...@@ -1463,7 +1441,7 @@ const Writer = struct {
1463 TypedValue => return stream.print("TypedValue{{ .ty = {}, .val = {}}}", .{ param.ty, param.val }),1441 TypedValue => return stream.print("TypedValue{{ .ty = {}, .val = {}}}", .{ param.ty, param.val }),
1464 *IrModule.Decl => return stream.print("Decl({s})", .{param.name}),1442 *IrModule.Decl => return stream.print("Decl({s})", .{param.name}),
1465 *Inst.Block => {1443 *Inst.Block => {
1466 const name = self.block_table.get(param).?;1444 const name = self.block_table.get(param) orelse "!BADREF!";
1467 return stream.print("\"{}\"", .{std.zig.fmtEscapes(name)});1445 return stream.print("\"{}\"", .{std.zig.fmtEscapes(name)});
1468 },1446 },
1469 *Inst.Loop => {1447 *Inst.Loop => {
...@@ -1632,10 +1610,10 @@ const DumpTzir = struct {...@@ -1632,10 +1610,10 @@ const DumpTzir = struct {
1632 .cmp_gt,1610 .cmp_gt,
1633 .cmp_neq,1611 .cmp_neq,
1634 .store,1612 .store,
1635 .booland,1613 .bool_and,
1636 .boolor,1614 .bool_or,
1637 .bitand,1615 .bit_and,
1638 .bitor,1616 .bit_or,
1639 .xor,1617 .xor,
1640 => {1618 => {
1641 const bin_op = inst.cast(ir.Inst.BinOp).?;1619 const bin_op = inst.cast(ir.Inst.BinOp).?;
...@@ -1649,9 +1627,15 @@ const DumpTzir = struct {...@@ -1649,9 +1627,15 @@ const DumpTzir = struct {
1649 try dtz.findConst(br.operand);1627 try dtz.findConst(br.operand);
1650 },1628 },
16511629
1652 .brvoid => {1630 .br_block_flat => {
1653 const brvoid = inst.castTag(.brvoid).?;1631 const br_block_flat = inst.castTag(.br_block_flat).?;
1654 try dtz.findConst(&brvoid.block.base);1632 try dtz.findConst(&br_block_flat.block.base);
1633 try dtz.fetchInstsAndResolveConsts(br_block_flat.body);
1634 },
1635
1636 .br_void => {
1637 const br_void = inst.castTag(.br_void).?;
1638 try dtz.findConst(&br_void.block.base);
1655 },1639 },
16561640
1657 .block => {1641 .block => {
...@@ -1742,10 +1726,10 @@ const DumpTzir = struct {...@@ -1742,10 +1726,10 @@ const DumpTzir = struct {
1742 .cmp_gt,1726 .cmp_gt,
1743 .cmp_neq,1727 .cmp_neq,
1744 .store,1728 .store,
1745 .booland,1729 .bool_and,
1746 .boolor,1730 .bool_or,
1747 .bitand,1731 .bit_and,
1748 .bitor,1732 .bit_or,
1749 .xor,1733 .xor,
1750 => {1734 => {
1751 const bin_op = inst.cast(ir.Inst.BinOp).?;1735 const bin_op = inst.cast(ir.Inst.BinOp).?;
...@@ -1794,9 +1778,27 @@ const DumpTzir = struct {...@@ -1794,9 +1778,27 @@ const DumpTzir = struct {
1794 }1778 }
1795 },1779 },
17961780
1797 .brvoid => {1781 .br_block_flat => {
1798 const brvoid = inst.castTag(.brvoid).?;1782 const br_block_flat = inst.castTag(.br_block_flat).?;
1799 const kinky = try dtz.writeInst(writer, &brvoid.block.base);1783 const block_kinky = try dtz.writeInst(writer, &br_block_flat.block.base);
1784 if (block_kinky != null) {
1785 try writer.writeAll(", { // Instruction does not dominate all uses!\n");
1786 } else {
1787 try writer.writeAll(", {\n");
1788 }
1789
1790 const old_indent = dtz.indent;
1791 dtz.indent += 2;
1792 try dtz.dumpBody(br_block_flat.body, writer);
1793 dtz.indent = old_indent;
1794
1795 try writer.writeByteNTimes(' ', dtz.indent);
1796 try writer.writeAll("})\n");
1797 },
1798
1799 .br_void => {
1800 const br_void = inst.castTag(.br_void).?;
1801 const kinky = try dtz.writeInst(writer, &br_void.block.base);
1800 if (kinky) |_| {1802 if (kinky) |_| {
1801 try writer.writeAll(") // Instruction does not dominate all uses!\n");1803 try writer.writeAll(") // Instruction does not dominate all uses!\n");
1802 } else {1804 } else {
...@@ -1807,7 +1809,7 @@ const DumpTzir = struct {...@@ -1807,7 +1809,7 @@ const DumpTzir = struct {
1807 .block => {1809 .block => {
1808 const block = inst.castTag(.block).?;1810 const block = inst.castTag(.block).?;
18091811
1810 try writer.writeAll("\n");1812 try writer.writeAll("{\n");
18111813
1812 const old_indent = dtz.indent;1814 const old_indent = dtz.indent;
1813 dtz.indent += 2;1815 dtz.indent += 2;
...@@ -1815,7 +1817,7 @@ const DumpTzir = struct {...@@ -1815,7 +1817,7 @@ const DumpTzir = struct {
1815 dtz.indent = old_indent;1817 dtz.indent = old_indent;
18161818
1817 try writer.writeByteNTimes(' ', dtz.indent);1819 try writer.writeByteNTimes(' ', dtz.indent);
1818 try writer.writeAll(")\n");1820 try writer.writeAll("})\n");
1819 },1821 },
18201822
1821 .condbr => {1823 .condbr => {
...@@ -1845,7 +1847,7 @@ const DumpTzir = struct {...@@ -1845,7 +1847,7 @@ const DumpTzir = struct {
1845 .loop => {1847 .loop => {
1846 const loop = inst.castTag(.loop).?;1848 const loop = inst.castTag(.loop).?;
18471849
1848 try writer.writeAll("\n");1850 try writer.writeAll("{\n");
18491851
1850 const old_indent = dtz.indent;1852 const old_indent = dtz.indent;
1851 dtz.indent += 2;1853 dtz.indent += 2;
...@@ -1853,7 +1855,7 @@ const DumpTzir = struct {...@@ -1853,7 +1855,7 @@ const DumpTzir = struct {
1853 dtz.indent = old_indent;1855 dtz.indent = old_indent;
18541856
1855 try writer.writeByteNTimes(' ', dtz.indent);1857 try writer.writeByteNTimes(' ', dtz.indent);
1856 try writer.writeAll(")\n");1858 try writer.writeAll("})\n");
1857 },1859 },
18581860
1859 .call => {1861 .call => {
src/zir_sema.zig+382-341
...@@ -28,144 +28,134 @@ const Decl = Module.Decl;...@@ -28,144 +28,134 @@ const Decl = Module.Decl;
2828
29pub fn analyzeInst(mod: *Module, scope: *Scope, old_inst: *zir.Inst) InnerError!*Inst {29pub fn analyzeInst(mod: *Module, scope: *Scope, old_inst: *zir.Inst) InnerError!*Inst {
30 switch (old_inst.tag) {30 switch (old_inst.tag) {
31 .alloc => return analyzeInstAlloc(mod, scope, old_inst.castTag(.alloc).?),31 .alloc => return zirAlloc(mod, scope, old_inst.castTag(.alloc).?),
32 .alloc_mut => return analyzeInstAllocMut(mod, scope, old_inst.castTag(.alloc_mut).?),32 .alloc_mut => return zirAllocMut(mod, scope, old_inst.castTag(.alloc_mut).?),
33 .alloc_inferred => return analyzeInstAllocInferred(33 .alloc_inferred => return zirAllocInferred(mod, scope, old_inst.castTag(.alloc_inferred).?, .inferred_alloc_const),
34 mod,34 .alloc_inferred_mut => return zirAllocInferred(mod, scope, old_inst.castTag(.alloc_inferred_mut).?, .inferred_alloc_mut),
35 scope,35 .arg => return zirArg(mod, scope, old_inst.castTag(.arg).?),
36 old_inst.castTag(.alloc_inferred).?,36 .bitcast_ref => return zirBitcastRef(mod, scope, old_inst.castTag(.bitcast_ref).?),
37 .inferred_alloc_const,37 .bitcast_result_ptr => return zirBitcastResultPtr(mod, scope, old_inst.castTag(.bitcast_result_ptr).?),
38 ),38 .block => return zirBlock(mod, scope, old_inst.castTag(.block).?, false),
39 .alloc_inferred_mut => return analyzeInstAllocInferred(39 .block_comptime => return zirBlock(mod, scope, old_inst.castTag(.block_comptime).?, true),
40 mod,40 .block_flat => return zirBlockFlat(mod, scope, old_inst.castTag(.block_flat).?, false),
41 scope,41 .block_comptime_flat => return zirBlockFlat(mod, scope, old_inst.castTag(.block_comptime_flat).?, true),
42 old_inst.castTag(.alloc_inferred_mut).?,42 .@"break" => return zirBreak(mod, scope, old_inst.castTag(.@"break").?),
43 .inferred_alloc_mut,43 .breakpoint => return zirBreakpoint(mod, scope, old_inst.castTag(.breakpoint).?),
44 ),44 .break_void => return zirBreakVoid(mod, scope, old_inst.castTag(.break_void).?),
45 .arg => return analyzeInstArg(mod, scope, old_inst.castTag(.arg).?),45 .call => return zirCall(mod, scope, old_inst.castTag(.call).?),
46 .bitcast_ref => return bitCastRef(mod, scope, old_inst.castTag(.bitcast_ref).?),46 .coerce_result_ptr => return zirCoerceResultPtr(mod, scope, old_inst.castTag(.coerce_result_ptr).?),
47 .bitcast_result_ptr => return bitCastResultPtr(mod, scope, old_inst.castTag(.bitcast_result_ptr).?),47 .compile_error => return zirCompileError(mod, scope, old_inst.castTag(.compile_error).?),
48 .block => return analyzeInstBlock(mod, scope, old_inst.castTag(.block).?, false),48 .compile_log => return zirCompileLog(mod, scope, old_inst.castTag(.compile_log).?),
49 .block_comptime => return analyzeInstBlock(mod, scope, old_inst.castTag(.block_comptime).?, true),49 .@"const" => return zirConst(mod, scope, old_inst.castTag(.@"const").?),
50 .block_flat => return analyzeInstBlockFlat(mod, scope, old_inst.castTag(.block_flat).?, false),50 .dbg_stmt => return zirDbgStmt(mod, scope, old_inst.castTag(.dbg_stmt).?),
51 .block_comptime_flat => return analyzeInstBlockFlat(mod, scope, old_inst.castTag(.block_comptime_flat).?, true),51 .decl_ref => return zirDeclRef(mod, scope, old_inst.castTag(.decl_ref).?),
52 .@"break" => return analyzeInstBreak(mod, scope, old_inst.castTag(.@"break").?),52 .decl_ref_str => return zirDeclRefStr(mod, scope, old_inst.castTag(.decl_ref_str).?),
53 .breakpoint => return analyzeInstBreakpoint(mod, scope, old_inst.castTag(.breakpoint).?),53 .decl_val => return zirDeclVal(mod, scope, old_inst.castTag(.decl_val).?),
54 .breakvoid => return analyzeInstBreakVoid(mod, scope, old_inst.castTag(.breakvoid).?),54 .ensure_result_used => return zirEnsureResultUsed(mod, scope, old_inst.castTag(.ensure_result_used).?),
55 .call => return call(mod, scope, old_inst.castTag(.call).?),55 .ensure_result_non_error => return zirEnsureResultNonError(mod, scope, old_inst.castTag(.ensure_result_non_error).?),
56 .coerce_result_block_ptr => return analyzeInstCoerceResultBlockPtr(mod, scope, old_inst.castTag(.coerce_result_block_ptr).?),56 .indexable_ptr_len => return zirIndexablePtrLen(mod, scope, old_inst.castTag(.indexable_ptr_len).?),
57 .coerce_result_ptr => return analyzeInstCoerceResultPtr(mod, scope, old_inst.castTag(.coerce_result_ptr).?),57 .ref => return zirRef(mod, scope, old_inst.castTag(.ref).?),
58 .coerce_to_ptr_elem => return analyzeInstCoerceToPtrElem(mod, scope, old_inst.castTag(.coerce_to_ptr_elem).?),58 .resolve_inferred_alloc => return zirResolveInferredAlloc(mod, scope, old_inst.castTag(.resolve_inferred_alloc).?),
59 .compileerror => return analyzeInstCompileError(mod, scope, old_inst.castTag(.compileerror).?),59 .ret_ptr => return zirRetPtr(mod, scope, old_inst.castTag(.ret_ptr).?),
60 .compilelog => return analyzeInstCompileLog(mod, scope, old_inst.castTag(.compilelog).?),60 .ret_type => return zirRetType(mod, scope, old_inst.castTag(.ret_type).?),
61 .@"const" => return analyzeInstConst(mod, scope, old_inst.castTag(.@"const").?),61 .store_to_block_ptr => return zirStoreToBlockPtr(mod, scope, old_inst.castTag(.store_to_block_ptr).?),
62 .dbg_stmt => return analyzeInstDbgStmt(mod, scope, old_inst.castTag(.dbg_stmt).?),62 .store_to_inferred_ptr => return zirStoreToInferredPtr(mod, scope, old_inst.castTag(.store_to_inferred_ptr).?),
63 .declref => return declRef(mod, scope, old_inst.castTag(.declref).?),63 .single_const_ptr_type => return zirSimplePtrType(mod, scope, old_inst.castTag(.single_const_ptr_type).?, false, .One),
64 .declref_str => return analyzeInstDeclRefStr(mod, scope, old_inst.castTag(.declref_str).?),64 .single_mut_ptr_type => return zirSimplePtrType(mod, scope, old_inst.castTag(.single_mut_ptr_type).?, true, .One),
65 .declval => return declVal(mod, scope, old_inst.castTag(.declval).?),65 .many_const_ptr_type => return zirSimplePtrType(mod, scope, old_inst.castTag(.many_const_ptr_type).?, false, .Many),
66 .ensure_result_used => return analyzeInstEnsureResultUsed(mod, scope, old_inst.castTag(.ensure_result_used).?),66 .many_mut_ptr_type => return zirSimplePtrType(mod, scope, old_inst.castTag(.many_mut_ptr_type).?, true, .Many),
67 .ensure_result_non_error => return analyzeInstEnsureResultNonError(mod, scope, old_inst.castTag(.ensure_result_non_error).?),67 .c_const_ptr_type => return zirSimplePtrType(mod, scope, old_inst.castTag(.c_const_ptr_type).?, false, .C),
68 .indexable_ptr_len => return indexablePtrLen(mod, scope, old_inst.castTag(.indexable_ptr_len).?),68 .c_mut_ptr_type => return zirSimplePtrType(mod, scope, old_inst.castTag(.c_mut_ptr_type).?, true, .C),
69 .ref => return ref(mod, scope, old_inst.castTag(.ref).?),69 .const_slice_type => return zirSimplePtrType(mod, scope, old_inst.castTag(.const_slice_type).?, false, .Slice),
70 .resolve_inferred_alloc => return analyzeInstResolveInferredAlloc(mod, scope, old_inst.castTag(.resolve_inferred_alloc).?),70 .mut_slice_type => return zirSimplePtrType(mod, scope, old_inst.castTag(.mut_slice_type).?, true, .Slice),
71 .ret_ptr => return analyzeInstRetPtr(mod, scope, old_inst.castTag(.ret_ptr).?),71 .ptr_type => return zirPtrType(mod, scope, old_inst.castTag(.ptr_type).?),
72 .ret_type => return analyzeInstRetType(mod, scope, old_inst.castTag(.ret_type).?),72 .store => return zirStore(mod, scope, old_inst.castTag(.store).?),
73 .store_to_inferred_ptr => return analyzeInstStoreToInferredPtr(mod, scope, old_inst.castTag(.store_to_inferred_ptr).?),73 .set_eval_branch_quota => return zirSetEvalBranchQuota(mod, scope, old_inst.castTag(.set_eval_branch_quota).?),
74 .single_const_ptr_type => return analyzeInstSimplePtrType(mod, scope, old_inst.castTag(.single_const_ptr_type).?, false, .One),74 .str => return zirStr(mod, scope, old_inst.castTag(.str).?),
75 .single_mut_ptr_type => return analyzeInstSimplePtrType(mod, scope, old_inst.castTag(.single_mut_ptr_type).?, true, .One),75 .int => return zirInt(mod, scope, old_inst.castTag(.int).?),
76 .many_const_ptr_type => return analyzeInstSimplePtrType(mod, scope, old_inst.castTag(.many_const_ptr_type).?, false, .Many),76 .int_type => return zirIntType(mod, scope, old_inst.castTag(.int_type).?),
77 .many_mut_ptr_type => return analyzeInstSimplePtrType(mod, scope, old_inst.castTag(.many_mut_ptr_type).?, true, .Many),77 .loop => return zirLoop(mod, scope, old_inst.castTag(.loop).?),
78 .c_const_ptr_type => return analyzeInstSimplePtrType(mod, scope, old_inst.castTag(.c_const_ptr_type).?, false, .C),78 .param_type => return zirParamType(mod, scope, old_inst.castTag(.param_type).?),
79 .c_mut_ptr_type => return analyzeInstSimplePtrType(mod, scope, old_inst.castTag(.c_mut_ptr_type).?, true, .C),79 .ptrtoint => return zirPtrtoint(mod, scope, old_inst.castTag(.ptrtoint).?),
80 .const_slice_type => return analyzeInstSimplePtrType(mod, scope, old_inst.castTag(.const_slice_type).?, false, .Slice),80 .field_ptr => return zirFieldPtr(mod, scope, old_inst.castTag(.field_ptr).?),
81 .mut_slice_type => return analyzeInstSimplePtrType(mod, scope, old_inst.castTag(.mut_slice_type).?, true, .Slice),81 .field_val => return zirFieldVal(mod, scope, old_inst.castTag(.field_val).?),
82 .ptr_type => return analyzeInstPtrType(mod, scope, old_inst.castTag(.ptr_type).?),82 .field_ptr_named => return zirFieldPtrNamed(mod, scope, old_inst.castTag(.field_ptr_named).?),
83 .store => return analyzeInstStore(mod, scope, old_inst.castTag(.store).?),83 .field_val_named => return zirFieldValNamed(mod, scope, old_inst.castTag(.field_val_named).?),
84 .set_eval_branch_quota => return analyzeInstSetEvalBranchQuota(mod, scope, old_inst.castTag(.set_eval_branch_quota).?),84 .deref => return zirDeref(mod, scope, old_inst.castTag(.deref).?),
85 .str => return analyzeInstStr(mod, scope, old_inst.castTag(.str).?),85 .as => return zirAs(mod, scope, old_inst.castTag(.as).?),
86 .int => return analyzeInstInt(mod, scope, old_inst.castTag(.int).?),86 .@"asm" => return zirAsm(mod, scope, old_inst.castTag(.@"asm").?),
87 .inttype => return analyzeInstIntType(mod, scope, old_inst.castTag(.inttype).?),87 .unreachable_safe => return zirUnreachable(mod, scope, old_inst.castTag(.unreachable_safe).?, true),
88 .loop => return analyzeInstLoop(mod, scope, old_inst.castTag(.loop).?),88 .unreachable_unsafe => return zirUnreachable(mod, scope, old_inst.castTag(.unreachable_unsafe).?, false),
89 .param_type => return analyzeInstParamType(mod, scope, old_inst.castTag(.param_type).?),89 .@"return" => return zirReturn(mod, scope, old_inst.castTag(.@"return").?),
90 .ptrtoint => return analyzeInstPtrToInt(mod, scope, old_inst.castTag(.ptrtoint).?),90 .return_void => return zirReturnVoid(mod, scope, old_inst.castTag(.return_void).?),
91 .field_ptr => return fieldPtr(mod, scope, old_inst.castTag(.field_ptr).?),91 .@"fn" => return zirFn(mod, scope, old_inst.castTag(.@"fn").?),
92 .field_val => return fieldVal(mod, scope, old_inst.castTag(.field_val).?),92 .@"export" => return zirExport(mod, scope, old_inst.castTag(.@"export").?),
93 .field_ptr_named => return fieldPtrNamed(mod, scope, old_inst.castTag(.field_ptr_named).?),93 .primitive => return zirPrimitive(mod, scope, old_inst.castTag(.primitive).?),
94 .field_val_named => return fieldValNamed(mod, scope, old_inst.castTag(.field_val_named).?),94 .fntype => return zirFnType(mod, scope, old_inst.castTag(.fntype).?),
95 .deref => return analyzeInstDeref(mod, scope, old_inst.castTag(.deref).?),95 .intcast => return zirIntcast(mod, scope, old_inst.castTag(.intcast).?),
96 .as => return analyzeInstAs(mod, scope, old_inst.castTag(.as).?),96 .bitcast => return zirBitcast(mod, scope, old_inst.castTag(.bitcast).?),
97 .@"asm" => return analyzeInstAsm(mod, scope, old_inst.castTag(.@"asm").?),97 .floatcast => return zirFloatcast(mod, scope, old_inst.castTag(.floatcast).?),
98 .@"unreachable" => return analyzeInstUnreachable(mod, scope, old_inst.castTag(.@"unreachable").?, true),98 .elem_ptr => return zirElemPtr(mod, scope, old_inst.castTag(.elem_ptr).?),
99 .unreach_nocheck => return analyzeInstUnreachable(mod, scope, old_inst.castTag(.unreach_nocheck).?, false),99 .elem_val => return zirElemVal(mod, scope, old_inst.castTag(.elem_val).?),
100 .@"return" => return analyzeInstRet(mod, scope, old_inst.castTag(.@"return").?),100 .add => return zirArithmetic(mod, scope, old_inst.castTag(.add).?),
101 .returnvoid => return analyzeInstRetVoid(mod, scope, old_inst.castTag(.returnvoid).?),101 .addwrap => return zirArithmetic(mod, scope, old_inst.castTag(.addwrap).?),
102 .@"fn" => return analyzeInstFn(mod, scope, old_inst.castTag(.@"fn").?),102 .sub => return zirArithmetic(mod, scope, old_inst.castTag(.sub).?),
103 .@"export" => return analyzeInstExport(mod, scope, old_inst.castTag(.@"export").?),103 .subwrap => return zirArithmetic(mod, scope, old_inst.castTag(.subwrap).?),
104 .primitive => return analyzeInstPrimitive(mod, scope, old_inst.castTag(.primitive).?),104 .mul => return zirArithmetic(mod, scope, old_inst.castTag(.mul).?),
105 .fntype => return analyzeInstFnType(mod, scope, old_inst.castTag(.fntype).?),105 .mulwrap => return zirArithmetic(mod, scope, old_inst.castTag(.mulwrap).?),
106 .intcast => return analyzeInstIntCast(mod, scope, old_inst.castTag(.intcast).?),106 .div => return zirArithmetic(mod, scope, old_inst.castTag(.div).?),
107 .bitcast => return analyzeInstBitCast(mod, scope, old_inst.castTag(.bitcast).?),107 .mod_rem => return zirArithmetic(mod, scope, old_inst.castTag(.mod_rem).?),
108 .floatcast => return analyzeInstFloatCast(mod, scope, old_inst.castTag(.floatcast).?),108 .array_cat => return zirArrayCat(mod, scope, old_inst.castTag(.array_cat).?),
109 .elem_ptr => return elemPtr(mod, scope, old_inst.castTag(.elem_ptr).?),109 .array_mul => return zirArrayMul(mod, scope, old_inst.castTag(.array_mul).?),
110 .elem_val => return elemVal(mod, scope, old_inst.castTag(.elem_val).?),110 .bit_and => return zirBitwise(mod, scope, old_inst.castTag(.bit_and).?),
111 .add => return analyzeInstArithmetic(mod, scope, old_inst.castTag(.add).?),111 .bit_not => return zirBitNot(mod, scope, old_inst.castTag(.bit_not).?),
112 .addwrap => return analyzeInstArithmetic(mod, scope, old_inst.castTag(.addwrap).?),112 .bit_or => return zirBitwise(mod, scope, old_inst.castTag(.bit_or).?),
113 .sub => return analyzeInstArithmetic(mod, scope, old_inst.castTag(.sub).?),113 .xor => return zirBitwise(mod, scope, old_inst.castTag(.xor).?),
114 .subwrap => return analyzeInstArithmetic(mod, scope, old_inst.castTag(.subwrap).?),114 .shl => return zirShl(mod, scope, old_inst.castTag(.shl).?),
115 .mul => return analyzeInstArithmetic(mod, scope, old_inst.castTag(.mul).?),115 .shr => return zirShr(mod, scope, old_inst.castTag(.shr).?),
116 .mulwrap => return analyzeInstArithmetic(mod, scope, old_inst.castTag(.mulwrap).?),116 .cmp_lt => return zirCmp(mod, scope, old_inst.castTag(.cmp_lt).?, .lt),
117 .div => return analyzeInstArithmetic(mod, scope, old_inst.castTag(.div).?),117 .cmp_lte => return zirCmp(mod, scope, old_inst.castTag(.cmp_lte).?, .lte),
118 .mod_rem => return analyzeInstArithmetic(mod, scope, old_inst.castTag(.mod_rem).?),118 .cmp_eq => return zirCmp(mod, scope, old_inst.castTag(.cmp_eq).?, .eq),
119 .array_cat => return analyzeInstArrayCat(mod, scope, old_inst.castTag(.array_cat).?),119 .cmp_gte => return zirCmp(mod, scope, old_inst.castTag(.cmp_gte).?, .gte),
120 .array_mul => return analyzeInstArrayMul(mod, scope, old_inst.castTag(.array_mul).?),120 .cmp_gt => return zirCmp(mod, scope, old_inst.castTag(.cmp_gt).?, .gt),
121 .bitand => return analyzeInstBitwise(mod, scope, old_inst.castTag(.bitand).?),121 .cmp_neq => return zirCmp(mod, scope, old_inst.castTag(.cmp_neq).?, .neq),
122 .bitnot => return analyzeInstBitNot(mod, scope, old_inst.castTag(.bitnot).?),122 .condbr => return zirCondbr(mod, scope, old_inst.castTag(.condbr).?),
123 .bitor => return analyzeInstBitwise(mod, scope, old_inst.castTag(.bitor).?),123 .is_null => return zirIsNull(mod, scope, old_inst.castTag(.is_null).?, false),
124 .xor => return analyzeInstBitwise(mod, scope, old_inst.castTag(.xor).?),124 .is_non_null => return zirIsNull(mod, scope, old_inst.castTag(.is_non_null).?, true),
125 .shl => return analyzeInstShl(mod, scope, old_inst.castTag(.shl).?),125 .is_null_ptr => return zirIsNullPtr(mod, scope, old_inst.castTag(.is_null_ptr).?, false),
126 .shr => return analyzeInstShr(mod, scope, old_inst.castTag(.shr).?),126 .is_non_null_ptr => return zirIsNullPtr(mod, scope, old_inst.castTag(.is_non_null_ptr).?, true),
127 .cmp_lt => return analyzeInstCmp(mod, scope, old_inst.castTag(.cmp_lt).?, .lt),127 .is_err => return zirIsErr(mod, scope, old_inst.castTag(.is_err).?),
128 .cmp_lte => return analyzeInstCmp(mod, scope, old_inst.castTag(.cmp_lte).?, .lte),128 .is_err_ptr => return zirIsErrPtr(mod, scope, old_inst.castTag(.is_err_ptr).?),
129 .cmp_eq => return analyzeInstCmp(mod, scope, old_inst.castTag(.cmp_eq).?, .eq),129 .bool_not => return zirBoolNot(mod, scope, old_inst.castTag(.bool_not).?),
130 .cmp_gte => return analyzeInstCmp(mod, scope, old_inst.castTag(.cmp_gte).?, .gte),130 .typeof => return zirTypeof(mod, scope, old_inst.castTag(.typeof).?),
131 .cmp_gt => return analyzeInstCmp(mod, scope, old_inst.castTag(.cmp_gt).?, .gt),131 .typeof_peer => return zirTypeofPeer(mod, scope, old_inst.castTag(.typeof_peer).?),
132 .cmp_neq => return analyzeInstCmp(mod, scope, old_inst.castTag(.cmp_neq).?, .neq),132 .optional_type => return zirOptionalType(mod, scope, old_inst.castTag(.optional_type).?),
133 .condbr => return analyzeInstCondBr(mod, scope, old_inst.castTag(.condbr).?),133 .optional_payload_safe => return zirOptionalPayload(mod, scope, old_inst.castTag(.optional_payload_safe).?, true),
134 .is_null => return isNull(mod, scope, old_inst.castTag(.is_null).?, false),134 .optional_payload_unsafe => return zirOptionalPayload(mod, scope, old_inst.castTag(.optional_payload_unsafe).?, false),
135 .is_non_null => return isNull(mod, scope, old_inst.castTag(.is_non_null).?, true),135 .optional_payload_safe_ptr => return zirOptionalPayloadPtr(mod, scope, old_inst.castTag(.optional_payload_safe_ptr).?, true),
136 .is_null_ptr => return isNullPtr(mod, scope, old_inst.castTag(.is_null_ptr).?, false),136 .optional_payload_unsafe_ptr => return zirOptionalPayloadPtr(mod, scope, old_inst.castTag(.optional_payload_unsafe_ptr).?, false),
137 .is_non_null_ptr => return isNullPtr(mod, scope, old_inst.castTag(.is_non_null_ptr).?, true),137 .err_union_payload_safe => return zirErrUnionPayload(mod, scope, old_inst.castTag(.err_union_payload_safe).?, true),
138 .is_err => return isErr(mod, scope, old_inst.castTag(.is_err).?),138 .err_union_payload_unsafe => return zirErrUnionPayload(mod, scope, old_inst.castTag(.err_union_payload_unsafe).?, false),
139 .is_err_ptr => return isErrPtr(mod, scope, old_inst.castTag(.is_err_ptr).?),139 .err_union_payload_safe_ptr => return zirErrUnionPayloadPtr(mod, scope, old_inst.castTag(.err_union_payload_safe_ptr).?, true),
140 .boolnot => return analyzeInstBoolNot(mod, scope, old_inst.castTag(.boolnot).?),140 .err_union_payload_unsafe_ptr => return zirErrUnionPayloadPtr(mod, scope, old_inst.castTag(.err_union_payload_unsafe_ptr).?, false),
141 .typeof => return analyzeInstTypeOf(mod, scope, old_inst.castTag(.typeof).?),141 .err_union_code => return zirErrUnionCode(mod, scope, old_inst.castTag(.err_union_code).?),
142 .typeof_peer => return analyzeInstTypeOfPeer(mod, scope, old_inst.castTag(.typeof_peer).?),142 .err_union_code_ptr => return zirErrUnionCodePtr(mod, scope, old_inst.castTag(.err_union_code_ptr).?),
143 .optional_type => return analyzeInstOptionalType(mod, scope, old_inst.castTag(.optional_type).?),143 .ensure_err_payload_void => return zirEnsureErrPayloadVoid(mod, scope, old_inst.castTag(.ensure_err_payload_void).?),
144 .optional_payload_safe => return optionalPayload(mod, scope, old_inst.castTag(.optional_payload_safe).?, true),144 .array_type => return zirArrayType(mod, scope, old_inst.castTag(.array_type).?),
145 .optional_payload_unsafe => return optionalPayload(mod, scope, old_inst.castTag(.optional_payload_unsafe).?, false),145 .array_type_sentinel => return zirArrayTypeSentinel(mod, scope, old_inst.castTag(.array_type_sentinel).?),
146 .optional_payload_safe_ptr => return optionalPayloadPtr(mod, scope, old_inst.castTag(.optional_payload_safe_ptr).?, true),146 .enum_literal => return zirEnumLiteral(mod, scope, old_inst.castTag(.enum_literal).?),
147 .optional_payload_unsafe_ptr => return optionalPayloadPtr(mod, scope, old_inst.castTag(.optional_payload_unsafe_ptr).?, false),147 .merge_error_sets => return zirMergeErrorSets(mod, scope, old_inst.castTag(.merge_error_sets).?),
148 .err_union_payload_safe => return errorUnionPayload(mod, scope, old_inst.castTag(.err_union_payload_safe).?, true),148 .error_union_type => return zirErrorUnionType(mod, scope, old_inst.castTag(.error_union_type).?),
149 .err_union_payload_unsafe => return errorUnionPayload(mod, scope, old_inst.castTag(.err_union_payload_unsafe).?, false),149 .anyframe_type => return zirAnyframeType(mod, scope, old_inst.castTag(.anyframe_type).?),
150 .err_union_payload_safe_ptr => return errorUnionPayloadPtr(mod, scope, old_inst.castTag(.err_union_payload_safe_ptr).?, true),150 .error_set => return zirErrorSet(mod, scope, old_inst.castTag(.error_set).?),
151 .err_union_payload_unsafe_ptr => return errorUnionPayloadPtr(mod, scope, old_inst.castTag(.err_union_payload_unsafe_ptr).?, false),151 .slice => return zirSlice(mod, scope, old_inst.castTag(.slice).?),
152 .err_union_code => return errorUnionCode(mod, scope, old_inst.castTag(.err_union_code).?),152 .slice_start => return zirSliceStart(mod, scope, old_inst.castTag(.slice_start).?),
153 .err_union_code_ptr => return errorUnionCodePtr(mod, scope, old_inst.castTag(.err_union_code_ptr).?),153 .import => return zirImport(mod, scope, old_inst.castTag(.import).?),
154 .ensure_err_payload_void => return analyzeInstEnsureErrPayloadVoid(mod, scope, old_inst.castTag(.ensure_err_payload_void).?),154 .bool_and => return zirBoolOp(mod, scope, old_inst.castTag(.bool_and).?),
155 .array_type => return analyzeInstArrayType(mod, scope, old_inst.castTag(.array_type).?),155 .bool_or => return zirBoolOp(mod, scope, old_inst.castTag(.bool_or).?),
156 .array_type_sentinel => return analyzeInstArrayTypeSentinel(mod, scope, old_inst.castTag(.array_type_sentinel).?),156 .void_value => return mod.constVoid(scope, old_inst.src),
157 .enum_literal => return analyzeInstEnumLiteral(mod, scope, old_inst.castTag(.enum_literal).?),157 .switchbr => return zirSwitchBr(mod, scope, old_inst.castTag(.switchbr).?),
158 .merge_error_sets => return analyzeInstMergeErrorSets(mod, scope, old_inst.castTag(.merge_error_sets).?),158 .switch_range => return zirSwitchRange(mod, scope, old_inst.castTag(.switch_range).?),
159 .error_union_type => return analyzeInstErrorUnionType(mod, scope, old_inst.castTag(.error_union_type).?),
160 .anyframe_type => return analyzeInstAnyframeType(mod, scope, old_inst.castTag(.anyframe_type).?),
161 .error_set => return analyzeInstErrorSet(mod, scope, old_inst.castTag(.error_set).?),
162 .slice => return analyzeInstSlice(mod, scope, old_inst.castTag(.slice).?),
163 .slice_start => return analyzeInstSliceStart(mod, scope, old_inst.castTag(.slice_start).?),
164 .import => return analyzeInstImport(mod, scope, old_inst.castTag(.import).?),
165 .switchbr => return analyzeInstSwitchBr(mod, scope, old_inst.castTag(.switchbr).?),
166 .switch_range => return analyzeInstSwitchRange(mod, scope, old_inst.castTag(.switch_range).?),
167 .booland => return analyzeInstBoolOp(mod, scope, old_inst.castTag(.booland).?),
168 .boolor => return analyzeInstBoolOp(mod, scope, old_inst.castTag(.boolor).?),
169159
170 .container_field_named,160 .container_field_named,
171 .container_field_typed,161 .container_field_typed,
...@@ -258,7 +248,7 @@ pub fn resolveInstConst(mod: *Module, scope: *Scope, old_inst: *zir.Inst) InnerE...@@ -258,7 +248,7 @@ pub fn resolveInstConst(mod: *Module, scope: *Scope, old_inst: *zir.Inst) InnerE
258 };248 };
259}249}
260250
261fn analyzeInstConst(mod: *Module, scope: *Scope, const_inst: *zir.Inst.Const) InnerError!*Inst {251fn zirConst(mod: *Module, scope: *Scope, const_inst: *zir.Inst.Const) InnerError!*Inst {
262 const tracy = trace(@src());252 const tracy = trace(@src());
263 defer tracy.end();253 defer tracy.end();
264 // Move the TypedValue from old memory to new memory. This allows freeing the ZIR instructions254 // Move the TypedValue from old memory to new memory. This allows freeing the ZIR instructions
...@@ -275,44 +265,25 @@ fn analyzeConstInst(mod: *Module, scope: *Scope, old_inst: *zir.Inst) InnerError...@@ -275,44 +265,25 @@ fn analyzeConstInst(mod: *Module, scope: *Scope, old_inst: *zir.Inst) InnerError
275 };265 };
276}266}
277267
278fn analyzeInstCoerceResultBlockPtr(268fn zirBitcastRef(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
279 mod: *Module,
280 scope: *Scope,
281 inst: *zir.Inst.CoerceResultBlockPtr,
282) InnerError!*Inst {
283 const tracy = trace(@src());
284 defer tracy.end();
285 return mod.fail(scope, inst.base.src, "TODO implement analyzeInstCoerceResultBlockPtr", .{});
286}
287
288fn bitCastRef(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
289 const tracy = trace(@src());
290 defer tracy.end();
291 return mod.fail(scope, inst.base.src, "TODO implement zir_sema.bitCastRef", .{});
292}
293
294fn bitCastResultPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
295 const tracy = trace(@src());269 const tracy = trace(@src());
296 defer tracy.end();270 defer tracy.end();
297 return mod.fail(scope, inst.base.src, "TODO implement zir_sema.bitCastResultPtr", .{});271 return mod.fail(scope, inst.base.src, "TODO implement zir_sema.zirBitcastRef", .{});
298}272}
299273
300fn analyzeInstCoerceResultPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {274fn zirBitcastResultPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
301 const tracy = trace(@src());275 const tracy = trace(@src());
302 defer tracy.end();276 defer tracy.end();
303 return mod.fail(scope, inst.base.src, "TODO implement analyzeInstCoerceResultPtr", .{});277 return mod.fail(scope, inst.base.src, "TODO implement zir_sema.zirBitcastResultPtr", .{});
304}278}
305279
306/// Equivalent to `as(ptr_child_type(typeof(ptr)), value)`.280fn zirCoerceResultPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
307fn analyzeInstCoerceToPtrElem(mod: *Module, scope: *Scope, inst: *zir.Inst.CoerceToPtrElem) InnerError!*Inst {
308 const tracy = trace(@src());281 const tracy = trace(@src());
309 defer tracy.end();282 defer tracy.end();
310 const ptr = try resolveInst(mod, scope, inst.positionals.ptr);283 return mod.fail(scope, inst.base.src, "TODO implement zirCoerceResultPtr", .{});
311 const operand = try resolveInst(mod, scope, inst.positionals.value);
312 return mod.coerce(scope, ptr.ty.elemType(), operand);
313}284}
314285
315fn analyzeInstRetPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {286fn zirRetPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {
316 const tracy = trace(@src());287 const tracy = trace(@src());
317 defer tracy.end();288 defer tracy.end();
318 const b = try mod.requireFunctionBlock(scope, inst.base.src);289 const b = try mod.requireFunctionBlock(scope, inst.base.src);
...@@ -322,7 +293,7 @@ fn analyzeInstRetPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerErr...@@ -322,7 +293,7 @@ fn analyzeInstRetPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerErr
322 return mod.addNoOp(b, inst.base.src, ptr_type, .alloc);293 return mod.addNoOp(b, inst.base.src, ptr_type, .alloc);
323}294}
324295
325fn ref(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {296fn zirRef(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
326 const tracy = trace(@src());297 const tracy = trace(@src());
327 defer tracy.end();298 defer tracy.end();
328299
...@@ -330,7 +301,7 @@ fn ref(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {...@@ -330,7 +301,7 @@ fn ref(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
330 return mod.analyzeRef(scope, inst.base.src, operand);301 return mod.analyzeRef(scope, inst.base.src, operand);
331}302}
332303
333fn analyzeInstRetType(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {304fn zirRetType(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {
334 const tracy = trace(@src());305 const tracy = trace(@src());
335 defer tracy.end();306 defer tracy.end();
336 const b = try mod.requireFunctionBlock(scope, inst.base.src);307 const b = try mod.requireFunctionBlock(scope, inst.base.src);
...@@ -339,7 +310,7 @@ fn analyzeInstRetType(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerEr...@@ -339,7 +310,7 @@ fn analyzeInstRetType(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerEr
339 return mod.constType(scope, inst.base.src, ret_type);310 return mod.constType(scope, inst.base.src, ret_type);
340}311}
341312
342fn analyzeInstEnsureResultUsed(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {313fn zirEnsureResultUsed(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
343 const tracy = trace(@src());314 const tracy = trace(@src());
344 defer tracy.end();315 defer tracy.end();
345 const operand = try resolveInst(mod, scope, inst.positionals.operand);316 const operand = try resolveInst(mod, scope, inst.positionals.operand);
...@@ -349,7 +320,7 @@ fn analyzeInstEnsureResultUsed(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp...@@ -349,7 +320,7 @@ fn analyzeInstEnsureResultUsed(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp
349 }320 }
350}321}
351322
352fn analyzeInstEnsureResultNonError(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {323fn zirEnsureResultNonError(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
353 const tracy = trace(@src());324 const tracy = trace(@src());
354 defer tracy.end();325 defer tracy.end();
355 const operand = try resolveInst(mod, scope, inst.positionals.operand);326 const operand = try resolveInst(mod, scope, inst.positionals.operand);
...@@ -359,7 +330,7 @@ fn analyzeInstEnsureResultNonError(mod: *Module, scope: *Scope, inst: *zir.Inst....@@ -359,7 +330,7 @@ fn analyzeInstEnsureResultNonError(mod: *Module, scope: *Scope, inst: *zir.Inst.
359 }330 }
360}331}
361332
362fn indexablePtrLen(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {333fn zirIndexablePtrLen(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
363 const tracy = trace(@src());334 const tracy = trace(@src());
364 defer tracy.end();335 defer tracy.end();
365336
...@@ -389,7 +360,7 @@ fn indexablePtrLen(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError...@@ -389,7 +360,7 @@ fn indexablePtrLen(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError
389 return mod.analyzeDeref(scope, inst.base.src, result_ptr, result_ptr.src);360 return mod.analyzeDeref(scope, inst.base.src, result_ptr, result_ptr.src);
390}361}
391362
392fn analyzeInstAlloc(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {363fn zirAlloc(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
393 const tracy = trace(@src());364 const tracy = trace(@src());
394 defer tracy.end();365 defer tracy.end();
395 const var_type = try resolveType(mod, scope, inst.positionals.operand);366 const var_type = try resolveType(mod, scope, inst.positionals.operand);
...@@ -398,7 +369,7 @@ fn analyzeInstAlloc(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerErro...@@ -398,7 +369,7 @@ fn analyzeInstAlloc(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerErro
398 return mod.addNoOp(b, inst.base.src, ptr_type, .alloc);369 return mod.addNoOp(b, inst.base.src, ptr_type, .alloc);
399}370}
400371
401fn analyzeInstAllocMut(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {372fn zirAllocMut(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
402 const tracy = trace(@src());373 const tracy = trace(@src());
403 defer tracy.end();374 defer tracy.end();
404 const var_type = try resolveType(mod, scope, inst.positionals.operand);375 const var_type = try resolveType(mod, scope, inst.positionals.operand);
...@@ -408,7 +379,7 @@ fn analyzeInstAllocMut(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerE...@@ -408,7 +379,7 @@ fn analyzeInstAllocMut(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerE
408 return mod.addNoOp(b, inst.base.src, ptr_type, .alloc);379 return mod.addNoOp(b, inst.base.src, ptr_type, .alloc);
409}380}
410381
411fn analyzeInstAllocInferred(382fn zirAllocInferred(
412 mod: *Module,383 mod: *Module,
413 scope: *Scope,384 scope: *Scope,
414 inst: *zir.Inst.NoOp,385 inst: *zir.Inst.NoOp,
...@@ -437,7 +408,7 @@ fn analyzeInstAllocInferred(...@@ -437,7 +408,7 @@ fn analyzeInstAllocInferred(
437 return result;408 return result;
438}409}
439410
440fn analyzeInstResolveInferredAlloc(411fn zirResolveInferredAlloc(
441 mod: *Module,412 mod: *Module,
442 scope: *Scope,413 scope: *Scope,
443 inst: *zir.Inst.UnOp,414 inst: *zir.Inst.UnOp,
...@@ -466,28 +437,46 @@ fn analyzeInstResolveInferredAlloc(...@@ -466,28 +437,46 @@ fn analyzeInstResolveInferredAlloc(
466 return mod.constVoid(scope, inst.base.src);437 return mod.constVoid(scope, inst.base.src);
467}438}
468439
469fn analyzeInstStoreToInferredPtr(440fn zirStoreToBlockPtr(
470 mod: *Module,441 mod: *Module,
471 scope: *Scope,442 scope: *Scope,
472 inst: *zir.Inst.BinOp,443 inst: *zir.Inst.BinOp,
473) InnerError!*Inst {444) InnerError!*Inst {
474 const tracy = trace(@src());445 const tracy = trace(@src());
475 defer tracy.end();446 defer tracy.end();
447
448 const ptr = try resolveInst(mod, scope, inst.positionals.lhs);
449 const value = try resolveInst(mod, scope, inst.positionals.rhs);
450 const ptr_ty = try mod.simplePtrType(scope, inst.base.src, value.ty, true, .One);
451 // TODO detect when this store should be done at compile-time. For example,
452 // if expressions should force it when the condition is compile-time known.
453 const b = try mod.requireRuntimeBlock(scope, inst.base.src);
454 const bitcasted_ptr = try mod.addUnOp(b, inst.base.src, ptr_ty, .bitcast, ptr);
455 return mod.storePtr(scope, inst.base.src, bitcasted_ptr, value);
456}
457
458fn zirStoreToInferredPtr(
459 mod: *Module,
460 scope: *Scope,
461 inst: *zir.Inst.BinOp,
462) InnerError!*Inst {
463 const tracy = trace(@src());
464 defer tracy.end();
465
476 const ptr = try resolveInst(mod, scope, inst.positionals.lhs);466 const ptr = try resolveInst(mod, scope, inst.positionals.lhs);
477 const value = try resolveInst(mod, scope, inst.positionals.rhs);467 const value = try resolveInst(mod, scope, inst.positionals.rhs);
478 const inferred_alloc = ptr.castTag(.constant).?.val.castTag(.inferred_alloc).?;468 const inferred_alloc = ptr.castTag(.constant).?.val.castTag(.inferred_alloc).?;
479 // Add the stored instruction to the set we will use to resolve peer types469 // Add the stored instruction to the set we will use to resolve peer types
480 // for the inferred allocation.470 // for the inferred allocation.
481 try inferred_alloc.data.stored_inst_list.append(scope.arena(), value);471 try inferred_alloc.data.stored_inst_list.append(scope.arena(), value);
482 // Create a new alloc with exactly the type the pointer wants.472 // Create a runtime bitcast instruction with exactly the type the pointer wants.
483 // Later it gets cleaned up by aliasing the alloc we are supposed to be storing to.
484 const ptr_ty = try mod.simplePtrType(scope, inst.base.src, value.ty, true, .One);473 const ptr_ty = try mod.simplePtrType(scope, inst.base.src, value.ty, true, .One);
485 const b = try mod.requireRuntimeBlock(scope, inst.base.src);474 const b = try mod.requireRuntimeBlock(scope, inst.base.src);
486 const bitcasted_ptr = try mod.addUnOp(b, inst.base.src, ptr_ty, .bitcast, ptr);475 const bitcasted_ptr = try mod.addUnOp(b, inst.base.src, ptr_ty, .bitcast, ptr);
487 return mod.storePtr(scope, inst.base.src, bitcasted_ptr, value);476 return mod.storePtr(scope, inst.base.src, bitcasted_ptr, value);
488}477}
489478
490fn analyzeInstSetEvalBranchQuota(479fn zirSetEvalBranchQuota(
491 mod: *Module,480 mod: *Module,
492 scope: *Scope,481 scope: *Scope,
493 inst: *zir.Inst.UnOp,482 inst: *zir.Inst.UnOp,
...@@ -499,15 +488,16 @@ fn analyzeInstSetEvalBranchQuota(...@@ -499,15 +488,16 @@ fn analyzeInstSetEvalBranchQuota(
499 return mod.constVoid(scope, inst.base.src);488 return mod.constVoid(scope, inst.base.src);
500}489}
501490
502fn analyzeInstStore(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {491fn zirStore(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
503 const tracy = trace(@src());492 const tracy = trace(@src());
504 defer tracy.end();493 defer tracy.end();
494
505 const ptr = try resolveInst(mod, scope, inst.positionals.lhs);495 const ptr = try resolveInst(mod, scope, inst.positionals.lhs);
506 const value = try resolveInst(mod, scope, inst.positionals.rhs);496 const value = try resolveInst(mod, scope, inst.positionals.rhs);
507 return mod.storePtr(scope, inst.base.src, ptr, value);497 return mod.storePtr(scope, inst.base.src, ptr, value);
508}498}
509499
510fn analyzeInstParamType(mod: *Module, scope: *Scope, inst: *zir.Inst.ParamType) InnerError!*Inst {500fn zirParamType(mod: *Module, scope: *Scope, inst: *zir.Inst.ParamType) InnerError!*Inst {
511 const tracy = trace(@src());501 const tracy = trace(@src());
512 defer tracy.end();502 defer tracy.end();
513 const fn_inst = try resolveInst(mod, scope, inst.positionals.func);503 const fn_inst = try resolveInst(mod, scope, inst.positionals.func);
...@@ -516,7 +506,7 @@ fn analyzeInstParamType(mod: *Module, scope: *Scope, inst: *zir.Inst.ParamType)...@@ -516,7 +506,7 @@ fn analyzeInstParamType(mod: *Module, scope: *Scope, inst: *zir.Inst.ParamType)
516 const fn_ty: Type = switch (fn_inst.ty.zigTypeTag()) {506 const fn_ty: Type = switch (fn_inst.ty.zigTypeTag()) {
517 .Fn => fn_inst.ty,507 .Fn => fn_inst.ty,
518 .BoundFn => {508 .BoundFn => {
519 return mod.fail(scope, fn_inst.src, "TODO implement analyzeInstParamType for method call syntax", .{});509 return mod.fail(scope, fn_inst.src, "TODO implement zirParamType for method call syntax", .{});
520 },510 },
521 else => {511 else => {
522 return mod.fail(scope, fn_inst.src, "expected function, found '{}'", .{fn_inst.ty});512 return mod.fail(scope, fn_inst.src, "expected function, found '{}'", .{fn_inst.ty});
...@@ -538,7 +528,7 @@ fn analyzeInstParamType(mod: *Module, scope: *Scope, inst: *zir.Inst.ParamType)...@@ -538,7 +528,7 @@ fn analyzeInstParamType(mod: *Module, scope: *Scope, inst: *zir.Inst.ParamType)
538 return mod.constType(scope, inst.base.src, param_type);528 return mod.constType(scope, inst.base.src, param_type);
539}529}
540530
541fn analyzeInstStr(mod: *Module, scope: *Scope, str_inst: *zir.Inst.Str) InnerError!*Inst {531fn zirStr(mod: *Module, scope: *Scope, str_inst: *zir.Inst.Str) InnerError!*Inst {
542 const tracy = trace(@src());532 const tracy = trace(@src());
543 defer tracy.end();533 defer tracy.end();
544 // The bytes references memory inside the ZIR module, which can get deallocated534 // The bytes references memory inside the ZIR module, which can get deallocated
...@@ -557,14 +547,14 @@ fn analyzeInstStr(mod: *Module, scope: *Scope, str_inst: *zir.Inst.Str) InnerErr...@@ -557,14 +547,14 @@ fn analyzeInstStr(mod: *Module, scope: *Scope, str_inst: *zir.Inst.Str) InnerErr
557 return mod.analyzeDeclRef(scope, str_inst.base.src, new_decl);547 return mod.analyzeDeclRef(scope, str_inst.base.src, new_decl);
558}548}
559549
560fn analyzeInstInt(mod: *Module, scope: *Scope, inst: *zir.Inst.Int) InnerError!*Inst {550fn zirInt(mod: *Module, scope: *Scope, inst: *zir.Inst.Int) InnerError!*Inst {
561 const tracy = trace(@src());551 const tracy = trace(@src());
562 defer tracy.end();552 defer tracy.end();
563553
564 return mod.constIntBig(scope, inst.base.src, Type.initTag(.comptime_int), inst.positionals.int);554 return mod.constIntBig(scope, inst.base.src, Type.initTag(.comptime_int), inst.positionals.int);
565}555}
566556
567fn analyzeInstExport(mod: *Module, scope: *Scope, export_inst: *zir.Inst.Export) InnerError!*Inst {557fn zirExport(mod: *Module, scope: *Scope, export_inst: *zir.Inst.Export) InnerError!*Inst {
568 const tracy = trace(@src());558 const tracy = trace(@src());
569 defer tracy.end();559 defer tracy.end();
570 const symbol_name = try resolveConstString(mod, scope, export_inst.positionals.symbol_name);560 const symbol_name = try resolveConstString(mod, scope, export_inst.positionals.symbol_name);
...@@ -574,14 +564,14 @@ fn analyzeInstExport(mod: *Module, scope: *Scope, export_inst: *zir.Inst.Export)...@@ -574,14 +564,14 @@ fn analyzeInstExport(mod: *Module, scope: *Scope, export_inst: *zir.Inst.Export)
574 return mod.constVoid(scope, export_inst.base.src);564 return mod.constVoid(scope, export_inst.base.src);
575}565}
576566
577fn analyzeInstCompileError(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {567fn zirCompileError(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
578 const tracy = trace(@src());568 const tracy = trace(@src());
579 defer tracy.end();569 defer tracy.end();
580 const msg = try resolveConstString(mod, scope, inst.positionals.operand);570 const msg = try resolveConstString(mod, scope, inst.positionals.operand);
581 return mod.fail(scope, inst.base.src, "{s}", .{msg});571 return mod.fail(scope, inst.base.src, "{s}", .{msg});
582}572}
583573
584fn analyzeInstCompileLog(mod: *Module, scope: *Scope, inst: *zir.Inst.CompileLog) InnerError!*Inst {574fn zirCompileLog(mod: *Module, scope: *Scope, inst: *zir.Inst.CompileLog) InnerError!*Inst {
585 var managed = mod.compile_log_text.toManaged(mod.gpa);575 var managed = mod.compile_log_text.toManaged(mod.gpa);
586 defer mod.compile_log_text = managed.moveToUnmanaged();576 defer mod.compile_log_text = managed.moveToUnmanaged();
587 const writer = managed.writer();577 const writer = managed.writer();
...@@ -608,7 +598,7 @@ fn analyzeInstCompileLog(mod: *Module, scope: *Scope, inst: *zir.Inst.CompileLog...@@ -608,7 +598,7 @@ fn analyzeInstCompileLog(mod: *Module, scope: *Scope, inst: *zir.Inst.CompileLog
608 return mod.constVoid(scope, inst.base.src);598 return mod.constVoid(scope, inst.base.src);
609}599}
610600
611fn analyzeInstArg(mod: *Module, scope: *Scope, inst: *zir.Inst.Arg) InnerError!*Inst {601fn zirArg(mod: *Module, scope: *Scope, inst: *zir.Inst.Arg) InnerError!*Inst {
612 const tracy = trace(@src());602 const tracy = trace(@src());
613 defer tracy.end();603 defer tracy.end();
614 const b = try mod.requireFunctionBlock(scope, inst.base.src);604 const b = try mod.requireFunctionBlock(scope, inst.base.src);
...@@ -631,7 +621,7 @@ fn analyzeInstArg(mod: *Module, scope: *Scope, inst: *zir.Inst.Arg) InnerError!*...@@ -631,7 +621,7 @@ fn analyzeInstArg(mod: *Module, scope: *Scope, inst: *zir.Inst.Arg) InnerError!*
631 return mod.addArg(b, inst.base.src, param_type, name);621 return mod.addArg(b, inst.base.src, param_type, name);
632}622}
633623
634fn analyzeInstLoop(mod: *Module, scope: *Scope, inst: *zir.Inst.Loop) InnerError!*Inst {624fn zirLoop(mod: *Module, scope: *Scope, inst: *zir.Inst.Loop) InnerError!*Inst {
635 const tracy = trace(@src());625 const tracy = trace(@src());
636 defer tracy.end();626 defer tracy.end();
637 const parent_block = scope.cast(Scope.Block).?;627 const parent_block = scope.cast(Scope.Block).?;
...@@ -672,25 +662,14 @@ fn analyzeInstLoop(mod: *Module, scope: *Scope, inst: *zir.Inst.Loop) InnerError...@@ -672,25 +662,14 @@ fn analyzeInstLoop(mod: *Module, scope: *Scope, inst: *zir.Inst.Loop) InnerError
672 return &loop_inst.base;662 return &loop_inst.base;
673}663}
674664
675fn analyzeInstBlockFlat(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_comptime: bool) InnerError!*Inst {665fn zirBlockFlat(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_comptime: bool) InnerError!*Inst {
676 const tracy = trace(@src());666 const tracy = trace(@src());
677 defer tracy.end();667 defer tracy.end();
678 const parent_block = scope.cast(Scope.Block).?;668 const parent_block = scope.cast(Scope.Block).?;
679669
680 var child_block: Scope.Block = .{670 var child_block = parent_block.makeSubBlock();
681 .parent = parent_block,
682 .inst_table = parent_block.inst_table,
683 .func = parent_block.func,
684 .owner_decl = parent_block.owner_decl,
685 .src_decl = parent_block.src_decl,
686 .instructions = .{},
687 .arena = parent_block.arena,
688 .label = null,
689 .inlining = parent_block.inlining,
690 .is_comptime = parent_block.is_comptime or is_comptime,
691 .branch_quota = parent_block.branch_quota,
692 };
693 defer child_block.instructions.deinit(mod.gpa);671 defer child_block.instructions.deinit(mod.gpa);
672 child_block.is_comptime = child_block.is_comptime or is_comptime;
694673
695 try analyzeBody(mod, &child_block, inst.positionals.body);674 try analyzeBody(mod, &child_block, inst.positionals.body);
696675
...@@ -704,9 +683,15 @@ fn analyzeInstBlockFlat(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_c...@@ -704,9 +683,15 @@ fn analyzeInstBlockFlat(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_c
704 return resolveInst(mod, scope, last_zir_inst);683 return resolveInst(mod, scope, last_zir_inst);
705}684}
706685
707fn analyzeInstBlock(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_comptime: bool) InnerError!*Inst {686fn zirBlock(
687 mod: *Module,
688 scope: *Scope,
689 inst: *zir.Inst.Block,
690 is_comptime: bool,
691) InnerError!*Inst {
708 const tracy = trace(@src());692 const tracy = trace(@src());
709 defer tracy.end();693 defer tracy.end();
694
710 const parent_block = scope.cast(Scope.Block).?;695 const parent_block = scope.cast(Scope.Block).?;
711696
712 // Reserve space for a Block instruction so that generated Break instructions can697 // Reserve space for a Block instruction so that generated Break instructions can
...@@ -735,6 +720,7 @@ fn analyzeInstBlock(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_compt...@@ -735,6 +720,7 @@ fn analyzeInstBlock(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_compt
735 .zir_block = inst,720 .zir_block = inst,
736 .merges = .{721 .merges = .{
737 .results = .{},722 .results = .{},
723 .br_list = .{},
738 .block_inst = block_inst,724 .block_inst = block_inst,
739 },725 },
740 }),726 }),
...@@ -746,6 +732,7 @@ fn analyzeInstBlock(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_compt...@@ -746,6 +732,7 @@ fn analyzeInstBlock(mod: *Module, scope: *Scope, inst: *zir.Inst.Block, is_compt
746732
747 defer child_block.instructions.deinit(mod.gpa);733 defer child_block.instructions.deinit(mod.gpa);
748 defer merges.results.deinit(mod.gpa);734 defer merges.results.deinit(mod.gpa);
735 defer merges.br_list.deinit(mod.gpa);
749736
750 try analyzeBody(mod, &child_block, inst.positionals.body);737 try analyzeBody(mod, &child_block, inst.positionals.body);
751738
...@@ -779,49 +766,127 @@ fn analyzeBlockBody(...@@ -779,49 +766,127 @@ fn analyzeBlockBody(
779 const last_inst = child_block.instructions.items[last_inst_index];766 const last_inst = child_block.instructions.items[last_inst_index];
780 if (last_inst.breakBlock()) |br_block| {767 if (last_inst.breakBlock()) |br_block| {
781 if (br_block == merges.block_inst) {768 if (br_block == merges.block_inst) {
782 // No need for a block instruction. We can put the new instructions directly into the parent block.769 // No need for a block instruction. We can put the new instructions directly
783 // Here we omit the break instruction.770 // into the parent block. Here we omit the break instruction.
784 const copied_instructions = try parent_block.arena.dupe(*Inst, child_block.instructions.items[0..last_inst_index]);771 const copied_instructions = try parent_block.arena.dupe(*Inst, child_block.instructions.items[0..last_inst_index]);
785 try parent_block.instructions.appendSlice(mod.gpa, copied_instructions);772 try parent_block.instructions.appendSlice(mod.gpa, copied_instructions);
786 return merges.results.items[0];773 return merges.results.items[0];
787 }774 }
788 }775 }
789 }776 }
790 // It should be impossible to have the number of results be > 1 in a comptime scope.777 // It is impossible to have the number of results be > 1 in a comptime scope.
791 assert(!child_block.is_comptime); // We should have already got a compile error in the condbr condition.778 assert(!child_block.is_comptime); // Should already got a compile error in the condbr condition.
792779
793 // Need to set the type and emit the Block instruction. This allows machine code generation780 // Need to set the type and emit the Block instruction. This allows machine code generation
794 // to emit a jump instruction to after the block when it encounters the break.781 // to emit a jump instruction to after the block when it encounters the break.
795 try parent_block.instructions.append(mod.gpa, &merges.block_inst.base);782 try parent_block.instructions.append(mod.gpa, &merges.block_inst.base);
796 merges.block_inst.base.ty = try mod.resolvePeerTypes(scope, merges.results.items);783 const resolved_ty = try mod.resolvePeerTypes(scope, merges.results.items);
797 merges.block_inst.body = .{ .instructions = try parent_block.arena.dupe(*Inst, child_block.instructions.items) };784 merges.block_inst.base.ty = resolved_ty;
785 merges.block_inst.body = .{
786 .instructions = try parent_block.arena.dupe(*Inst, child_block.instructions.items),
787 };
788 // Now that the block has its type resolved, we need to go back into all the break
789 // instructions, and insert type coercion on the operands.
790 for (merges.br_list.items) |br| {
791 if (br.operand.ty.eql(resolved_ty)) {
792 // No type coercion needed.
793 continue;
794 }
795 var coerce_block = parent_block.makeSubBlock();
796 defer coerce_block.instructions.deinit(mod.gpa);
797 const coerced_operand = try mod.coerce(&coerce_block.base, resolved_ty, br.operand);
798 // If no instructions were produced, such as in the case of a coercion of a
799 // constant value to a new type, we can simply point the br operand to it.
800 if (coerce_block.instructions.items.len == 0) {
801 br.operand = coerced_operand;
802 continue;
803 }
804 assert(coerce_block.instructions.items[coerce_block.instructions.items.len - 1] == coerced_operand);
805 // Here we depend on the br instruction having been over-allocated (if necessary)
806 // inide analyzeBreak so that it can be converted into a br_block_flat instruction.
807 const br_src = br.base.src;
808 const br_ty = br.base.ty;
809 const br_block_flat = @ptrCast(*Inst.BrBlockFlat, br);
810 br_block_flat.* = .{
811 .base = .{
812 .src = br_src,
813 .ty = br_ty,
814 .tag = .br_block_flat,
815 },
816 .block = merges.block_inst,
817 .body = .{
818 .instructions = try parent_block.arena.dupe(*Inst, coerce_block.instructions.items),
819 },
820 };
821 }
798 return &merges.block_inst.base;822 return &merges.block_inst.base;
799}823}
800824
801fn analyzeInstBreakpoint(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {825fn zirBreakpoint(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {
802 const tracy = trace(@src());826 const tracy = trace(@src());
803 defer tracy.end();827 defer tracy.end();
804 const b = try mod.requireRuntimeBlock(scope, inst.base.src);828 const b = try mod.requireRuntimeBlock(scope, inst.base.src);
805 return mod.addNoOp(b, inst.base.src, Type.initTag(.void), .breakpoint);829 return mod.addNoOp(b, inst.base.src, Type.initTag(.void), .breakpoint);
806}830}
807831
808fn analyzeInstBreak(mod: *Module, scope: *Scope, inst: *zir.Inst.Break) InnerError!*Inst {832fn zirBreak(mod: *Module, scope: *Scope, inst: *zir.Inst.Break) InnerError!*Inst {
809 const tracy = trace(@src());833 const tracy = trace(@src());
810 defer tracy.end();834 defer tracy.end();
835
811 const operand = try resolveInst(mod, scope, inst.positionals.operand);836 const operand = try resolveInst(mod, scope, inst.positionals.operand);
812 const block = inst.positionals.block;837 const block = inst.positionals.block;
813 return analyzeBreak(mod, scope, inst.base.src, block, operand);838 return analyzeBreak(mod, scope, inst.base.src, block, operand);
814}839}
815840
816fn analyzeInstBreakVoid(mod: *Module, scope: *Scope, inst: *zir.Inst.BreakVoid) InnerError!*Inst {841fn zirBreakVoid(mod: *Module, scope: *Scope, inst: *zir.Inst.BreakVoid) InnerError!*Inst {
817 const tracy = trace(@src());842 const tracy = trace(@src());
818 defer tracy.end();843 defer tracy.end();
844
819 const block = inst.positionals.block;845 const block = inst.positionals.block;
820 const void_inst = try mod.constVoid(scope, inst.base.src);846 const void_inst = try mod.constVoid(scope, inst.base.src);
821 return analyzeBreak(mod, scope, inst.base.src, block, void_inst);847 return analyzeBreak(mod, scope, inst.base.src, block, void_inst);
822}848}
823849
824fn analyzeInstDbgStmt(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {850fn analyzeBreak(
851 mod: *Module,
852 scope: *Scope,
853 src: usize,
854 zir_block: *zir.Inst.Block,
855 operand: *Inst,
856) InnerError!*Inst {
857 var opt_block = scope.cast(Scope.Block);
858 while (opt_block) |block| {
859 if (block.label) |*label| {
860 if (label.zir_block == zir_block) {
861 const b = try mod.requireFunctionBlock(scope, src);
862 // Here we add a br instruction, but we over-allocate a little bit
863 // (if necessary) to make it possible to convert the instruction into
864 // a br_block_flat instruction later.
865 const br = @ptrCast(*Inst.Br, try b.arena.alignedAlloc(
866 u8,
867 Inst.convertable_br_align,
868 Inst.convertable_br_size,
869 ));
870 br.* = .{
871 .base = .{
872 .tag = .br,
873 .ty = Type.initTag(.noreturn),
874 .src = src,
875 },
876 .operand = operand,
877 .block = label.merges.block_inst,
878 };
879 try b.instructions.append(mod.gpa, &br.base);
880 try label.merges.results.append(mod.gpa, operand);
881 try label.merges.br_list.append(mod.gpa, br);
882 return &br.base;
883 }
884 }
885 opt_block = block.parent;
886 } else unreachable;
887}
888
889fn zirDbgStmt(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {
825 const tracy = trace(@src());890 const tracy = trace(@src());
826 defer tracy.end();891 defer tracy.end();
827 if (scope.cast(Scope.Block)) |b| {892 if (scope.cast(Scope.Block)) |b| {
...@@ -832,26 +897,26 @@ fn analyzeInstDbgStmt(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerEr...@@ -832,26 +897,26 @@ fn analyzeInstDbgStmt(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerEr
832 return mod.constVoid(scope, inst.base.src);897 return mod.constVoid(scope, inst.base.src);
833}898}
834899
835fn analyzeInstDeclRefStr(mod: *Module, scope: *Scope, inst: *zir.Inst.DeclRefStr) InnerError!*Inst {900fn zirDeclRefStr(mod: *Module, scope: *Scope, inst: *zir.Inst.DeclRefStr) InnerError!*Inst {
836 const tracy = trace(@src());901 const tracy = trace(@src());
837 defer tracy.end();902 defer tracy.end();
838 const decl_name = try resolveConstString(mod, scope, inst.positionals.name);903 const decl_name = try resolveConstString(mod, scope, inst.positionals.name);
839 return mod.analyzeDeclRefByName(scope, inst.base.src, decl_name);904 return mod.analyzeDeclRefByName(scope, inst.base.src, decl_name);
840}905}
841906
842fn declRef(mod: *Module, scope: *Scope, inst: *zir.Inst.DeclRef) InnerError!*Inst {907fn zirDeclRef(mod: *Module, scope: *Scope, inst: *zir.Inst.DeclRef) InnerError!*Inst {
843 const tracy = trace(@src());908 const tracy = trace(@src());
844 defer tracy.end();909 defer tracy.end();
845 return mod.analyzeDeclRef(scope, inst.base.src, inst.positionals.decl);910 return mod.analyzeDeclRef(scope, inst.base.src, inst.positionals.decl);
846}911}
847912
848fn declVal(mod: *Module, scope: *Scope, inst: *zir.Inst.DeclVal) InnerError!*Inst {913fn zirDeclVal(mod: *Module, scope: *Scope, inst: *zir.Inst.DeclVal) InnerError!*Inst {
849 const tracy = trace(@src());914 const tracy = trace(@src());
850 defer tracy.end();915 defer tracy.end();
851 return mod.analyzeDeclVal(scope, inst.base.src, inst.positionals.decl);916 return mod.analyzeDeclVal(scope, inst.base.src, inst.positionals.decl);
852}917}
853918
854fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {919fn zirCall(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {
855 const tracy = trace(@src());920 const tracy = trace(@src());
856 defer tracy.end();921 defer tracy.end();
857922
...@@ -915,18 +980,8 @@ fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {...@@ -915,18 +980,8 @@ fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {
915980
916 const b = try mod.requireFunctionBlock(scope, inst.base.src);981 const b = try mod.requireFunctionBlock(scope, inst.base.src);
917 const is_comptime_call = b.is_comptime or inst.kw_args.modifier == .compile_time;982 const is_comptime_call = b.is_comptime or inst.kw_args.modifier == .compile_time;
918 const is_inline_call = is_comptime_call or inst.kw_args.modifier == .always_inline or blk: {983 const is_inline_call = is_comptime_call or inst.kw_args.modifier == .always_inline or
919 // This logic will get simplified by984 func.ty.fnCallingConvention() == .Inline;
920 // https://github.com/ziglang/zig/issues/6429
921 if (try mod.resolveDefinedValue(scope, func)) |func_val| {
922 const module_fn = switch (func_val.tag()) {
923 .function => func_val.castTag(.function).?.data,
924 else => break :blk false,
925 };
926 break :blk module_fn.state == .inline_only;
927 }
928 break :blk false;
929 };
930 if (is_inline_call) {985 if (is_inline_call) {
931 const func_val = try mod.resolveConstValue(scope, func);986 const func_val = try mod.resolveConstValue(scope, func);
932 const module_fn = switch (func_val.tag()) {987 const module_fn = switch (func_val.tag()) {
...@@ -965,6 +1020,7 @@ fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {...@@ -965,6 +1020,7 @@ fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {
965 .casted_args = casted_args,1020 .casted_args = casted_args,
966 .merges = .{1021 .merges = .{
967 .results = .{},1022 .results = .{},
1023 .br_list = .{},
968 .block_inst = block_inst,1024 .block_inst = block_inst,
969 },1025 },
970 };1026 };
...@@ -989,6 +1045,7 @@ fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {...@@ -989,6 +1045,7 @@ fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {
9891045
990 defer child_block.instructions.deinit(mod.gpa);1046 defer child_block.instructions.deinit(mod.gpa);
991 defer merges.results.deinit(mod.gpa);1047 defer merges.results.deinit(mod.gpa);
1048 defer merges.br_list.deinit(mod.gpa);
9921049
993 try mod.emitBackwardBranch(&child_block, inst.base.src);1050 try mod.emitBackwardBranch(&child_block, inst.base.src);
9941051
...@@ -1002,13 +1059,13 @@ fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {...@@ -1002,13 +1059,13 @@ fn call(mod: *Module, scope: *Scope, inst: *zir.Inst.Call) InnerError!*Inst {
1002 return mod.addCall(b, inst.base.src, ret_type, func, casted_args);1059 return mod.addCall(b, inst.base.src, ret_type, func, casted_args);
1003}1060}
10041061
1005fn analyzeInstFn(mod: *Module, scope: *Scope, fn_inst: *zir.Inst.Fn) InnerError!*Inst {1062fn zirFn(mod: *Module, scope: *Scope, fn_inst: *zir.Inst.Fn) InnerError!*Inst {
1006 const tracy = trace(@src());1063 const tracy = trace(@src());
1007 defer tracy.end();1064 defer tracy.end();
1008 const fn_type = try resolveType(mod, scope, fn_inst.positionals.fn_type);1065 const fn_type = try resolveType(mod, scope, fn_inst.positionals.fn_type);
1009 const new_func = try scope.arena().create(Module.Fn);1066 const new_func = try scope.arena().create(Module.Fn);
1010 new_func.* = .{1067 new_func.* = .{
1011 .state = if (fn_inst.kw_args.is_inline) .inline_only else .queued,1068 .state = if (fn_type.fnCallingConvention() == .Inline) .inline_only else .queued,
1012 .zir = fn_inst.positionals.body,1069 .zir = fn_inst.positionals.body,
1013 .body = undefined,1070 .body = undefined,
1014 .owner_decl = scope.ownerDecl().?,1071 .owner_decl = scope.ownerDecl().?,
...@@ -1019,13 +1076,13 @@ fn analyzeInstFn(mod: *Module, scope: *Scope, fn_inst: *zir.Inst.Fn) InnerError!...@@ -1019,13 +1076,13 @@ fn analyzeInstFn(mod: *Module, scope: *Scope, fn_inst: *zir.Inst.Fn) InnerError!
1019 });1076 });
1020}1077}
10211078
1022fn analyzeInstIntType(mod: *Module, scope: *Scope, inttype: *zir.Inst.IntType) InnerError!*Inst {1079fn zirIntType(mod: *Module, scope: *Scope, inttype: *zir.Inst.IntType) InnerError!*Inst {
1023 const tracy = trace(@src());1080 const tracy = trace(@src());
1024 defer tracy.end();1081 defer tracy.end();
1025 return mod.fail(scope, inttype.base.src, "TODO implement inttype", .{});1082 return mod.fail(scope, inttype.base.src, "TODO implement inttype", .{});
1026}1083}
10271084
1028fn analyzeInstOptionalType(mod: *Module, scope: *Scope, optional: *zir.Inst.UnOp) InnerError!*Inst {1085fn zirOptionalType(mod: *Module, scope: *Scope, optional: *zir.Inst.UnOp) InnerError!*Inst {
1029 const tracy = trace(@src());1086 const tracy = trace(@src());
1030 defer tracy.end();1087 defer tracy.end();
1031 const child_type = try resolveType(mod, scope, optional.positionals.operand);1088 const child_type = try resolveType(mod, scope, optional.positionals.operand);
...@@ -1033,7 +1090,7 @@ fn analyzeInstOptionalType(mod: *Module, scope: *Scope, optional: *zir.Inst.UnOp...@@ -1033,7 +1090,7 @@ fn analyzeInstOptionalType(mod: *Module, scope: *Scope, optional: *zir.Inst.UnOp
1033 return mod.constType(scope, optional.base.src, try mod.optionalType(scope, child_type));1090 return mod.constType(scope, optional.base.src, try mod.optionalType(scope, child_type));
1034}1091}
10351092
1036fn analyzeInstArrayType(mod: *Module, scope: *Scope, array: *zir.Inst.BinOp) InnerError!*Inst {1093fn zirArrayType(mod: *Module, scope: *Scope, array: *zir.Inst.BinOp) InnerError!*Inst {
1037 const tracy = trace(@src());1094 const tracy = trace(@src());
1038 defer tracy.end();1095 defer tracy.end();
1039 // TODO these should be lazily evaluated1096 // TODO these should be lazily evaluated
...@@ -1043,7 +1100,7 @@ fn analyzeInstArrayType(mod: *Module, scope: *Scope, array: *zir.Inst.BinOp) Inn...@@ -1043,7 +1100,7 @@ fn analyzeInstArrayType(mod: *Module, scope: *Scope, array: *zir.Inst.BinOp) Inn
1043 return mod.constType(scope, array.base.src, try mod.arrayType(scope, len.val.toUnsignedInt(), null, elem_type));1100 return mod.constType(scope, array.base.src, try mod.arrayType(scope, len.val.toUnsignedInt(), null, elem_type));
1044}1101}
10451102
1046fn analyzeInstArrayTypeSentinel(mod: *Module, scope: *Scope, array: *zir.Inst.ArrayTypeSentinel) InnerError!*Inst {1103fn zirArrayTypeSentinel(mod: *Module, scope: *Scope, array: *zir.Inst.ArrayTypeSentinel) InnerError!*Inst {
1047 const tracy = trace(@src());1104 const tracy = trace(@src());
1048 defer tracy.end();1105 defer tracy.end();
1049 // TODO these should be lazily evaluated1106 // TODO these should be lazily evaluated
...@@ -1054,7 +1111,7 @@ fn analyzeInstArrayTypeSentinel(mod: *Module, scope: *Scope, array: *zir.Inst.Ar...@@ -1054,7 +1111,7 @@ fn analyzeInstArrayTypeSentinel(mod: *Module, scope: *Scope, array: *zir.Inst.Ar
1054 return mod.constType(scope, array.base.src, try mod.arrayType(scope, len.val.toUnsignedInt(), sentinel.val, elem_type));1111 return mod.constType(scope, array.base.src, try mod.arrayType(scope, len.val.toUnsignedInt(), sentinel.val, elem_type));
1055}1112}
10561113
1057fn analyzeInstErrorUnionType(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1114fn zirErrorUnionType(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1058 const tracy = trace(@src());1115 const tracy = trace(@src());
1059 defer tracy.end();1116 defer tracy.end();
1060 const error_union = try resolveType(mod, scope, inst.positionals.lhs);1117 const error_union = try resolveType(mod, scope, inst.positionals.lhs);
...@@ -1067,7 +1124,7 @@ fn analyzeInstErrorUnionType(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp)...@@ -1067,7 +1124,7 @@ fn analyzeInstErrorUnionType(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp)
1067 return mod.constType(scope, inst.base.src, try mod.errorUnionType(scope, error_union, payload));1124 return mod.constType(scope, inst.base.src, try mod.errorUnionType(scope, error_union, payload));
1068}1125}
10691126
1070fn analyzeInstAnyframeType(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {1127fn zirAnyframeType(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
1071 const tracy = trace(@src());1128 const tracy = trace(@src());
1072 defer tracy.end();1129 defer tracy.end();
1073 const return_type = try resolveType(mod, scope, inst.positionals.operand);1130 const return_type = try resolveType(mod, scope, inst.positionals.operand);
...@@ -1075,7 +1132,7 @@ fn analyzeInstAnyframeType(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) In...@@ -1075,7 +1132,7 @@ fn analyzeInstAnyframeType(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) In
1075 return mod.constType(scope, inst.base.src, try mod.anyframeType(scope, return_type));1132 return mod.constType(scope, inst.base.src, try mod.anyframeType(scope, return_type));
1076}1133}
10771134
1078fn analyzeInstErrorSet(mod: *Module, scope: *Scope, inst: *zir.Inst.ErrorSet) InnerError!*Inst {1135fn zirErrorSet(mod: *Module, scope: *Scope, inst: *zir.Inst.ErrorSet) InnerError!*Inst {
1079 const tracy = trace(@src());1136 const tracy = trace(@src());
1080 defer tracy.end();1137 defer tracy.end();
1081 // The declarations arena will store the hashmap.1138 // The declarations arena will store the hashmap.
...@@ -1107,13 +1164,13 @@ fn analyzeInstErrorSet(mod: *Module, scope: *Scope, inst: *zir.Inst.ErrorSet) In...@@ -1107,13 +1164,13 @@ fn analyzeInstErrorSet(mod: *Module, scope: *Scope, inst: *zir.Inst.ErrorSet) In
1107 return mod.analyzeDeclVal(scope, inst.base.src, new_decl);1164 return mod.analyzeDeclVal(scope, inst.base.src, new_decl);
1108}1165}
11091166
1110fn analyzeInstMergeErrorSets(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1167fn zirMergeErrorSets(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1111 const tracy = trace(@src());1168 const tracy = trace(@src());
1112 defer tracy.end();1169 defer tracy.end();
1113 return mod.fail(scope, inst.base.src, "TODO implement merge_error_sets", .{});1170 return mod.fail(scope, inst.base.src, "TODO implement merge_error_sets", .{});
1114}1171}
11151172
1116fn analyzeInstEnumLiteral(mod: *Module, scope: *Scope, inst: *zir.Inst.EnumLiteral) InnerError!*Inst {1173fn zirEnumLiteral(mod: *Module, scope: *Scope, inst: *zir.Inst.EnumLiteral) InnerError!*Inst {
1117 const tracy = trace(@src());1174 const tracy = trace(@src());
1118 defer tracy.end();1175 defer tracy.end();
1119 const duped_name = try scope.arena().dupe(u8, inst.positionals.name);1176 const duped_name = try scope.arena().dupe(u8, inst.positionals.name);
...@@ -1124,7 +1181,7 @@ fn analyzeInstEnumLiteral(mod: *Module, scope: *Scope, inst: *zir.Inst.EnumLiter...@@ -1124,7 +1181,7 @@ fn analyzeInstEnumLiteral(mod: *Module, scope: *Scope, inst: *zir.Inst.EnumLiter
1124}1181}
11251182
1126/// Pointer in, pointer out.1183/// Pointer in, pointer out.
1127fn optionalPayloadPtr(1184fn zirOptionalPayloadPtr(
1128 mod: *Module,1185 mod: *Module,
1129 scope: *Scope,1186 scope: *Scope,
1130 unwrap: *zir.Inst.UnOp,1187 unwrap: *zir.Inst.UnOp,
...@@ -1165,7 +1222,7 @@ fn optionalPayloadPtr(...@@ -1165,7 +1222,7 @@ fn optionalPayloadPtr(
1165}1222}
11661223
1167/// Value in, value out.1224/// Value in, value out.
1168fn optionalPayload(1225fn zirOptionalPayload(
1169 mod: *Module,1226 mod: *Module,
1170 scope: *Scope,1227 scope: *Scope,
1171 unwrap: *zir.Inst.UnOp,1228 unwrap: *zir.Inst.UnOp,
...@@ -1201,59 +1258,63 @@ fn optionalPayload(...@@ -1201,59 +1258,63 @@ fn optionalPayload(
1201}1258}
12021259
1203/// Value in, value out1260/// Value in, value out
1204fn errorUnionPayload(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp, safety_check: bool) InnerError!*Inst {1261fn zirErrUnionPayload(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp, safety_check: bool) InnerError!*Inst {
1205 const tracy = trace(@src());1262 const tracy = trace(@src());
1206 defer tracy.end();1263 defer tracy.end();
1207 return mod.fail(scope, unwrap.base.src, "TODO implement zir_sema.errorUnionPayload", .{});1264 return mod.fail(scope, unwrap.base.src, "TODO implement zir_sema.zirErrUnionPayload", .{});
1208}1265}
12091266
1210/// Pointer in, pointer out1267/// Pointer in, pointer out
1211fn errorUnionPayloadPtr(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp, safety_check: bool) InnerError!*Inst {1268fn zirErrUnionPayloadPtr(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp, safety_check: bool) InnerError!*Inst {
1212 const tracy = trace(@src());1269 const tracy = trace(@src());
1213 defer tracy.end();1270 defer tracy.end();
1214 return mod.fail(scope, unwrap.base.src, "TODO implement zir_sema.errorUnionPayloadPtr", .{});1271 return mod.fail(scope, unwrap.base.src, "TODO implement zir_sema.zirErrUnionPayloadPtr", .{});
1215}1272}
12161273
1217/// Value in, value out1274/// Value in, value out
1218fn errorUnionCode(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp) InnerError!*Inst {1275fn zirErrUnionCode(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp) InnerError!*Inst {
1219 const tracy = trace(@src());1276 const tracy = trace(@src());
1220 defer tracy.end();1277 defer tracy.end();
1221 return mod.fail(scope, unwrap.base.src, "TODO implement zir_sema.errorUnionCode", .{});1278 return mod.fail(scope, unwrap.base.src, "TODO implement zir_sema.zirErrUnionCode", .{});
1222}1279}
12231280
1224/// Pointer in, value out1281/// Pointer in, value out
1225fn errorUnionCodePtr(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp) InnerError!*Inst {1282fn zirErrUnionCodePtr(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp) InnerError!*Inst {
1226 const tracy = trace(@src());1283 const tracy = trace(@src());
1227 defer tracy.end();1284 defer tracy.end();
1228 return mod.fail(scope, unwrap.base.src, "TODO implement zir_sema.errorUnionCodePtr", .{});1285 return mod.fail(scope, unwrap.base.src, "TODO implement zir_sema.zirErrUnionCodePtr", .{});
1229}1286}
12301287
1231fn analyzeInstEnsureErrPayloadVoid(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp) InnerError!*Inst {1288fn zirEnsureErrPayloadVoid(mod: *Module, scope: *Scope, unwrap: *zir.Inst.UnOp) InnerError!*Inst {
1232 const tracy = trace(@src());1289 const tracy = trace(@src());
1233 defer tracy.end();1290 defer tracy.end();
1234 return mod.fail(scope, unwrap.base.src, "TODO implement analyzeInstEnsureErrPayloadVoid", .{});1291 return mod.fail(scope, unwrap.base.src, "TODO implement zirEnsureErrPayloadVoid", .{});
1235}1292}
12361293
1237fn analyzeInstFnType(mod: *Module, scope: *Scope, fntype: *zir.Inst.FnType) InnerError!*Inst {1294fn zirFnType(mod: *Module, scope: *Scope, fntype: *zir.Inst.FnType) InnerError!*Inst {
1238 const tracy = trace(@src());1295 const tracy = trace(@src());
1239 defer tracy.end();1296 defer tracy.end();
1240 const return_type = try resolveType(mod, scope, fntype.positionals.return_type);1297 const return_type = try resolveType(mod, scope, fntype.positionals.return_type);
1298 const cc_tv = try resolveInstConst(mod, scope, fntype.positionals.cc);
1299 const cc_str = cc_tv.val.castTag(.enum_literal).?.data;
1300 const cc = std.meta.stringToEnum(std.builtin.CallingConvention, cc_str) orelse
1301 return mod.fail(scope, fntype.positionals.cc.src, "Unknown calling convention {s}", .{cc_str});
12411302
1242 // Hot path for some common function types.1303 // Hot path for some common function types.
1243 if (fntype.positionals.param_types.len == 0) {1304 if (fntype.positionals.param_types.len == 0) {
1244 if (return_type.zigTypeTag() == .NoReturn and fntype.kw_args.cc == .Unspecified) {1305 if (return_type.zigTypeTag() == .NoReturn and cc == .Unspecified) {
1245 return mod.constType(scope, fntype.base.src, Type.initTag(.fn_noreturn_no_args));1306 return mod.constType(scope, fntype.base.src, Type.initTag(.fn_noreturn_no_args));
1246 }1307 }
12471308
1248 if (return_type.zigTypeTag() == .Void and fntype.kw_args.cc == .Unspecified) {1309 if (return_type.zigTypeTag() == .Void and cc == .Unspecified) {
1249 return mod.constType(scope, fntype.base.src, Type.initTag(.fn_void_no_args));1310 return mod.constType(scope, fntype.base.src, Type.initTag(.fn_void_no_args));
1250 }1311 }
12511312
1252 if (return_type.zigTypeTag() == .NoReturn and fntype.kw_args.cc == .Naked) {1313 if (return_type.zigTypeTag() == .NoReturn and cc == .Naked) {
1253 return mod.constType(scope, fntype.base.src, Type.initTag(.fn_naked_noreturn_no_args));1314 return mod.constType(scope, fntype.base.src, Type.initTag(.fn_naked_noreturn_no_args));
1254 }1315 }
12551316
1256 if (return_type.zigTypeTag() == .Void and fntype.kw_args.cc == .C) {1317 if (return_type.zigTypeTag() == .Void and cc == .C) {
1257 return mod.constType(scope, fntype.base.src, Type.initTag(.fn_ccc_void_no_args));1318 return mod.constType(scope, fntype.base.src, Type.initTag(.fn_ccc_void_no_args));
1258 }1319 }
1259 }1320 }
...@@ -1270,20 +1331,20 @@ fn analyzeInstFnType(mod: *Module, scope: *Scope, fntype: *zir.Inst.FnType) Inne...@@ -1270,20 +1331,20 @@ fn analyzeInstFnType(mod: *Module, scope: *Scope, fntype: *zir.Inst.FnType) Inne
1270 }1331 }
12711332
1272 const fn_ty = try Type.Tag.function.create(arena, .{1333 const fn_ty = try Type.Tag.function.create(arena, .{
1273 .cc = fntype.kw_args.cc,
1274 .return_type = return_type,
1275 .param_types = param_types,1334 .param_types = param_types,
1335 .return_type = return_type,
1336 .cc = cc,
1276 });1337 });
1277 return mod.constType(scope, fntype.base.src, fn_ty);1338 return mod.constType(scope, fntype.base.src, fn_ty);
1278}1339}
12791340
1280fn analyzeInstPrimitive(mod: *Module, scope: *Scope, primitive: *zir.Inst.Primitive) InnerError!*Inst {1341fn zirPrimitive(mod: *Module, scope: *Scope, primitive: *zir.Inst.Primitive) InnerError!*Inst {
1281 const tracy = trace(@src());1342 const tracy = trace(@src());
1282 defer tracy.end();1343 defer tracy.end();
1283 return mod.constInst(scope, primitive.base.src, primitive.positionals.tag.toTypedValue());1344 return mod.constInst(scope, primitive.base.src, primitive.positionals.tag.toTypedValue());
1284}1345}
12851346
1286fn analyzeInstAs(mod: *Module, scope: *Scope, as: *zir.Inst.BinOp) InnerError!*Inst {1347fn zirAs(mod: *Module, scope: *Scope, as: *zir.Inst.BinOp) InnerError!*Inst {
1287 const tracy = trace(@src());1348 const tracy = trace(@src());
1288 defer tracy.end();1349 defer tracy.end();
1289 const dest_type = try resolveType(mod, scope, as.positionals.lhs);1350 const dest_type = try resolveType(mod, scope, as.positionals.lhs);
...@@ -1291,7 +1352,7 @@ fn analyzeInstAs(mod: *Module, scope: *Scope, as: *zir.Inst.BinOp) InnerError!*I...@@ -1291,7 +1352,7 @@ fn analyzeInstAs(mod: *Module, scope: *Scope, as: *zir.Inst.BinOp) InnerError!*I
1291 return mod.coerce(scope, dest_type, new_inst);1352 return mod.coerce(scope, dest_type, new_inst);
1292}1353}
12931354
1294fn analyzeInstPtrToInt(mod: *Module, scope: *Scope, ptrtoint: *zir.Inst.UnOp) InnerError!*Inst {1355fn zirPtrtoint(mod: *Module, scope: *Scope, ptrtoint: *zir.Inst.UnOp) InnerError!*Inst {
1295 const tracy = trace(@src());1356 const tracy = trace(@src());
1296 defer tracy.end();1357 defer tracy.end();
1297 const ptr = try resolveInst(mod, scope, ptrtoint.positionals.operand);1358 const ptr = try resolveInst(mod, scope, ptrtoint.positionals.operand);
...@@ -1304,7 +1365,7 @@ fn analyzeInstPtrToInt(mod: *Module, scope: *Scope, ptrtoint: *zir.Inst.UnOp) In...@@ -1304,7 +1365,7 @@ fn analyzeInstPtrToInt(mod: *Module, scope: *Scope, ptrtoint: *zir.Inst.UnOp) In
1304 return mod.addUnOp(b, ptrtoint.base.src, ty, .ptrtoint, ptr);1365 return mod.addUnOp(b, ptrtoint.base.src, ty, .ptrtoint, ptr);
1305}1366}
13061367
1307fn fieldVal(mod: *Module, scope: *Scope, inst: *zir.Inst.Field) InnerError!*Inst {1368fn zirFieldVal(mod: *Module, scope: *Scope, inst: *zir.Inst.Field) InnerError!*Inst {
1308 const tracy = trace(@src());1369 const tracy = trace(@src());
1309 defer tracy.end();1370 defer tracy.end();
13101371
...@@ -1315,7 +1376,7 @@ fn fieldVal(mod: *Module, scope: *Scope, inst: *zir.Inst.Field) InnerError!*Inst...@@ -1315,7 +1376,7 @@ fn fieldVal(mod: *Module, scope: *Scope, inst: *zir.Inst.Field) InnerError!*Inst
1315 return mod.analyzeDeref(scope, inst.base.src, result_ptr, result_ptr.src);1376 return mod.analyzeDeref(scope, inst.base.src, result_ptr, result_ptr.src);
1316}1377}
13171378
1318fn fieldPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.Field) InnerError!*Inst {1379fn zirFieldPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.Field) InnerError!*Inst {
1319 const tracy = trace(@src());1380 const tracy = trace(@src());
1320 defer tracy.end();1381 defer tracy.end();
13211382
...@@ -1324,7 +1385,7 @@ fn fieldPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.Field) InnerError!*Inst...@@ -1324,7 +1385,7 @@ fn fieldPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.Field) InnerError!*Inst
1324 return mod.namedFieldPtr(scope, inst.base.src, object_ptr, field_name, inst.base.src);1385 return mod.namedFieldPtr(scope, inst.base.src, object_ptr, field_name, inst.base.src);
1325}1386}
13261387
1327fn fieldValNamed(mod: *Module, scope: *Scope, inst: *zir.Inst.FieldNamed) InnerError!*Inst {1388fn zirFieldValNamed(mod: *Module, scope: *Scope, inst: *zir.Inst.FieldNamed) InnerError!*Inst {
1328 const tracy = trace(@src());1389 const tracy = trace(@src());
1329 defer tracy.end();1390 defer tracy.end();
13301391
...@@ -1336,7 +1397,7 @@ fn fieldValNamed(mod: *Module, scope: *Scope, inst: *zir.Inst.FieldNamed) InnerE...@@ -1336,7 +1397,7 @@ fn fieldValNamed(mod: *Module, scope: *Scope, inst: *zir.Inst.FieldNamed) InnerE
1336 return mod.analyzeDeref(scope, inst.base.src, result_ptr, result_ptr.src);1397 return mod.analyzeDeref(scope, inst.base.src, result_ptr, result_ptr.src);
1337}1398}
13381399
1339fn fieldPtrNamed(mod: *Module, scope: *Scope, inst: *zir.Inst.FieldNamed) InnerError!*Inst {1400fn zirFieldPtrNamed(mod: *Module, scope: *Scope, inst: *zir.Inst.FieldNamed) InnerError!*Inst {
1340 const tracy = trace(@src());1401 const tracy = trace(@src());
1341 defer tracy.end();1402 defer tracy.end();
13421403
...@@ -1346,7 +1407,7 @@ fn fieldPtrNamed(mod: *Module, scope: *Scope, inst: *zir.Inst.FieldNamed) InnerE...@@ -1346,7 +1407,7 @@ fn fieldPtrNamed(mod: *Module, scope: *Scope, inst: *zir.Inst.FieldNamed) InnerE
1346 return mod.namedFieldPtr(scope, inst.base.src, object_ptr, field_name, fsrc);1407 return mod.namedFieldPtr(scope, inst.base.src, object_ptr, field_name, fsrc);
1347}1408}
13481409
1349fn analyzeInstIntCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1410fn zirIntcast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1350 const tracy = trace(@src());1411 const tracy = trace(@src());
1351 defer tracy.end();1412 defer tracy.end();
1352 const dest_type = try resolveType(mod, scope, inst.positionals.lhs);1413 const dest_type = try resolveType(mod, scope, inst.positionals.lhs);
...@@ -1384,7 +1445,7 @@ fn analyzeInstIntCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE...@@ -1384,7 +1445,7 @@ fn analyzeInstIntCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE
1384 return mod.fail(scope, inst.base.src, "TODO implement analyze widen or shorten int", .{});1445 return mod.fail(scope, inst.base.src, "TODO implement analyze widen or shorten int", .{});
1385}1446}
13861447
1387fn analyzeInstBitCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1448fn zirBitcast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1388 const tracy = trace(@src());1449 const tracy = trace(@src());
1389 defer tracy.end();1450 defer tracy.end();
1390 const dest_type = try resolveType(mod, scope, inst.positionals.lhs);1451 const dest_type = try resolveType(mod, scope, inst.positionals.lhs);
...@@ -1392,7 +1453,7 @@ fn analyzeInstBitCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE...@@ -1392,7 +1453,7 @@ fn analyzeInstBitCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE
1392 return mod.bitcast(scope, dest_type, operand);1453 return mod.bitcast(scope, dest_type, operand);
1393}1454}
13941455
1395fn analyzeInstFloatCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1456fn zirFloatcast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1396 const tracy = trace(@src());1457 const tracy = trace(@src());
1397 defer tracy.end();1458 defer tracy.end();
1398 const dest_type = try resolveType(mod, scope, inst.positionals.lhs);1459 const dest_type = try resolveType(mod, scope, inst.positionals.lhs);
...@@ -1430,7 +1491,7 @@ fn analyzeInstFloatCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) Inne...@@ -1430,7 +1491,7 @@ fn analyzeInstFloatCast(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) Inne
1430 return mod.fail(scope, inst.base.src, "TODO implement analyze widen or shorten float", .{});1491 return mod.fail(scope, inst.base.src, "TODO implement analyze widen or shorten float", .{});
1431}1492}
14321493
1433fn elemVal(mod: *Module, scope: *Scope, inst: *zir.Inst.Elem) InnerError!*Inst {1494fn zirElemVal(mod: *Module, scope: *Scope, inst: *zir.Inst.Elem) InnerError!*Inst {
1434 const tracy = trace(@src());1495 const tracy = trace(@src());
1435 defer tracy.end();1496 defer tracy.end();
14361497
...@@ -1441,7 +1502,7 @@ fn elemVal(mod: *Module, scope: *Scope, inst: *zir.Inst.Elem) InnerError!*Inst {...@@ -1441,7 +1502,7 @@ fn elemVal(mod: *Module, scope: *Scope, inst: *zir.Inst.Elem) InnerError!*Inst {
1441 return mod.analyzeDeref(scope, inst.base.src, result_ptr, result_ptr.src);1502 return mod.analyzeDeref(scope, inst.base.src, result_ptr, result_ptr.src);
1442}1503}
14431504
1444fn elemPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.Elem) InnerError!*Inst {1505fn zirElemPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.Elem) InnerError!*Inst {
1445 const tracy = trace(@src());1506 const tracy = trace(@src());
1446 defer tracy.end();1507 defer tracy.end();
14471508
...@@ -1450,7 +1511,7 @@ fn elemPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.Elem) InnerError!*Inst {...@@ -1450,7 +1511,7 @@ fn elemPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.Elem) InnerError!*Inst {
1450 return mod.elemPtr(scope, inst.base.src, array_ptr, elem_index);1511 return mod.elemPtr(scope, inst.base.src, array_ptr, elem_index);
1451}1512}
14521513
1453fn analyzeInstSlice(mod: *Module, scope: *Scope, inst: *zir.Inst.Slice) InnerError!*Inst {1514fn zirSlice(mod: *Module, scope: *Scope, inst: *zir.Inst.Slice) InnerError!*Inst {
1454 const tracy = trace(@src());1515 const tracy = trace(@src());
1455 defer tracy.end();1516 defer tracy.end();
1456 const array_ptr = try resolveInst(mod, scope, inst.positionals.array_ptr);1517 const array_ptr = try resolveInst(mod, scope, inst.positionals.array_ptr);
...@@ -1461,7 +1522,7 @@ fn analyzeInstSlice(mod: *Module, scope: *Scope, inst: *zir.Inst.Slice) InnerErr...@@ -1461,7 +1522,7 @@ fn analyzeInstSlice(mod: *Module, scope: *Scope, inst: *zir.Inst.Slice) InnerErr
1461 return mod.analyzeSlice(scope, inst.base.src, array_ptr, start, end, sentinel);1522 return mod.analyzeSlice(scope, inst.base.src, array_ptr, start, end, sentinel);
1462}1523}
14631524
1464fn analyzeInstSliceStart(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1525fn zirSliceStart(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1465 const tracy = trace(@src());1526 const tracy = trace(@src());
1466 defer tracy.end();1527 defer tracy.end();
1467 const array_ptr = try resolveInst(mod, scope, inst.positionals.lhs);1528 const array_ptr = try resolveInst(mod, scope, inst.positionals.lhs);
...@@ -1470,7 +1531,7 @@ fn analyzeInstSliceStart(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) Inn...@@ -1470,7 +1531,7 @@ fn analyzeInstSliceStart(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) Inn
1470 return mod.analyzeSlice(scope, inst.base.src, array_ptr, start, null, null);1531 return mod.analyzeSlice(scope, inst.base.src, array_ptr, start, null, null);
1471}1532}
14721533
1473fn analyzeInstSwitchRange(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1534fn zirSwitchRange(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1474 const tracy = trace(@src());1535 const tracy = trace(@src());
1475 defer tracy.end();1536 defer tracy.end();
1476 const start = try resolveInst(mod, scope, inst.positionals.lhs);1537 const start = try resolveInst(mod, scope, inst.positionals.lhs);
...@@ -1484,21 +1545,19 @@ fn analyzeInstSwitchRange(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) In...@@ -1484,21 +1545,19 @@ fn analyzeInstSwitchRange(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) In
1484 .Int, .ComptimeInt => {},1545 .Int, .ComptimeInt => {},
1485 else => return mod.constVoid(scope, inst.base.src),1546 else => return mod.constVoid(scope, inst.base.src),
1486 }1547 }
1487 if (start.value()) |start_val| {1548 // .switch_range must be inside a comptime scope
1488 if (end.value()) |end_val| {1549 const start_val = start.value().?;
1489 if (start_val.compare(.gte, end_val)) {1550 const end_val = end.value().?;
1490 return mod.fail(scope, inst.base.src, "range start value must be smaller than the end value", .{});1551 if (start_val.compare(.gte, end_val)) {
1491 }1552 return mod.fail(scope, inst.base.src, "range start value must be smaller than the end value", .{});
1492 }
1493 }1553 }
1494 return mod.constVoid(scope, inst.base.src);1554 return mod.constVoid(scope, inst.base.src);
1495}1555}
14961556
1497fn analyzeInstSwitchBr(mod: *Module, scope: *Scope, inst: *zir.Inst.SwitchBr) InnerError!*Inst {1557fn zirSwitchBr(mod: *Module, scope: *Scope, inst: *zir.Inst.SwitchBr) InnerError!*Inst {
1498 const tracy = trace(@src());1558 const tracy = trace(@src());
1499 defer tracy.end();1559 defer tracy.end();
1500 const target_ptr = try resolveInst(mod, scope, inst.positionals.target_ptr);1560 const target = try resolveInst(mod, scope, inst.positionals.target);
1501 const target = try mod.analyzeDeref(scope, inst.base.src, target_ptr, inst.positionals.target_ptr.src);
1502 try validateSwitch(mod, scope, target, inst);1561 try validateSwitch(mod, scope, target, inst);
15031562
1504 if (try mod.resolveDefinedValue(scope, target)) |target_val| {1563 if (try mod.resolveDefinedValue(scope, target)) |target_val| {
...@@ -1562,7 +1621,7 @@ fn analyzeInstSwitchBr(mod: *Module, scope: *Scope, inst: *zir.Inst.SwitchBr) In...@@ -1562,7 +1621,7 @@ fn analyzeInstSwitchBr(mod: *Module, scope: *Scope, inst: *zir.Inst.SwitchBr) In
1562 .instructions = try parent_block.arena.dupe(*Inst, case_block.instructions.items),1621 .instructions = try parent_block.arena.dupe(*Inst, case_block.instructions.items),
1563 };1622 };
15641623
1565 return mod.addSwitchBr(parent_block, inst.base.src, target_ptr, cases, else_body);1624 return mod.addSwitchBr(parent_block, inst.base.src, target, cases, else_body);
1566}1625}
15671626
1568fn validateSwitch(mod: *Module, scope: *Scope, target: *Inst, inst: *zir.Inst.SwitchBr) InnerError!void {1627fn validateSwitch(mod: *Module, scope: *Scope, target: *Inst, inst: *zir.Inst.SwitchBr) InnerError!void {
...@@ -1698,7 +1757,7 @@ fn validateSwitch(mod: *Module, scope: *Scope, target: *Inst, inst: *zir.Inst.Sw...@@ -1698,7 +1757,7 @@ fn validateSwitch(mod: *Module, scope: *Scope, target: *Inst, inst: *zir.Inst.Sw
1698 }1757 }
1699}1758}
17001759
1701fn analyzeInstImport(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {1760fn zirImport(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
1702 const tracy = trace(@src());1761 const tracy = trace(@src());
1703 defer tracy.end();1762 defer tracy.end();
1704 const operand = try resolveConstString(mod, scope, inst.positionals.operand);1763 const operand = try resolveConstString(mod, scope, inst.positionals.operand);
...@@ -1718,19 +1777,19 @@ fn analyzeInstImport(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerErr...@@ -1718,19 +1777,19 @@ fn analyzeInstImport(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerErr
1718 return mod.constType(scope, inst.base.src, file_scope.root_container.ty);1777 return mod.constType(scope, inst.base.src, file_scope.root_container.ty);
1719}1778}
17201779
1721fn analyzeInstShl(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1780fn zirShl(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1722 const tracy = trace(@src());1781 const tracy = trace(@src());
1723 defer tracy.end();1782 defer tracy.end();
1724 return mod.fail(scope, inst.base.src, "TODO implement analyzeInstShl", .{});1783 return mod.fail(scope, inst.base.src, "TODO implement zirShl", .{});
1725}1784}
17261785
1727fn analyzeInstShr(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1786fn zirShr(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1728 const tracy = trace(@src());1787 const tracy = trace(@src());
1729 defer tracy.end();1788 defer tracy.end();
1730 return mod.fail(scope, inst.base.src, "TODO implement analyzeInstShr", .{});1789 return mod.fail(scope, inst.base.src, "TODO implement zirShr", .{});
1731}1790}
17321791
1733fn analyzeInstBitwise(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1792fn zirBitwise(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1734 const tracy = trace(@src());1793 const tracy = trace(@src());
1735 defer tracy.end();1794 defer tracy.end();
17361795
...@@ -1767,7 +1826,7 @@ fn analyzeInstBitwise(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE...@@ -1767,7 +1826,7 @@ fn analyzeInstBitwise(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE
1767 const is_int = scalar_tag == .Int or scalar_tag == .ComptimeInt;1826 const is_int = scalar_tag == .Int or scalar_tag == .ComptimeInt;
17681827
1769 if (!is_int) {1828 if (!is_int) {
1770 return mod.fail(scope, inst.base.src, "invalid operands to binary bitwise expression: '{}' and '{}'", .{ @tagName(lhs.ty.zigTypeTag()), @tagName(rhs.ty.zigTypeTag()) });1829 return mod.fail(scope, inst.base.src, "invalid operands to binary bitwise expression: '{s}' and '{s}'", .{ @tagName(lhs.ty.zigTypeTag()), @tagName(rhs.ty.zigTypeTag()) });
1771 }1830 }
17721831
1773 if (casted_lhs.value()) |lhs_val| {1832 if (casted_lhs.value()) |lhs_val| {
...@@ -1784,8 +1843,8 @@ fn analyzeInstBitwise(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE...@@ -1784,8 +1843,8 @@ fn analyzeInstBitwise(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE
17841843
1785 const b = try mod.requireRuntimeBlock(scope, inst.base.src);1844 const b = try mod.requireRuntimeBlock(scope, inst.base.src);
1786 const ir_tag = switch (inst.base.tag) {1845 const ir_tag = switch (inst.base.tag) {
1787 .bitand => Inst.Tag.bitand,1846 .bit_and => Inst.Tag.bit_and,
1788 .bitor => Inst.Tag.bitor,1847 .bit_or => Inst.Tag.bit_or,
1789 .xor => Inst.Tag.xor,1848 .xor => Inst.Tag.xor,
1790 else => unreachable,1849 else => unreachable,
1791 };1850 };
...@@ -1793,25 +1852,25 @@ fn analyzeInstBitwise(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE...@@ -1793,25 +1852,25 @@ fn analyzeInstBitwise(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerE
1793 return mod.addBinOp(b, inst.base.src, scalar_type, ir_tag, casted_lhs, casted_rhs);1852 return mod.addBinOp(b, inst.base.src, scalar_type, ir_tag, casted_lhs, casted_rhs);
1794}1853}
17951854
1796fn analyzeInstBitNot(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {1855fn zirBitNot(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
1797 const tracy = trace(@src());1856 const tracy = trace(@src());
1798 defer tracy.end();1857 defer tracy.end();
1799 return mod.fail(scope, inst.base.src, "TODO implement analyzeInstBitNot", .{});1858 return mod.fail(scope, inst.base.src, "TODO implement zirBitNot", .{});
1800}1859}
18011860
1802fn analyzeInstArrayCat(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1861fn zirArrayCat(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1803 const tracy = trace(@src());1862 const tracy = trace(@src());
1804 defer tracy.end();1863 defer tracy.end();
1805 return mod.fail(scope, inst.base.src, "TODO implement analyzeInstArrayCat", .{});1864 return mod.fail(scope, inst.base.src, "TODO implement zirArrayCat", .{});
1806}1865}
18071866
1808fn analyzeInstArrayMul(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1867fn zirArrayMul(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1809 const tracy = trace(@src());1868 const tracy = trace(@src());
1810 defer tracy.end();1869 defer tracy.end();
1811 return mod.fail(scope, inst.base.src, "TODO implement analyzeInstArrayMul", .{});1870 return mod.fail(scope, inst.base.src, "TODO implement zirArrayMul", .{});
1812}1871}
18131872
1814fn analyzeInstArithmetic(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {1873fn zirArithmetic(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
1815 const tracy = trace(@src());1874 const tracy = trace(@src());
1816 defer tracy.end();1875 defer tracy.end();
18171876
...@@ -1912,14 +1971,14 @@ fn analyzeInstComptimeOp(mod: *Module, scope: *Scope, res_type: Type, inst: *zir...@@ -1912,14 +1971,14 @@ fn analyzeInstComptimeOp(mod: *Module, scope: *Scope, res_type: Type, inst: *zir
1912 });1971 });
1913}1972}
19141973
1915fn analyzeInstDeref(mod: *Module, scope: *Scope, deref: *zir.Inst.UnOp) InnerError!*Inst {1974fn zirDeref(mod: *Module, scope: *Scope, deref: *zir.Inst.UnOp) InnerError!*Inst {
1916 const tracy = trace(@src());1975 const tracy = trace(@src());
1917 defer tracy.end();1976 defer tracy.end();
1918 const ptr = try resolveInst(mod, scope, deref.positionals.operand);1977 const ptr = try resolveInst(mod, scope, deref.positionals.operand);
1919 return mod.analyzeDeref(scope, deref.base.src, ptr, deref.positionals.operand.src);1978 return mod.analyzeDeref(scope, deref.base.src, ptr, deref.positionals.operand.src);
1920}1979}
19211980
1922fn analyzeInstAsm(mod: *Module, scope: *Scope, assembly: *zir.Inst.Asm) InnerError!*Inst {1981fn zirAsm(mod: *Module, scope: *Scope, assembly: *zir.Inst.Asm) InnerError!*Inst {
1923 const tracy = trace(@src());1982 const tracy = trace(@src());
1924 defer tracy.end();1983 defer tracy.end();
1925 const return_type = try resolveType(mod, scope, assembly.positionals.return_type);1984 const return_type = try resolveType(mod, scope, assembly.positionals.return_type);
...@@ -1960,7 +2019,7 @@ fn analyzeInstAsm(mod: *Module, scope: *Scope, assembly: *zir.Inst.Asm) InnerErr...@@ -1960,7 +2019,7 @@ fn analyzeInstAsm(mod: *Module, scope: *Scope, assembly: *zir.Inst.Asm) InnerErr
1960 return &inst.base;2019 return &inst.base;
1961}2020}
19622021
1963fn analyzeInstCmp(2022fn zirCmp(
1964 mod: *Module,2023 mod: *Module,
1965 scope: *Scope,2024 scope: *Scope,
1966 inst: *zir.Inst.BinOp,2025 inst: *zir.Inst.BinOp,
...@@ -2018,14 +2077,14 @@ fn analyzeInstCmp(...@@ -2018,14 +2077,14 @@ fn analyzeInstCmp(
2018 return mod.fail(scope, inst.base.src, "TODO implement more cmp analysis", .{});2077 return mod.fail(scope, inst.base.src, "TODO implement more cmp analysis", .{});
2019}2078}
20202079
2021fn analyzeInstTypeOf(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {2080fn zirTypeof(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
2022 const tracy = trace(@src());2081 const tracy = trace(@src());
2023 defer tracy.end();2082 defer tracy.end();
2024 const operand = try resolveInst(mod, scope, inst.positionals.operand);2083 const operand = try resolveInst(mod, scope, inst.positionals.operand);
2025 return mod.constType(scope, inst.base.src, operand.ty);2084 return mod.constType(scope, inst.base.src, operand.ty);
2026}2085}
20272086
2028fn analyzeInstTypeOfPeer(mod: *Module, scope: *Scope, inst: *zir.Inst.TypeOfPeer) InnerError!*Inst {2087fn zirTypeofPeer(mod: *Module, scope: *Scope, inst: *zir.Inst.TypeOfPeer) InnerError!*Inst {
2029 const tracy = trace(@src());2088 const tracy = trace(@src());
2030 defer tracy.end();2089 defer tracy.end();
2031 var insts_to_res = try mod.gpa.alloc(*ir.Inst, inst.positionals.items.len);2090 var insts_to_res = try mod.gpa.alloc(*ir.Inst, inst.positionals.items.len);
...@@ -2037,7 +2096,7 @@ fn analyzeInstTypeOfPeer(mod: *Module, scope: *Scope, inst: *zir.Inst.TypeOfPeer...@@ -2037,7 +2096,7 @@ fn analyzeInstTypeOfPeer(mod: *Module, scope: *Scope, inst: *zir.Inst.TypeOfPeer
2037 return mod.constType(scope, inst.base.src, pt_res);2096 return mod.constType(scope, inst.base.src, pt_res);
2038}2097}
20392098
2040fn analyzeInstBoolNot(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {2099fn zirBoolNot(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
2041 const tracy = trace(@src());2100 const tracy = trace(@src());
2042 defer tracy.end();2101 defer tracy.end();
2043 const uncasted_operand = try resolveInst(mod, scope, inst.positionals.operand);2102 const uncasted_operand = try resolveInst(mod, scope, inst.positionals.operand);
...@@ -2050,7 +2109,7 @@ fn analyzeInstBoolNot(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerEr...@@ -2050,7 +2109,7 @@ fn analyzeInstBoolNot(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerEr
2050 return mod.addUnOp(b, inst.base.src, bool_type, .not, operand);2109 return mod.addUnOp(b, inst.base.src, bool_type, .not, operand);
2051}2110}
20522111
2053fn analyzeInstBoolOp(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {2112fn zirBoolOp(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerError!*Inst {
2054 const tracy = trace(@src());2113 const tracy = trace(@src());
2055 defer tracy.end();2114 defer tracy.end();
2056 const bool_type = Type.initTag(.bool);2115 const bool_type = Type.initTag(.bool);
...@@ -2059,7 +2118,7 @@ fn analyzeInstBoolOp(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerEr...@@ -2059,7 +2118,7 @@ fn analyzeInstBoolOp(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerEr
2059 const uncasted_rhs = try resolveInst(mod, scope, inst.positionals.rhs);2118 const uncasted_rhs = try resolveInst(mod, scope, inst.positionals.rhs);
2060 const rhs = try mod.coerce(scope, bool_type, uncasted_rhs);2119 const rhs = try mod.coerce(scope, bool_type, uncasted_rhs);
20612120
2062 const is_bool_or = inst.base.tag == .boolor;2121 const is_bool_or = inst.base.tag == .bool_or;
20632122
2064 if (lhs.value()) |lhs_val| {2123 if (lhs.value()) |lhs_val| {
2065 if (rhs.value()) |rhs_val| {2124 if (rhs.value()) |rhs_val| {
...@@ -2071,17 +2130,17 @@ fn analyzeInstBoolOp(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerEr...@@ -2071,17 +2130,17 @@ fn analyzeInstBoolOp(mod: *Module, scope: *Scope, inst: *zir.Inst.BinOp) InnerEr
2071 }2130 }
2072 }2131 }
2073 const b = try mod.requireRuntimeBlock(scope, inst.base.src);2132 const b = try mod.requireRuntimeBlock(scope, inst.base.src);
2074 return mod.addBinOp(b, inst.base.src, bool_type, if (is_bool_or) .boolor else .booland, lhs, rhs);2133 return mod.addBinOp(b, inst.base.src, bool_type, if (is_bool_or) .bool_or else .bool_and, lhs, rhs);
2075}2134}
20762135
2077fn isNull(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, invert_logic: bool) InnerError!*Inst {2136fn zirIsNull(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, invert_logic: bool) InnerError!*Inst {
2078 const tracy = trace(@src());2137 const tracy = trace(@src());
2079 defer tracy.end();2138 defer tracy.end();
2080 const operand = try resolveInst(mod, scope, inst.positionals.operand);2139 const operand = try resolveInst(mod, scope, inst.positionals.operand);
2081 return mod.analyzeIsNull(scope, inst.base.src, operand, invert_logic);2140 return mod.analyzeIsNull(scope, inst.base.src, operand, invert_logic);
2082}2141}
20832142
2084fn isNullPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, invert_logic: bool) InnerError!*Inst {2143fn zirIsNullPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, invert_logic: bool) InnerError!*Inst {
2085 const tracy = trace(@src());2144 const tracy = trace(@src());
2086 defer tracy.end();2145 defer tracy.end();
2087 const ptr = try resolveInst(mod, scope, inst.positionals.operand);2146 const ptr = try resolveInst(mod, scope, inst.positionals.operand);
...@@ -2089,14 +2148,14 @@ fn isNullPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, invert_logic: bo...@@ -2089,14 +2148,14 @@ fn isNullPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, invert_logic: bo
2089 return mod.analyzeIsNull(scope, inst.base.src, loaded, invert_logic);2148 return mod.analyzeIsNull(scope, inst.base.src, loaded, invert_logic);
2090}2149}
20912150
2092fn isErr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {2151fn zirIsErr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
2093 const tracy = trace(@src());2152 const tracy = trace(@src());
2094 defer tracy.end();2153 defer tracy.end();
2095 const operand = try resolveInst(mod, scope, inst.positionals.operand);2154 const operand = try resolveInst(mod, scope, inst.positionals.operand);
2096 return mod.analyzeIsErr(scope, inst.base.src, operand);2155 return mod.analyzeIsErr(scope, inst.base.src, operand);
2097}2156}
20982157
2099fn isErrPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {2158fn zirIsErrPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
2100 const tracy = trace(@src());2159 const tracy = trace(@src());
2101 defer tracy.end();2160 defer tracy.end();
2102 const ptr = try resolveInst(mod, scope, inst.positionals.operand);2161 const ptr = try resolveInst(mod, scope, inst.positionals.operand);
...@@ -2104,7 +2163,7 @@ fn isErrPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst...@@ -2104,7 +2163,7 @@ fn isErrPtr(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst
2104 return mod.analyzeIsErr(scope, inst.base.src, loaded);2163 return mod.analyzeIsErr(scope, inst.base.src, loaded);
2105}2164}
21062165
2107fn analyzeInstCondBr(mod: *Module, scope: *Scope, inst: *zir.Inst.CondBr) InnerError!*Inst {2166fn zirCondbr(mod: *Module, scope: *Scope, inst: *zir.Inst.CondBr) InnerError!*Inst {
2108 const tracy = trace(@src());2167 const tracy = trace(@src());
2109 defer tracy.end();2168 defer tracy.end();
2110 const uncasted_cond = try resolveInst(mod, scope, inst.positionals.condition);2169 const uncasted_cond = try resolveInst(mod, scope, inst.positionals.condition);
...@@ -2153,7 +2212,7 @@ fn analyzeInstCondBr(mod: *Module, scope: *Scope, inst: *zir.Inst.CondBr) InnerE...@@ -2153,7 +2212,7 @@ fn analyzeInstCondBr(mod: *Module, scope: *Scope, inst: *zir.Inst.CondBr) InnerE
2153 return mod.addCondBr(parent_block, inst.base.src, cond, then_body, else_body);2212 return mod.addCondBr(parent_block, inst.base.src, cond, then_body, else_body);
2154}2213}
21552214
2156fn analyzeInstUnreachable(2215fn zirUnreachable(
2157 mod: *Module,2216 mod: *Module,
2158 scope: *Scope,2217 scope: *Scope,
2159 unreach: *zir.Inst.NoOp,2218 unreach: *zir.Inst.NoOp,
...@@ -2170,7 +2229,7 @@ fn analyzeInstUnreachable(...@@ -2170,7 +2229,7 @@ fn analyzeInstUnreachable(
2170 }2229 }
2171}2230}
21722231
2173fn analyzeInstRet(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {2232fn zirReturn(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!*Inst {
2174 const tracy = trace(@src());2233 const tracy = trace(@src());
2175 defer tracy.end();2234 defer tracy.end();
2176 const operand = try resolveInst(mod, scope, inst.positionals.operand);2235 const operand = try resolveInst(mod, scope, inst.positionals.operand);
...@@ -2179,13 +2238,14 @@ fn analyzeInstRet(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!...@@ -2179,13 +2238,14 @@ fn analyzeInstRet(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp) InnerError!
2179 if (b.inlining) |inlining| {2238 if (b.inlining) |inlining| {
2180 // We are inlining a function call; rewrite the `ret` as a `break`.2239 // We are inlining a function call; rewrite the `ret` as a `break`.
2181 try inlining.merges.results.append(mod.gpa, operand);2240 try inlining.merges.results.append(mod.gpa, operand);
2182 return mod.addBr(b, inst.base.src, inlining.merges.block_inst, operand);2241 const br = try mod.addBr(b, inst.base.src, inlining.merges.block_inst, operand);
2242 return &br.base;
2183 }2243 }
21842244
2185 return mod.addUnOp(b, inst.base.src, Type.initTag(.noreturn), .ret, operand);2245 return mod.addUnOp(b, inst.base.src, Type.initTag(.noreturn), .ret, operand);
2186}2246}
21872247
2188fn analyzeInstRetVoid(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {2248fn zirReturnVoid(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerError!*Inst {
2189 const tracy = trace(@src());2249 const tracy = trace(@src());
2190 defer tracy.end();2250 defer tracy.end();
2191 const b = try mod.requireFunctionBlock(scope, inst.base.src);2251 const b = try mod.requireFunctionBlock(scope, inst.base.src);
...@@ -2193,7 +2253,8 @@ fn analyzeInstRetVoid(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerEr...@@ -2193,7 +2253,8 @@ fn analyzeInstRetVoid(mod: *Module, scope: *Scope, inst: *zir.Inst.NoOp) InnerEr
2193 // We are inlining a function call; rewrite the `retvoid` as a `breakvoid`.2253 // We are inlining a function call; rewrite the `retvoid` as a `breakvoid`.
2194 const void_inst = try mod.constVoid(scope, inst.base.src);2254 const void_inst = try mod.constVoid(scope, inst.base.src);
2195 try inlining.merges.results.append(mod.gpa, void_inst);2255 try inlining.merges.results.append(mod.gpa, void_inst);
2196 return mod.addBr(b, inst.base.src, inlining.merges.block_inst, void_inst);2256 const br = try mod.addBr(b, inst.base.src, inlining.merges.block_inst, void_inst);
2257 return &br.base;
2197 }2258 }
21982259
2199 if (b.func) |func| {2260 if (b.func) |func| {
...@@ -2216,27 +2277,7 @@ fn floatOpAllowed(tag: zir.Inst.Tag) bool {...@@ -2216,27 +2277,7 @@ fn floatOpAllowed(tag: zir.Inst.Tag) bool {
2216 };2277 };
2217}2278}
22182279
2219fn analyzeBreak(2280fn zirSimplePtrType(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, mutable: bool, size: std.builtin.TypeInfo.Pointer.Size) InnerError!*Inst {
2220 mod: *Module,
2221 scope: *Scope,
2222 src: usize,
2223 zir_block: *zir.Inst.Block,
2224 operand: *Inst,
2225) InnerError!*Inst {
2226 var opt_block = scope.cast(Scope.Block);
2227 while (opt_block) |block| {
2228 if (block.label) |*label| {
2229 if (label.zir_block == zir_block) {
2230 try label.merges.results.append(mod.gpa, operand);
2231 const b = try mod.requireFunctionBlock(scope, src);
2232 return mod.addBr(b, src, label.merges.block_inst, operand);
2233 }
2234 }
2235 opt_block = block.parent;
2236 } else unreachable;
2237}
2238
2239fn analyzeInstSimplePtrType(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, mutable: bool, size: std.builtin.TypeInfo.Pointer.Size) InnerError!*Inst {
2240 const tracy = trace(@src());2281 const tracy = trace(@src());
2241 defer tracy.end();2282 defer tracy.end();
2242 const elem_type = try resolveType(mod, scope, inst.positionals.operand);2283 const elem_type = try resolveType(mod, scope, inst.positionals.operand);
...@@ -2244,7 +2285,7 @@ fn analyzeInstSimplePtrType(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, m...@@ -2244,7 +2285,7 @@ fn analyzeInstSimplePtrType(mod: *Module, scope: *Scope, inst: *zir.Inst.UnOp, m
2244 return mod.constType(scope, inst.base.src, ty);2285 return mod.constType(scope, inst.base.src, ty);
2245}2286}
22462287
2247fn analyzeInstPtrType(mod: *Module, scope: *Scope, inst: *zir.Inst.PtrType) InnerError!*Inst {2288fn zirPtrType(mod: *Module, scope: *Scope, inst: *zir.Inst.PtrType) InnerError!*Inst {
2248 const tracy = trace(@src());2289 const tracy = trace(@src());
2249 defer tracy.end();2290 defer tracy.end();
2250 // TODO lazy values2291 // TODO lazy values
test/cli.zig+5-5
...@@ -51,9 +51,9 @@ fn unwrapArg(arg: UnwrapArgError![]u8) UnwrapArgError![]u8 {...@@ -51,9 +51,9 @@ fn unwrapArg(arg: UnwrapArgError![]u8) UnwrapArgError![]u8 {
51}51}
5252
53fn printCmd(cwd: []const u8, argv: []const []const u8) void {53fn printCmd(cwd: []const u8, argv: []const []const u8) void {
54 std.debug.warn("cd {} && ", .{cwd});54 std.debug.warn("cd {s} && ", .{cwd});
55 for (argv) |arg| {55 for (argv) |arg| {
56 std.debug.warn("{} ", .{arg});56 std.debug.warn("{s} ", .{arg});
57 }57 }
58 std.debug.warn("\n", .{});58 std.debug.warn("\n", .{});
59}59}
...@@ -75,14 +75,14 @@ fn exec(cwd: []const u8, expect_0: bool, argv: []const []const u8) !ChildProcess...@@ -75,14 +75,14 @@ fn exec(cwd: []const u8, expect_0: bool, argv: []const []const u8) !ChildProcess
75 if ((code != 0) == expect_0) {75 if ((code != 0) == expect_0) {
76 std.debug.warn("The following command exited with error code {}:\n", .{code});76 std.debug.warn("The following command exited with error code {}:\n", .{code});
77 printCmd(cwd, argv);77 printCmd(cwd, argv);
78 std.debug.warn("stderr:\n{}\n", .{result.stderr});78 std.debug.warn("stderr:\n{s}\n", .{result.stderr});
79 return error.CommandFailed;79 return error.CommandFailed;
80 }80 }
81 },81 },
82 else => {82 else => {
83 std.debug.warn("The following command terminated unexpectedly:\n", .{});83 std.debug.warn("The following command terminated unexpectedly:\n", .{});
84 printCmd(cwd, argv);84 printCmd(cwd, argv);
85 std.debug.warn("stderr:\n{}\n", .{result.stderr});85 std.debug.warn("stderr:\n{s}\n", .{result.stderr});
86 return error.CommandFailed;86 return error.CommandFailed;
87 },87 },
88 }88 }
...@@ -113,7 +113,7 @@ fn testGodboltApi(zig_exe: []const u8, dir_path: []const u8) anyerror!void {...@@ -113,7 +113,7 @@ fn testGodboltApi(zig_exe: []const u8, dir_path: []const u8) anyerror!void {
113 \\ return num * num;113 \\ return num * num;
114 \\}114 \\}
115 \\extern fn zig_panic() noreturn;115 \\extern fn zig_panic() noreturn;
116 \\pub inline fn panic(msg: []const u8, error_return_trace: ?*@import("builtin").StackTrace) noreturn {116 \\pub fn panic(msg: []const u8, error_return_trace: ?*@import("builtin").StackTrace) noreturn {
117 \\ zig_panic();117 \\ zig_panic();
118 \\}118 \\}
119 );119 );
test/compile_errors.zig+24-22
...@@ -323,7 +323,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -323,7 +323,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
323 \\ e: E,323 \\ e: E,
324 \\};324 \\};
325 \\export fn entry() void {325 \\export fn entry() void {
326 \\ if (@TagType(E) != u8) @compileError("did not infer u8 tag type");326 \\ if (@typeInfo(E).Enum.tag_type != u8) @compileError("did not infer u8 tag type");
327 \\ const s: S = undefined;327 \\ const s: S = undefined;
328 \\}328 \\}
329 , &[_][]const u8{329 , &[_][]const u8{
...@@ -1648,7 +1648,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -1648,7 +1648,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
1648 \\ @call(.{ .modifier = .compile_time }, baz, .{});1648 \\ @call(.{ .modifier = .compile_time }, baz, .{});
1649 \\}1649 \\}
1650 \\fn foo() void {}1650 \\fn foo() void {}
1651 \\inline fn bar() void {}1651 \\fn bar() callconv(.Inline) void {}
1652 \\fn baz1() void {}1652 \\fn baz1() void {}
1653 \\fn baz2() void {}1653 \\fn baz2() void {}
1654 , &[_][]const u8{1654 , &[_][]const u8{
...@@ -2728,7 +2728,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -2728,7 +2728,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
2728 \\const InvalidToken = struct {};2728 \\const InvalidToken = struct {};
2729 \\const ExpectedVarDeclOrFn = struct {};2729 \\const ExpectedVarDeclOrFn = struct {};
2730 , &[_][]const u8{2730 , &[_][]const u8{
2731 "tmp.zig:4:9: error: expected type '@TagType(Error)', found 'type'",2731 "tmp.zig:4:9: error: expected type '@typeInfo(Error).Union.tag_type.?', found 'type'",
2732 });2732 });
27332733
2734 cases.addTest("binary OR operator on error sets",2734 cases.addTest("binary OR operator on error sets",
...@@ -3944,7 +3944,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -3944,7 +3944,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
3944 \\export fn entry() void {3944 \\export fn entry() void {
3945 \\ var a = b;3945 \\ var a = b;
3946 \\}3946 \\}
3947 \\inline fn b() void { }3947 \\fn b() callconv(.Inline) void { }
3948 , &[_][]const u8{3948 , &[_][]const u8{
3949 "tmp.zig:2:5: error: functions marked inline must be stored in const or comptime var",3949 "tmp.zig:2:5: error: functions marked inline must be stored in const or comptime var",
3950 "tmp.zig:4:1: note: declared here",3950 "tmp.zig:4:1: note: declared here",
...@@ -6782,11 +6782,11 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -6782,11 +6782,11 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
6782 // \\export fn foo() void {6782 // \\export fn foo() void {
6783 // \\ bar();6783 // \\ bar();
6784 // \\}6784 // \\}
6785 // \\inline fn bar() void {6785 // \\fn bar() callconv(.Inline) void {
6786 // \\ baz();6786 // \\ baz();
6787 // \\ quux();6787 // \\ quux();
6788 // \\}6788 // \\}
6789 // \\inline fn baz() void {6789 // \\fn baz() callconv(.Inline) void {
6790 // \\ bar();6790 // \\ bar();
6791 // \\ quux();6791 // \\ quux();
6792 // \\}6792 // \\}
...@@ -6799,7 +6799,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -6799,7 +6799,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
6799 // \\export fn foo() void {6799 // \\export fn foo() void {
6800 // \\ quux(@ptrToInt(bar));6800 // \\ quux(@ptrToInt(bar));
6801 // \\}6801 // \\}
6802 // \\inline fn bar() void { }6802 // \\fn bar() callconv(.Inline) void { }
6803 // \\extern fn quux(usize) void;6803 // \\extern fn quux(usize) void;
6804 //, &[_][]const u8{6804 //, &[_][]const u8{
6805 // "tmp.zig:4:1: error: unable to inline function",6805 // "tmp.zig:4:1: error: unable to inline function",
...@@ -7207,7 +7207,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -7207,7 +7207,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
7207 \\export fn entry() void {7207 \\export fn entry() void {
7208 \\ foo();7208 \\ foo();
7209 \\}7209 \\}
7210 \\inline fn foo() void {7210 \\fn foo() callconv(.Inline) void {
7211 \\ @setAlignStack(16);7211 \\ @setAlignStack(16);
7212 \\}7212 \\}
7213 , &[_][]const u8{7213 , &[_][]const u8{
...@@ -7462,24 +7462,12 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -7462,24 +7462,12 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
7462 "tmp.zig:4:5: note: declared here",7462 "tmp.zig:4:5: note: declared here",
7463 });7463 });
74647464
7465 cases.add("@TagType when union has no attached enum",
7466 \\const Foo = union {
7467 \\ A: i32,
7468 \\};
7469 \\export fn entry() void {
7470 \\ const x = @TagType(Foo);
7471 \\}
7472 , &[_][]const u8{
7473 "tmp.zig:5:24: error: union 'Foo' has no tag",
7474 "tmp.zig:1:13: note: consider 'union(enum)' here",
7475 });
7476
7477 cases.add("non-integer tag type to automatic union enum",7465 cases.add("non-integer tag type to automatic union enum",
7478 \\const Foo = union(enum(f32)) {7466 \\const Foo = union(enum(f32)) {
7479 \\ A: i32,7467 \\ A: i32,
7480 \\};7468 \\};
7481 \\export fn entry() void {7469 \\export fn entry() void {
7482 \\ const x = @TagType(Foo);7470 \\ const x = @typeInfo(Foo).Union.tag_type.?;
7483 \\}7471 \\}
7484 , &[_][]const u8{7472 , &[_][]const u8{
7485 "tmp.zig:1:24: error: expected integer tag type, found 'f32'",7473 "tmp.zig:1:24: error: expected integer tag type, found 'f32'",
...@@ -7490,7 +7478,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -7490,7 +7478,7 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
7490 \\ A: i32,7478 \\ A: i32,
7491 \\};7479 \\};
7492 \\export fn entry() void {7480 \\export fn entry() void {
7493 \\ const x = @TagType(Foo);7481 \\ const x = @typeInfo(Foo).Union.tag_type.?;
7494 \\}7482 \\}
7495 , &[_][]const u8{7483 , &[_][]const u8{
7496 "tmp.zig:1:19: error: expected enum tag type, found 'u32'",7484 "tmp.zig:1:19: error: expected enum tag type, found 'u32'",
...@@ -7981,6 +7969,20 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {...@@ -7981,6 +7969,20 @@ pub fn addCases(cases: *tests.CompileErrorContext) void {
7981 "tmp.zig:7:37: note: referenced here",7969 "tmp.zig:7:37: note: referenced here",
7982 });7970 });
79837971
7972 // issue #7810
7973 cases.add("comptime slice-len increment beyond bounds",
7974 \\export fn foo_slice_len_increment_beyond_bounds() void {
7975 \\ comptime {
7976 \\ var buf_storage: [8]u8 = undefined;
7977 \\ var buf: []const u8 = buf_storage[0..];
7978 \\ buf.len += 1;
7979 \\ buf[8] = 42;
7980 \\ }
7981 \\}
7982 , &[_][]const u8{
7983 ":6:12: error: out of bounds slice",
7984 });
7985
7984 cases.add("comptime slice-sentinel is out of bounds (unterminated)",7986 cases.add("comptime slice-sentinel is out of bounds (unterminated)",
7985 \\export fn foo_array() void {7987 \\export fn foo_array() void {
7986 \\ comptime {7988 \\ comptime {
test/run_translated_c.zig+128
...@@ -794,4 +794,132 @@ pub fn addCases(cases: *tests.RunTranslatedCContext) void {...@@ -794,4 +794,132 @@ pub fn addCases(cases: *tests.RunTranslatedCContext) void {
794 \\ return 0;794 \\ return 0;
795 \\}795 \\}
796 , "");796 , "");
797
798 cases.add("Wide, UTF-16, and UTF-32 string literals",
799 \\#include <stdlib.h>
800 \\#include <stdint.h>
801 \\#include <wchar.h>
802 \\int main(void) {
803 \\ const wchar_t *wide_str = L"wide";
804 \\ const wchar_t wide_hello[] = L"hello";
805 \\ if (wcslen(wide_str) != 4) abort();
806 \\ if (wcslen(L"literal") != 7) abort();
807 \\ if (wcscmp(wide_hello, L"hello") != 0) abort();
808 \\
809 \\ const uint16_t *u16_str = u"wide";
810 \\ const uint16_t u16_hello[] = u"hello";
811 \\ if (u16_str[3] != u'e' || u16_str[4] != 0) abort();
812 \\ if (u16_hello[4] != u'o' || u16_hello[5] != 0) abort();
813 \\
814 \\ const uint32_t *u32_str = U"wide";
815 \\ const uint32_t u32_hello[] = U"hello";
816 \\ if (u32_str[3] != U'e' || u32_str[4] != 0) abort();
817 \\ if (u32_hello[4] != U'o' || u32_hello[5] != 0) abort();
818 \\ return 0;
819 \\}
820 , "");
821
822 cases.add("Address of function is no-op",
823 \\#include <stdlib.h>
824 \\#include <stdbool.h>
825 \\typedef int (*myfunc)(int);
826 \\int a(int arg) { return arg + 1;}
827 \\int b(int arg) { return arg + 2;}
828 \\int caller(myfunc fn, int arg) {
829 \\ return fn(arg);
830 \\}
831 \\int main() {
832 \\ myfunc arr[3] = {&a, &b, a};
833 \\ myfunc foo = a;
834 \\ myfunc bar = &(a);
835 \\ if (foo != bar) abort();
836 \\ if (arr[0] == arr[1]) abort();
837 \\ if (arr[0] != arr[2]) abort();
838 \\ if (caller(b, 40) != 42) abort();
839 \\ if (caller(&b, 40) != 42) abort();
840 \\ return 0;
841 \\}
842 , "");
843
844 cases.add("Obscure ways of calling functions; issue #4124",
845 \\#include <stdlib.h>
846 \\static int add(int a, int b) {
847 \\ return a + b;
848 \\}
849 \\typedef int (*adder)(int, int);
850 \\typedef void (*funcptr)(void);
851 \\int main() {
852 \\ if ((add)(1, 2) != 3) abort();
853 \\ if ((&add)(1, 2) != 3) abort();
854 \\ if (add(3, 1) != 4) abort();
855 \\ if ((*add)(2, 3) != 5) abort();
856 \\ if ((**add)(7, -1) != 6) abort();
857 \\ if ((***add)(-2, 9) != 7) abort();
858 \\
859 \\ int (*ptr)(int a, int b);
860 \\ ptr = add;
861 \\
862 \\ if (ptr(1, 2) != 3) abort();
863 \\ if ((*ptr)(3, 1) != 4) abort();
864 \\ if ((**ptr)(2, 3) != 5) abort();
865 \\ if ((***ptr)(7, -1) != 6) abort();
866 \\ if ((****ptr)(-2, 9) != 7) abort();
867 \\
868 \\ funcptr addr1 = (funcptr)(add);
869 \\ funcptr addr2 = (funcptr)(&add);
870 \\
871 \\ if (addr1 != addr2) abort();
872 \\ if (((int(*)(int, int))addr1)(1, 2) != 3) abort();
873 \\ if (((adder)addr2)(1, 2) != 3) abort();
874 \\ return 0;
875 \\}
876 , "");
877
878 cases.add("Return boolean expression as int; issue #6215",
879 \\#include <stdlib.h>
880 \\#include <stdbool.h>
881 \\bool actual_bool(void) { return 4 - 1 < 4;}
882 \\char char_bool_ret(void) { return 0 || 1; }
883 \\short short_bool_ret(void) { return 0 < 1; }
884 \\int int_bool_ret(void) { return 1 && 1; }
885 \\long long_bool_ret(void) { return !(0 > 1); }
886 \\static int GLOBAL = 1;
887 \\int nested_scopes(int a, int b) {
888 \\ if (a == 1) {
889 \\ int target = 1;
890 \\ return b == target;
891 \\ } else {
892 \\ int target = 2;
893 \\ if (b == target) {
894 \\ return GLOBAL == 1;
895 \\ }
896 \\ return target == 2;
897 \\ }
898 \\}
899 \\int main(void) {
900 \\ if (!actual_bool()) abort();
901 \\ if (!char_bool_ret()) abort();
902 \\ if (!short_bool_ret()) abort();
903 \\ if (!int_bool_ret()) abort();
904 \\ if (!long_bool_ret()) abort();
905 \\ if (!nested_scopes(1, 1)) abort();
906 \\ if (nested_scopes(1, 2)) abort();
907 \\ if (!nested_scopes(0, 2)) abort();
908 \\ if (!nested_scopes(0, 3)) abort();
909 \\ return 1 != 1;
910 \\}
911 , "");
912
913 cases.add("Comma operator should create new scope; issue #7989",
914 \\#include <stdlib.h>
915 \\#include <stdio.h>
916 \\int main(void) {
917 \\ if (1 || (abort(), 1)) {}
918 \\ if (0 && (1, printf("do not print\n"))) {}
919 \\ int x = 0;
920 \\ x = (x = 3, 4, x + 1);
921 \\ if (x != 4) abort();
922 \\ return 0;
923 \\}
924 , "");
797}925}
test/runtime_safety.zig+1-1
...@@ -74,7 +74,7 @@ pub fn addCases(cases: *tests.CompareOutputContext) void {...@@ -74,7 +74,7 @@ pub fn addCases(cases: *tests.CompareOutputContext) void {
74 \\pub fn main() void {74 \\pub fn main() void {
75 \\ var u: U = undefined;75 \\ var u: U = undefined;
76 \\ @memset(@ptrCast([*]u8, &u), 0x55, @sizeOf(U));76 \\ @memset(@ptrCast([*]u8, &u), 0x55, @sizeOf(U));
77 \\ var t: @TagType(U) = u;77 \\ var t: @typeInfo(U).Union.tag_type.? = u;
78 \\ var n = @tagName(t);78 \\ var n = @tagName(t);
79 \\}79 \\}
80 );80 );
test/stage1/behavior/bugs/1322.zig+2-2
...@@ -13,7 +13,7 @@ const C = struct {};...@@ -13,7 +13,7 @@ const C = struct {};
1313
14test "tagged union with all void fields but a meaningful tag" {14test "tagged union with all void fields but a meaningful tag" {
15 var a: A = A{ .b = B{ .c = C{} } };15 var a: A = A{ .b = B{ .c = C{} } };
16 std.testing.expect(@as(@TagType(B), a.b) == @TagType(B).c);16 std.testing.expect(@as(std.meta.Tag(B), a.b) == std.meta.Tag(B).c);
17 a = A{ .b = B.None };17 a = A{ .b = B.None };
18 std.testing.expect(@as(@TagType(B), a.b) == @TagType(B).None);18 std.testing.expect(@as(std.meta.Tag(B), a.b) == std.meta.Tag(B).None);
19}19}
test/stage1/behavior/enum.zig+8-7
...@@ -1,5 +1,6 @@...@@ -1,5 +1,6 @@
1const expect = @import("std").testing.expect;1const expect = @import("std").testing.expect;
2const mem = @import("std").mem;2const mem = @import("std").mem;
3const Tag = @import("std").meta.Tag;
34
4test "extern enum" {5test "extern enum" {
5 const S = struct {6 const S = struct {
...@@ -827,12 +828,12 @@ test "set enum tag type" {...@@ -827,12 +828,12 @@ test "set enum tag type" {
827 {828 {
828 var x = Small.One;829 var x = Small.One;
829 x = Small.Two;830 x = Small.Two;
830 comptime expect(@TagType(Small) == u2);831 comptime expect(Tag(Small) == u2);
831 }832 }
832 {833 {
833 var x = Small2.One;834 var x = Small2.One;
834 x = Small2.Two;835 x = Small2.Two;
835 comptime expect(@TagType(Small2) == u2);836 comptime expect(Tag(Small2) == u2);
836 }837 }
837}838}
838839
...@@ -905,11 +906,11 @@ fn getC(data: *const BitFieldOfEnums) C {...@@ -905,11 +906,11 @@ fn getC(data: *const BitFieldOfEnums) C {
905}906}
906907
907test "casting enum to its tag type" {908test "casting enum to its tag type" {
908 testCastEnumToTagType(Small2.Two);909 testCastEnumTag(Small2.Two);
909 comptime testCastEnumToTagType(Small2.Two);910 comptime testCastEnumTag(Small2.Two);
910}911}
911912
912fn testCastEnumToTagType(value: Small2) void {913fn testCastEnumTag(value: Small2) void {
913 expect(@enumToInt(value) == 1);914 expect(@enumToInt(value) == 1);
914}915}
915916
...@@ -1163,14 +1164,14 @@ test "enum with comptime_int tag type" {...@@ -1163,14 +1164,14 @@ test "enum with comptime_int tag type" {
1163 Two = 2,1164 Two = 2,
1164 Three = 1,1165 Three = 1,
1165 };1166 };
1166 comptime expect(@TagType(Enum) == comptime_int);1167 comptime expect(Tag(Enum) == comptime_int);
1167}1168}
11681169
1169test "enum with one member default to u0 tag type" {1170test "enum with one member default to u0 tag type" {
1170 const E0 = enum {1171 const E0 = enum {
1171 X,1172 X,
1172 };1173 };
1173 comptime expect(@TagType(E0) == u0);1174 comptime expect(Tag(E0) == u0);
1174}1175}
11751176
1176test "tagName on enum literals" {1177test "tagName on enum literals" {
test/stage1/behavior/fn.zig+1-1
...@@ -113,7 +113,7 @@ test "assign inline fn to const variable" {...@@ -113,7 +113,7 @@ test "assign inline fn to const variable" {
113 a();113 a();
114}114}
115115
116inline fn inlineFn() void {}116fn inlineFn() callconv(.Inline) void {}
117117
118test "pass by non-copying value" {118test "pass by non-copying value" {
119 expect(addPointCoords(Point{ .x = 1, .y = 2 }) == 3);119 expect(addPointCoords(Point{ .x = 1, .y = 2 }) == 3);
test/stage1/behavior/type_info.zig+1-1
...@@ -14,7 +14,7 @@ test "type info: tag type, void info" {...@@ -14,7 +14,7 @@ test "type info: tag type, void info" {
14}14}
1515
16fn testBasic() void {16fn testBasic() void {
17 expect(@TagType(TypeInfo) == TypeId);17 expect(@typeInfo(TypeInfo).Union.tag_type == TypeId);
18 const void_info = @typeInfo(void);18 const void_info = @typeInfo(void);
19 expect(void_info == TypeId.Void);19 expect(void_info == TypeId.Void);
20 expect(void_info.Void == {});20 expect(void_info.Void == {});
test/stage1/behavior/union.zig+23-22
...@@ -1,6 +1,7 @@...@@ -1,6 +1,7 @@
1const std = @import("std");1const std = @import("std");
2const expect = std.testing.expect;2const expect = std.testing.expect;
3const expectEqual = std.testing.expectEqual;3const expectEqual = std.testing.expectEqual;
4const Tag = std.meta.Tag;
45
5const Value = union(enum) {6const Value = union(enum) {
6 Int: u64,7 Int: u64,
...@@ -128,7 +129,7 @@ const MultipleChoice = union(enum(u32)) {...@@ -128,7 +129,7 @@ const MultipleChoice = union(enum(u32)) {
128test "simple union(enum(u32))" {129test "simple union(enum(u32))" {
129 var x = MultipleChoice.C;130 var x = MultipleChoice.C;
130 expect(x == MultipleChoice.C);131 expect(x == MultipleChoice.C);
131 expect(@enumToInt(@as(@TagType(MultipleChoice), x)) == 60);132 expect(@enumToInt(@as(Tag(MultipleChoice), x)) == 60);
132}133}
133134
134const MultipleChoice2 = union(enum(u32)) {135const MultipleChoice2 = union(enum(u32)) {
...@@ -144,13 +145,13 @@ const MultipleChoice2 = union(enum(u32)) {...@@ -144,13 +145,13 @@ const MultipleChoice2 = union(enum(u32)) {
144};145};
145146
146test "union(enum(u32)) with specified and unspecified tag values" {147test "union(enum(u32)) with specified and unspecified tag values" {
147 comptime expect(@TagType(@TagType(MultipleChoice2)) == u32);148 comptime expect(Tag(Tag(MultipleChoice2)) == u32);
148 testEnumWithSpecifiedAndUnspecifiedTagValues(MultipleChoice2{ .C = 123 });149 testEnumWithSpecifiedAndUnspecifiedTagValues(MultipleChoice2{ .C = 123 });
149 comptime testEnumWithSpecifiedAndUnspecifiedTagValues(MultipleChoice2{ .C = 123 });150 comptime testEnumWithSpecifiedAndUnspecifiedTagValues(MultipleChoice2{ .C = 123 });
150}151}
151152
152fn testEnumWithSpecifiedAndUnspecifiedTagValues(x: MultipleChoice2) void {153fn testEnumWithSpecifiedAndUnspecifiedTagValues(x: MultipleChoice2) void {
153 expect(@enumToInt(@as(@TagType(MultipleChoice2), x)) == 60);154 expect(@enumToInt(@as(Tag(MultipleChoice2), x)) == 60);
154 expect(1123 == switch (x) {155 expect(1123 == switch (x) {
155 MultipleChoice2.A => 1,156 MultipleChoice2.A => 1,
156 MultipleChoice2.B => 2,157 MultipleChoice2.B => 2,
...@@ -204,11 +205,11 @@ test "union field access gives the enum values" {...@@ -204,11 +205,11 @@ test "union field access gives the enum values" {
204}205}
205206
206test "cast union to tag type of union" {207test "cast union to tag type of union" {
207 testCastUnionToTagType(TheUnion{ .B = 1234 });208 testCastUnionToTag(TheUnion{ .B = 1234 });
208 comptime testCastUnionToTagType(TheUnion{ .B = 1234 });209 comptime testCastUnionToTag(TheUnion{ .B = 1234 });
209}210}
210211
211fn testCastUnionToTagType(x: TheUnion) void {212fn testCastUnionToTag(x: TheUnion) void {
212 expect(@as(TheTag, x) == TheTag.B);213 expect(@as(TheTag, x) == TheTag.B);
213}214}
214215
...@@ -298,7 +299,7 @@ const TaggedUnionWithAVoid = union(enum) {...@@ -298,7 +299,7 @@ const TaggedUnionWithAVoid = union(enum) {
298299
299fn testTaggedUnionInit(x: anytype) bool {300fn testTaggedUnionInit(x: anytype) bool {
300 const y = TaggedUnionWithAVoid{ .A = x };301 const y = TaggedUnionWithAVoid{ .A = x };
301 return @as(@TagType(TaggedUnionWithAVoid), y) == TaggedUnionWithAVoid.A;302 return @as(Tag(TaggedUnionWithAVoid), y) == TaggedUnionWithAVoid.A;
302}303}
303304
304pub const UnionEnumNoPayloads = union(enum) {305pub const UnionEnumNoPayloads = union(enum) {
...@@ -309,8 +310,8 @@ pub const UnionEnumNoPayloads = union(enum) {...@@ -309,8 +310,8 @@ pub const UnionEnumNoPayloads = union(enum) {
309test "tagged union with no payloads" {310test "tagged union with no payloads" {
310 const a = UnionEnumNoPayloads{ .B = {} };311 const a = UnionEnumNoPayloads{ .B = {} };
311 switch (a) {312 switch (a) {
312 @TagType(UnionEnumNoPayloads).A => @panic("wrong"),313 Tag(UnionEnumNoPayloads).A => @panic("wrong"),
313 @TagType(UnionEnumNoPayloads).B => {},314 Tag(UnionEnumNoPayloads).B => {},
314 }315 }
315}316}
316317
...@@ -325,9 +326,9 @@ test "union with only 1 field casted to its enum type" {...@@ -325,9 +326,9 @@ test "union with only 1 field casted to its enum type" {
325 };326 };
326327
327 var e = Expr{ .Literal = Literal{ .Bool = true } };328 var e = Expr{ .Literal = Literal{ .Bool = true } };
328 const Tag = @TagType(Expr);329 const ExprTag = Tag(Expr);
329 comptime expect(@TagType(Tag) == u0);330 comptime expect(Tag(ExprTag) == u0);
330 var t = @as(Tag, e);331 var t = @as(ExprTag, e);
331 expect(t == Expr.Literal);332 expect(t == Expr.Literal);
332}333}
333334
...@@ -337,17 +338,17 @@ test "union with only 1 field casted to its enum type which has enum value speci...@@ -337,17 +338,17 @@ test "union with only 1 field casted to its enum type which has enum value speci
337 Bool: bool,338 Bool: bool,
338 };339 };
339340
340 const Tag = enum(comptime_int) {341 const ExprTag = enum(comptime_int) {
341 Literal = 33,342 Literal = 33,
342 };343 };
343344
344 const Expr = union(Tag) {345 const Expr = union(ExprTag) {
345 Literal: Literal,346 Literal: Literal,
346 };347 };
347348
348 var e = Expr{ .Literal = Literal{ .Bool = true } };349 var e = Expr{ .Literal = Literal{ .Bool = true } };
349 comptime expect(@TagType(Tag) == comptime_int);350 comptime expect(Tag(ExprTag) == comptime_int);
350 var t = @as(Tag, e);351 var t = @as(ExprTag, e);
351 expect(t == Expr.Literal);352 expect(t == Expr.Literal);
352 expect(@enumToInt(t) == 33);353 expect(@enumToInt(t) == 33);
353 comptime expect(@enumToInt(t) == 33);354 comptime expect(@enumToInt(t) == 33);
...@@ -501,7 +502,7 @@ test "union with one member defaults to u0 tag type" {...@@ -501,7 +502,7 @@ test "union with one member defaults to u0 tag type" {
501 const U0 = union(enum) {502 const U0 = union(enum) {
502 X: u32,503 X: u32,
503 };504 };
504 comptime expect(@TagType(@TagType(U0)) == u0);505 comptime expect(Tag(Tag(U0)) == u0);
505}506}
506507
507test "union with comptime_int tag" {508test "union with comptime_int tag" {
...@@ -510,7 +511,7 @@ test "union with comptime_int tag" {...@@ -510,7 +511,7 @@ test "union with comptime_int tag" {
510 Y: u16,511 Y: u16,
511 Z: u8,512 Z: u8,
512 };513 };
513 comptime expect(@TagType(@TagType(Union)) == comptime_int);514 comptime expect(Tag(Tag(Union)) == comptime_int);
514}515}
515516
516test "extern union doesn't trigger field check at comptime" {517test "extern union doesn't trigger field check at comptime" {
...@@ -591,7 +592,7 @@ test "function call result coerces from tagged union to the tag" {...@@ -591,7 +592,7 @@ test "function call result coerces from tagged union to the tag" {
591 Two: usize,592 Two: usize,
592 };593 };
593594
594 const ArchTag = @TagType(Arch);595 const ArchTag = Tag(Arch);
595596
596 fn doTheTest() void {597 fn doTheTest() void {
597 var x: ArchTag = getArch1();598 var x: ArchTag = getArch1();
...@@ -696,8 +697,8 @@ test "cast from pointer to anonymous struct to pointer to union" {...@@ -696,8 +697,8 @@ test "cast from pointer to anonymous struct to pointer to union" {
696697
697test "method call on an empty union" {698test "method call on an empty union" {
698 const S = struct {699 const S = struct {
699 const MyUnion = union(Tag) {700 const MyUnion = union(MyUnionTag) {
700 pub const Tag = enum { X1, X2 };701 pub const MyUnionTag = enum { X1, X2 };
701 X1: [0]u8,702 X1: [0]u8,
702 X2: [0]u8,703 X2: [0]u8,
703704
...@@ -797,7 +798,7 @@ test "union enum type gets a separate scope" {...@@ -797,7 +798,7 @@ test "union enum type gets a separate scope" {
797 };798 };
798799
799 fn doTheTest() void {800 fn doTheTest() void {
800 expect(!@hasDecl(@TagType(U), "foo"));801 expect(!@hasDecl(Tag(U), "foo"));
801 }802 }
802 };803 };
803804
test/stage2/cbe.zig+47-1
...@@ -179,12 +179,58 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -179,12 +179,58 @@ pub fn addCases(ctx: *TestContext) !void {
179 \\ return y - 1;179 \\ return y - 1;
180 \\}180 \\}
181 \\181 \\
182 \\inline fn rec(n: usize) usize {182 \\fn rec(n: usize) callconv(.Inline) usize {
183 \\ if (n <= 1) return n;183 \\ if (n <= 1) return n;
184 \\ return rec(n - 1);184 \\ return rec(n - 1);
185 \\}185 \\}
186 , "");186 , "");
187 }187 }
188 {
189 var case = ctx.exeFromCompiledC("control flow", .{});
190
191 // Simple while loop
192 case.addCompareOutput(
193 \\export fn main() c_int {
194 \\ var a: c_int = 0;
195 \\ while (a < 5) : (a+=1) {}
196 \\ return a - 5;
197 \\}
198 , "");
199 case.addCompareOutput(
200 \\export fn main() c_int {
201 \\ var a = true;
202 \\ while (!a) {}
203 \\ return 0;
204 \\}
205 , "");
206
207 // If expression
208 case.addCompareOutput(
209 \\export fn main() c_int {
210 \\ var cond: c_int = 0;
211 \\ var a: c_int = @as(c_int, if (cond == 0)
212 \\ 2
213 \\ else
214 \\ 3) + 9;
215 \\ return a - 11;
216 \\}
217 , "");
218
219 // Switch expression
220 case.addCompareOutput(
221 \\export fn main() c_int {
222 \\ var cond: c_int = 0;
223 \\ var a: c_int = switch (cond) {
224 \\ 1 => 1,
225 \\ 2 => 2,
226 \\ 99...300, 12 => 3,
227 \\ 0 => 4,
228 \\ else => 5,
229 \\ };
230 \\ return a - 4;
231 \\}
232 , "");
233 }
188 ctx.c("empty start function", linux_x64,234 ctx.c("empty start function", linux_x64,
189 \\export fn _start() noreturn {235 \\export fn _start() noreturn {
190 \\ unreachable;236 \\ unreachable;
test/stage2/test.zig+5-42
...@@ -255,7 +255,7 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -255,7 +255,7 @@ pub fn addCases(ctx: *TestContext) !void {
255 \\ exit(y - 6);255 \\ exit(y - 6);
256 \\}256 \\}
257 \\257 \\
258 \\inline fn add(a: usize, b: usize, c: usize) usize {258 \\fn add(a: usize, b: usize, c: usize) callconv(.Inline) usize {
259 \\ return a + b + c;259 \\ return a + b + c;
260 \\}260 \\}
261 \\261 \\
...@@ -962,43 +962,6 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -962,43 +962,6 @@ pub fn addCases(ctx: *TestContext) !void {
962 ,962 ,
963 "hello\nhello\nhello\nhello\nhello\n",963 "hello\nhello\nhello\nhello\nhello\n",
964 );964 );
965
966 // comptime switch
967
968 // Basic for loop
969 case.addCompareOutput(
970 \\pub export fn _start() noreturn {
971 \\ assert(foo() == 1);
972 \\ exit();
973 \\}
974 \\
975 \\fn foo() u32 {
976 \\ const a: comptime_int = 1;
977 \\ var b: u32 = 0;
978 \\ switch (a) {
979 \\ 1 => b = 1,
980 \\ 2 => b = 2,
981 \\ else => unreachable,
982 \\ }
983 \\ return b;
984 \\}
985 \\
986 \\pub fn assert(ok: bool) void {
987 \\ if (!ok) unreachable; // assertion failure
988 \\}
989 \\
990 \\fn exit() noreturn {
991 \\ asm volatile ("syscall"
992 \\ :
993 \\ : [number] "{rax}" (231),
994 \\ [arg1] "{rdi}" (0)
995 \\ : "rcx", "r11", "memory"
996 \\ );
997 \\ unreachable;
998 \\}
999 ,
1000 "",
1001 );
1002 }965 }
1003966
1004 {967 {
...@@ -1265,7 +1228,7 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -1265,7 +1228,7 @@ pub fn addCases(ctx: *TestContext) !void {
1265 \\ exit(y - 6);1228 \\ exit(y - 6);
1266 \\}1229 \\}
1267 \\1230 \\
1268 \\inline fn add(a: usize, b: usize, c: usize) usize {1231 \\fn add(a: usize, b: usize, c: usize) callconv(.Inline) usize {
1269 \\ if (a == 10) @compileError("bad");1232 \\ if (a == 10) @compileError("bad");
1270 \\ return a + b + c;1233 \\ return a + b + c;
1271 \\}1234 \\}
...@@ -1288,7 +1251,7 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -1288,7 +1251,7 @@ pub fn addCases(ctx: *TestContext) !void {
1288 \\ exit(y - 6);1251 \\ exit(y - 6);
1289 \\}1252 \\}
1290 \\1253 \\
1291 \\inline fn add(a: usize, b: usize, c: usize) usize {1254 \\fn add(a: usize, b: usize, c: usize) callconv(.Inline) usize {
1292 \\ if (a == 10) @compileError("bad");1255 \\ if (a == 10) @compileError("bad");
1293 \\ return a + b + c;1256 \\ return a + b + c;
1294 \\}1257 \\}
...@@ -1314,7 +1277,7 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -1314,7 +1277,7 @@ pub fn addCases(ctx: *TestContext) !void {
1314 \\ exit(y - 21);1277 \\ exit(y - 21);
1315 \\}1278 \\}
1316 \\1279 \\
1317 \\inline fn fibonacci(n: usize) usize {1280 \\fn fibonacci(n: usize) callconv(.Inline) usize {
1318 \\ if (n <= 2) return n;1281 \\ if (n <= 2) return n;
1319 \\ return fibonacci(n - 2) + fibonacci(n - 1);1282 \\ return fibonacci(n - 2) + fibonacci(n - 1);
1320 \\}1283 \\}
...@@ -1337,7 +1300,7 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -1337,7 +1300,7 @@ pub fn addCases(ctx: *TestContext) !void {
1337 \\ exit(y - 21);1300 \\ exit(y - 21);
1338 \\}1301 \\}
1339 \\1302 \\
1340 \\inline fn fibonacci(n: usize) usize {1303 \\fn fibonacci(n: usize) callconv(.Inline) usize {
1341 \\ if (n <= 2) return n;1304 \\ if (n <= 2) return n;
1342 \\ return fibonacci(n - 2) + fibonacci(n - 1);1305 \\ return fibonacci(n - 2) + fibonacci(n - 1);
1343 \\}1306 \\}
test/stage2/wasm.zig+92
...@@ -122,4 +122,96 @@ pub fn addCases(ctx: *TestContext) !void {...@@ -122,4 +122,96 @@ pub fn addCases(ctx: *TestContext) !void {
122 \\}122 \\}
123 , "35\n");123 , "35\n");
124 }124 }
125
126 {
127 var case = ctx.exe("wasm conditions", wasi);
128
129 case.addCompareOutput(
130 \\export fn _start() u32 {
131 \\ var i: u32 = 5;
132 \\ if (i > @as(u32, 4)) {
133 \\ i += 10;
134 \\ }
135 \\ return i;
136 \\}
137 , "15\n");
138
139 case.addCompareOutput(
140 \\export fn _start() u32 {
141 \\ var i: u32 = 5;
142 \\ if (i < @as(u32, 4)) {
143 \\ i += 10;
144 \\ } else {
145 \\ i = 2;
146 \\ }
147 \\ return i;
148 \\}
149 , "2\n");
150
151 case.addCompareOutput(
152 \\export fn _start() u32 {
153 \\ var i: u32 = 5;
154 \\ if (i < @as(u32, 4)) {
155 \\ i += 10;
156 \\ } else if(i == @as(u32, 5)) {
157 \\ i = 20;
158 \\ }
159 \\ return i;
160 \\}
161 , "20\n");
162
163 case.addCompareOutput(
164 \\export fn _start() u32 {
165 \\ var i: u32 = 11;
166 \\ if (i < @as(u32, 4)) {
167 \\ i += 10;
168 \\ } else {
169 \\ if (i > @as(u32, 10)) {
170 \\ i += 20;
171 \\ } else {
172 \\ i = 20;
173 \\ }
174 \\ }
175 \\ return i;
176 \\}
177 , "31\n");
178 }
179
180 {
181 var case = ctx.exe("wasm while loops", wasi);
182
183 case.addCompareOutput(
184 \\export fn _start() u32 {
185 \\ var i: u32 = 0;
186 \\ while(i < @as(u32, 5)){
187 \\ i += 1;
188 \\ }
189 \\
190 \\ return i;
191 \\}
192 , "5\n");
193
194 case.addCompareOutput(
195 \\export fn _start() u32 {
196 \\ var i: u32 = 0;
197 \\ while(i < @as(u32, 10)){
198 \\ var x: u32 = 1;
199 \\ i += x;
200 \\ }
201 \\ return i;
202 \\}
203 , "10\n");
204
205 case.addCompareOutput(
206 \\export fn _start() u32 {
207 \\ var i: u32 = 0;
208 \\ while(i < @as(u32, 10)){
209 \\ var x: u32 = 1;
210 \\ i += x;
211 \\ if (i == @as(u32, 5)) break;
212 \\ }
213 \\ return i;
214 \\}
215 , "5\n");
216 }
125}217}
test/standalone/cat/main.zig+1-1
...@@ -41,6 +41,6 @@ pub fn main() !void {...@@ -41,6 +41,6 @@ pub fn main() !void {
41}41}
4242
43fn usage(exe: []const u8) !void {43fn usage(exe: []const u8) !void {
44 warn("Usage: {} [FILE]...\n", .{exe});44 warn("Usage: {s} [FILE]...\n", .{exe});
45 return error.Invalid;45 return error.Invalid;
46}46}
test/tests.zig+1-1
...@@ -499,7 +499,7 @@ pub fn addPkgTests(...@@ -499,7 +499,7 @@ pub fn addPkgTests(
499 if (skip_single_threaded and test_target.single_threaded)499 if (skip_single_threaded and test_target.single_threaded)
500 continue;500 continue;
501501
502 const ArchTag = @TagType(builtin.Arch);502 const ArchTag = std.meta.Tag(builtin.Arch);
503 if (test_target.disable_native and503 if (test_target.disable_native and
504 test_target.target.getOsTag() == std.Target.current.os.tag and504 test_target.target.getOsTag() == std.Target.current.os.tag and
505 test_target.target.getCpuArch() == std.Target.current.cpu.arch)505 test_target.target.getCpuArch() == std.Target.current.cpu.arch)
test/translate_c.zig+44-32
...@@ -43,7 +43,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -43,7 +43,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
43 ,43 ,
44 \\pub const VALUE = ((((1 + (2 * 3)) + (4 * 5)) + 6) << 7) | @boolToInt(8 == 9);44 \\pub const VALUE = ((((1 + (2 * 3)) + (4 * 5)) + 6) << 7) | @boolToInt(8 == 9);
45 ,45 ,
46 \\pub inline fn _AL_READ3BYTES(p: anytype) @TypeOf(((@import("std").meta.cast([*c]u8, p)).* | (((@import("std").meta.cast([*c]u8, p)) + 1).* << 8)) | (((@import("std").meta.cast([*c]u8, p)) + 2).* << 16)) {46 \\pub fn _AL_READ3BYTES(p: anytype) callconv(.Inline) @TypeOf(((@import("std").meta.cast([*c]u8, p)).* | (((@import("std").meta.cast([*c]u8, p)) + 1).* << 8)) | (((@import("std").meta.cast([*c]u8, p)) + 2).* << 16)) {
47 \\ return ((@import("std").meta.cast([*c]u8, p)).* | (((@import("std").meta.cast([*c]u8, p)) + 1).* << 8)) | (((@import("std").meta.cast([*c]u8, p)) + 2).* << 16);47 \\ return ((@import("std").meta.cast([*c]u8, p)).* | (((@import("std").meta.cast([*c]u8, p)) + 1).* << 8)) | (((@import("std").meta.cast([*c]u8, p)) + 2).* << 16);
48 \\}48 \\}
49 });49 });
...@@ -116,7 +116,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -116,7 +116,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
116 \\};116 \\};
117 \\pub const Color = struct_Color;117 \\pub const Color = struct_Color;
118 ,118 ,
119 \\pub inline fn CLITERAL(type_1: anytype) @TypeOf(type_1) {119 \\pub fn CLITERAL(type_1: anytype) callconv(.Inline) @TypeOf(type_1) {
120 \\ return type_1;120 \\ return type_1;
121 \\}121 \\}
122 ,122 ,
...@@ -148,7 +148,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -148,7 +148,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
148 cases.add("correct semicolon after infixop",148 cases.add("correct semicolon after infixop",
149 \\#define __ferror_unlocked_body(_fp) (((_fp)->_flags & _IO_ERR_SEEN) != 0)149 \\#define __ferror_unlocked_body(_fp) (((_fp)->_flags & _IO_ERR_SEEN) != 0)
150 , &[_][]const u8{150 , &[_][]const u8{
151 \\pub inline fn __ferror_unlocked_body(_fp: anytype) @TypeOf(((_fp.*._flags) & _IO_ERR_SEEN) != 0) {151 \\pub fn __ferror_unlocked_body(_fp: anytype) callconv(.Inline) @TypeOf(((_fp.*._flags) & _IO_ERR_SEEN) != 0) {
152 \\ return ((_fp.*._flags) & _IO_ERR_SEEN) != 0;152 \\ return ((_fp.*._flags) & _IO_ERR_SEEN) != 0;
153 \\}153 \\}
154 });154 });
...@@ -157,7 +157,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -157,7 +157,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
157 \\#define FOO(x) ((x >= 0) + (x >= 0))157 \\#define FOO(x) ((x >= 0) + (x >= 0))
158 \\#define BAR 1 && 2 > 4158 \\#define BAR 1 && 2 > 4
159 , &[_][]const u8{159 , &[_][]const u8{
160 \\pub inline fn FOO(x: anytype) @TypeOf(@boolToInt(x >= 0) + @boolToInt(x >= 0)) {160 \\pub fn FOO(x: anytype) callconv(.Inline) @TypeOf(@boolToInt(x >= 0) + @boolToInt(x >= 0)) {
161 \\ return @boolToInt(x >= 0) + @boolToInt(x >= 0);161 \\ return @boolToInt(x >= 0) + @boolToInt(x >= 0);
162 \\}162 \\}
163 ,163 ,
...@@ -208,7 +208,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -208,7 +208,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
208 \\ break :blk bar;208 \\ break :blk bar;
209 \\};209 \\};
210 ,210 ,
211 \\pub inline fn bar(x: anytype) @TypeOf(baz(1, 2)) {211 \\pub fn bar(x: anytype) callconv(.Inline) @TypeOf(baz(1, 2)) {
212 \\ return blk: {212 \\ return blk: {
213 \\ _ = &x;213 \\ _ = &x;
214 \\ _ = 3;214 \\ _ = 3;
...@@ -1305,10 +1305,10 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -1305,10 +1305,10 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1305 \\ var a: c_int = undefined;1305 \\ var a: c_int = undefined;
1306 \\ var b: f32 = undefined;1306 \\ var b: f32 = undefined;
1307 \\ var c: ?*c_void = undefined;1307 \\ var c: ?*c_void = undefined;
1308 \\ return !(a == @as(c_int, 0));1308 \\ return @boolToInt(!(a == @as(c_int, 0)));
1309 \\ return !(a != 0);1309 \\ return @boolToInt(!(a != 0));
1310 \\ return !(b != 0);1310 \\ return @boolToInt(!(b != 0));
1311 \\ return !(c != null);1311 \\ return @boolToInt(!(c != null));
1312 \\}1312 \\}
1313 });1313 });
13141314
...@@ -1590,13 +1590,13 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -1590,13 +1590,13 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1590 , &[_][]const u8{1590 , &[_][]const u8{
1591 \\pub extern var fn_ptr: ?fn () callconv(.C) void;1591 \\pub extern var fn_ptr: ?fn () callconv(.C) void;
1592 ,1592 ,
1593 \\pub inline fn foo() void {1593 \\pub fn foo() callconv(.Inline) void {
1594 \\ return fn_ptr.?();1594 \\ return fn_ptr.?();
1595 \\}1595 \\}
1596 ,1596 ,
1597 \\pub extern var fn_ptr2: ?fn (c_int, f32) callconv(.C) u8;1597 \\pub extern var fn_ptr2: ?fn (c_int, f32) callconv(.C) u8;
1598 ,1598 ,
1599 \\pub inline fn bar(arg_1: c_int, arg_2: f32) u8 {1599 \\pub fn bar(arg_1: c_int, arg_2: f32) callconv(.Inline) u8 {
1600 \\ return fn_ptr2.?(arg_1, arg_2);1600 \\ return fn_ptr2.?(arg_1, arg_2);
1601 \\}1601 \\}
1602 });1602 });
...@@ -1629,7 +1629,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -1629,7 +1629,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1629 ,1629 ,
1630 \\pub const glClearPFN = PFNGLCLEARPROC;1630 \\pub const glClearPFN = PFNGLCLEARPROC;
1631 ,1631 ,
1632 \\pub inline fn glClearUnion(arg_2: GLbitfield) void {1632 \\pub fn glClearUnion(arg_2: GLbitfield) callconv(.Inline) void {
1633 \\ return glProcs.gl.Clear.?(arg_2);1633 \\ return glProcs.gl.Clear.?(arg_2);
1634 \\}1634 \\}
1635 ,1635 ,
...@@ -1650,15 +1650,15 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -1650,15 +1650,15 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1650 , &[_][]const u8{1650 , &[_][]const u8{
1651 \\pub extern var c: c_int;1651 \\pub extern var c: c_int;
1652 ,1652 ,
1653 \\pub inline fn BASIC(c_1: anytype) @TypeOf(c_1 * 2) {1653 \\pub fn BASIC(c_1: anytype) callconv(.Inline) @TypeOf(c_1 * 2) {
1654 \\ return c_1 * 2;1654 \\ return c_1 * 2;
1655 \\}1655 \\}
1656 ,1656 ,
1657 \\pub inline fn FOO(L: anytype, b: anytype) @TypeOf(L + b) {1657 \\pub fn FOO(L: anytype, b: anytype) callconv(.Inline) @TypeOf(L + b) {
1658 \\ return L + b;1658 \\ return L + b;
1659 \\}1659 \\}
1660 ,1660 ,
1661 \\pub inline fn BAR() @TypeOf(c * c) {1661 \\pub fn BAR() callconv(.Inline) @TypeOf(c * c) {
1662 \\ return c * c;1662 \\ return c * c;
1663 \\}1663 \\}
1664 });1664 });
...@@ -1723,11 +1723,17 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -1723,11 +1723,17 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1723 \\}1723 \\}
1724 , &[_][]const u8{1724 , &[_][]const u8{
1725 \\pub export fn foo() c_int {1725 \\pub export fn foo() c_int {
1726 \\ _ = @as(c_int, 2);1726 \\ _ = (blk: {
1727 \\ _ = @as(c_int, 4);1727 \\ _ = @as(c_int, 2);
1728 \\ _ = @as(c_int, 2);1728 \\ break :blk @as(c_int, 4);
1729 \\ _ = @as(c_int, 4);1729 \\ });
1730 \\ return @as(c_int, 6);1730 \\ return (blk: {
1731 \\ _ = (blk_1: {
1732 \\ _ = @as(c_int, 2);
1733 \\ break :blk_1 @as(c_int, 4);
1734 \\ });
1735 \\ break :blk @as(c_int, 6);
1736 \\ });
1731 \\}1737 \\}
1732 });1738 });
17331739
...@@ -1774,8 +1780,10 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -1774,8 +1780,10 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1774 \\ while (true) {1780 \\ while (true) {
1775 \\ var a_1: c_int = 4;1781 \\ var a_1: c_int = 4;
1776 \\ a_1 = 9;1782 \\ a_1 = 9;
1777 \\ _ = @as(c_int, 6);1783 \\ return (blk: {
1778 \\ return a_1;1784 \\ _ = @as(c_int, 6);
1785 \\ break :blk a_1;
1786 \\ });
1779 \\ }1787 \\ }
1780 \\ while (true) {1788 \\ while (true) {
1781 \\ var a_1: c_int = 2;1789 \\ var a_1: c_int = 2;
...@@ -1805,9 +1813,13 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -1805,9 +1813,13 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
1805 \\ var b: c_int = 4;1813 \\ var b: c_int = 4;
1806 \\ while ((i + @as(c_int, 2)) != 0) : (i = 2) {1814 \\ while ((i + @as(c_int, 2)) != 0) : (i = 2) {
1807 \\ var a: c_int = 2;1815 \\ var a: c_int = 2;
1808 \\ a = 6;1816 \\ _ = (blk: {
1809 \\ _ = @as(c_int, 5);1817 \\ _ = (blk_1: {
1810 \\ _ = @as(c_int, 7);1818 \\ a = 6;
1819 \\ break :blk_1 @as(c_int, 5);
1820 \\ });
1821 \\ break :blk @as(c_int, 7);
1822 \\ });
1811 \\ }1823 \\ }
1812 \\ }1824 \\ }
1813 \\ var i: u8 = @bitCast(u8, @truncate(i8, @as(c_int, 2)));1825 \\ var i: u8 = @bitCast(u8, @truncate(i8, @as(c_int, 2)));
...@@ -2298,7 +2310,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -2298,7 +2310,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2298 cases.add("macro call",2310 cases.add("macro call",
2299 \\#define CALL(arg) bar(arg)2311 \\#define CALL(arg) bar(arg)
2300 , &[_][]const u8{2312 , &[_][]const u8{
2301 \\pub inline fn CALL(arg: anytype) @TypeOf(bar(arg)) {2313 \\pub fn CALL(arg: anytype) callconv(.Inline) @TypeOf(bar(arg)) {
2302 \\ return bar(arg);2314 \\ return bar(arg);
2303 \\}2315 \\}
2304 });2316 });
...@@ -2802,8 +2814,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -2802,8 +2814,8 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2802 \\ fn_f64(3);2814 \\ fn_f64(3);
2803 \\ fn_bool(@as(c_int, 123) != 0);2815 \\ fn_bool(@as(c_int, 123) != 0);
2804 \\ fn_bool(@as(c_int, 0) != 0);2816 \\ fn_bool(@as(c_int, 0) != 0);
2805 \\ fn_bool(@ptrToInt(&fn_int) != 0);2817 \\ fn_bool(@ptrToInt(fn_int) != 0);
2806 \\ fn_int(@intCast(c_int, @ptrToInt(&fn_int)));2818 \\ fn_int(@intCast(c_int, @ptrToInt(fn_int)));
2807 \\ fn_ptr(@intToPtr(?*c_void, @as(c_int, 42)));2819 \\ fn_ptr(@intToPtr(?*c_void, @as(c_int, 42)));
2808 \\}2820 \\}
2809 });2821 });
...@@ -2860,7 +2872,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -2860,7 +2872,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2860 \\#define BAR (void*) a2872 \\#define BAR (void*) a
2861 \\#define BAZ (uint32_t)(2)2873 \\#define BAZ (uint32_t)(2)
2862 , &[_][]const u8{2874 , &[_][]const u8{
2863 \\pub inline fn FOO(bar: anytype) @TypeOf(baz((@import("std").meta.cast(?*c_void, baz)))) {2875 \\pub fn FOO(bar: anytype) callconv(.Inline) @TypeOf(baz((@import("std").meta.cast(?*c_void, baz)))) {
2864 \\ return baz((@import("std").meta.cast(?*c_void, baz)));2876 \\ return baz((@import("std").meta.cast(?*c_void, baz)));
2865 \\}2877 \\}
2866 ,2878 ,
...@@ -2902,11 +2914,11 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -2902,11 +2914,11 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
2902 \\#define MIN(a, b) ((b) < (a) ? (b) : (a))2914 \\#define MIN(a, b) ((b) < (a) ? (b) : (a))
2903 \\#define MAX(a, b) ((b) > (a) ? (b) : (a))2915 \\#define MAX(a, b) ((b) > (a) ? (b) : (a))
2904 , &[_][]const u8{2916 , &[_][]const u8{
2905 \\pub inline fn MIN(a: anytype, b: anytype) @TypeOf(if (b < a) b else a) {2917 \\pub fn MIN(a: anytype, b: anytype) callconv(.Inline) @TypeOf(if (b < a) b else a) {
2906 \\ return if (b < a) b else a;2918 \\ return if (b < a) b else a;
2907 \\}2919 \\}
2908 ,2920 ,
2909 \\pub inline fn MAX(a: anytype, b: anytype) @TypeOf(if (b > a) b else a) {2921 \\pub fn MAX(a: anytype, b: anytype) callconv(.Inline) @TypeOf(if (b > a) b else a) {
2910 \\ return if (b > a) b else a;2922 \\ return if (b > a) b else a;
2911 \\}2923 \\}
2912 });2924 });
...@@ -3094,7 +3106,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {...@@ -3094,7 +3106,7 @@ pub fn addCases(cases: *tests.TranslateCContext) void {
3094 \\#define DefaultScreen(dpy) (((_XPrivDisplay)(dpy))->default_screen)3106 \\#define DefaultScreen(dpy) (((_XPrivDisplay)(dpy))->default_screen)
3095 \\3107 \\
3096 , &[_][]const u8{3108 , &[_][]const u8{
3097 \\pub inline fn DefaultScreen(dpy: anytype) @TypeOf((@import("std").meta.cast(_XPrivDisplay, dpy)).*.default_screen) {3109 \\pub fn DefaultScreen(dpy: anytype) callconv(.Inline) @TypeOf((@import("std").meta.cast(_XPrivDisplay, dpy)).*.default_screen) {
3098 \\ return (@import("std").meta.cast(_XPrivDisplay, dpy)).*.default_screen;3110 \\ return (@import("std").meta.cast(_XPrivDisplay, dpy)).*.default_screen;
3099 \\}3111 \\}
3100 });3112 });
tools/gen_spirv_spec.zig created+245
...@@ -0,0 +1,245 @@
1const std = @import("std");
2const Writer = std.ArrayList(u8).Writer;
3
4//! See https://www.khronos.org/registry/spir-v/specs/unified1/MachineReadableGrammar.html
5//! and the files in https://github.com/KhronosGroup/SPIRV-Headers/blob/master/include/spirv/unified1/
6//! Note: Non-canonical casing in these structs used to match SPIR-V spec json.
7const Registry = union(enum) {
8 core: CoreRegistry,
9 extension: ExtensionRegistry,
10};
11
12const CoreRegistry = struct {
13 copyright: [][]const u8,
14 /// Hexadecimal representation of the magic number
15 magic_number: []const u8,
16 major_version: u32,
17 minor_version: u32,
18 revision: u32,
19 instruction_printing_class: []InstructionPrintingClass,
20 instructions: []Instruction,
21 operand_kinds: []OperandKind,
22};
23
24const ExtensionRegistry = struct {
25 copyright: [][]const u8,
26 version: u32,
27 revision: u32,
28 instructions: []Instruction,
29 operand_kinds: []OperandKind = &[_]OperandKind{},
30};
31
32const InstructionPrintingClass = struct {
33 tag: []const u8,
34 heading: ?[]const u8 = null,
35};
36
37const Instruction = struct {
38 opname: []const u8,
39 class: ?[]const u8 = null, // Note: Only available in the core registry.
40 opcode: u32,
41 operands: []Operand = &[_]Operand{},
42 capabilities: [][]const u8 = &[_][]const u8{},
43 extensions: [][]const u8 = &[_][]const u8{},
44 version: ?[]const u8 = null,
45
46 lastVersion: ?[]const u8 = null,
47};
48
49const Operand = struct {
50 kind: []const u8,
51 /// If this field is 'null', the operand is only expected once.
52 quantifier: ?Quantifier = null,
53 name: []const u8 = "",
54};
55
56const Quantifier = enum {
57 /// zero or once
58 @"?",
59 /// zero or more
60 @"*",
61};
62
63const OperandCategory = enum {
64 BitEnum,
65 ValueEnum,
66 Id,
67 Literal,
68 Composite,
69};
70
71const OperandKind = struct {
72 category: OperandCategory,
73 /// The name
74 kind: []const u8,
75 doc: ?[]const u8 = null,
76 enumerants: ?[]Enumerant = null,
77 bases: ?[]const []const u8 = null,
78};
79
80const Enumerant = struct {
81 enumerant: []const u8,
82 value: union(enum) {
83 bitflag: []const u8, // Hexadecimal representation of the value
84 int: u31,
85 },
86 capabilities: [][]const u8 = &[_][]const u8{},
87 /// Valid for .ValueEnum and .BitEnum
88 extensions: [][]const u8 = &[_][]const u8{},
89 /// `quantifier` will always be `null`.
90 parameters: []Operand = &[_]Operand{},
91 version: ?[]const u8 = null,
92 lastVersion: ?[]const u8 = null,
93};
94
95pub fn main() !void {
96 var arena = std.heap.ArenaAllocator.init(std.heap.page_allocator);
97 defer arena.deinit();
98 const allocator = &arena.allocator;
99
100 const args = try std.process.argsAlloc(allocator);
101 if (args.len != 2) {
102 usageAndExit(std.io.getStdErr(), args[0], 1);
103 }
104
105 const spec_path = args[1];
106 const spec = try std.fs.cwd().readFileAlloc(allocator, spec_path, std.math.maxInt(usize));
107
108 var tokens = std.json.TokenStream.init(spec);
109 var registry = try std.json.parse(Registry, &tokens, .{.allocator = allocator});
110
111 var buf = std.ArrayList(u8).init(allocator);
112 defer buf.deinit();
113
114 try render(buf.writer(), registry);
115
116 const tree = try std.zig.parse(allocator, buf.items);
117 _ = try std.zig.render(allocator, std.io.getStdOut().writer(), tree);
118}
119
120fn render(writer: Writer, registry: Registry) !void {
121 switch (registry) {
122 .core => |core_reg| {
123 try renderCopyRight(writer, core_reg.copyright);
124 try writer.print(
125 \\const Version = @import("builtin").Version;
126 \\pub const version = Version{{.major = {}, .minor = {}, .patch = {}}};
127 \\pub const magic_number: u32 = {s};
128 \\
129 , .{ core_reg.major_version, core_reg.minor_version, core_reg.revision, core_reg.magic_number },
130 );
131 try renderOpcodes(writer, core_reg.instructions);
132 try renderOperandKinds(writer, core_reg.operand_kinds);
133 },
134 .extension => |ext_reg| {
135 try renderCopyRight(writer, ext_reg.copyright);
136 try writer.print(
137 \\const Version = @import("builtin").Version;
138 \\pub const version = Version{{.major = {}, .minor = 0, .patch = {}}};
139 \\
140 , .{ ext_reg.version, ext_reg.revision },
141 );
142 try renderOpcodes(writer, ext_reg.instructions);
143 try renderOperandKinds(writer, ext_reg.operand_kinds);
144 }
145 }
146}
147
148fn renderCopyRight(writer: Writer, copyright: []const []const u8) !void {
149 for (copyright) |line| {
150 try writer.print("// {s}\n", .{ line });
151 }
152}
153
154fn renderOpcodes(writer: Writer, instructions: []const Instruction) !void {
155 try writer.writeAll("pub const Opcode = extern enum(u16) {\n");
156 for (instructions) |instr| {
157 try writer.print("{} = {},\n", .{ std.zig.fmtId(instr.opname), instr.opcode });
158 }
159 try writer.writeAll("_,\n};\n");
160}
161
162fn renderOperandKinds(writer: Writer, kinds: []const OperandKind) !void {
163 for (kinds) |kind| {
164 switch (kind.category) {
165 .ValueEnum => try renderValueEnum(writer, kind),
166 .BitEnum => try renderBitEnum(writer, kind),
167 else => {},
168 }
169 }
170}
171
172fn renderValueEnum(writer: Writer, enumeration: OperandKind) !void {
173 try writer.print("pub const {s} = extern enum(u32) {{\n", .{ enumeration.kind });
174
175 const enumerants = enumeration.enumerants orelse return error.InvalidRegistry;
176 for (enumerants) |enumerant| {
177 if (enumerant.value != .int) return error.InvalidRegistry;
178
179 try writer.print("{} = {},\n", .{ std.zig.fmtId(enumerant.enumerant), enumerant.value.int });
180 }
181
182 try writer.writeAll("_,\n};\n");
183}
184
185fn renderBitEnum(writer: Writer, enumeration: OperandKind) !void {
186 try writer.print("pub const {s} = packed struct {{\n", .{ enumeration.kind });
187
188 var flags_by_bitpos = [_]?[]const u8{null} ** 32;
189 const enumerants = enumeration.enumerants orelse return error.InvalidRegistry;
190 for (enumerants) |enumerant| {
191 if (enumerant.value != .bitflag) return error.InvalidRegistry;
192 const value = try parseHexInt(enumerant.value.bitflag);
193 if (@popCount(u32, value) != 1) {
194 continue; // Skip combinations and 'none' items
195 }
196
197 var bitpos = std.math.log2_int(u32, value);
198 if (flags_by_bitpos[bitpos]) |*existing|{
199 // Keep the shortest
200 if (enumerant.enumerant.len < existing.len)
201 existing.* = enumerant.enumerant;
202 } else {
203 flags_by_bitpos[bitpos] = enumerant.enumerant;
204 }
205 }
206
207 for (flags_by_bitpos) |maybe_flag_name, bitpos| {
208 if (maybe_flag_name) |flag_name| {
209 try writer.writeAll(flag_name);
210 } else {
211 try writer.print("_reserved_bit_{}", .{bitpos});
212 }
213
214 try writer.writeAll(": bool ");
215 if (bitpos == 0) { // Force alignment to integer boundaries
216 try writer.writeAll("align(@alignOf(u32)) ");
217 }
218 try writer.writeAll("= false, ");
219 }
220
221 try writer.writeAll("};\n");
222}
223
224fn parseHexInt(text: []const u8) !u31 {
225 const prefix = "0x";
226 if (!std.mem.startsWith(u8, text, prefix))
227 return error.InvalidHexInt;
228 return try std.fmt.parseInt(u31, text[prefix.len ..], 16);
229}
230
231fn usageAndExit(file: std.fs.File, arg0: []const u8, code: u8) noreturn {
232 file.writer().print(
233 \\Usage: {s} <spirv json spec>
234 \\
235 \\Generates Zig bindings for a SPIR-V specification .json (either core or
236 \\extinst versions). The result, printed to stdout, should be used to update
237 \\files in src/codegen/spirv.
238 \\
239 \\The relevant specifications can be obtained from the SPIR-V registry:
240 \\https://github.com/KhronosGroup/SPIRV-Headers/blob/master/include/spirv/unified1/
241 \\
242 , .{arg0}
243 ) catch std.process.exit(1);
244 std.process.exit(code);
245}
tools/process_headers.zig+1-1
...@@ -47,7 +47,7 @@ const MultiAbi = union(enum) {...@@ -47,7 +47,7 @@ const MultiAbi = union(enum) {
47 fn eql(a: MultiAbi, b: MultiAbi) bool {47 fn eql(a: MultiAbi, b: MultiAbi) bool {
48 if (@enumToInt(a) != @enumToInt(b))48 if (@enumToInt(a) != @enumToInt(b))
49 return false;49 return false;
50 if (@TagType(MultiAbi)(a) != .specific)50 if (std.meta.Tag(MultiAbi)(a) != .specific)
51 return true;51 return true;
52 return a.specific == b.specific;52 return a.specific == b.specific;
53 }53 }
tools/update_clang_options.zig+4
...@@ -312,6 +312,10 @@ const known_options = [_]KnownOpt{...@@ -312,6 +312,10 @@ const known_options = [_]KnownOpt{
312 .name = "framework",312 .name = "framework",
313 .ident = "framework",313 .ident = "framework",
314 },314 },
315 .{
316 .name = "s",
317 .ident = "strip",
318 },
315};319};
316320
317const blacklisted_options = [_][]const u8{};321const blacklisted_options = [_][]const u8{};
tools/update_glibc.zig+5-5
...@@ -157,7 +157,7 @@ pub fn main() !void {...@@ -157,7 +157,7 @@ pub fn main() !void {
157157
158 for (lib_names) |lib_name, lib_name_index| {158 for (lib_names) |lib_name, lib_name_index| {
159 const lib_prefix = if (std.mem.eql(u8, lib_name, "ld")) "" else "lib";159 const lib_prefix = if (std.mem.eql(u8, lib_name, "ld")) "" else "lib";
160 const basename = try fmt.allocPrint(allocator, "{}{}.abilist", .{ lib_prefix, lib_name });160 const basename = try fmt.allocPrint(allocator, "{s}{s}.abilist", .{ lib_prefix, lib_name });
161 const abi_list_filename = blk: {161 const abi_list_filename = blk: {
162 const is_c = std.mem.eql(u8, lib_name, "c");162 const is_c = std.mem.eql(u8, lib_name, "c");
163 const is_m = std.mem.eql(u8, lib_name, "m");163 const is_m = std.mem.eql(u8, lib_name, "m");
...@@ -185,7 +185,7 @@ pub fn main() !void {...@@ -185,7 +185,7 @@ pub fn main() !void {
185 };185 };
186 const max_bytes = 10 * 1024 * 1024;186 const max_bytes = 10 * 1024 * 1024;
187 const contents = std.fs.cwd().readFileAlloc(allocator, abi_list_filename, max_bytes) catch |err| {187 const contents = std.fs.cwd().readFileAlloc(allocator, abi_list_filename, max_bytes) catch |err| {
188 std.debug.warn("unable to open {}: {}\n", .{ abi_list_filename, err });188 std.debug.warn("unable to open {s}: {}\n", .{ abi_list_filename, err });
189 std.process.exit(1);189 std.process.exit(1);
190 };190 };
191 var lines_it = std.mem.tokenize(contents, "\n");191 var lines_it = std.mem.tokenize(contents, "\n");
...@@ -243,7 +243,7 @@ pub fn main() !void {...@@ -243,7 +243,7 @@ pub fn main() !void {
243 const vers_txt = buffered.writer();243 const vers_txt = buffered.writer();
244 for (global_ver_list) |name, i| {244 for (global_ver_list) |name, i| {
245 _ = global_ver_set.put(name, i) catch unreachable;245 _ = global_ver_set.put(name, i) catch unreachable;
246 try vers_txt.print("{}\n", .{name});246 try vers_txt.print("{s}\n", .{name});
247 }247 }
248 try buffered.flush();248 try buffered.flush();
249 }249 }
...@@ -256,7 +256,7 @@ pub fn main() !void {...@@ -256,7 +256,7 @@ pub fn main() !void {
256 for (global_fn_list) |name, i| {256 for (global_fn_list) |name, i| {
257 const entry = global_fn_set.getEntry(name).?;257 const entry = global_fn_set.getEntry(name).?;
258 entry.value.index = i;258 entry.value.index = i;
259 try fns_txt.print("{} {}\n", .{ name, entry.value.lib });259 try fns_txt.print("{s} {s}\n", .{ name, entry.value.lib });
260 }260 }
261 try buffered.flush();261 try buffered.flush();
262 }262 }
...@@ -290,7 +290,7 @@ pub fn main() !void {...@@ -290,7 +290,7 @@ pub fn main() !void {
290 const fn_vers_list = &target_functions.getEntry(@ptrToInt(abi_list)).?.value.fn_vers_list;290 const fn_vers_list = &target_functions.getEntry(@ptrToInt(abi_list)).?.value.fn_vers_list;
291 for (abi_list.targets) |target, it_i| {291 for (abi_list.targets) |target, it_i| {
292 if (it_i != 0) try abilist_txt.writeByte(' ');292 if (it_i != 0) try abilist_txt.writeByte(' ');
293 try abilist_txt.print("{}-linux-{}", .{ @tagName(target.arch), @tagName(target.abi) });293 try abilist_txt.print("{s}-linux-{s}", .{ @tagName(target.arch), @tagName(target.abi) });
294 }294 }
295 try abilist_txt.writeByte('\n');295 try abilist_txt.writeByte('\n');
296 // next, each line implicitly corresponds to a function296 // next, each line implicitly corresponds to a function